Halo Wars: Definitive Edition

Halo Wars: Definitive Edition

Zobrazit statistiky:
Halo Wars Modding Tools
I have released an update to my Halo Wars Modding Tools.

This update introduces better EXE patching support (should handle future game updates), as well as a tool to validate some of the game data files, in the event that you've made typos or such.

Here is a slightly older tutorial[kornnerstudios.blogspot.com] on modding building commands to get you started. It was made when only the Windows Store version was out, so you can skip to step 5.

I'll keep an eye on this forum for tool problems, but for more immediate help I suggest joining the modding discord channel https://discord.gg/UjfYKAN.

Enjoy and Keep It Clean :)!

EDIT: Changed link to 2017.06.20 release
Naposledy upravil kornman00; 23. čvn. 2017 v 8.59
< >
Zobrazeno 1630 z 72 komentářů
Designing maps will come, eventually...it's no simple feat, and there is other lower hanging fruit to grab for development in the meantime, sort to speak. Eg, creating editors for leaders, squads, etc data. That's accessible to more people than creating maps.

Halo Wars was the first RTS Ensemble did where the map editor wasn't built into the game itself.
kornman00 původně napsal:
Designing maps will come, eventually...it's no simple feat, and there is other lower hanging fruit to grab for development in the meantime, sort to speak. Eg, creating editors for leaders, squads, etc data. That's accessible to more people than creating maps.

Halo Wars was the first RTS Ensemble did where the map editor wasn't built into the game itself.
but ya'll think its *possible* to make it yourselves
Yes, but I can't commit to a specific time frame. I work in the games industry for a day job, so I have to put up with programming and crunch on other work too :p
kornman00 původně napsal:
Yes, but I can't commit to a specific time frame. I work in the games industry for a day job, so I have to put up with programming and crunch on other work too :p

