Modding Support Status

From Ardenfall Wiki
Revision as of 21:12, 19 July 2026 by Joshcamas (talk | contribs) (Created page with "Since the game isn't even out, naturally modding is in a VERY early state. Practically everything could change, so please don't get too attached to your mods at this stage. Modding support will be broken into a few stages. The first stage, Pre-EA, is focused on just getting the bare minimum fully working and with high ease of use ASSUMING you know how to code. After EA we will continue to flesh out modding features, with a focus on adding visual tools to make creating...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Since the game isn't even out, naturally modding is in a VERY early state. Practically everything could change, so please don't get too attached to your mods at this stage.

Modding support will be broken into a few stages. The first stage, Pre-EA, is focused on just getting the bare minimum fully working and with high ease of use ASSUMING you know how to code.

After EA we will continue to flesh out modding features, with a focus on adding visual tools to make creating mods easier and faster, with less digging through code.


Here is a overview of features and their statuses. This is by no means a comprehensive list, and anything 'Under Consideration' is just that: not guaranteed to be added.

Feature Description Status
Core Mod Loading Mod manifest, enabling, disabling COMPLETE
Mod Saving: Custom Data Serialized and deserialize strings to a save file COMPLETE
Scriptable Lookup Table Modification Add and modify assets in the lookup table COMPLETE
Mod Generator Simple tool to get started with a new mod COMPLETE
Core Mod Asset Importer Core asset importer feature to be used across many importers COMPLETE
Static Model Importing Importing of static GLTF models COMPLETE
Texture, Audio Importing Importing of textures and audio files COMPLETE
Misc Item Importing Importing of simple misc item COMPLETE
Child Item Importing Importing of child items COMPLETE
Melee Item Importing Importing of melee items COMPLETE
Code-Based Quest Support Very clunky quest creation via code COMPLETE, Not documented
Code-Based Dialog Support for Quests Very clunky dialog creation via code. COMPLETE, Not documented
Very basic graph viewer A very basic (and ugly) viewer for your dialog / quest graphs. Is not an editor, as it can only view. COMPLETE
Blender Rig Ship the blender rig to make it easy to create new armors and clothing. PLANNED
Armor Item Importing Importing of armor. Will require some way to create ClothingAssets as well, potentially another importer? (This would mean we need a multi pass importer system, *shiver*) PLANNED
Item Importer 2.0 Currently all items are importing with a very simple importer, with each entry hand picked. This is not ideal. Seems like a much better way to go about it would be to have each item be its own JSON file, and then create a generic scriptable object importer that can overwrite values. PLANNED
Simple Modding UI Currently the main way for mods to display UI is through dialog or the Alert system. Both are quite limited.

The Moddable UI System would allow for new simple UI’s to be introduced, with the ability to create more complex interfaces, such as buttons, data lists, scrollbars, etc. They could support being opened via keybind, through interacting with an object, or some other way.

PLANNED
Lookup Table Tooling
  1. Need a way to invalidate lookup table values, whenever a mod refreshes. This can be done via a cache index.
  2. Need better tooling to find IDs of assets
PLANNED
Warn if mods aren't loaded correctly When loading a save, and the save has a mod enabled that is no longer enabled, it should show a warning. PLANNED
Mod Settings: JSON Add support for mods to have a json file for settings, to allow the mod users to tweak the mod. PLANNED
Tool: Position Debugger Little tool that tells you where a position is in the world. Useful to figure out where you want to spawn items. PLANNED
Remove enum for item slot Currently item slots for characters is an enum. This is not mod friendly.

It should be ported to a scriptable object.

PLANNED
Mod Dependencies Ensure mods can rely on others.

Mod dependencies can declare whether they must be loaded before, or any time.

PLANNED
On Quest Start / Stop Hooks Obviously any logic in a modded quest doesn’t need to be (and really shouldn’t) be part of the graph, but instead be in your code.

Add hooks to on quest start / stop.

PLANNED
Code-Based Dialog Support without Quests Support injecting dialog into characters without involving a Quest PLANNED
Tool: Item Editor A visual editor to edit / create items. UNDER CONSIDERATION
Tool: Item List Editor A visual editor to edit / create item lists. UNDER CONSIDERATION
Tool: Full Node Editor A true editor for graphs. UNDER CONSIDERATION
Tool: SpellData / Spell Creation Currently spells can be created via code. (Not documented).

This tool would allow for spells to be created visually.

UNDER CONSIDERATION
Tool: NPC Editor Currently you can edit NPC’s via code.

This tool would allow you to edit/view NPC data visually.

UNDER CONSIDERATION
Patch Mods Mods are designed to be added “on top” of ardenfall’s codebase. This allows for hot reloading, easy disable/enable, and less issues when updates occur. Patch Mods would be a separate type of mod, that would actually overwrite the actual source code of Ardenfall, similar to Harmony. (In fact, we'd use Harmony to do this). This would take more effort to get working, and could break whenever a game update happens, but would allow for "Skyrim Script Extender" sort of modding platforms that the community could build if they desired. UNDER CONSIDERATION
Simple Dialog API Create a way to make a dialog graph SUPER simply, without all the fancy connected stuff.

Example:

CreateTopic(“What’s up?”).AddSpeak(“Nothing Much!”).Run(myMethod).CloseDialog();
UNDER CONSIDERATION
Mod Settings: Main Menu UI Make mod settings modifiable in the main menu, not just through a json file. UNDER CONSIDERATION
Custom Hair, Beard, Brow support Make it easy to set up new hair, beard, brows in the creation menu. UNDER CONSIDERATION
Custom Skills / Attributes / Traits Support Make it easy to set up new skills, attributes, and traits in the creation menu. UNDER CONSIDERATION
Custom Race Support Make it easy to set up a new character race in the creation menu. UNDER CONSIDERATION