If you are good with Programming, you can use .dat Parsers to add all your changes to the most current .dat file and run a script that adds all your mod data.
There are primarily 3 .dat Parsers that I know off (these are links):
Genieutils
(for C++)
Genieutils-py
(for Python)
and the upgraded one (more orgarnised data structure instead of the nonsensical original one, but I use genieutils-py so I cant tell you more)
Genie Dat Parser
(also Python)
As I have already said I only use genieutils-py and it serves my needs, and to get started on that one I recommend this example repo (but if you are expierenced, Genie Dat Parser is overall better - I think):
genieutils-examples
(using genieutils-py with examples)
Essentially what all of these do is to change the .dat to add your modded and changed values, add units and what not.
I have used this to create my own Mod called “Better Land Warfare” - Promotional Video
and from there I always keep the mod updated (using github and git as version control) everytime a new patch comes around. If there is a new DLC its a bit harder (roughly like 2-3 days) till compatibility, but overall if everything goes right, I do everything that I wrote in the readme.md file, run the script and then upload the mod.
So here is my repo
- its a bit complex, I am not that good at coding, but there are lots of discords and other modders that can help you out (and if anything is too hard for me, I unfortunately have to use the VSCode AI Chat)
I used genieutils-examples as a very nice guide and then added additonal features on top of it. I also do json editing so my new units show up in the Tech Tree, as well as Tech Tree Preview, future unit UI and more.
Maintaining it, can be some work but if it is something you think is worth it, go for it. Unless the devs change some backend stuff, it is mostly smooth sailing. I will actually announce my newest Update for BLW fairly soon since I added the last new unit and Supplies back (I am procrastinating as I speak).
Since I wanted to give something back to the community I followed the lead of Krakenmeister (creator of genieutils-examples) and added comments to almost everything - but overall this is a step-up to his program.
My repo includes:
- Editing Tech Tree json files
- Adding Units and Techs (and effects of course)
- Adding Tech Tree Info
- Adding Icons
- Adding Armor Classes
- Using preexisting hotkeys for your units
- Adding projectiles
- Adding Unit Graphics
- Adding Sounds
- Adding Tasks
- Adding modded strings.txt
- Altering more json files needed for new units (techtreepreviewpanel, unitcategories.json, unitlines.json, icons.json and materials.json)
- Some File management (moving files with Python)
- Extending his helper functions
There is still room for improvement, like automatically grapping the game files instead of me pasting them in after every major update (mostly DLC), and more advanced stuff like auto-upload (everything auto
)
But yeah, thats all - in theory if I stopped updating my mod, someone else could take over and continue my work.
P.S Dont ask me how to set up VsCode or you IDE with Python - I forgot and couldnt remember even if I wanted to.