Awesome stuff, really appreciate your efforts with the tools you've created and released so far. Keep em coming when you have spare time available :)
So far I've modded min camera Zoom level to 20 and max to 200, feels nice, also in the same game.cfg file in the startup folder I've commented out the intro cinematics for a speedy launchup, Just as A. Soldier has done I've edited the leaders.xml to slightly buff up the pop cap, also in gamedata.xml I edited corpses to stay slightly longer than usual, changed a 3 to a 9 and they disappear slower now, then I've edited Marine and Grunt Squads to contain more varied units as you upgrade them, at max upgrade a Marine Squad holds four marines (potentially different as they're referred in the files with different names and entries), two medics (one is basic, other is potentially different odst version) and two odst helljumpers, the Odst version contains four odsts and two marines instead. Grunt Squads hold two plasma pistol grunts, two elites, three needler wielding grunts plus the deacon.
To get this all to work you had to do some extra work, had to edit techs.xml file to stop it from converting all grunts into needler-wielding ones and all marines from turning into odst variants, by commenting out the TransformProtoUnit lines, but not the TransformProtoSquad lines, those were still important. Also had to edit in the objects.xml file smaller Pop values for grunts, marines elites, so that a full squad wouldn't come over 1, because then they couldn't garrison anything.

I like my mixed looking squads, looks nice, also added a third Jackal and FlameMarine into their respective squads.
BTW, you can add the Rebel sniper easily into a marine squad, only reason I didn't keep one in my squad after testing out of curiosity was because the sniper looks aesthetically out of place, they don't belong in that squad.

Example Squads.xml:
<Squad name="cov_inf_grunt_03" formationType="Flock" dbid="3677"> [...] <Units> <Unit count="2" role="normal">cov_inf_eliteLeader_01</Unit> <Unit count="1" role="normal">cov_inf_grunt_01</Unit> <Unit count="1" role="normal">cov_inf_grunt_02</Unit> <Unit count="2" role="normal">cov_inf_needlerGrunt_01</Unit> <Unit count="1" role="normal">cov_inf_needlerGrunt_02</Unit> <Unit count="1" role="normal">cov_inf_gruntDeacon_01</Unit> </Units>
Example Techs.xml:
<Tech name="cov_grunt_upgrade2" type="Normal"> [...] <!-- <Effect type="TransformProtoUnit" FromType="cov_inf_grunt_01" ToType="cov_inf_needlergrunt_01" /> <Effect type="TransformProtoUnit" FromType="cov_inf_grunt_02" ToType="cov_inf_needlergrunt_02" /> -->
Example Objects.xml:
<Object name="cov_inf_needlerGrunt_01" id="0" dbid="192"> [...] <Pop Type="Unit">0.1</Pop>

Only highlighting the relevant stuff, don't want to completely drown you all in useless info in this topic of all places.
That's just what I've done for my own enjoyment, not sure what I'd try next for fun.
Nathan původně napsal:
So far I've modded min camera Zoom level to 20 and max to 200, feels nice, also in the same game.cfg file in the startup folder I've commented out the intro cinematics for a speedy launchup, Just as A. Soldier has done I've edited the leaders.xml to slightly buff up the pop cap, also in gamedata.xml I edited corpses to stay slightly longer than usual, changed a 3 to a 9 and they disappear slower now, then I've edited Marine and Grunt Squads to contain more varied units as you upgrade them, at max upgrade a Marine Squad holds four marines (potentially different as they're referred in the files with different names and entries), two medics (one is basic, other is potentially different odst version) and two odst helljumpers, the Odst version contains four odsts and two marines instead. Grunt Squads hold two plasma pistol grunts, two elites, three needler wielding grunts plus the deacon.
To get this all to work you had to do some extra work, had to edit techs.xml file to stop it from converting all grunts into needler-wielding ones and all marines from turning into odst variants, by commenting out the TransformProtoUnit lines, but not the TransformProtoSquad lines, those were still important. Also had to edit in the objects.xml file smaller Pop values for grunts, marines elites, so that a full squad wouldn't come over 1, because then they couldn't garrison anything.

I like my mixed looking squads, looks nice, also added a third Jackal and FlameMarine into their respective squads.
BTW, you can add the Rebel sniper easily into a marine squad, only reason I didn't keep one in my squad after testing out of curiosity was because the sniper looks aesthetically out of place, they don't belong in that squad.

Example Squads.xml:
<Squad name="cov_inf_grunt_03" formationType="Flock" dbid="3677"> [...] <Units> <Unit count="2" role="normal">cov_inf_eliteLeader_01</Unit> <Unit count="1" role="normal">cov_inf_grunt_01</Unit> <Unit count="1" role="normal">cov_inf_grunt_02</Unit> <Unit count="2" role="normal">cov_inf_needlerGrunt_01</Unit> <Unit count="1" role="normal">cov_inf_needlerGrunt_02</Unit> <Unit count="1" role="normal">cov_inf_gruntDeacon_01</Unit> </Units>
Example Techs.xml:
<Tech name="cov_grunt_upgrade2" type="Normal"> [...] <!-- <Effect type="TransformProtoUnit" FromType="cov_inf_grunt_01" ToType="cov_inf_needlergrunt_01" /> <Effect type="TransformProtoUnit" FromType="cov_inf_grunt_02" ToType="cov_inf_needlergrunt_02" /> -->
Example Objects.xml:
<Object name="cov_inf_needlerGrunt_01" id="0" dbid="192"> [...] <Pop Type="Unit">0.1</Pop>

Only highlighting the relevant stuff, don't want to completely drown you all in useless info in this topic of all places.
That's just what I've done for my own enjoyment, not sure what I'd try next for fun.
make this into something we can install easily and post it
MS-14A Gelgoog (Zabanován) 30. dub. 2017 v 17.39 
kornman00 původně napsal:
Designing maps will come, eventually...it's no simple feat, and there is other lower hanging fruit to grab for development in the meantime, sort to speak. Eg, creating editors for leaders, squads, etc data. That's accessible to more people than creating maps.

Halo Wars was the first RTS Ensemble did where the map editor wasn't built into the game itself.
Actually Korn how would you even achieve custom maps? Is there a way to get them to load or would it be like old HPC modding all over again where people are overwriting maps to get stuff done?

Honestly a bit excited to see you moving again around Halo
Nice work and break down Nathan! You may wish to join the Discord channel to discuss this and other mods with interested parties https://discord.gg/UjfYKAN

MS-06Fz Zaku II Kai původně napsal:
Actually Korn how would you even achieve custom maps? Is there a way to get them to load or would it be like old HPC modding all over again where people are overwriting maps to get stuff done?

Honestly a bit excited to see you moving again around Halo
Thankfully, the Halo Wars engine is a little more data driven in this regard. There's a file, "data/ScenarioDescriptions.xml" which lists the various scenarios. This file would just need to be updated, and a .ERA file with the same name as the scenario would need to be built.

One issue with this is that this files lives in root.era, which contains a lot of other global data (all the squads, techs, etc). So a tool will probably need to be made which can take the user's root.era, process that XML, then let them manually add or apply a special "patch" to update the scenario info as well as add a map image. Not hard, just more engineering work.

I'm excited there's another Halo game not only on PC, but also on Steam :)
MS-14A Gelgoog (Zabanován) 30. dub. 2017 v 18.26 
kornman00 původně napsal:
Nice work and break down Nathan! You may wish to join the Discord channel to discuss this and other mods with interested parties https://discord.gg/UjfYKAN

MS-06Fz Zaku II Kai původně napsal:
Actually Korn how would you even achieve custom maps? Is there a way to get them to load or would it be like old HPC modding all over again where people are overwriting maps to get stuff done?

Honestly a bit excited to see you moving again around Halo
Thankfully, the Halo Wars engine is a little more data driven in this regard. There's a file, "data/ScenarioDescriptions.xml" which lists the various scenarios. This file would just need to be updated, and a .ERA file with the same name as the scenario would need to be built.

One issue with this is that this files lives in root.era, which contains a lot of other global data (all the squads, techs, etc). So a tool will probably need to be made which can take the user's root.era, process that XML, then let them manually add or apply a special "patch" to update the scenario info as well as add a map image. Not hard, just more engineering work.

I'm excited there's another Halo game not only on PC, but also on Steam :)
intresting, though wouldn't this cause potential issues if things get swapped around. so UNSC are flood or something would that have issues if a user downloaded the map but their files weren't configured for it?

