Hex Mapping Tutorial Version 0.2
Version 0.1
- First release of Hex Mapping Tutorial introducing basic .ADT mapping techniques of replacing and removing Doodads and WMOs
Version 0.2
- Map Chunk Height Modification info added
- Added Texture Data Before WMOs and Doodads
I - Texture List and Texture Swapping
A Texture is an image used to paint the surface of the map. Open up your .adt file in Hex Editor and search for text string "XETM" and view the list. Either change the texture path in the hex editor if the desired new texture is a smaller pathname...if not make an MPQ file containing replacements to these textures.
II - WMO and Doodad Editing Introduction
A WMO is a model used for purposes like buildings in World of Warcraft. A Doodad is a smaller model used mostly for scenic purposes such as trees, bushes, rocks, etc.
Opening a .adt file in a hex editor with a ASCII Text Viewer function you can find near the beginning of the file a list of .mdx files which contains the file path of all Doodad Models used on the map. Following this list will be some hex code and empty byte cushioning (00 bytes, or "empty" bytes) and then a list of .wmo files. This of course is the list of all WMOs used in the map. This is where you will edit the model of the Doodad / WMO or completely remove it from the map.
Throughout the tutorial we will be using Razor Hill in Durotar and the surrounding area south of Orgrimmar in the examples. The following section will be modifying the .WMO file for the Orc Tower east of Razor Hill as the example...here is the original image.
III - WMO and Doodad Removal
Open the .adt file (example is world\maps\kalimdor\kalimdor_40_31.adt) in a Hex Editor (I use Hex Workshop) and search for the .mdx or .wmo file you want to remove from the map. The example is "orctower.wmo" I found this out by using Some White Guy's WoW Map Editor. Searching for orctower.wmo brought me to a string in the hex file "world\wmo\kalimdor\buildings\orctower\orctower.wmo" which is the path to the model of the Orc Tower. In the Hex View replace a few of the bytes to random HEX code (making an invalid filename). Save the new .adt file and pack it into a patch-?.mpq and check it out.
!NEW! - To jump to a list of all WMOs used in map search for the text string "OMWM"
To jump to a list of all Doodads search for text string "XDMM"
IV - WMO and Doodad Replacement
Open the .ADT file and search for the .mdx or .wmo file you want to remove. The example is "orctower.wmo" Go to the Text View at the area of the .wmo or .mdx file path (world\wmo\kalimdor\buildings\orctower\orctower.wmo). Replace the text with a file path of new .wmo but the FILE PATH MUST NOT LEAK PAST OR REPLACE the "." (or 00 Empty Byte) at the end of .wmo or .mdx file. If the file path for new .wmo is not the exact same length than replace to remaining bytes in Hex View with "00". Pack the patch-?.mpq and do it big!
Orc Tower replaced with a small hut...food stamp camp :-P
V - Terrain Editing (Map Chunk Height Modification)
Open up your .adt file in Hex Editor and find the text string "TVCM" and it will take you to the first map chunk height table. The bytes following TVCM define the height values of sections in the map chunk. You will need to search GOOGLE for "Float to Hex" and download a converter to get 4-byte Hex codes of FLOAT values (the value type used to define an axis X/Y/Z in WoW).
All float values are 4 bytes.... i.e. a FLOAT value of -25143.725 in HEX form is "C6 C4 6F 73"
Try copying and pasting different 4-byte segments into the converter to see if you find the start of the chunk height table. (if it produces a wierd result like -3.54444e+013 it is not the right start byte...
The start of the actual height data rests 4 bytes after the Text String if you can do it that way :-P
I modified every float value in a single chunk to raise it and make a hole to fall beneath ground here are the results.
Not to good of an explanation, if you dont understand wait until the release of ADTH3x0r
-PROLOGUE-
As always when there is an update I will bump and change thread topic so keep checkin back people.....+rep wouldn't hurt ;-)
DO NOT ASK WHERE TO GET THE TOOLS TO DO THIS STUFF OR A MODEL EDIT FIX I DO NOT KNOW...USE THE SEARCH FUNCTION AND I USE WOW 2.2.3 ANYWAY I ONLY EDIT PRIVATE SERVERS.