11 Mart 2012 Pazar

The basics (Warcraft III v1.19 and above, v1.17 and below)

This lesson will teach you how to make any protected map (without the "crash editor" exploit) editable by the editor. As EWELoader was programmed with the Warcraft III World Editor v1.18 offsets in mind, other versions of the editor will not work with it.
Important notice: I have been recieving complaints that this method does not work, because no triggers are shown in the editor. Please allow me to clarify, this method makes the map open in the editor. In order to edit the triggers, you must edit war3map.j yourself.
#1 Open the map in PowerMPQ or WinMPQ.
#2 Using the MPQ editor, extract the following files from the protected map, depending on your needs:
• war3map.j from "\war3map.j" or from "scripts\war3map.j" depending on how the protection was implimented. This file stores all data on regions, triggers, preplaced units, starting positions for players, ect.
• war3map.wts from "\war3map.wts." This file holds the strings and is not necessary to extract unless you are preserving triggers which used strings in their GUI triggers. If you are wonderring if this is the case, extract the file, then when you have unprotected the map as per this tutorial, run the map and see if any in-game strings are missing. If this is the case, then you need to follow these directions with one step further, importing the string file into your map.
• war3mapmap.blp from "\war3mapmap.blp." This file holds the in-game minimap. It also holds the preview minimap if there is no "\war3mapmap.tga."
• war3mapmap.tga from "\war3mapmap.tga." This file should always be exported, because it is the custom minimap preview. Don't export it if you don't want a custom minimap preview.
• Special Case: any other files that don't begin with "war3" are custom imports. If you don't see a "\war3map.imp" and you see these files, it means you will have to export them all, then reimport them into your map with Import Manager using the path they had in their original place.
#3 Delete the file "war3map.wtg" from the map.
#4 Merge the war3map.wts and war3map.j files with String Merger, save the output as a new war3map.j to import into the map.
#5 Using Import Manager on your map opened with the editor, import the files previously mentioned in step two, except war3map.wts. You must import them into the root path, meaning that after importing them in Import Manager with the dialog, you must edit their path entry and delete "war3mapimported\" so that, for example, "war3mapimported\war3map.j" becomes "war3map.j" and do it for each file except the special case mentioned in step two.
#6 Save the map. It might ask you if you want to place the player starting locations. This happens when the war3mapunits.doo file is corrupted in the protected map, and you must import a fixed war3mapunits.doo. Just have the editor automatically place those locations. It doesn't matter where they are placed, as the war3map.j file you imported from the protected map has the correct positions, and those will be loaded when the map is loaded in Warcraft III.
#7 If you want to edit the triggers, you must edit war3map.j and reimport it into the map.

