-
Notifications
You must be signed in to change notification settings - Fork 10
Mod Setup Basics
This page explains how to set up a mod for Celeste 64 using Fuji.
Mods are stored in the game's Mods
directory.
To set up a new mod, create a folder in the Mods folder. Name it something unique. Generally, something like YourName_YourModName
works best. From here on out, "your mod folder" will refer to the folder you've created
Fuji allows you to load custom assets, as long as they're in the correct place. The following folders are supported:
-
Audio
for FMOD audio -
Faces
for character expressions Fonts
-
Maps
for your map files -
Models
for custom models Shaders
Sprites
-
Text
for Dialog Textures
Sounds
Music
-
Libraries
for compiled DLLs
Additionally, Fuji will take care of importing custom levels via the Levels.json
files. It can also load custom dialog via .json
files in the Text folder. These are explained in their respective wiki pages.
Fuji requires you add a file to define some metadata about your mod, to give Fuji additional information about what your mod is and what it does.
To do this, we create a Fuji.json
file in our mod's folder. The format of this file is as follows:
{
"Id": "<mod-id>",
"Name": "<human-readable-mod-name>",
"ModAuthor": "<mod-author-name>",
"Description": "<human-readable-mod-description>",
"Icon": "<mod-icon>",
"Version": "<semver>",
"FujiRequiredVersion": "<semver>",
"Dependencies": {
"<mod-id>": "<mod-minimum-version>",
},
"AssetReplaceItems": {
"<vanilla-asset-name>": "<mod-asset-name>",
}
}
Note
For FujiRequiredVersion
, you'll want to put in the minimum version of Fuji required to load the mod. Generally, this would be whatever the latest version is at the time of you reading this page.
Do note, however, that your mod will likely stop loading with every major version of Fuji, since those can introduce breaking changes. So, if your mod asks for Fuji 1.2.3
, expect it to not load after 2.0.0
.
To resolve this, simply bump up the FujiRequiredVersion
when the time comes.
Fill in this file according to the guidelines. Once done, your file should look somewhat like this:
{
"Id": "Madeline_MyMod",
"Name": "My First Mod",
"ModAuthor": "Madeline",
"Description": "My first mod, made to learn modding with Fuji",
"Icon": "MyModIcon",
"Version": "1.0.0",
"FujiRequiredVersion": "0.2.0",
"Dependencies": {
"OtherMod": "1.2.3",
},
"AssetReplaceItems": {
"strawberry": "CoolerStrawberry",
}
}
Important
Remember that mod IDs must be unique!
There's several ways to achieve this, but the most common (and Fuji-approved) way is to make your mod ID yourName_modName
.
For example, if my name is Madeline and my mod name is CoolerStrawberry, my mod ID would be Madeline_CoolerStrawberry
.
Note
Everything in this file is optional except for Id
, your mod ID, and Name
, your mod name, and the Version
, your mod's version. Though, it's good practice to also include the minimum required Fuji version to avoid surprise crashes for users. You might also want to add a description, your name, and an icon.
- To set up an icon, simply place the file as a png in your Sprites folder like you would for any other sprite.
- Then make sure the Icon Field in the Fuji.json is set to just the name of that file (not the filepath), like "MyModIcon" and not something like "Sprites/MyModIcon.png"
Note
Mod Icons should generally be square, and have the same width and height. If it is not, fuji will try to make it square, so it might look squished. Mod Icons are also special, in that they cannot be asset replaced. (although you shouldn't really need to do this anyway)
You may zip your mod in order to send it to others. To do this, go to your mod folder, select everything inside, right click, select "Send to", and click "Zip folder".
You can then upload the resulting zip folder. Users will put this folder in their game's Mods
directory to install your mod.
Warning
Ensure your mod zip is structured properly. It should be mod.zip/textures
, mod.zip/maps
etc. Not mod.zip/mod/maps
.