Brief modding wishlist

  • Documentation needed for Lua functions: The basics. syntax, return values, and descriptions.
  • More gameplay systems exposed to Lua: For example, the entire Minigame class appears to be hardcoded, so we have no idea how StartLockPicking, StartDice, and StartHerbGathering work, and there’s no way to change or extend these systems.
  • Object-oriented scripting: Instead of overriding base game scripts, we should be able to “patch in” changes through inheritance. This will help prevent conflicts between mods and game updates.
  • Localization: Instead of overriding the entire localization table for a language, we should be able to add and override strings dynamically. This will help prevent conflicts between mods and game updates.
  • Source code: I know this is a long shot, but it would be nice if most of the source code was released. For example, Microsoft released the source code for the .NET Framework but not enough to build the solution. A similar approach could be taken here. This would tremendously help more advanced modders and modding tools developers.
3 Likes

More on localization:
Apparently, we cannot add localized strings unless we override the entire language XML PAK. It would be extremely useful if the localization system supported mods.

Also, the current localization system could use another improvement: template substitution variables that can reference game data, such as buff param values, would eliminate a lot of extra work for both modders and Warhorse developers.