Hi forum,
I’m currently setting up a project designed specifically with modding in mind. I wish to create modding capabilities through XML means that can be integrated into game logic.
I wish to create a mod loader tool in Unreal Engine that patches up the released game with the mods it finds. I would (probably) like to be able to build .uasset files and tell my original game to use them and/or modify .uasset files already present in the game. To do this, I’d have to have an XML parser that reads the data inside the XML file and modifies or creates .uasset files as it reads the code defined within the modded game’s XML file.
My question is this: is it possible to create such a tool with Unreal Engine, which automates the process described in, for example, here so the tool handles all the work we could manually do by clicking various build options and such?
I wish to create a mod manager that has the effect of not requiring modders to have or learn to use Unreal Engine 4 to mod my game. Preferentially, they need to only know how to structure their XML files so my mod manager can read them properly and convert their data into assets readable by the game.
As an example, I have units in my game that are sprites which use a ‘white’ file that describes certain areas of their clothing to be blended into a specific colour at run-time. For example, my character’s sprite has a white shirt with sleeves that could have any of the colours white, green or blue. I want my modders to be able to create an XML file that has the following format:
<modA:crew>
<modA:appearance>
<sleeveColour r="255" b="0" g="0"/>
</modA:appearance>
</modA:crew>
This code will be interpreted by the mod loader and find in the appropriate XML file for the game asset the entry “crew” and start adding the code described within the mod XML in Append mode. This means it adds any tags and code inside in the appropriate place in the game’s XML file.
The resulting XML file to be used by the game will look like this:
<crew>
<stats>
<health max="150"/>
<repair speedMultiplier="2" effectivenessMultiplier="1.5"/>
</stats>
<appearance>
<sleeveColour r="0" b="0" g="0"/>
<sleeveColour r="0" b="255" g="0"/>
<sleeveColour r="0" b="0" g="255"/>
<hatColour r="50" b="200" g="20"/>
<sleeveColour r="255" b="0" g="0"/>
</appearance>
</crew>
As can be seen, the tag ‘<sleeveColour>’ described in the mod was added to the crew’s <appearance> tag and the now fully functional crew’s description XML enables the modded game to have crew members that can have a white shirt with red sleeves.
Is this sort of game structure feasible in any way and if so, could you point me in the direction I need to go in order to facilitate this?
Thank you very much,
Shrooblord