Frotty and I had a hell of a time debugging really strange techtree and object data behavior that arised because I set some units with strings like 'f000', 'f001', 'f002' etc, and some abilities with 'F000', 'F001', 'F002' etc.
- wc3 only treats a capitalised first letter for changing heroes to units, any other use can be problematic
- in general, mixing 'f000' and 'F000' object IDs is allowed, but for techtree requirements and other situations seems to be undefined behavior (widgetizer for example will really muck this up)
- There seems to be some safe cases, for example where techtree requirements are not involved but a unit 'c000' has ability 'C000' - that seems to work, but in general this is risky business
I propose we augment the wurstscript objediting subsystem to do some compiletime checks on all the values passed to objediting as asciiInts and raise a warning for any time when a unit, hero, or item mixes 'zAAA' with 'ZAAA'.
@lep might be interested to join this discussion?