The basics (Warcraft III v1.18):
This lesson will teach you how to make any protected map (without the "crash editor" exploit) editable by the editor. There are two parts, one in red and one in white. The white is for beginners or people who just want the minimal knowledge of how to do it, the red gives a more technical view of the operation.
Important notice: I have been recieving complaints that this method does not work, because no triggers are shown in the editor. Please allow me to clarify, this method makes the map open in the editor. In order to edit the triggers, you must edit war3map.j yourself.
#1 With EWELoader, open the map editor.
EWELoader allows you to skip an important step: opening the map in WinMPQ or PowerMPQ and deleting the corrupted war3map.wtg, as well as fixing war3mapunits.doo if it too is corrupted. These two files are required by the editor to load any map; war3map.wtg can simply be deleted if it is corrupt (as done with protection) and war3mapunits.doo can be fixed by taking the war3mapunits.doo file from any map without protection, even one with no preplaced units or buildings (as war3mapunits.doo is used by the editor only to load preplaced units, buildings, items, ect.). PowerMPQ is useful because it has the ability to use existing listfiles to detect filenames in an MPQ archive without a listfile. This means guessing the filenames and checking with a hex editor, or loading a generic listfile, is a thing of the past.
#2 Using PowerMPQ, extract the following files from the protected map, depending on your needs:
• war3map.j from "\war3map.j" or from "scripts\war3map.j" depending on how the protection was implimented. This file stores all data on regions, triggers, preplaced units, starting positions for players, ect.
• war3map.wts from "\war3map.wts." This file holds the strings and is not necessary to extract unless you are preserving triggers which used strings in their GUI triggers. If you are wonderring if this is the case, extract the file, then when you have unprotected the map as per this tutorial, run the map and see if any in-game strings are missing. If this is the case, then you need to follow these directions with one step further, importing the string file into your map.
• war3mapmap.blp from "\war3mapmap.blp." This file holds the in-game minimap. It also holds the preview minimap if there is no "\war3mapmap.tga."
• war3mapmap.tga from "\war3mapmap.tga." This file should always be exported, because it is the custom minimap preview. Don't export it if you don't want a custom minimap preview.
• Special Case: any other files that don't begin with "war3" are custom imports. If you don't see a "\war3map.imp" and you see these files, it means you will have to export them all, then reimport them into your map with Import Manager using the path they had in their original place.
It is important to understand what you are doing here. Since you can't currently rebuild the JASS into GUI, you have to use what was exported by the editor before it was protected as the JASS code that runs the map. This means that instead of using the GUI trigger editor to edit triggers, and the GUI unit preplacement window, you have to manually edit the JASS file war3map.j in a text editor now. The strings file is also preserved in case the JASS file had strings that were stored into it upon building the map's war3map.wtg. Finally, I preserve the minimap only because the start locations in the minimap preview will appear random or placed differently from the protected map in the preview, unless you explicitly replace them according to how they were in the war3mapunits.doo file.
#3 Using Import Manager on your map opened with your patched editor, import the files previously mentioned in step two. You must import them into the root path, meaning that after importing them in Import Manager with the dialog, you must edit their path entry and delete "war3mapimported\" so that, for example, "war3mapimported\war3map.j" becomes "war3map.j" and do it for each file except the special case mentioned in step two.
This step is a kind of "trickery" for the editor. Because it first saves the strings file, the map preview, and the scripts file (but not necessarily in that order), then it saves the imports, you are actually just deleting those files it generates and are replacing them with the versions found in the protected map. It does this every time you save the map.
#4 Save the map. It might ask you if you want to place the player starting locations. This happens when the war3mapunits.doo file is corrupted in the protected map. Just have the editor automatically place those locations. It doesn't matter where they are placed, as the war3map.j file you imported from the protected map has the correct positions, and those will be loaded when the map is loaded in Warcraft III.
As mentioned earlier, the player locations, pre-placed unit locations, ect are all in the protected map's war3map.j file anyway, so any missing data in the editor relating to that is already taken care of.

"Unit data missing or invalid" Fix:
This lesson will teach you how to bypass this simple protection that gives the aforementioned error.
#1 Using PowerMPQ, import the following file into the map: war3mapunits.doo.
#2 You may now open the map. Be aware that you will need to follow "The basics" if you want to preserve triggers.

World Editor freezes while loading a map:
This lesson will teach you how to bypass a simple protection that Vexorian's Map Optimizer creates called "Make WorldEditor Crash."
#1 Using PowerMPQ, import the following file into the map: war3map.w3i.
#2 You may now open the map. Be aware that you will need to follow "The basics" if you want to preserve triggers. Also note that you will have to readjust the map's name, description, author, and possibly other map properties.

Importing/reimporting files with an MPQ editor crashes the map:
This lesson will teach you how to bypass a CRC check that Warcraft III performs on maps. Upon failing that check, the map crashes, this is particularly annoying if you wanted to import a modified war3map.j into the map using WinMPQ, for example.
#1 Using an MPQ editor, delete the file "(attributes)."

Map crashes the editor, possibly your favorite MPQ editor too, when opening it:
This lesson requires you to have a hex editor, to repair a damaged part of the map.
#1 Open the map with your favorite hex editor, preferably one with a "Goto Offset" feature.
#2 Go to the hex offset of 204. This must be entered as a hexadecimal value, it is not decimal, if you want decimal, try offset 516. If you still can't find it, look for the first text that says "MPQ" then one byte after that.
#3 In the byte, not text, portion of the hex editor, type "20000000" or simply replace the next four bytes at that offset with "20" and three "00" bytes.
#4 If you still experience problems, it either means the offset you edited was wrong or that the map has other protections in it.

Hiç yorum yok:

Yorum Gönder