Also speaking of Halo on PC thoughts on that attempt to revive H2V?
MS-06Fz Zaku II Kai původně napsal:
intresting, though wouldn't this cause potential issues if things get swapped around. so UNSC are flood or something would that have issues if a user downloaded the map but their files weren't configured for it?

Also speaking of Halo on PC thoughts on that attempt to revive H2V?
Yeah, there's always chance for data collisions.

One thing I haven't tried to test yet, which would be a work around, is adding a file that's normally in root.era, say "data/leaders.xml", to another map (say, blood_gulch.era) and making a change (giving Cutter more unit pop). If I recall correctly, all the data is reloaded on map change. The question then becomes: does the game pick the leaders.xml in blood_gulch first, or does it pick root.era? If the former, it could work in the same way as Halo where each map has a copy of the globals tag.

If such a method works, I could easily tweak the ERA manifest file (.eradef) that my tool uses to support a "rename" value. So your mod could use "cool_mod_leaders.xml" and then the tool would rename it to "leaders.xml" so the game loads it instead, all the while not interfering with other mods you may be working on. This would of course complicate future tools, though, so I have to be careful about what I want to deal with supporting later as the tools and pipelines mature.

And no, I don't want to deal with H2V. I barely have enough time for HW and another project outside of work as it is.
MS-14A Gelgoog (Zabanován) 30. dub. 2017 v 19.40 
kornman00 původně napsal:
MS-06Fz Zaku II Kai původně napsal:
intresting, though wouldn't this cause potential issues if things get swapped around. so UNSC are flood or something would that have issues if a user downloaded the map but their files weren't configured for it?

Also speaking of Halo on PC thoughts on that attempt to revive H2V?
Yeah, there's always chance for data collisions.

One thing I haven't tried to test yet, which would be a work around, is adding a file that's normally in root.era, say "data/leaders.xml", to another map (say, blood_gulch.era) and making a change (giving Cutter more unit pop). If I recall correctly, all the data is reloaded on map change. The question then becomes: does the game pick the leaders.xml in blood_gulch first, or does it pick root.era? If the former, it could work in the same way as Halo where each map has a copy of the globals tag.

If such a method works, I could easily tweak the ERA manifest file (.eradef) that my tool uses to support a "rename" value. So your mod could use "cool_mod_leaders.xml" and then the tool would rename it to "leaders.xml" so the game loads it instead, all the while not interfering with other mods you may be working on. This would of course complicate future tools, though, so I have to be careful about what I want to deal with supporting later as the tools and pipelines mature.

And no, I don't want to deal with H2V. I barely have enough time for HW and another project outside of work as it is.
If it's the same as Halo where everything has a it's own version of the global tags built into it would save time. Any way of seeing what loads first with what you have now or would you need to build something else to handle that?

Also kinda laughed at the last bit, bad memories with H2V which I can understand, lotta disappointment with that and you and the other guys on Halomaps and Modacity tried to fix something that was essentially a pre-mature birth of a launch
MS-06Fz Zaku II Kai původně napsal:
If it's the same as Halo where everything has a it's own version of the global tags built into it would save time. Any way of seeing what loads first with what you have now or would you need to build something else to handle that?

Also kinda laughed at the last bit, bad memories with H2V which I can understand, lotta disappointment with that and you and the other guys on Halomaps and Modacity tried to fix something that was essentially a pre-mature birth of a launch
Yeah, it wouldn't be too difficult to test which loads first.

I just feel like, as-is, H2V doesn't have much remaining growth potential, already has loads of documentation, and it already has usable tools (official and unofficlal). Halo Wars on the other hand, just came out and there's active interest in people wanting to mod it but the tools and information aren't/weren't there for them to do so. So, in a sort of cost/benefit analysis I view HW as the more worthwhile and rewarding game to work on.
Also, there's new tools update out (updated link in the original post)
Duke it out původně napsal:
make this into something we can install easily and post it
Done.
Nathan původně napsal:
Duke it out původně napsal:
make this into something we can install easily and post it
Done.
Nice Nathan, Thats awsome, Off topic, can you accept my friend request?
< >
Zobrazeno 1630 z 72 komentářů
Na stránku: 1530 50