• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!

Bug in the MDX 1100 parsing by ThompZon and Twilac

Hey. I did not finish reading through it yet but I was reviewing the MDX 1100 support added by @ThompZon and @twilac to consider possibly adding my own support into Warsmash which uses a similar parser and so theoretically could copy from them. But as I was reading through it, I realized that the @ThompZon fork of mdx-m3-viewer on GitHub makes a bad assumption about when a material is HD versus SD and I started to think that my exploit format models that were created to exploit the MDX1100 format and bring back the old appearance for Naga buildings in custom SD maps would not parse with this updated parser.

Sure enough, it seems that I was correct, and I was able to upload a model to Hive models section now that can't View in 3D at all, even though in game it's literally just a fixed version of the SD building "Tidal Guardian."

Here is a link to the un-view-able model:

In case it helps with testing, here are more buildings in the exploit model format:

This is a model format that cannot be saved to from any public version of Retera Model Studio, so if you open and save the models their binary structuring would be lost. They were specifically crafted to fire off code pathways in the Patch 1.33 and beyond so that the model would look like a working version of how the assets were meant to look, instead of the ingame assets on Patch 1.33 and beyond which are broken. In general, I am against bringing attention to this exploit format because I am partially afraid that Activision Blizzard would gobble up these models in the exploit format and include them in the game itself and then claim to have fixed the render system without actually fixing it, which would be a net loss for the community versus if those guys just actually fixed the game.

But, for as long as the exploit remains relevant and the game's naga buildings are broken, there will probably be other people who figure out this same exploit format of model even if I don't give it to them. So you want the viewer to be able to parse all assets in all formats, even if its a hexedit type of jank format that will only exist for about a year hopefully.

Edit:

This video that was made to hopefully help explain to whoever works on Warcraft 3 now that they should fix this stuff (if they ever happen to see it), briefly highlights around time 07:09 the origin of the custom assets linked above, and what they are doing in a technical way:
 
Last edited:
if you set the material to have 5 layers with the same texture
Almost but not exactly because of how the mdx1100 format is. These are not 5 layers but 5 repeating datas within a layer that don't have a name in the format that I know of. So it's like having a Layer with 5 assigned textureIDs, not a Material with 5 Layers. The concept of these multiple assignments didn't exist before mdx1100 back when there were only Materials and Layers since back then each Layer had only one TextureID
 
Top