-
Notifications
You must be signed in to change notification settings - Fork 7
everest.yaml Setup
An everest.yaml is a file within your mod that tells Everest information about your mod it needs to be able to load and run it. If you want to make sure your yaml is structured correctly, use the everest.yaml Validator 🔗. You can also find an example to get you started at the bottom of this page.
This specifies the name of your mod internally so the update checker can identify your mod between updates. It doesn't have to match the name of your mods zip file, but it does need to be unique and remain consistent between updates, so make sure you get it right.
The version number of your mod - this should usually start out at 1.0.0 and be incremented for every update you push. Typically, patches and hotfixes increment 1.0.X, minor changes increment 1.X.0, and large updates increment X.0.0. This isn't a hard rule though, and you are free to increment as you see fit. You can also read the Semantic Versioning 🔗 guidelines if you wish.
If your mod contains custom code, this field tells Everest where your DLL file is located within your mod structure - it should look like the path from the Code folder all the way up to YourCode.dll. If you don't have a DLL, omit this field; if you have multiple, you have to set up a multi-yaml. Declare each as its own mod, and make your main mod depend on each. An example of this is provided at the end of this wiki page. Having multiple DLLs is the only reason you would ever have multiple Name fields in one everest.yaml.
Mods or helpers your map depends on to load, including Everest itself. If your mod requires a specific version or higher of Everest or another mod, you should specify it - otherwise you may leave them as 1.0.0 and Everest will just require that you have it installed.
These dependencies get loaded before your mod only if the user already has them installed and they are the version you specify or higher - they aren't required to play it. This is particularly useful for adding support for the Randomizer mod.
- Name: YourModName
Version: 1.0.0
DLL: Code/YourCode.dll
Dependencies:
- Name: Everest
Version: 1.0.0
- Name: FakeModForSecondDLL
Version: 1.0.0
- Name: SomeHelper
Version: 1.0.0
OptionalDependencies:
- Name: Randomizer
Version: 1.0.0
- Name: FakeModForSecondDLL
Version: 1.0.0
DLL: Code/YourCode2.dll
Dependencies:
- Name: Everest
Version: 1.0.0Home
Contributing
FAQ
Useful Links
Your First Custom Map
Your First Texture Pack
Mod Setup
Custom Maps
Texture Packs
Uploading Mods
Generated Dialog Keys
Reference Code Mod 🔗
Vanilla Audio IDs
Vanilla Decal Registry Reference
Vanilla Player States 🔗
Character Dialogue
Character Portraits
TextMenu Reference
Monocle Reference
Mod Structure
Debug Mode
Debug Map
Command Line Arguments
Environment Variables
Install Issues
Common Crashes
Latency Guide
everest.yaml Setup
Mapping FAQ
Map Metadata
Vanilla Metadata Reference
Adding Custom Dialogue
Overworld Customisation
Entity & Trigger Documentation
Custom Entity List 🔗
Camera
Useful Mapping Tools
Custom Tilesets
Tileset Format Reference
Stylegrounds
Reskinning Entities
Skinmods
Decal Registry
Chapter Complete Screen
Custom Portraits
Adding Custom Audio
Advanced Custom Audio
Cassette Music
Troubleshooting Custom Audio
Code Mod Setup
Making Code Mods
Settings, SaveData and Session
Everest Events
Understanding Input
Logging
Cross-Mod Functionality
Recommended Practices
Mod Updating Guide
Custom Entities, Triggers and Stylegrounds
Lönn Integration 🔗
Custom Events
Adding Sprites
Adding Preexisting Audio