Introduction to MOD

来自部落与弯刀Wiki

1. Functions of MOD

Sands of Salzaar is open to MODs. The structure of the game allows expansion functions to be added. You can realize the following functions with our tool:


1.1 Add new elements to the original game, which includes new stories, factions, heroes, soundtracks, units, map elements, and artwork.

1.2 Adjust values of different aspects—battles, economy, rules of the world, starting composition etc.

1.3 Change default materials. You can use more attractive images of characters or import new minion units, heroes, and models of Bosses.

1.4 Use the framework of Sands of Salzaar to create a new scenario, a story of the “three kingdoms”, for example.

1.5 Attach plugins to one scenario, which can be an expansion pack of heroes, stories or items, extra missions, or new rules and functions of the in-game world.

1.6 More to come……


After developing your MOD, you can upload it to the Steam Workshop to share it with your friends or players around the world; you can also copy the files and send the MOD to others. As long as the recipients have downloaded Sands of Salzaar, they can experience the content you created.

All in all, just let your mind go wild, create tons of entertaining content within the structure, and share them with others.


2. Differences Between Scenario and Plugin

This game includes two kinds of MODs: Scenario and Plugin. A Scenario refers to a piece of playable content, a game that can be run independently—like how the original Sands of Salzaar is a scenario; a Plugin is an expansion that can be added to a specific scenario or the original scenario; it can modify characters, units, and abilities, add mission enhancement and item expansion elements, as well as specific character classes.


3. Structure and Basic Concepts of MODs

3.1 One Scenario and Multiple Plugins

The game depends on a scenario to run. Although only one Scenario can be selected at a time, multiple Plugins can be added to supplement it, which means that plugins cannot run on their own.

Relationship between a Scenario and Plugins


3.2 Loading Sequence of MODs

There is a loading sequence of MODs. The game will first load a Scenario, and then the following Plugins according to their configurations’ sequence. If two similar elements are defined, the plugin loaded last will override elements modified by the previous one.

When designing your MOD, you can define their dependencies (which MOD must be loaded before itself). By doing so, even if a player configures a wrong loading sequence on the configuration interface, the correct sequence will come into effect when the game starts.

MOD调用顺序示意图


4. Cross-Platform Possibility and Programmable Expansion

Our game is released in the il2cpp format, which means its code cannot be viewed with C# decompiling tools, like dnSpy. You cannot insert customized code in a hook to create an advanced MOD.

As we are considering to bring this game to both mobile devices and consoles, we hope that all MODs can be loaded on different platforms (without additional programming). In this case, we offer a unified development environment and syntax. Please code your MOD following our format.

Currently, in our configuration tables, we have a set of logic and syntax, which resembles programming but is much easier to understand.

We are also considering about publicizing our programming interface of Lua, opening up more potential for MOD development. Let’s wait and see!


5. Problem Report

If you meet any problem, you can discuss it with other players in the MOD developer community on Steam—Sands of Salzaar—Discussions.

You can add a [MOD DEV] tag in the title of your post so we can take a look and reply in time.