In many custom mods for StarCraft: Brood War, I have seen custom units present; they even had fully custom overlays, rather than simply unused ones. A good example of this would be the Black Sun Battle Station from Legacy of the Confederation:
How does one go about editing unit graphics to make a custom unit like that? For instance, I would like to make a custom unit that looks like a ZSU-23-4 "Shilka"
I reckon that a reasonably close approximation can be done by replacing a normal Siege Tank's turret with a Covert Ops, adding on a few Goliath autoguns, and maybe a Comsat dish. Except, how does one actually modify unit graphics in such a way? What would I actually need to do to make those changes to unit graphics?
None.
You will need to pull out the frames of the units (extract from your MPQs using PyMPQ, open and extract the grp frames with PyGRP), then edit them (called "kitbashing") in photoshop or some other equivalent. I use CS6 and it works well enough. Once you've made your changes, convert back to the sc unit palette, save your frames, import them to a new grp using PyGRP, and import that new grp into your mod file using PyMPQ. Bear in mind that it has to replace an existing graphic and it will use that graphic entry's linked iscript in images.dat. Your animation code (iscript) will need to be edited with PyICE, most likely.
I get the following error when I try to export any frames of a grp file, and the export fails:
Exception in Tkinter callback
Traceback (most recent call last):
File "Tkinter.pyc", line 1404, in __call__
File "PyGRP.pyw", line 702, in exports
File "PyGRP.pyw", line 18, in grptobmp
TypeError: isstr() takes exactly 1 argument (2 given)
What does this mean?
Post has been edited 1 time(s), last time on Apr 12 2019, 12:27 am by Kolokol.
None.
It means something is breaking in PyGRP
If it runs and displays the image, odds are your PyMS setup is fine. I'd recommend redownloading to make sure you have the latest version (zerg here:
https://github.com/poiuyqwert/PyMS)Could also be an error in your settings file that was introduced by the latest version though, so if that still doesn't work, you can try this outdated but potentially more functional version (neiv here:
https://github.com/neivv/PyMS/tree/aise)If you still have no luck after those, I'd post in the PyMS thread (copy and paste your error here:
http://www.staredit.net/topic/17719/)