Using Premade Gamemodes (From AssetBundles) - monksilly/Custom-Gamemodes GitHub Wiki
This document explains how to set up a config.json
file for gamemodes that are already built into an AssetBundle. You're not creating a new gamemode from scratch here; you're simply telling the game where to find an existing one and providing some display information for it.
The Folder Structure
Just like custom modes, your premade gamemode needs its own folder.
YourChosenFolderName/
├── Assets/
│ ├── custom_gamemode_assets <-- AssetBundle including your custom gamemode & levels.
│ ├── screen_art.png <-- Screen art for your custom gamemode, right now can be only one.
│ ├── capsule_art_1.png <-- Capsule art for your premade gamemode
│ └── capsule_art_2.png <-- You can have multiple capsule arts!
└── config.json <-- This file points to the existing gamemode
YourChosenFolderName
: You can name this anything.Assets/
: This folder must be namedAssets
. Any image files (.png
,.jpg
, etc.) you want to associate with this premade gamemode go here. These are display-only and do not affect the actual gamemode's functionality.config.json
: This file must be namedconfig.json
. It's the pointer to your premade gamemode.
config.json
Understanding The config.json
for a premade gamemode is much simpler because the actual gamemode logic and levels are already contained within an AssetBundle. Your file just needs to provide the path and name of that existing mode.
Fields
Field Name | Type | Required? | Description | Example Value(s) |
---|---|---|---|---|
assetBundle |
string |
Yes | The exact filename (if it has an extension, include it) of the asset bundle that contains the premade gamemode. | "custom_gamemode_assets" (refers to custom_gamemode_assets ) |
gamemodeName |
string |
Yes | The exact Asset name of the premade gamemode as it is defined within the assetBundle . This must match perfectly, or the mod won't find it. This isn't the display name, but the name of the Asset used to find this specific mode within the bundle. |
"GM_Powerline" |
author |
string |
No | The name of the original author(s) of this premade gamemode (e.g., "MeowMaster0w0"). Optional. | "MeowMaster0w0" |
category |
string |
No | A category for this premade gamemode (e.g., "Meow's Customs", "Powerline"). Optional. | "Powerline" |
capsuleArts |
list of strings |
No | A list of filenames for images to use as the capsule icon for this premade gamemode. These files must be placed in your Assets/ folder. If you list multiple, the mod will cycle through them. Optional. |
["capsule_1.png", "capsule_2.png"] (from YourChosenFolderName/Assets/ ) |
screenArts |
list of strings |
No | A list of filenames for images to use as the screen art for this premade gamemode. These files must be placed in your Assets/ folder. Similar to capsuleArts , multiple entries might be cycled. Optional. |
["screen_art.png"] (from YourChosenFolderName/Assets/ ) |
Currently Screen Arts can be longer than one image, but it will always pick the first one, will be fixed in an update
Minimal Premade Gamemode Example
This is the absolute simplest config.json
for pointing to an existing premade gamemode. You only need the assetBundle
and the internal gamemodeName
.
{
"assetBundle": "custom_gamemode_assets",
"gamemodeName": "GM_Meowland"
}
Full Example: Premade Gamemode with Multiple Capsule Arts
This example shows how to reference a premade gamemode and provide custom display images for it within the game's menus.
{
"assetBundle": "custom_gamemode_assets",
"gamemodeName": "GM_Meowland",
"author": "MeowMaster0w0",
"category": "Meow's Custom's",
"capsuleArts": [
"capsule_1.png",
"capsule_2.png"
],
"screenArts": [
"screen_art.png"
]
}