Progress has slowed slightly, and I’ve been mostly bug-fixing and adding GUI bindings to existing functionality. This has bought the modder to a pretty significant milestone though, it is now able to be used to mod the game! All DDT formats are now supported too.
Mod HQ now displays items in a explorer-like file browser, and double clicking items will automatically convert and extract the item, and launch your default editor. After editing, it will pick up when the file changes, reconvert the file, and add it back to the .BAR file. I’ve tested if it works correctly with AOM, and I was able to change the hitpoints of the town centre by opening the modder, clicking Data Files, double-clicking protox.xmb, changing the hitpoints from 2800 to 50, saving, and opening AoM. I then went on to villager rush and won the game pretty fast :P.
Can load: BAR, DDT, XMB
Can save: BAR, XMB
Unsupported: BRG, SCN, SCX
Random map scripts (.xs)
Random map generation
Basic environment / entity / component framework
This functionality is split over two separate projects, with the Proto.xml parsing not currently compatible with the game simulation, and it will be quite difficult to integrate the two projects. After learning more about how the AOM engine works, I’ve realised that the current game code is far more complex and flexible than it needs to be (entirely component based), so I am thinking it may be better to recode it work how it appears to work in AOM (a super unit class that contains most of the behaviours present in the game, and smaller components for more specific functionality). The problem with this approach is that I wouldnt be able to extend the game or use the code for a new game as easily as otherwise.
Also the shadow is gone for now, so that the window can be resized, runs faster, and will have better compatibility. Might add it back in later.