ok since so many people have been having issues understanding the mpq problems, i thought id explain how the game loads some of its data. First off the game will load the base Mod Mpqs. so it will load
Mods\Core.SC2Mod -> Mods\Liberty.SC2Mod -> Mods\LibertyMulti.SC2Mod -> Versions\Base{Highest Number} -> map mpq
The only problems with this is that with out current loader approach, the game does not override certain elements right with the gamedata in the map mpq. Currently, things without ids, such as CardLayouts, and StartingUnitArrays do not get properly overwritten by changes, and are instead duplicated. You can test this by taking a map, and adding the RaceData.xml to the Base.sc2data folder. when you get in game, there will be duplicates of all the starting units, because the game reads the map's racedata.xml's startingunitarray as seperate from the one inside the other mpqs, and duplicates it. Currently the way around this is to create a new folder in the Versions folder with a number less than the lowest patch. Copy everything from the highest patch into it, and then put a patch.sc2archive that has blank gamedata files for the ones you need to edit. then in the command for launching the launcher, specify the version number you used for the folder.
Thanks for the resource! However something is still not working..
It all has to do with the AbilData.xml
No matter how many blank files in any versions in any or all or some mpq's, no matter what I do, when I place the AbilData.xml into my GameData folder to mod it along with the others (UnitData, WeaponData, UpgradeData), it still creates triples of every unit.
The game doesn't start off with triples like the RaceData problem. It just builds triples of everything. I cannot seem to find a fix for this and no one has mentioned it as being a problem yet. Again, whenever I place the AbilData.xml into the GameData folder is when the problem arises. This problem does not happen with any of the other .xml files. I can mod UnitData, WeaponData all day long with no problems. When I add AbilData.xml, the game starts off with 1 Hatchery/Nexus/Command Center and the normal starting units, but when I build anything, it comes in 3s.
Any help would be greatly appreciated as it has taken me a great amount of hours to narrow it down to AbilData being the problem.
ok since so many people have been having issues understanding the mpq problems, i thought id explain how the game loads some of its data. First off the game will load the base Mod Mpqs. so it will load
Mods\Core.SC2Mod -> Mods\Liberty.SC2Mod -> Mods\LibertyMulti.SC2Mod -> Versions\Base{Highest Number} -> map mpq
The only problems with this is that with out current loader approach, the game does not override certain elements right with the gamedata in the map mpq. Currently, things without ids, such as CardLayouts, and StartingUnitArrays do not get properly overwritten by changes, and are instead duplicated. You can test this by taking a map, and adding the RaceData.xml to the Base.sc2data folder. when you get in game, there will be duplicates of all the starting units, because the game reads the map's racedata.xml's startingunitarray as seperate from the one inside the other mpqs, and duplicates it. Currently the way around this is to create a new folder in the Versions folder with a number less than the lowest patch. Copy everything from the highest patch into it, and then put a patch.sc2archive that has blank gamedata files for the ones you need to edit. then in the command for launching the launcher, specify the version number you used for the folder.
A more concrete example:
In the patch.SC2Data you have the file UnitData.xml containing
Now in the map itself you have a UnitData.xml containing
The game will first launch the patch UnitData.xml and then the map UnitData.xml. This is what he is going to load:
Notice that there are 2 CardLayout instead of one. The game only uses the first one. All our modifications are not being taken in account.
To fix this problem a simple solution is to put a blank UnitData.xml inside the patch.mpq. So there will be no more conflicts.
Thanks for the resource! However something is still not working..
It all has to do with the AbilData.xml
No matter how many blank files in any versions in any or all or some mpq's, no matter what I do, when I place the AbilData.xml into my GameData folder to mod it along with the others (UnitData, WeaponData, UpgradeData), it still creates triples of every unit.
The game doesn't start off with triples like the RaceData problem. It just builds triples of everything. I cannot seem to find a fix for this and no one has mentioned it as being a problem yet. Again, whenever I place the AbilData.xml into the GameData folder is when the problem arises. This problem does not happen with any of the other .xml files. I can mod UnitData, WeaponData all day long with no problems. When I add AbilData.xml, the game starts off with 1 Hatchery/Nexus/Command Center and the normal starting units, but when I build anything, it comes in 3s.
Any help would be greatly appreciated as it has taken me a great amount of hours to narrow it down to AbilData being the problem.
Thanks
I think I replied to you in teknogods, but I'll do it again to solve any future problems with any other future modders.
It appends data that doesn't have id's (or indexes maybe) rather then overwrites it.
Examples are <StartingUnitArray> <CardLayout(s)> <Unit value="unit"/>
just add index="0" attributes to all those.
<Unit value="Zergling" index="1"/>