One Step From Eden's modding support extends to several data files that can be read and interpreted to add new functionality to the game.
The files are in two main locations:
One Step From Eden\OSFE_Data\StreamingAssets\Data and in modding folders. The files located in Data are from the vanilla version of the game. 
- 1 Types of Natively Supported Files
- 2 Base Searched Files
- 3 Extra Files
Types of Natively Supported Files[edit | edit source]
- Lua files are used for logic implementation, through objects exposed by MoonSharp.
- .dll files are used for logic implementation, through Harmony's patching. There are no extra .dll files in the base game, aside from those needed for the game to run.
- XML files are used for entity implementation and to use behaviors declared with the two above files.
- .png files are used for graphical implementation. They are used with XML files.
Base Searched Files[edit | edit source]
XML Files[edit | edit source]
XML files are used to instantiate entities and give them properties. Whether writing new content or overwriting vanilla content, XML files must use the name of an existing file in order to be parsed.
Artifacts.xml[edit | edit source]
Artifacts.xml contains every single artifact in the game.
Battles.xml[edit | edit source]
Battles.xml contains locations and prefabs of enemy spawns.
Enemies.xml[edit | edit source]
Enemies.xml contains all the enemies in the game, including bosses.
Heroes.xml[edit | edit source]
Pacts.xml[edit | edit source]
Pacts.xml contains every single pact in the game.
Spells.xml[edit | edit source]
Spells.xml contains every single spell in the game.
Structures.xml[edit | edit source]
Structures.xml contains every structure in the game.
WorkshopItemInfo.xml[edit | edit source]
WorkshopItemInfo.xml contains metadata for Steam Workshop mods. As per its description, it has no base game counterpart.
Zones.xml[edit | edit source]
Zones.xml contains information about what regions can appear in the game, and what enemies can spawn in it.
Lua Files[edit | edit source]
Any Lua file in a mod directory will be parsed by the game upon mod load.
Artifacts.lua[edit | edit source]
Artifacts.lua contains Lua functions for artifact effects.
Effects.lua[edit | edit source]
Effects.lua contains Lua functions for many of the effects called by Artifacts.xml.
Lib.lua[edit | edit source]
Lib.lua contains many Lua functions that are used by other Lua files. This is intended to be the primary library of Lua files.
Spells.lua[edit | edit source]
Spells.lua contains Lua functions that are used for spell actions.
Extra Files[edit | edit source]
NAME.png[edit | edit source]
NAME.png contains image data. It is called ingame by an item with the same itemID or being with the same beingID. For example, if Sniper was the base spellID, the game would look for a file called Sniper.png. The directory it looks in is dependent on whether it's from a mod (root mod directory) or the base game.
NAME_AnimInfo.xml[edit | edit source]
NAME_AnimInfo.xml contains animation data by calling several images.