Hi @ai-gamer! This is amazing stuff. Long ago I was big into WC3 (weren't we all), and it definitely played a fundamental role in my love for programming which ultimately became a career. Way back in the day I was enthralled with one particular custom map that didn't seem to get the attention it deserved, but I loved that custom game nonetheless. I only ever wanted to play it. I wanted so badly back then to open it and figure out how things were done and I wanted to provide improvements where I could. Sadly, I was never able to connect with the author, and now nearly two decades have passed by. I'm about 1.5 hours through on your masterclass video which is awesome and so full of information. Sadly, neither my efforts there nor my attempt at your WC3MapDeprotector have proved successful. Specifically I'm getting a "Main map file could not be opened". So far in your masterclass you haven't covered this edgecase, but I'll keep watching. I'm a big fan of OSS, and have authored a number of tools/libraries myself, so I'd love to support your work and throw you a coffee/beer your way if you could help point me in the right direction. I feel like I'm a perfect candidate for the spirit of deprotecting a map. Specifically, the maps aren't playable anymore in reforge so while I'd like to finally open and learn from the map for my own project, I would love to be able to fix these for the (albeit small) fanbase. Hit me back if you could spare a few minutes guiding me!
@@ai-gamer It's called S3 Marine Corps Survival. I was able to get a bit further since I posted. Seems like it's missing the doodads file now, but it works in game. I also had to edit some of the JASS to get it to load properly. There's another map by the same creator called S3 Marine Corps Infiltration and it's got 4 files it's struggling with. I thought I found the issue similar to the first one. I tried fixing it before WC3MD stitched it all together when it's giving me a chance to test play it so it can find the files. My edits don't seem to be making a difference so the map doesn't load into the test run. I can of course skip the test part, but then it creates a working but incomplete map. Specifically I think a lot (all) of the regions are missing.
Regions aren't going to be found by any scanning process. They're recovered by parsing the war3map.j file. It usually does a pretty good job, but if the script file is highly obfuscated it might miss some. If you can find an example of a missing region, let me know & I'll investigate. It's probably safe to forget about the unknown files. It's possible it's important, but the tool does a decent job of finding all the used files. Basically the MPQ archive uses a hash system to store the files, but protection deletes the index file, so we know the hash, but we can't de-hash it back to the original filename. The scanner looks at breadcrumbs scattered throughout the map to find clues as the what the real file name might be, but it's not perfect. If you look in %temp%\WC3MapDeprotector\S3 Marine Corps Survival v114.w3x.work\{{random}}\unknowns anytime before clicking "ok" on the deprotection completed popup, you can see the unknown files. After clicking "ok" the files will be cleaned up so you can't inspect them anymore. I'm seeing it as File00000199.tga. It looks like an icon of a trash can or pillar or something. So, the game will work fine without it, but if it's actually used you'll see a green icon. There's a decent chance it's actually not used at all and the map creator just forgot to delete it. The "live game scanner" should theoretically find it, because it monitors the WC3 exe disk access, so any file that's actually used will be found. Unfortunately, this map is completely broken on reforged & won't even load. My live scanner only supports reforged. So, if you really care about the 1 file, you can either try the brute force option & leave it overnight & hope you get lucky. Or you can get the old version of warcraft 3 up & running & use MPQEditor's live scanning tool, which does the same thing as mine but works on older game versions. For infiltration the unknowns were 2 tga files that both looked like completely blank alpha textures, so probably also unimportant. I'll comment on your other questions soon.
@@Voltechs I just released a new version of my tool with massive improvements. Maybe try it out again on those S3 maps & let me know if you still run into issues. I'd love the feedback. Thanks!
What mod ideas do you have for old broken maps? If I could resurrect and improve any dead map, which would you pick and what new features or spin-offs would you like to see?
Thank you so much for the program! Legend for making it Could you try resurrecting /maps/333518/ from epicwar? Would be cool to see this map updated with new ideas, and its a classic.
Mirana Wars Final (which is a protected map) has the leap ability locked because of an upgrade requirement, the leap is based on the berserk ability. This bug was introduced because of reforged. Well this bug is no more !!
Darwins Island 2.58A ? I haven't played it before, but I'll check it out. What ideas do you have for improvements to it? Is there something broken in reforged that was working before?
Thank you for this! There's a very small, but incredibly annoying bug in this 7 hero siege map I used to play a lot. One of the buildings you can construct has the Moon Glaives ability, but the original author forgot to change the AoE on the building so they never bounced! I like to play this solo because it's pretty difficult. That bug has been the one thing that's prevented me from actually finishing this map since it gets ridiculously hard in the end when you eventually need to make a push towards the final buildings. I opened it up and fixed the numbers and it works like a charm!
Thank you for making this Devin! I am using it to great success to mod/recreate maps and I am having a great time. Wouldn't be nearly as easy or possible for me without this fantastic tool! And very impressed with how consistently it works, especially when using in JASS mode.
I tried to open an old map I made in 2013, but it cannot restore the triggers. It was a pretty simple map with simple GUI triggers and no custom models or images, but I don't know what the hell I did that it cannot be unprotected haha. I also tried another map that my friends and I always wanted to edit but never could. This map is much more complex, and your program has successfully unprotected it, so, thank you!
Yes, I know how to fix it. It's a bug caused by reforged 2.0, blizzard will need to hotfix it However, there's a workaround. It's typically caused by protected maps done with older tools like w3xlni. They need to be re-protected with a different tool, such as w3protect.eu/ (free version is fine) I haven't found the root cause, I just know this protector doesn't cause the bug. Unfortunately, you can't re-protect an already protected map. If you're the actual map maker, you can use your original non protected version. If it's a dead map, you can deprotect with my tool and then re-protect it. - You'll want to do bug testing because my deprotector isn't perfect.
when i try to change something the map just breaks, tried to make war of races turbo version so everyone gets extra gold cause i feel its too slow, but when i change income off all players the map just breaks?, tried same with adding anything and it just breaks.
Usually that means the triggers weren't deprotected correctly. You'll have to extract the original war3map.j and the new one after saving and compare them side-by-side to see what was corrupted after saving. Unfortunately, it's a bit of painful manual work on some maps :(
I tried this for one of the latest Dota Maps but unfortunately it says: Exception has been thrown by the target of an invocation. Any idea what could help ?
The only reason why I want to deprotect maps is to make them single player compatible for my personel use only(hero defense maps needs 6 players). How long should deprotection take? I tried it on two maps and it wasn't done after 2 hours. The UI froze as well, so no more debug log updates after like 2 minutes. The memory usage changes going up and down.
That's a great reason to deprotect. It definitely shouldn't take that long, thanks for letting me know. I found a bug & just released a new fix. Can you download the latest & try again? Also, what map is it? Make sure you don't have "Brute force" checked, that's super slow. On my PC, which is very high end, it takes ~ 5 minutes for a very complicated map. It only takes 10 seconds for a very simple map. So, on average, I'd say expect between 1 minute and 10 minutes.
@@ai-gamer I tried with the new version same issue. All 3 maps that I tested are from enfos (Enfos_MT_V192a, Enfo's Team Hero v4.2, Enfo`s 1 Team v9.0 fix). I didn't used any of the extra options, I think the problem is with the listfile, I can't look into the bug myself right now, I don't have pc that supports vs2022 and .net core 8.
What version of the deprotector did you try? The latest version is v1.1.4.0 from github.com/speige/WC3MapDeprotector/releases/tag/v1.1.4.0 I just tested all 3 of those maps on that version & it was fast. Enfo's 1 Team Survival v9.0 Fix.w3x from maps.w3reforged.com/maps/categories/hero-defense-and-survival/9822/download Enfos_MT_V192.w3x from epicwar.com/maps/632/157802 Enfos Team Hero v4.2.w3x from epicwar.com/maps/876/218996 The deprotector finished really fast (less than 1 minute). What CPU do you have? How much available RAM (not total, but actually unused) do you have? The deprotector does use a lot of RAM - Only 1GB for these maps, but I've seen it go up to 4GB on more complicated maps. I plan to do some optimizations in the future, right now just focused on getting it working. If you're hitting 100% RAM usage while the program is running, try closing all your other programs. Even though Team Hero claimed to deprotect, it crashed opening the WorldEditor, so ignore that one until I fix it. The other 2 opened just fine in the world editor.
@@ai-gamer Problem solved: I installed win 10 on a vm, same hardware, but now it's working it seems like .net core 8 needs win 10 +, I haven't tested the deprotected map yet, but it finished deprotection under 1 minute for the smallest map.
I remember a few years ago i got hooked on a green td map that had a major bug in the middle waves. I tried sending an email to the map creator (there was an email in the quest log) but he never replied. If i had this tool i would have fixed the bug.
There's a map I like to play called civilization wars. In version 2.36 Beta C (266823 on Epic War) they added some units I like, but removed the attack on the healing units causing them to take control of lanes when I don't think they should. I wanted to add the attack back, but when I attempt to run the deprotected map in the world editor I get an error message saying "trigger data missing or invalid". As well, the deprotected map I've got cannot be run by warcraft in contrast to the protected version. Any help would be appreciated!
Weird, it's working fine for me. Are you using classic warcraft (1.31 or older) or are you using reforged? I only built my tool for reforged support. In theory you could try to downgrade the deprotected files down to an older version, but I haven't attempted that before.
I am using classic Warcraft, I was hoping that being able to open the base map, the deprotected version wouldn't have anything it couldn't handle, but I guess not. You have another longer video explaining how to deprotect manually, those techniques should work fine for classic Warcraft right?
Yes, those techniques should work with any warcraft version. Depending on the complexity of the map, it can be difficult & time consuming to do by hand. It gets easier the more you practice deprotecting other maps. This tool supposedly can downgrade to older version of warcraft, but I haven't tried it www.hiveworkshop.com/threads/map-adapter.326456/
It definitely should work fine on a laptop, as long as it's not 10 years old. Many people have tested it & used it without problems. I'm guessing you're doing something wrong, but I'm not sure how to help without seeing your computer screen. Maybe also try on a friends' computer, just in case it's an issue with your laptop.
@@ai-gamer I see there are a couple comments similar to that one where opening the batch says Windows cannot find 'WC3MapDeprotector.exe' make sure you typed the name correctly. The cause for this is downloading the source code instead of the program from GitHub and then trying to run that. which then gives you the aforementioned error. so if you get more of those comments in the future just tell them to download the program instead of the source code.
I've been getting compile errors about functions being outside the statements. But before, I wasnt getting any of it. I just had to remove recalled functions and that was it.
Sounds like you got it working. I'll try to make improvements in future versions so you don't have to fix the script functions manually. Let me know if you have any more feedback.
Please help! I tried your tool but the map doesn't work if I try with triggers. When I open the map in the editor, while loading the triggers it encounters an unexpected error and closes.
@@ai-gamer I lost the original map because my old laptop got bricked. I really want to continue to update the map, if you could help me! I think the problem might be a couple triggers where inserted code and didn't use GUI. But the majority of triggers are GUI.
@@WanderingNomad482 Unfortunately there are bugs in my deprotector that need to be fixed. It doesn't work with every map unfortunately :( Sadly I'm busy with other projects right now, so if you have the skills & time to research & fix the issue, feel free to submit a pull request to my github. Otherwise, I'd recommend trying a different map.
I think you need to right click & extract the zip file first before running the bat. There's a bug in windows if you just double-click a zip it doesn't fully extract.
I'm not sure why it's failing on that specific map. I'll try to fix it when I have time, but I'm a little busy right now, so it'll be a while. You may need to try a different map for now. Sorry :(
It should work. Try leaving it overnight, it's probably working and just takes a long time. Also, please try with other maps. If it's only 1 map that freezes, send me the map name & I'll research it. If it's failing on all maps, please try on a friend's computer, it may be a problem with your PC.
Unfortunately no. I had an experimental feature to convert Jass to GUI in an old version of my tool, but I removed it because it was really buggy. I need to improve it before I re-release it.
I got an issue, it doesn't work for me, i think i opened war3.exe instead of wororldedit.exe, i tried to remove all registry responsable for the app, but when i run the bat, it doesn't let me choose again for the worldedtir.exe, can you help on this please?
Look here: C:\Users\{{username}}\AppData\Local\WC3MapDeprotector There should be a user.config file a few folders down Let me know if that doesn't fix it.
andreafanmadeproject.blogspot.com/2015/02/mass-revision-league-of-legends-arena.html It's this map i try to deprotect, i tried some TD just to see if it works, and also tried on an unprotected map already, i mean not protected, i develop some maps already but i am looking for something new now and i remember this map which i would like to continue.
@@ai-gamer I tried with TD aswell or with an not protected map which i made for testing, just put 2-3 units etc, and it was the same, and about the PC, it shouldn';t be an issue, my PC is 6 months old and it's quite an good config, shouldn't be a problem.. Anything else i can try to make it work?
Strange. It definitely should work. Feel free to message me on discord. You could also try this Open this file in notepad and make sure your world editor has the correct file path C:\Users\yourusername\AppData\Local\WC3MapDeprotector\WC3MapDeprotector_Url_zxdl2damsarc0u4cersnztqwtflli4zw\1.2.3.0\user.config Open task manager & make sure there's no process with that same name running (maybe it's running in the background even though the gui isn't visible) Maybe I'll update the app to just close it for you if it's detected.
Thanks for this deprotection tool, it usually works really good. But there is this one map where it just dosent work I have tried it multiple times. It just freezes within the first 2-4 seconds (not repsonding) forever no longer how much I wait.
The map is not on epicwar, I just have it on drive. So if I cant send with link how can I get it to you? And its weird because the j file is easily accessible with the deprotector and models too etc, its just the world editor @@ai-gamer
huh ya ya discord doesnt seem to work neither i found link on main area of ya utube page but wont open up in discord starts to act liek it will but wont
I'll be doing a series of map editing tutorials soon. Don't be afraid to just play around with it & learn. The easiest option is to just click file/test map. You can also do file/save and then copy the file to your warcraft downloaded maps folder (usually in documents/warcraft III) You may have to fix a few script errors first, unfortunately. That's something I'm still working on improving. If the script errors are overwhelming, since it sounds like you're new to this, just try a different map until you find one which doesn't have errors.
Hello. Do you perhaps know how to work around "Trigger function does not exist in database" (ExecuteFunc, xtimer, etc.) ? I'm trying to open a map in reforged we, but the mapdeprotector is too invasive and changes a code a lot.
if you're wanting to deprotect a map manually, I have a video tutorial on that ua-cam.com/video/5OrON63GQkI/v-deo.html It's very complicated, so I suggest using my tool instead. Are you saying my tool changes the triggers a lot? Unfortunately, protection removes GUI triggers & sometimes obfuscates the jass, so it's really hard to re-create them perfectly. Maybe some day I can make improvements, but for now that's the best option. Deprotecting by hand will give you much worse triggers. If you found a specific bug in my tool, feel free to log an issue here github.com/speige/WC3MapDeprotector/issues Include the Epic War ID #
Im trying to open a map with the create visual/gui triggers option. It did but it said it missed 2 files. When I start the editor it loads but when its loading 308 of 367 triggers it stops working and doesnt loads the game. Is there a way to bypass this?
Don't use the brute force, it usually doesn't help. You can probably ignore the 2 files. Typically those are extra 3d models that were added to the map but never assigned to a unit.
What's the epic war id # ? (Don't give me the full url, or YT will delete the comment) I'd recommend using text triggers instead of GUI, for this map, until I have time to fix the bug. But, GUI does work for some maps.
@@ai-gamer what is the epic war id ? So I use the 2nd option of the program ?I used with no options and the map loaded but it got no triggers :[ and I want to learn the triggerS
I need the map file so I can reproduce the issue you describe. What is the map name? Go to epicwar.com, search for the map, if you find it give me the ID. If you can't find it, upload it, then give me the ID.
I think you mean undeclared variables in triggers? Before saving in world editor, extract war3map.j via MPQEditor, & open in notepad. You will find the list of variables at the very top between globals and endglobals. In a non-obfuscated map they will have prefixes gg_ for auto-generated and udg_ for user-defined. If the map is obfuscated you will have to determine the proper prefix manually. The gg_ auto-generated can be ignored. All of the udg_ user-defined need to be created under global variables in the trigger editor. This should be done by the tool but it may have made mistakes, so that's how you can manually correct errors.
I just made a new version of my tool with lots of bug fixes. Can you try it on the garithos campaign again & let me know if the trigger issues you were having is fixed? You might see an error about duplicated _DropItems functions, you can just delete or comment out the extra functions in the jass (forgot to fix that issue before I published my latest version, will fix it in the next one).
Hey! Incredible tool. Thank you for your contribution. I'm using it to try and pull off a fan translation of a map. I have a question, though. My Trigger Editor doesn't have any triggers or variables in it except GlobalGeneratedObjectManagerVariables, with or without experimental Visual triggers. The map loads and runs perfectly though. I'm wondering how I would go about replacing some of the triggers in the map in this case.
The triggers are there, just not in the traditional GUI format, only in JASS. In the trigger editor there's a tree with a map icon, then a trigger folder, then 2 GUI triggers. Click the map icon & you'll see a text editor labeled "Custom Script Code" on the right.
@@ai-gamer Oh, you are talking about the root of the trigger list? In my map, there is only 1 root -> 1 folder -> 1 GUI trigger. The GUI trigger is called "GlobalGeneratedObjectManagerVariables" and inside it is just some Circle of Power actions. It seems like it is missing from here
What I want to do is rebalance drop rates and items in an old game called master crafters I play with 2 friends every weekend, using your tool worked but it made the trigger editor a giant text when in the original world editor map it was organized with folders in intuitive way. is there a way to make the trigger editor organized like the original map again?
Unfortunately that's one of the flaws of deprotection. There is a setting for "GUI / visual trigger (experimental)" that tries to restore the original folder structure, but it doesn't work on every map. Usually the triggers will have compiler errors that have to be fixed. The easiest way to do what you want is to learn jass & then modify the war3map.j file directly. - That avoids the bugs in my tool when recovering triggers so you don't have to fix any compiler errors.
Are you sure you actually extracted it? I've only seen this when someone double-clicks instead of extracting. The exe is just in the subfolder next to the .bat so you should be able to find it, the .bat is just for convenience.
@@ai-gamer my bad, I found a comment here that had the same issues as me. I noticed that I had to go to the “release” then download it there, not just directly to the linked github page.
@@el33tkrew I thought you wrote a comment earlier, but maybe YT deleted it? I do have one question, I have my Warcraft 3 downloaded in a different directory and I just ran the deprotector and it gave me the error "The system cannot find the file specified" Where in the files could I change it so it directs to the directory of my warcraft 3 install location? If you know c#, it should be easy to fix if you download the source code off my github. If not, I should definitely make it configurable, I just haven't had time. A workaround would be to create something called a symlink junction with the command prompt cmd.exe program. You can google it. It's similar to making a shortcut, essentially you point the missing WC3 directory at your real install folder.
Also, if your WC3 is installed to a different location, you can just ignore the error, the next screen allows you to browse for the correct location. Also, this step is not mandatory, deprotection can succeed without it, there just might be a few missing 3d models.
Sorry, it's still a work in progress. I'll keep making improvements over time. For Doaa 6.83 LOD, I tested without visual triggers & it is working. So, hopefully that's better than nothing :)
@@ai-gamer I tried using your tool for Dota 6,38. After deprotecting it and trying to load in the editor..... it just gets stuck on "Loading Units" fills my SSD with a infinite size temp file ~60GB and crashes the editor. Lol.
Wow, that's super embarrassing :( Sorry about that. There's a form of protection that creates "fake" file entries in the MPQ archive. My program didn't handle that well before & would create a massive temp file while trying to extract the contents of the MPQ. I believe that issue is fixed now. If you decide to give it another chance, download the latest version of the tool & let me know how it goes.
Awesome work Devin! As programmer (mainly Python nowadays but I used to love C and Assembly) myself your story is inspiring. I have a question though. I noticed that you uploaded a full de protection guide about 6 months ago. I was wondering, how much of it is still relevant now that this tool is available? I am asking because I am having trouble restoring a map even with the de protection tool. The map just crashes with no error message at all. (I am interested in the map "Zombie Apocalypse:Wolfblood AI" mainly because I am curious about the ai and would like to improve it)
I have 2 older WC3 deprotection videos. I'd say both are still very relevant if you want to understand how deprotection works under the hood. - which since my tool is failing to work for your map, is probably necessary. In an ideal world my tool should just magically do everything without you needing any technical knowledge of WC3 internals, but unfortunately right now it can only do that for ~ 50% of maps and the others require manual intervention. ua-cam.com/video/5OrON63GQkI/v-deo.html - Manual deprotection with help of old/broken tools ua-cam.com/video/Og1bGnSEoy8/v-deo.html - Editing jass without deprotection
@@ai-gamer Thanks for the quick reply! I remember watching the 2nd video, and will also look into the 1st one. You just gave me some ideas on how to get started. I can probably just extract the jass file and re implement the ai in a similar map.
Yes, I think that approach should work. Let me know if you make any progress, I'm curious to hear about it. There is a built-in AI Module in the map editor, however I'm assuming they coded their own AI from scratch. I believe HiveWorkshop has code libraries to help with that. If you just want to make your own AI, the built-in module is a good place to start. It has a bunch of checkboxes & dropdowns for configuring the AI, all of that saves to a .wai file (but this file has no effect on the actual game, it's just for GUI purposes in the editor itself). After you're done configuring, it generates a separate .ai file which is the actual jass triggers based on your settings - This is the important file and should give you a good starting template if you want to make a custom AI.
@@victorvu8526 Re-Typing your comment because it seems to have been auto-deleted: Apologies if my comment is appearing multiple times, I had issues with replies not working and I'm not sure if you're able to see this) I made some progress but now I have another problem. Turns out your tool was more effective on an older version of this map, mza wolfblood (non ai 2014 version). So after de-protection I extracted the j of the ai map and re-imported them into my de-protected one. However, when I tried saving, I got some jass compilation errors like undeclared variables. I'm not sure what the correct way to fix these are but, when I tried opening the j file in vs code and went to the line noted, I did not see where the error was at all. I am suspecting that after attempting to save the world editor is writing new lines of code. However since saving the failed I am not able to see and fix the new errors. Ex: imgur.com/a/Dg9grVY Is there something that I’m doing wrong?
@@victorvu8526 UA-cam seems to auto-delete comments and I have no idea why. I've tried everything to disable it, but failed. The only consistent thing I've found is that it doesn't like when URLs are in comments. You're correct that the .j file is modified when you save in the world editor. Any units, trees, or doodads you add to the map are auto-converted to jass and injected into your .j file. Also, If you have global variables or multiple triggers in the trigger editor, those all get combined and injected into the .j file. It's common to have jass errors after deprotection. Unfortunately, the tools not perfect yet, so they have to be fixed by hand :( gg_ is the prefix for a global variable. snd is the prefix for sound. So gg_snd_te_1 is a global sound variable. If you click Module / Sound Editor you should be able to see all the sound files. My guess is my deprotection tool failed to recover one of the sound files. You can just grab any random sound file and rename it to te_1 to fix it If you go to this folder: %temp%\WC3MapDeprotector While my tool is deprotecting, you'll see all the files extracting. You should be able to look in the "unknowns" folder and find the real sound file and rename it to te_1 "Unknown" means it doesn't know the correct filename, but the file contents are usually still valid (occasionally it can be a fake file which will be corrupted) - You can test by playing it in any audio program. So, if you know the correct filename you can recover it manually.
This is amazing I've been struggling to make improvements to an old map that I really love to play with my friendss Bleach V One piece 13 , just want to add more heros I would totally pay you
The process should be the same with pre-reforged and reforged. Are you talking about making a new map or deprotecting an existing one? If making new, when importing a custom library like a custom RPG damage calculator/etc, the author of that library should have an explanation included with the package, in a readme.txt or something - Usually the instructions are to take their script, modify a few placeholder variable values, and copy/paste into a new custom script section in the trigger editor. If deprotecting, all of the JASS would have already been combined into one giant file (war3map.j) and its no longer broken into separate scripts for each library - It's difficult to separate the code & organize it at that point so usually you just have to try your best to read & understand all of it & edit it as one giant script, ignoring the fact that it once came from multiple library packages.
@@ai-gamer It is a map that is a few years old, first it would have to be unprotected, right? before combine the package with the map (i'm new to this). Another detail, i can't open custom maps because it takes me out of the map right after opening the lobby.
In warcraft frozen throne you just have to copy and paste the package in the indicated folder (with the map pasted of course). In wc3 reforged i think this way does not exist and the solution would be to combine the package and the map into one
If WC3 exits the lobby immediately after opening a map, it is either corrupted, or made for a different version of WC3 - You'll need to downgrade to an old version of WC3 (have to download via a torrent) or deprotect it & upgrade it to be compatible with reforged. It's technically a copyright violation to download an old torrent unless you own the original RoC/TFT discs (can purchase off ebay), but if you purchased reforged I don't think there's any moral/ethical dilemma since it's essentially the same game. Yes, if you're wanting to add a package to an existing map, you'll need to deprotect it first. If you have a map that can open in lobby but its protected, you can technically add a package without de-protecting. You just open in MPQEditor, extract the war3map.j file, edit in notepad (copy/paste package to correct location in file), then import into map via MPQEditor. - This allows you to edit the maps files directly without opening in World Editor, but the capabilities are limited because most files are binary format not human readable.
@@ai-gamer I have bought wc3 reforged, it is probably not compatible with the reforged version. I think the hard part is unprotecting it and updating the map to be compatible with wc3 reforged. To then combine the map with the package.
nice work, where can I download this tool(runtime)? I cant seem to build it on my visual studio by runtime I mean a build of this winforms application.
This works great on most maps for me but sometimes it starts the process of deprotecting it and gets to the point where it says "Extraction Complete" and then just closes. the map is called "Monster Savior" on hiveworkshop. any ideas whats going on?
Are you sure it was stuck? How long did you let it run? On simple maps it only takes a couple minutes, but on complicated maps it can take an hour. Do you have a new fast PC or is it old? I definitely need to make some improvements to speed up the tool, but I think it still works even if it's slow sometimes.
You have to extract the zip file. I think you just double-clicked to open it, which doesn't actually extract. Kind of a bug in windows but maybe I could make it more user friendly.
@@ai-gamer My bad, I did exctract the zip file but I figured out I downloaded the wrong one. The correct zip file was in the release section and I clicked on code and download zip.
i want open Dota 6.86 AI WC3MapDeprotector 1.2.0.0 warnings --->no anything Debug Log--->Decompiling war3map script file Waited for 5-10 minutes and still no response
On some maps it can be really slow. On my brand new PC the longest is 1 hour. On older computers it can be worse. Leave it overnight & I bet it will finish. I'll try to improve the speed in the future.
finally i can learn from awesome maps. its all times the same. average and good maps share their secrets/triggers but superior Maps play Gatekeeper. Thanks a lot for seeing the bigger Advantage instead of the Risk!!! I understand a few Black Sheeps could be horrible but i believe after all this Years the People that are still arround care for the Game and just search for Knowledge. Not all heros wear Capes , ty AI Gamer!
Sup bro! Maybe you can help me out with a map I'm trying to find! I remember that you start the game as a wisp and need to choose a hero by stepping in the TP in front of the one you want. When you step into it, you are teletransported for a map full of creatures and start to farm. I remember that at the very north there was a Tidehunter Ivl 30. The Medusa was very hard to kill too. When you die you go to a safe place, that you can but itens. I remember that the crystal Maiden have a spell that 6 waves of ice drops from the sky. And i remember too that Furion was a druid and his normal attack was big energy balls veeeeery slow! That is it. Do you remember play any map like this?
Haha. I put that intentionally in order to prevent non-map makers from stealing people's work or putting cheats in maps. I explain my philosophy in the disclaimer when the program opens. It's essentially a watermark to show that it's been deprotected. Yes, it can be removed, but no I'm not going to tell you how. A real map maker should know how to remove it easily :)
I wanted to make a Troll and Elves x8 for fun but when i looked in the trigger editor it had a few stuff, but basically all the code was missing. I'm not a coder myself but changing a few variables to gain more gold should be pretty easy. What could be the issue?
Are you using the GUI (Experimental) feature? That will definitely be missing trigger code. If you're using the default plain text triggers I've never noticed any missing code, in fact it usually produces duplicate code because some of the code is re-generated by the editor automatically on save. Full deprotection where you can save in the editor unfortunately still requires some manual work, but this tool gets you close. The purpose is if you're going to fully take over maintenance of a map through the editor. If you just want to make a minor code change, there's an easier way. Run the tool but don't open/save in the editor. Use MPQEditor to open the map, extract war3map.j or war3map.lua, edit in notepad, & replace with MPQEditor.
I just updated my tool with lots of bug fixes. Can you try it out again on that troll+elves map & let me know if the missing jass code is there now? Any other suggestions for improvement would be awesome. Thanks!
@@ai-gamer Hey, i tested the Troll & Elves map long ago when i wrote the comment above 3 weeks ago. I didn't realize i was looking at the variables; all i had to do was click the very top icon, but answering your question yes it does show. However when i tried deprotecting another Map with version 1.2.0.0 it would go through the process making me play test and such, but after play testing it would just stop responding and crash, so i'd have to manually close it. The odd thing is that i could deprotect the same map using version 1.1.6.0. Additionally the same map i deprotected would have half of its trigger function missing I.E completely empty trigger functions and the custom script is empty too. I think the script was written JassCraft so that's probably why it doesn't show.
@@Ottonary Which map is causing the freeze/crash? If you can send me the epic war map ID # (not the full URL or UA-cam will block the comment) Maybe leave it running while you eat dinner or something just to see if it's really frozen? Some maps take a long time.
@@ai-gamer I don't think the author posted on epic war map ID but i did run the program again on the same map and it works. It even shows the custom script code; it just took a really long time like you said. Previously when it was decompiling it would say "not responding" after a while, but this time the program would stay active but I'd have to manually click somewhere to for it to start deprotecting again. Also all the unit models and names were reset back to their default names, except their custom stats. So object editor would show a bunch of repeating units with the same names and icons.
It's a little complicated. You have to edit the JASS to find the username variable, hard-code it during the save function to your new value, & then use this hacked map to load your old code & re-save in order to re-generate it.
Im having some trouble deprotecting Trolls and Elves Final Version. The Deprotecter says its a succes and i am able to open the map in the editor. I can, however, not play the map. The game crashes when i try to run it (even if havent opened it in the editor beforehand). I am also not able to save the map in the editor and i am not able to fix manually as i dont have enough experience with jass. I did make it work with another map however, so thank you for this great tool !
Glad you got it working on the other map. You could try the "GUI/Visual Triggers (Experimental)" button, to see if that helps - That will help you avoid Jass, but it doesn't always work. Otherwise, you might need to study up on Jass or try a different map. Unfortunately, the tool doesn't work perfectly on all maps yet :(
I just published a big update to my tool. Can you try it with Trolls & Elves & let me know if any of the issues you had before have been fixed? Any feedback you have would be awesome. Thank you!
Thanks. Yes, this is brand new, written from scratch. I just finished coding it. It should work WAY better than the previous tools. Let me know how it works for you.
github.com/speige/WC3MapDeprotector/releases Is that where you downloaded from? The newest version is 1.0.1.0 If you extract the zip file it has an exe located at 1.0.1.0\WC3MapDeprotector.exs What antivirus are you using? It shouldn't have a Trojan virus. Can you log a bug on this page? github.com/speige/WC3MapDeprotector/issues You can upload a screenshot on GitHub issues.
@@polkulotznad3987 Strange. I just created a virtual machine with a fresh windows 7 install & the latest version of AVG. I didn't get any errors. Can you go to github.com/speige/WC3MapDeprotector/issues and upload some screenshots so I can try to reproduce it?
can you help with on map? Marvel TD Avengers 2008, i just want to change the lumber initial, to get it to the end. since 2012 trying to finish this map :\
ua-cam.com/video/Og1bGnSEoy8/v-deo.html - This video might help you as well, I show how to hack a different tower defense by allowing "greedisgood" type cheat codes, no deprotection necessary (just editing Jass directly inside protected MPQ file).
github.com/speige/wc3mapdeprotector Click "Releases" on the right side. Pick the latest version Under that click "Assets", then click "WC3MapDeprotector.zip"
Hey amazing tool, thanks so much! I just have an issue, when saving a map with world editor it complains of function redeclarations. I believe this has something to do with the .wct and .j files which have the same function names but they differ slightly, the functions in .wct are missing some lines of code. Is there a way around this? Saving the map corrupts it and makes it unopenable in warcraft 3 even if I don't make any changes. I've looked at the .j file and there are no duplicate functions so something else must be going on here.
As far as duplicate functions, unfortunately they have to be fixed by hand. The issue is map protectors take every function, inline them, change the order around, and obfuscate things. So, during deprotection I try my best to recover it. The issue is some of the triggers are auto-generated by the editor (for example when you drop a unit on the map it converts it to trigger code on save), & my deprotector isn't perfect at determining what's custom & what's auto-generated. If my tool mistakenly recovers auto-generated code, it'll cause duplicates on save. The reason the .j file doesn't have the duplicates is because you haven't saved yet. The wct is what you see when you're typing the code in the editor, the other is the .j file that actually executes at runtime. During deprotection I don't mess with the .j file, only the editor version, so the map should run fine after deprotection but might corrupt after saving. It's actually normal for wct to be missing some things, because it shouldn't have any of the auto-generated code. Hope that helps.
github.com/speige/wc3mapdeprotector Click "Releases" on the right side Choose the latest version. Click "WC3MapDeprotector.zip" Go to your downloads folder Right-click extract the zip you downloaded Open Launch_WC3MapDeprotector.bat
@@ai-gamer tevo Used the tool and loved it, reminds me of w3map Restorer Russian tool. Feedback: Preplaced units will always be doubled since script still contains the preplaced units script on top of the .doo file. Would be nice if it is automatically removed in the script under the _old init functions then those preplaced in the map would be automatically set to the udg_unit variables (same with rects). With this, the tool simply is the best map restoration tool to exist. +would be nice for automatic unhex script tool option
Do you have a link to the w3map restorer tool? I'd like to decompile it & see if there's anything valuable I can add to mine. You can't send links in YT comments, so put it in a github issue, if you have it. Can you give me more details on the "unhex" option? I think I already do that. Are you talking about the FourCC codes 'hpea' ? Those can be obfuscated like $######## or as an integer or even as ('hpea' + '0000'). I try to de-obfuscate those where I can. Do you have an example where it's not working, or are you talking about something else? As far as duplicate units, I'd love to fix that, but it's on the backburner right now because it's a complicated problem. Essentially, it has to be fixed by hand. The issue is with a protected map they take EVERY function called inside function main, inline them all, change the order around, and obfuscate things. So, I have to parse it back to the original. But, all of that code is auto-generated by the editor, so it really needs to be in native editor files like war3mapunits.doo, but in a proprietary binary format instead of jass. So, that recovery is complicated & not perfect yet. If I only recover part of the data, when you save in the editor, it'll regenerate function main & anything missing will be lost permanently. For that reason, I take the original function main & rename it to main2 so that it won't get overwritten. Then as a deprotector your job is to figure out what parts of main2 are duplicate & can be deleted and which parts to keep. It's kind of a pain unfortunately. The alternative is if I don't call main2 you won't have duplicate units, but you could have missing units instead (or missing sounds/etc). - I should probably add an explanation of that in the program log. Improving the jass decompilation & recovery is on my github issues, I'd like to get to it eventually but it's difficult & I have other priorities taking my time :( Thanks for the feedback. Let me know if you have any other ideas for improvement.
Strange. I'm happy to help research it with you. It seems to be working for most people. Have you tried with several different maps, or just one? Have you tried leaving it running overnight? Can you try on a friends' computer, in case it's something weird with your PC?
The tool doesn't work perfectly for every map. I just tested it on custom hero defense. GUI triggers aren't working for that map, so you'll have to edit the jass directly. Also, if you scroll around the render screen of the editor, you'll notice the terrain and doodads are there, but no buildings or units - So, it failed to deprotect that part as well. I'm still working on improving the tool, but unfortunately, it'll be awhile before it can do every map perfectly. If you want to edit this map, you'll need to really learn the internals of warcraft 3 & the editor, it won't be easy & will need solid programming skills. But, it's a great project to learn with if you're interested in that. If you're not up to the challenge, maybe try my tool on a different map or wait for me tool to get further improvements. Here's a video on how to edit a map without opening in the world editor at all: ua-cam.com/video/Og1bGnSEoy8/v-deo.html Here's a video on how to deprotect by hand, so you can learn the internals of the world editor: ua-cam.com/video/5OrON63GQkI/v-deo.html
Good luck! Assuming it's activated via sending a chat message, I'd start by searching the .j file or the text in the trigger editor module. If you're reading the raw jass, look for a function like TriggerRegisterPlayerChatEvent. If you're looking at GUI triggers look for something like "Player 1 (Red) types a chat message containing ...." If it's activated by an actual lever you have to attack with your player on the ground, I'd look at where the blue regions are drawn on the screen for clues. If you know what the hidden command is supposed to do (invulnerability or something), you could find the jass code that grants invulnerability and then work backwards from there to see what code calls that function. Let me know if you're able to figure it out. I'm excited to hear what you find.
It is sad. I really was existed when I found this. And yes it worked, I could open Natures Wrath I often play with 2 friends. I wanted to add something own and learn fromthe Triggers, because when it comes to trigger, I have no clue. But sadly, it seemed that they didn't survived the unprotection-
Did you try the "visual trigger" checkbox? If not, it only does the raw jass code. It doesn't always work. I'm still actively trying to improve the tool.
I just released a new version of my app with improved trigger recovery. Can you try it on Nature's Wrath again & let me know if the triggers are still missing?
It's not very likely, but theoretically possible. There are 2 ways I know of. Option 1: Malware can disguise itself as a fake file extension, but needs to be executed somehow. So, if you rename something like virus.exe to virus.w3x it's not really a warcraft map & Windows won't execute it by default, but if the virus creator can trick you into running it as an exe, it could run the malware. (This isn't specific to w3x, but virus creators often disguise things as different file extensions to trick people). Option 2: If it's a true w3x file it can only be opened by warcraft3 or a similar program (world editor, etc). Those programs will open the map file & execute it, however all of those types of programs are designed to only give the map access to what it's allowed to touch (game units, etc), so they shouldn't normally be able to harm your computer, at most they could help you cheat in game. However, c++ (which most games including WC3 are coded in) is susceptible to a bug called memory buffer overflow. Security researchers are always trying to patch these bugs, so the latest version of reforged is considered safe, until a hacker finds a new exploit. However, older versions of wc3 did have this bug. Map creators sometimes call this a MemoryHack. It basically allows the map to run any code directly on Windows, not just warcraft code inside the game. Typically map creators used this to add new features to the base game that aren't normally there. Popular maps like Dota used this. For example, saving your character to the Internet so you didn't lose your progress. I've never heard of anyone using this to create a virus, but it's certainly possible.
@@ai-gamer WoW you are amazing, thanks for the fast and lengthy answer and also the open source work you do. Its fascinating that throughout the long time warcraft 3 and custom maps have been around, nobody actually created some malwares embedded into these maps. Btw, just wanna ask some questions out of curiosity, like what is your occupation, im guessing some kind of CS profession, and also are you trying to make this youtube a full time thing, or just as a hobby, cause man the videos are really good quality?
There were definitely a lot of people that put "cheats" into maps. I'm sure a random malware exists somewhere, I just haven't seen it or heard about it. Thanks, glad you like my content. Sure, ask me anything you want. My profession is a software engineer. I build full-stack web apps. I've been doing this a long time (~ 25 years) bouncing around between a bunch of small companies in my city. My current preferred languages for business apps are C#, SQL, & Angular (TypeScript/JavaScript, CSS, HTML). But, I'd much rather be coding games, if I had the choice :) I would love to make UA-cam a full-time thing. My goal is to teach people how to code using video games. That's how I got my start (& it's a lot more fun than making business apps). Unfortunately, I gotta pay the bills somehow. Maybe if I hit the UA-cam lottery & get a lot of subscribers I'll be able to get enough ad-revenue to go full-time someday, we'll see :)
@@ai-gamer There is no way you can't get a solid game coding job with 25+ years of experience. Or is it that you want to make your own games? Because that was the only reason I didn't go into game dev, I don't wanna create other people's ideas, I want to create mine :D About the youtube career, I really hope it works out, 3 years ago I would have said that these type of videos wouldn't get much attention, because its such a niche. But in the last 2 years coding, programming and game development, is starting to become pretty mainstream, so I think you might actually have a good chance of "hitting the UA-cam lottery". Especially, if you keep making such good quality videos (even though I only saw 3 so far [but I loved all 3]). Also the 25+ experience really hits hard, cause I had professors with the same amount of experience, but weren't this good at explaining all the steps, and how things work. So I wish you all the best.
Thanks for the compliments. It motivates me to make more content! You're right, I could get a gaming job if I wanted. There's not many gaming companies in my area, so business apps was an easier path for me. Now that remote is popular I could re-consider it, but since the majority of my experience is in business apps, I don't want to start over climbing the corporate ladder in a new industry. I have made some very basic games on my own, but nothing noteworthy. For now my goal is to make game mods instead of full games & to teach people how to do it on UA-cam. Honestly, I just hope it helps people learn coding, even if it never earns me any $.
Good job on the program but I don't really see the point of your anti-cheat disclaimer. First of all, deprotection is intrinsically something that's been frowned upon for many years by modding communities and it's a taboo topic on many forums and for the right reasons. You don't need to deprotect map to cheat it as long as MPQ editors can open it so you can look into its map script and modify it and then import it back, this increases byte size and this is how you can differentiate between cheated and original map. Besides map protection some developers go to more extreme lengths and corrupt MPQ archive as well so you need to rebuild mpq, use name scanners, merge listfiles etc and then try to get as less unknown files as possible but you will always have some missing files in forms of models, sprites or doodads at the end of the day, especially on big maps. Deprotection is mainly used by other form of "cheaters", those who wish to steal the works of someone else as you mentioned, I suppose best word for them would be rippers since they look for specific parts of maps to reappropriate such as terrain or units. If a map has been protected then that means its original author doesn't want for his work to be used by anyone else. I think map protection is just silly cause modding should be distributed free and open source but that is their choice and we should respect it, if you want to continue their work then you try to contact them and ask for permission to edit and ask for them to send you unprotected source map. So with all that being said, what exactly do you mean by visual triggers? Are you claiming your tool can recover/restore GUI triggers? Because if so then honestly yes your tool is pretty much revolutionary because all other fail in this regard and this is key feature most people want for good or bad purposes but mostly bad since as I mentioned people who use deprotection do it do obtain map assets and code if possible and usually for their own interests. But anyway if you really figured out a way to restore triggers then hats off to you sir because with obsolete tools even if you successfully deprotected a map you'd still lose all triggers so essentially you could never really continue a map through deprotection means unless you are willing to rewrite the map from scratch.
Great points here. Yes, I mean GUI triggers. Still a work in progress, but it works on some maps. I agree deprotection is frowned upon, but I disagree that it's for the right reasons. I think it hurts the gaming community as a whole. Most popular maps were a result of gradual improvements over time from multiple authors and usually each transition to a new author required deprotection. You even said yourself that you think maps should be free and open source. I think that's how 99% of the community feels, just not the forum admins or map creators. I'm attempting to make a middle ground that protects the authors while still allowing modding. The disclaimer is simply to educate people on why deprotection is frowned upon. Teach people correct principles and let them govern themselves. If people understand what bad behaviors hurt the community, they will probably comply. The disclaimer is only a small part. My tool also adds watermarks to make it obvious to anyone accidentally playing a deprotected map so it stops it from further distribution. It's true you can look at the byte size to see if you're on a modified map, but the average gamer won't do that. The watermarks I add are obvious to any player. My watermarks are fairly easy to remove for someone who understands the world editor, but not for the average cheater who just embeds a script written by someone else but doesn't understand code. I have ideas for future improvements to the watermark by having a digital encrypted signature similar to how websites do SSL public/private keys, but I haven't worked on that yet. The idea is to make it obvious to the player that the map wasn't made by the real author. My tool understands corrupted MPQ headers & unknown files, it does actually recover them & repack. Doesn't get 100% of all unknown files yet, but it's pretty good & I'm still improving it. Emailing the author to ask for an un-protected map is unlikely to be successful. However, there's nothing ethically wrong about reading their code to learn & then using that knowledge to make your own map from scratch. In fact, I guarantee every map creator does this. Certainly straight up stealing is bad. Ripping is debatable. If you're directly competing with the original map & splitting the community, that's bad because the patreon donations will go to you instead of the real author. If you're using those assets on a completely different map, I think it's probably fine but technically against copyright, you should re-create the asset by hand rather than ripping. My opinion anyway. Your thoughts?
@@ai-gamer I rushed my OP a bit due to work so I should've clarified I'm also a map maker albeit small contributions to a well known map so I am kind of split on the protection subject, it's kind of double edged sword. I am for FOSS but at the same time I understand why people protect their work. We had our map leaked before and they stole our work without giving credits where credits are due. We officially took over map from original author and put incredible amount of time to improve it for many years and then it ended up on Russian private server one day and now there's several iterations of the map. I suppose it doesn't truly matter because it was free from the beginning and there's nothing to lose but it's a matter of pride and something you can call your own creation I guess so this is why map makers won't give it away just like that, you have to pry it from their cold dead hands haha. It's somewhat like those warez groups in game cracking, movie encoders etc compete albeit illegal but there is this code of honor among thieves and people who break the rules get their stuff nuked or worse like DDoS, but I'm getting off-topic, I'm just thinking there's not a real solution to this problem and it all depends on modder at the end of the day. E.g. better comparison would be so many famous Half Life or Skyrim mods who eventually became pay to own, some having standalone game, some are open source but not free, others are free but closed source, some are just trying to commercialize their product by any means and I can respect that if you put your time, tears and sweat into your project. So there isn't a real solution to this problem and there may never be one, we can only hope people will start seeing modding as less of a competition and more as something to do for fun at least in War3 and similar old games.
Great perspective. I agree with basically everything you said. I think the "code of honor among thieves" is the key point. By preventing all deprotection, and banning any discussion of the topic, we're disallowing the good reasons for deprotection. All we need is a way to make sure people follow the code of honor. Think about all the social justice warriors in the world. If anyone breaks the rules in society. They get canceled & banned & blacklisted & boycotted. So there's no need to prevent bad behavior from happening, the fear of punishment keeps people in check. The issue in the battle.net community is 99% are players and 1% are map makers. The 99% have no way of knowing if the code of honor was broken, so they don't know which maps to blacklist. If we can make a system that notifies the gamer when a map breaks the rules (cheat-packed, ripped, etc), they can choose to boycott the map, which solves the problem. The purpose of my disclaimer is to explain the code of honor. The purpose of my watermark is to tell the gamer if the map is breaking the rules. It's a step in that direction, but far from perfect. I eventually want to code a "map signature" to make the watermark more clear to the gamer when a map has been cheat-packed or ripped & to make it harder for the hacker to fake or remove the watermark.
Which map is it? I'll test & see if I can fix it. Generally this happens if the script functions are named wrong. The editor expects specific function names to generate the units & when I save it re-codes those based on any units you've dragged into the render screen. If it can't find the existing function, it makes a new one, so that would cause duplicated units instead of replacing the previous ones. In that case, you could fix it by deleting the extra function in the triggers that has the wrong name.
Thank you for promoting ethical behaviour! Every little roadblock goes a long way to dissuade 'cheater forks'. It would be nice to have a "show unknown files" button after a non-forced deprotect attempt. I realize this might involve sending the user over to an already installed MPQ editor. In the meantime, I'm trying out the brute force feature to give myself the best chance of resurrecting the abandoned XAOS map. I'm planning to fix bugs, give it a couple of balance patches and get it more in line with modern AOS-style sensibilities. Naturally, I expect to encounter compiling errors, as all previous deprotection attempts have thrown a couple. I'll check your video backlog for some hints. Are you planning to create a dedicated tutorial for such errors? I believe fixing those is usually the logical next step in deprotecting very involved maps.
I'd ignore the brute-force feature for now. It's going to take a really long time & not find much. Maybe run it overnight & then cancel in the morning. I just published an updated version of the app that does a better job with unknown files, if you want to try it out. You can already see the unknown files very easily, no MPQ editor needed. Just open up the location where the app is installed, & you'll see a folder called mapName.work, that's where it extracts everything. There will be an unknowns folder beneath that. I am definitely planning on doing more videos showing how to use my deprotection tool. & How to do map creation & modding in general. Ethical behavior is really important to me. In the end you can't stop someone from doing wrong, but you can at least teach them why it's bad & give them roadblocks, like you said. The issue with protection is it hurts the community. The issue with cheaters & stealers is they also hurt the community. I'm hoping this creates a good middle ground. Let me know how things go with deprotecting XAOS! Yes, you will have some compiler errors to deal with. I'm hoping to improve my tool over time, but it's super complicated, so we'll see :)
@ai-gamer Alright, after a solid two days' worth of trying and using the latest version, I'm reaching the end of my rope. If you could, I'd really appreciate your input! In any approach, I am getting 3 unknown files that I have yet to figure out how to look into. Thanks for directing me where to find them.+ GUI approach: - It seems like a lot of variables are not recovered with this option. Specifically most gg (system-generated globals) didn't make it. - Likewise, the sound editor is empty. - I tried simply creating udg_ variables and editing all references, though I stumped on trying to input the Arthas40 sound file. If I right-click -> Use as Sound, my Editor crashes. This does not happen if all triggers are deleted beforehand. I suspect WE tries to connect all mentions of this file and somehow stumbles over itself. - All in all I recovered 239 triggers, 295 functions and 115 non-trigger variables Jass-only approach: - Trying to compile via WE throws a "Function redeclared" error for CreateBuildingsForPlayer0 (and all other players) and a couple of other functions. In the JASSHelper debugger, I can see the script trying to define these functions twice, which is conversely not the case inside the init script. I do not know why this is the case. - I tried saving the file without a script and then inserting the .j file directly with MPQMaster. This runs the map in WC3, though most triggers are clearly broken (namely at least all menu, quest and countdown descriptions and starting barrier). - All in all I recovered 240 trigger variables and 318 non-trigger variables (also no functions or triggers, though that is of course expected here) If you want to see for yourself, this is the link: www.epicwar.com/maps/21294/ Thank you so much for all your responses! PS: Brute Forcing has, as predicted, not worked. After a full 24h, it only reached 8. It would likely need a couple more days to finish.
I'd ignore the unknown files. 3 is very low, and probably won't affect your gameplay much (possibly a missing model, text, or sound somewhere, but probably a file that was never used that the programmer forgot to delete). There are maps with many more than that, which is a major problem, but I'm working on improving it. Honestly, the trigger recovery is still a work in progress. The issue is world editor creates a bunch of variables when saving because it converts all the doodads/sounds/units that you've placed onto the render screen into code in the war3map.j, so it has to merge the existing code with the new code. Protectors obfuscate the script file (randomize variable & function names), so world editor doesn't know how to merge them together, so it gets errors & duplicate code. I'll work on improving the script recovery in the future, but for now it's a long painstaking process of manual bug fixes :( As far as visual/text triggers, I'd start with whichever one has fewer errors. In general, I prefer text triggers for actually coding & bug fixing, but visual are nice the 1st time you open a map, just to get a quick glance at how the map was designed & to orient yourself to the program's overall structure.
@ai-gamer You're right, it seems like there might be quest and menu text in those files, which I have to add at some point. Not critical. I totally agree about your last point. I had a much easier time understanding how the original dev implemented their design decisions by looking at the visual triggers. Quick Update (I feel like this comment thread is becoming my dev log :D ): - The sound crash only happens if there is an already defined sound variable somewhere in a trigger. As a workaround I used different sounds or temporarily changed the preset sound, added the sound file to my active sound editor and then changed back. - I've managed to get all missing gg_unit pointers back. I did this by selecting all already placed units with an action (such as hide) one after another. This prompted WE to calculate a short bit and worked to fix more compile errors. I now understand more clearly what you mean when talking about how the units are placed only in the render and WE having to work backwards essentially. It's going to take a while to find everything that wasn't merged correctly, but I now have a clrearer way forward.
Dev log on here is awesome. That helps other people learn if they search through the comments. Not sure if you're on the newest version of WC3MapDeprotector, but it now names the unknowns {hash}.extension where extension is auto-detected based on file contents. So, I see these 3 files: 10473130907757326590.blp 3918739247265421392.blp 4948227483043834138.blp blp are image files, usually used as textures for mdl/mdx models or as icons. Download BLPLab from HiveWorkshop to view them. If they're actually used, you'll see a white model instead of a textured model when it renders (or I think the face of a blizzard employee or green square for icons). It's pretty obvious 3918739247265421392.blp is the loading screen image. However, the LOADINGSCREEN.MDX model points at FULLSCREEN.BLP, so I bet the other file is a duplicate that was forgot to be deleted. The other 2 look like "gear" icons, one enabled & one disabled. Knowing that it'd be cool to guess names like gear.blp gear2.blp, but they could have named it something completely random, so brute force is safer. I'm working on a "live game scanner" to find those files which will be much faster than brute force, so then we won't need to "guess" the filename.
I'd say the world disagrees that the world editor is trash, because thousands of amazing games were built with it. In fact, I don't know of anything better that has come out in the 20 years since. Some other editors have more features, but they are too complex for non-programmers to use. They did some minor updates to the editor for reforged, but not much. I'd love to see more improvements to the editor, but I'm relatively happy with it in its current state. If you're having issues with frequent crashing, try switching from HD to SD graphics mode in the editor (you can still play the game itself in HD if you want).
It's disheartening to see content promoting deprotecting Warcraft 3 maps, especially when you're seeking support for it. Many creators, myself included, have invested a lot of time and passion into learning the World Editor and building within its intended framework. There's no getting around the World Editor Terms of Service since Blizzard owns all rights in the end. While anyone can create their own map, advocating for deprotection software feels like encouraging a shortcut. Sure, there's an argument for opening maps for learning purposes, but the reality is most maps are built by hobbyists who may not prioritize a clear organization of the Warcraft 3 editor's elements. Deprotecting them exposes the way these elements are put together, but it doesn't necessarily provide a well-organized learning path. You'll likely end up with a complex structure that's difficult to decipher, hindering your ability to truly understand the editor's functionalities. The Warcraft 3 engine has its limitations, and wrestling with someone else's unoptimized design can be a real struggle. Let's be honest, deprotection tools are more likely to be used for convenience than genuine learning. Creating software to bypass protections, even if they're not ironclad, undermines the effort and intent of the original creators. Most people who use such tools will likely be motivated by a desire to take credit for someone else's work, potentially even for profit. It's rare to find someone with a genuine passion for learning who would resort to deprotection.
I completely understand and respect your position. As a map maker myself, I would be very upset if someone stole my work and took credit for it. I think from both a moral and legal perspective, deprotection tools are fine, but using them for copyright violation is not. My tool explains copyright rules and makes you agree to them before using it. I think educating people is useful to prevent misuse. In addition, my tool intentionally puts many watermarks into the deprotected map to make it obvious to any gamer that the map has been stolen, so they don't support hacked maps. My hope is that this is only used to resurrect dead maps or for learning. There are a lot of maps that broke with reforged & the original authors have abandoned the projects. In the end, every tool, like a car, can be used for good or evil, I can't control that, but I have faith in humanity that the majority will use it for good.
Many maps were already broken prior to Reforge due to issues like the old mem-hack method, which was long patched because it was malicious. It's not the maps, Warcraft Reforged itself is broken and still remains this way, calling it map abandonment in that regard does not seem morally right to me even if it is what it is.
@@jasper1883 Sure, blizzard broke the map, which is not the author's fault, but the map is still broken. If the author isn't available to fix blizzard's mess, I don't think it's wrong for someone else in the community to do it. I think resurrecting a dead map is a service to the community, and most authors would be happy someone did them a favor. It's like when someone abandons an open source project because they're too busy, they want someone else to take over. I think the purpose of protection, for most authors, was to avoid hackers/cheaters, which my tool tries to prevent via watermarks.
Resurrecting a dead map could indeed be a service to the community. However, you're making some broad assumptions here. You claim that most authors would be happy with someone else fixing their maps, but have you actually asked any authors about this? It seems speculative to assert that you know the preferences of the majority of map authors in the Warcraft 3 community without concrete evidence. If an author intended for their map to be openly modified, they likely wouldn't have protected it in the first place. The fact that a map is protected suggests that the author wanted to maintain control over how it is used and modified. Additionally, you mention that the purpose of protection for most authors was to avoid hackers and cheaters, and that your tool tries to prevent this via watermarks. However, it's unclear how watermarks would effectively prevent hacking or cheating. Watermarks are typically used to indicate ownership or authorship, not to secure content against manipulation. They don't provide actual protection against someone altering the map's functionality or introducing cheats.
Yes, I'm making assumptions. Yes, I researched the topic before I came to that conclusion. Obviously there are some who agree with me and some who disagree with me. I can't please everyone. The watermarks announce to the host and gamer in-lobby & in-game that the map has been hacked, so everyone will abandon the hacked version of the map, preventing its distribution. The majority of cheaters inject a script written by someone else, because they don't know how to code, so this prevents most of them. A real map maker who is resurrecting a map will have to go through the effort of finding & removing the watermarks, which there are many. In the end, the tool could be used for good or for evil. I can't control that. I think the potential for good is greater than the potential for evil, otherwise I wouldn't have built it. I'm doing my best to combat those who try to use it for evil, but I can't 100% prevent it.
Usually if it doesn't show up at all in the game, the map files are corrupted or they are incompatible with the version of the game you own. I just tested that map on my PC & it's working fine. I have reforged. If you're on classic, maybe that's the issue?
I'm not sure why it's failing on that specific map. I'll try to fix it when I have time, but I'm a little busy right now, so it'll be a while. You may need to try a different map for now. Sorry :(
Download Ladik's MPQ Editor. Use it to open & extract all files from Nirvana.mpq Search for *.txt and *.slk in that folder You can edit *.txt in notepad You can edit *.slk in Microsoft Excel After saving your changes, add the modified files back into the Nirvana.mpq using Ladik's MPQ Editor Nirvana.mpq also has a file called, war3map.w3a, which is additional data for abilities. Hopefully you won't need to touch it, but if you do: Make a new map, save as w3x copy the war3map.w3a from Nirvana.mpq into the new w3x edit the w3x in the official blizzard world editor & save extract the updated war3map.w3a from the w3x using Ladik's MPQ Editor replace the war3map.w3a in Nirvana.mpq using Ladik's MPQ Editor using the updated version of the file extracted from the w3x Good luck!
Hi @ai-gamer! This is amazing stuff. Long ago I was big into WC3 (weren't we all), and it definitely played a fundamental role in my love for programming which ultimately became a career. Way back in the day I was enthralled with one particular custom map that didn't seem to get the attention it deserved, but I loved that custom game nonetheless. I only ever wanted to play it. I wanted so badly back then to open it and figure out how things were done and I wanted to provide improvements where I could. Sadly, I was never able to connect with the author, and now nearly two decades have passed by. I'm about 1.5 hours through on your masterclass video which is awesome and so full of information. Sadly, neither my efforts there nor my attempt at your WC3MapDeprotector have proved successful. Specifically I'm getting a "Main map file could not be opened". So far in your masterclass you haven't covered this edgecase, but I'll keep watching.
I'm a big fan of OSS, and have authored a number of tools/libraries myself, so I'd love to support your work and throw you a coffee/beer your way if you could help point me in the right direction. I feel like I'm a perfect candidate for the spirit of deprotecting a map. Specifically, the maps aren't playable anymore in reforge so while I'd like to finally open and learn from the map for my own project, I would love to be able to fix these for the (albeit small) fanbase. Hit me back if you could spare a few minutes guiding me!
What's the name of the map?
@@ai-gamer It's called S3 Marine Corps Survival. I was able to get a bit further since I posted. Seems like it's missing the doodads file now, but it works in game. I also had to edit some of the JASS to get it to load properly.
There's another map by the same creator called S3 Marine Corps Infiltration and it's got 4 files it's struggling with. I thought I found the issue similar to the first one. I tried fixing it before WC3MD stitched it all together when it's giving me a chance to test play it so it can find the files. My edits don't seem to be making a difference so the map doesn't load into the test run. I can of course skip the test part, but then it creates a working but incomplete map. Specifically I think a lot (all) of the regions are missing.
Regions aren't going to be found by any scanning process. They're recovered by parsing the war3map.j file. It usually does a pretty good job, but if the script file is highly obfuscated it might miss some. If you can find an example of a missing region, let me know & I'll investigate.
It's probably safe to forget about the unknown files.
It's possible it's important, but the tool does a decent job of finding all the used files.
Basically the MPQ archive uses a hash system to store the files, but protection deletes the index file, so we know the hash, but we can't de-hash it back to the original filename. The scanner looks at breadcrumbs scattered throughout the map to find clues as the what the real file name might be, but it's not perfect.
If you look in %temp%\WC3MapDeprotector\S3 Marine Corps Survival v114.w3x.work\{{random}}\unknowns anytime before clicking "ok" on the deprotection completed popup, you can see the unknown files. After clicking "ok" the files will be cleaned up so you can't inspect them anymore.
I'm seeing it as File00000199.tga. It looks like an icon of a trash can or pillar or something.
So, the game will work fine without it, but if it's actually used you'll see a green icon. There's a decent chance it's actually not used at all and the map creator just forgot to delete it.
The "live game scanner" should theoretically find it, because it monitors the WC3 exe disk access, so any file that's actually used will be found. Unfortunately, this map is completely broken on reforged & won't even load. My live scanner only supports reforged. So, if you really care about the 1 file, you can either try the brute force option & leave it overnight & hope you get lucky. Or you can get the old version of warcraft 3 up & running & use MPQEditor's live scanning tool, which does the same thing as mine but works on older game versions.
For infiltration the unknowns were 2 tga files that both looked like completely blank alpha textures, so probably also unimportant.
I'll comment on your other questions soon.
@@Voltechs I just released a new version of my tool with massive improvements. Maybe try it out again on those S3 maps & let me know if you still run into issues. I'd love the feedback. Thanks!
What mod ideas do you have for old broken maps? If I could resurrect and improve any dead map, which would you pick and what new features or spin-offs would you like to see?
Could you revive Darwins Island? www.epicwar.com/maps/333518/
And also, you're a legend for making this.
Thank you. :)
Thank you so much for the program! Legend for making it
Could you try resurrecting /maps/333518/ from epicwar?
Would be cool to see this map updated with new ideas, and its a classic.
Mirana Wars Final (which is a protected map) has the leap ability locked because of an upgrade requirement, the leap is based on the berserk ability. This bug was introduced because of reforged. Well this bug is no more !!
Darwins Island 2.58A ?
I haven't played it before, but I'll check it out. What ideas do you have for improvements to it? Is there something broken in reforged that was working before?
@elMoJRiM Were you able to deprotect Miranda wars with this tool & fix it? If so, that's awesome, I'd love to try it.
Thank you for this! There's a very small, but incredibly annoying bug in this 7 hero siege map I used to play a lot. One of the buildings you can construct has the Moon Glaives ability, but the original author forgot to change the AoE on the building so they never bounced! I like to play this solo because it's pretty difficult. That bug has been the one thing that's prevented me from actually finishing this map since it gets ridiculously hard in the end when you eventually need to make a push towards the final buildings. I opened it up and fixed the numbers and it works like a charm!
That's awesome, glad it worked for you!
Thank you for making this Devin! I am using it to great success to mod/recreate maps and I am having a great time. Wouldn't be nearly as easy or possible for me without this fantastic tool! And very impressed with how consistently it works, especially when using in JASS mode.
Awesome, glad you like it! Let me know if you have any feedback for improvements.
I tried to open an old map I made in 2013, but it cannot restore the triggers. It was a pretty simple map with simple GUI triggers and no custom models or images, but I don't know what the hell I did that it cannot be unprotected haha.
I also tried another map that my friends and I always wanted to edit but never could. This map is much more complex, and your program has successfully unprotected it, so, thank you!
Glad it worked for you!
Hello. Wonder if you can help us out. Since the new patch old maps dont work like legtion td 4.7, 6.2 and 3.5. Units and buildings dont show up.
Yes, I know how to fix it.
It's a bug caused by reforged 2.0, blizzard will need to hotfix it
However, there's a workaround.
It's typically caused by protected maps done with older tools like w3xlni.
They need to be re-protected with a different tool, such as w3protect.eu/ (free version is fine)
I haven't found the root cause, I just know this protector doesn't cause the bug.
Unfortunately, you can't re-protect an already protected map.
If you're the actual map maker, you can use your original non protected version.
If it's a dead map, you can deprotect with my tool and then re-protect it. - You'll want to do bug testing because my deprotector isn't perfect.
@@ai-gamer How long will it take to hack 4.7 when i book the 500$ gig?
Message me on discord & we can discuss the details.
My username is speige
when i try to change something the map just breaks, tried to make war of races turbo version so everyone gets extra gold cause i feel its too slow, but when i change income off all players the map just breaks?, tried same with adding anything and it just breaks.
Usually that means the triggers weren't deprotected correctly. You'll have to extract the original war3map.j and the new one after saving and compare them side-by-side to see what was corrupted after saving. Unfortunately, it's a bit of painful manual work on some maps :(
I tried this for one of the latest Dota Maps but unfortunately it says: Exception has been thrown by the target of an invocation. Any idea what could help ?
I can investigate. What's the full name of the map? Send me the ID # from epicwar.com but don't send the full url or YT will block the comment
The only reason why I want to deprotect maps is to make them single player compatible for my personel use only(hero defense maps needs 6 players).
How long should deprotection take? I tried it on two maps and it wasn't done after 2 hours. The UI froze as well, so no more debug log updates after like 2 minutes. The memory usage changes going up and down.
That's a great reason to deprotect.
It definitely shouldn't take that long, thanks for letting me know. I found a bug & just released a new fix. Can you download the latest & try again?
Also, what map is it?
Make sure you don't have "Brute force" checked, that's super slow.
On my PC, which is very high end, it takes ~ 5 minutes for a very complicated map. It only takes 10 seconds for a very simple map.
So, on average, I'd say expect between 1 minute and 10 minutes.
@@ai-gamer I tried with the new version same issue. All 3 maps that I tested are from enfos (Enfos_MT_V192a, Enfo's Team Hero v4.2, Enfo`s 1 Team v9.0 fix).
I didn't used any of the extra options, I think the problem is with the listfile, I can't look into the bug myself right now, I don't have pc that supports vs2022 and .net core 8.
What version of the deprotector did you try?
The latest version is v1.1.4.0 from github.com/speige/WC3MapDeprotector/releases/tag/v1.1.4.0
I just tested all 3 of those maps on that version & it was fast.
Enfo's 1 Team Survival v9.0 Fix.w3x from maps.w3reforged.com/maps/categories/hero-defense-and-survival/9822/download
Enfos_MT_V192.w3x from epicwar.com/maps/632/157802
Enfos Team Hero v4.2.w3x from epicwar.com/maps/876/218996
The deprotector finished really fast (less than 1 minute).
What CPU do you have? How much available RAM (not total, but actually unused) do you have?
The deprotector does use a lot of RAM - Only 1GB for these maps, but I've seen it go up to 4GB on more complicated maps. I plan to do some optimizations in the future, right now just focused on getting it working. If you're hitting 100% RAM usage while the program is running, try closing all your other programs.
Even though Team Hero claimed to deprotect, it crashed opening the WorldEditor, so ignore that one until I fix it. The other 2 opened just fine in the world editor.
@@ai-gamer Problem solved: I installed win 10 on a vm, same hardware, but now it's working it seems like .net core 8 needs win 10 +, I haven't tested the deprotected map yet, but it finished deprotection under 1 minute for the smallest map.
Awesome, glad you got it working!
I remember a few years ago i got hooked on a green td map that had a major bug in the middle waves. I tried sending an email to the map creator (there was an email in the quest log) but he never replied. If i had this tool i would have fixed the bug.
I love green td! Better late than never - Now you can fix it :)
There's a map I like to play called civilization wars. In version 2.36 Beta C (266823 on Epic War) they added some units I like, but removed the attack on the healing units causing them to take control of lanes when I don't think they should. I wanted to add the attack back, but when I attempt to run the deprotected map in the world editor I get an error message saying "trigger data missing or invalid". As well, the deprotected map I've got cannot be run by warcraft in contrast to the protected version. Any help would be appreciated!
Weird, it's working fine for me. Are you using classic warcraft (1.31 or older) or are you using reforged? I only built my tool for reforged support. In theory you could try to downgrade the deprotected files down to an older version, but I haven't attempted that before.
I am using classic Warcraft, I was hoping that being able to open the base map, the deprotected version wouldn't have anything it couldn't handle, but I guess not. You have another longer video explaining how to deprotect manually, those techniques should work fine for classic Warcraft right?
Yes, those techniques should work with any warcraft version. Depending on the complexity of the map, it can be difficult & time consuming to do by hand. It gets easier the more you practice deprotecting other maps.
This tool supposedly can downgrade to older version of warcraft, but I haven't tried it
www.hiveworkshop.com/threads/map-adapter.326456/
Thanks for your help man, I'll let you know when I get into the map.
It does not run for me, it says make sure you typed the name correctly. How do i fix this?
You need to extract the zip file before running. I think you're just double-clicking the zip, which doesn't extract it. (Kind of a bug in windows)
@@ai-gamer Still the same. Does this work in laptop?
It definitely should work fine on a laptop, as long as it's not 10 years old. Many people have tested it & used it without problems. I'm guessing you're doing something wrong, but I'm not sure how to help without seeing your computer screen. Maybe also try on a friends' computer, just in case it's an issue with your laptop.
@@ai-gamer I see there are a couple comments similar to that one where opening the batch says Windows cannot find 'WC3MapDeprotector.exe' make sure you typed the name correctly. The cause for this is downloading the source code instead of the program from GitHub and then trying to run that. which then gives you the aforementioned error. so if you get more of those comments in the future just tell them to download the program instead of the source code.
Thanks, I didn't realize people were downloading the source code by mistake, that makes sense.
I've been getting compile errors about functions being outside the statements. But before, I wasnt getting any of it. I just had to remove recalled functions and that was it.
Sounds like you got it working. I'll try to make improvements in future versions so you don't have to fix the script functions manually. Let me know if you have any more feedback.
Please help! I tried your tool but the map doesn't work if I try with triggers. When I open the map in the editor, while loading the triggers it encounters an unexpected error and closes.
What's the name of the map? Can you give me the epicwar ID # ? (Don't send the full url or UA-cam will block it)
@@ai-gamer On wc3maps the id is 220440. It's Art of D Northrend 0.19B
@@ai-gamer I lost the original map because my old laptop got bricked. I really want to continue to update the map, if you could help me! I think the problem might be a couple triggers where inserted code and didn't use GUI. But the majority of triggers are GUI.
@@WanderingNomad482
www.epicwar.com/maps/220440/ - This doesn't download for me
www.epicwar.com/maps/338325/ - Is this the map you mean?
@@WanderingNomad482 Unfortunately there are bugs in my deprotector that need to be fixed. It doesn't work with every map unfortunately :(
Sadly I'm busy with other projects right now, so if you have the skills & time to research & fix the issue, feel free to submit a pull request to my github. Otherwise, I'd recommend trying a different map.
I got "Unable to open MPQ Archive" message. how can i solve it?
What's the name of the map?
Can you send the EpicWar ID # ? (Don't give the full URL, or YT will block the comment)
It doesn't open, double click the bat file and nothing happen (I download the release zip), I'm on windows 11, maybe I am missing something?
I think you need to right click & extract the zip file first before running the bat. There's a bug in windows if you just double-click a zip it doesn't fully extract.
Thanks bro I want to change the tile sets for Dota to switch things up when I play against bots
Cool idea. League does different skinned terrain occasionally for things like Christmas & Halloween.
Let me know how it works out.
epicwar id 280062 Can you help me please? I tried opening the map and it didn't save. Script error, can't open the map and play.
Which map is it?
@@ai-gamer angel samurai
@@ai-gamer Can you unlock this map?
I'm not sure why it's failing on that specific map. I'll try to fix it when I have time, but I'm a little busy right now, so it'll be a while.
You may need to try a different map for now. Sorry :(
The tool is freezing for me when i try to deprotect maps. I've downloaded the prerequisite.
It should work.
Try leaving it overnight, it's probably working and just takes a long time. Also, please try with other maps.
If it's only 1 map that freezes, send me the map name & I'll research it.
If it's failing on all maps, please try on a friend's computer, it may be a problem with your PC.
Hello! I tried deprotect map named Dark Lineage Owen v0.20
I want to see the triggers but when i deprotect it all triggers are gone?
The triggers aren't gone, they're just in an obscure place so you probably didn't see them. Click the "Help" button in the app, it will explain it.
@@ai-gamer in the wc3deprotector program?
Yes, there is a help button in WC3MapDeprotector. If you don't see it, make sure you've downloaded the latest version.
@@ai-gamer Is there a way to make them back to GUI instead of plain code
Unfortunately no. I had an experimental feature to convert Jass to GUI in an old version of my tool, but I removed it because it was really buggy. I need to improve it before I re-release it.
I got an issue, it doesn't work for me, i think i opened war3.exe instead of wororldedit.exe, i tried to remove all registry responsable for the app, but when i run the bat, it doesn't let me choose again for the worldedtir.exe, can you help on this please?
Look here:
C:\Users\{{username}}\AppData\Local\WC3MapDeprotector
There should be a user.config file a few folders down
Let me know if that doesn't fix it.
@@ai-gamer I did that, changed, all paths are good now, but still loads forever, it also blocks, the only way i can close it, is forced.
Leave it running overnight & see if it finishes.
For some complex maps, or on older PCs, it can take a long time. It'll finish eventually.
andreafanmadeproject.blogspot.com/2015/02/mass-revision-league-of-legends-arena.html
It's this map i try to deprotect, i tried some TD just to see if it works, and also tried on an unprotected map already, i mean not protected, i develop some maps already but i am looking for something new now and i remember this map which i would like to continue.
@@ai-gamer I tried with TD aswell or with an not protected map which i made for testing, just put 2-3 units etc, and it was the same, and about the PC, it shouldn';t be an issue, my PC is 6 months old and it's quite an good config, shouldn't be a problem..
Anything else i can try to make it work?
this doesnt work at all it does is say editor is open n wont work editor is clearly not open plz fix this
Strange. It definitely should work.
Feel free to message me on discord.
You could also try this
Open this file in notepad and make sure your world editor has the correct file path
C:\Users\yourusername\AppData\Local\WC3MapDeprotector\WC3MapDeprotector_Url_zxdl2damsarc0u4cersnztqwtflli4zw\1.2.3.0\user.config
Open task manager & make sure there's no process with that same name running (maybe it's running in the background even though the gui isn't visible)
Maybe I'll update the app to just close it for you if it's detected.
@@ai-gamer what is your discord i see no link?
Thanks for this deprotection tool, it usually works really good. But there is this one map where it just dosent work I have tried it multiple times. It just freezes within the first 2-4 seconds (not repsonding) forever no longer how much I wait.
What's the map name? Can you send me the epicwar.com id? (Don't send the full url or YT will block your comment)
The map is not on epicwar, I just have it on drive. So if I cant send with link how can I get it to you? And its weird because the j file is easily accessible with the deprotector and models too etc, its just the world editor @@ai-gamer
You should be able to upload it to epicwar if it's not there already.
DBZ Tribute Elite v2.1kz is map name, I just uploaded it@@ai-gamer
@@ai-gamer its called DBZ Tribute Elite v2.1la on epicwar, but it gets weird when I upload it.
huh ya ya discord doesnt seem to work neither i found link on main area of ya utube page but wont open up in discord starts to act liek it will but wont
Haha. I guess there's a bug in discord where you can't share a URL with someone unless you also have a shared server. Oops.
My username is: speige
I'm confused on how to play on the map when ive added units in the editor. sorry im new to these
I'll be doing a series of map editing tutorials soon. Don't be afraid to just play around with it & learn.
The easiest option is to just click file/test map.
You can also do file/save and then copy the file to your warcraft downloaded maps folder (usually in documents/warcraft III)
You may have to fix a few script errors first, unfortunately. That's something I'm still working on improving. If the script errors are overwhelming, since it sounds like you're new to this, just try a different map until you find one which doesn't have errors.
@ai-gamer well most of the maps i want to mess around with are custom campaign maps. When I test map it just shows me some blank error message.
What's the name of the map you're testing with? I'll try it on my PC & see if I can reproduce the issue.
@@ai-gamer Resurrection of the Scourge and Jeopardy for the horde
all maps there are protected
Hello. Do you perhaps know how to work around "Trigger function does not exist in database" (ExecuteFunc, xtimer, etc.) ? I'm trying to open a map in reforged we, but the mapdeprotector is too invasive and changes a code a lot.
if you're wanting to deprotect a map manually, I have a video tutorial on that ua-cam.com/video/5OrON63GQkI/v-deo.html
It's very complicated, so I suggest using my tool instead.
Are you saying my tool changes the triggers a lot? Unfortunately, protection removes GUI triggers & sometimes obfuscates the jass, so it's really hard to re-create them perfectly. Maybe some day I can make improvements, but for now that's the best option. Deprotecting by hand will give you much worse triggers.
If you found a specific bug in my tool, feel free to log an issue here github.com/speige/WC3MapDeprotector/issues
Include the Epic War ID #
Im trying to open a map with the create visual/gui triggers option. It did but it said it missed 2 files. When I start the editor it loads but when its loading 308 of 367 triggers it stops working and doesnt loads the game. Is there a way to bypass this?
It said that 2 files couldnt be found but I tried the brute force unknown files but it got stuck.
Don't use the brute force, it usually doesn't help.
You can probably ignore the 2 files. Typically those are extra 3d models that were added to the map but never assigned to a unit.
What's the epic war id # ? (Don't give me the full url, or YT will delete the comment)
I'd recommend using text triggers instead of GUI, for this map, until I have time to fix the bug. But, GUI does work for some maps.
@@ai-gamer what is the epic war id ? So I use the 2nd option of the program ?I used with no options and the map loaded but it got no triggers :[ and I want to learn the triggerS
I need the map file so I can reproduce the issue you describe. What is the map name? Go to epicwar.com, search for the map, if you find it give me the ID. If you can't find it, upload it, then give me the ID.
How do you fix the undeclared variables in regions?
Encountered when trying to fix triggers from the garithos campaign.
I think you mean undeclared variables in triggers?
Before saving in world editor, extract war3map.j via MPQEditor, & open in notepad. You will find the list of variables at the very top between globals and endglobals. In a non-obfuscated map they will have prefixes gg_ for auto-generated and udg_ for user-defined. If the map is obfuscated you will have to determine the proper prefix manually. The gg_ auto-generated can be ignored. All of the udg_ user-defined need to be created under global variables in the trigger editor. This should be done by the tool but it may have made mistakes, so that's how you can manually correct errors.
I just made a new version of my tool with lots of bug fixes. Can you try it on the garithos campaign again & let me know if the trigger issues you were having is fixed?
You might see an error about duplicated _DropItems functions, you can just delete or comment out the extra functions in the jass (forgot to fix that issue before I published my latest version, will fix it in the next one).
@@ai-gamer when i try to launch the maps from garithos campaign, i get blzcamerasetupgetlabel and World Edit closes.
Hey! Incredible tool. Thank you for your contribution. I'm using it to try and pull off a fan translation of a map. I have a question, though. My Trigger Editor doesn't have any triggers or variables in it except GlobalGeneratedObjectManagerVariables, with or without experimental Visual triggers. The map loads and runs perfectly though. I'm wondering how I would go about replacing some of the triggers in the map in this case.
The triggers are there, just not in the traditional GUI format, only in JASS.
In the trigger editor there's a tree with a map icon, then a trigger folder, then 2 GUI triggers. Click the map icon & you'll see a text editor labeled "Custom Script Code" on the right.
@@ai-gamer Hm, I don't see a tree with a map icon in the trigger editor. What's the button called?
@@ai-gamer Oh, you are talking about the root of the trigger list? In my map, there is only 1 root -> 1 folder -> 1 GUI trigger. The GUI trigger is called "GlobalGeneratedObjectManagerVariables" and inside it is just some Circle of Power actions. It seems like it is missing from here
Click the root, the text triggers are all in there.
@@ai-gamer The code is all commented out. What I'm wondering is how I can add/remove stuff or modify this. It's all commented out
Hi. I used your program, but the map editor is telling me it is missing functions. (Trigger Function does not exist in database: ...)
I haven't seen this error before. Which map are you trying to deprotect? Is the error in the tool, in world editor? Or a different community editor?
I just made a new version of my tool. Can you check & see if that error is still happening?
What I want to do is rebalance drop rates and items in an old game called master crafters I play with 2 friends every weekend, using your tool worked but it made the trigger editor a giant text when in the original world editor map it was organized with folders in intuitive way. is there a way to make the trigger editor organized like the original map again?
Unfortunately that's one of the flaws of deprotection. There is a setting for "GUI / visual trigger (experimental)" that tries to restore the original folder structure, but it doesn't work on every map.
Usually the triggers will have compiler errors that have to be fixed.
The easiest way to do what you want is to learn jass & then modify the war3map.j file directly. - That avoids the bugs in my tool when recovering triggers so you don't have to fix any compiler errors.
@@ai-gamer thanks for the tip, will learn jass then. Some of Warcraft 3 maps are good just need small adjustments to be amazing.
ua-cam.com/video/Og1bGnSEoy8/v-deo.html
Here's a video I made describing the war3map.j technique
Good luck & let me know how it turns out!
I extracted the ZIP File but I am getting the WC3MapDeprotector.exe cannot be found. How to fix this?
Are you sure you actually extracted it? I've only seen this when someone double-clicks instead of extracting.
The exe is just in the subfolder next to the .bat so you should be able to find it, the .bat is just for convenience.
@@ai-gamer my bad, I found a comment here that had the same issues as me. I noticed that I had to go to the “release” then download it there, not just directly to the linked github page.
That makes sense. Glad you figured it out.
@@el33tkrew I thought you wrote a comment earlier, but maybe YT deleted it?
I do have one question, I have my Warcraft 3 downloaded in a different directory and I just ran the deprotector and it gave me the error "The system cannot find the file specified" Where in the files could I change it so it directs to the directory of my warcraft 3 install location?
If you know c#, it should be easy to fix if you download the source code off my github. If not, I should definitely make it configurable, I just haven't had time.
A workaround would be to create something called a symlink junction with the command prompt cmd.exe program. You can google it. It's similar to making a shortcut, essentially you point the missing WC3 directory at your real install folder.
Also, if your WC3 is installed to a different location, you can just ignore the error, the next screen allows you to browse for the correct location. Also, this step is not mandatory, deprotection can succeed without it, there just might be a few missing 3d models.
Bro, this doesn't work with dota, it gives me an error(create visual triggers). I wanted to see dota 6.83 LOD
Sorry, it's still a work in progress. I'll keep making improvements over time.
For Doaa 6.83 LOD, I tested without visual triggers & it is working. So, hopefully that's better than nothing :)
@@ai-gamer I tried using your tool for Dota 6,38. After deprotecting it and trying to load in the editor..... it just gets stuck on "Loading Units" fills my SSD with a infinite size temp file ~60GB and crashes the editor. Lol.
Wow, that's super embarrassing :( Sorry about that.
There's a form of protection that creates "fake" file entries in the MPQ archive. My program didn't handle that well before & would create a massive temp file while trying to extract the contents of the MPQ.
I believe that issue is fixed now. If you decide to give it another chance, download the latest version of the tool & let me know how it goes.
@@ai-gamer that issues still exists for me at least
Which map are you testing with? How big was the temp file? Did it delete the temp file after the tool finished running?
So nice, thanks for doing this!
Sure, glad u liked it. Let me know if u end up making any cool mods for WC3 maps with it.
Awesome work Devin! As programmer (mainly Python nowadays but I used to love C and Assembly) myself your story is inspiring. I have a question though. I noticed that you uploaded a full de protection guide about 6 months ago. I was wondering, how much of it is still relevant now that this tool is available? I am asking because I am having trouble restoring a map even with the de protection tool. The map just crashes with no error message at all. (I am interested in the map "Zombie Apocalypse:Wolfblood AI" mainly because I am curious about the ai and would like to improve it)
I have 2 older WC3 deprotection videos. I'd say both are still very relevant if you want to understand how deprotection works under the hood. - which since my tool is failing to work for your map, is probably necessary.
In an ideal world my tool should just magically do everything without you needing any technical knowledge of WC3 internals, but unfortunately right now it can only do that for ~ 50% of maps and the others require manual intervention.
ua-cam.com/video/5OrON63GQkI/v-deo.html - Manual deprotection with help of old/broken tools
ua-cam.com/video/Og1bGnSEoy8/v-deo.html - Editing jass without deprotection
@@ai-gamer Thanks for the quick reply! I remember watching the 2nd video, and will also look into the 1st one.
You just gave me some ideas on how to get started. I can probably just extract the jass file and re implement the ai in a similar map.
Yes, I think that approach should work. Let me know if you make any progress, I'm curious to hear about it.
There is a built-in AI Module in the map editor, however I'm assuming they coded their own AI from scratch. I believe HiveWorkshop has code libraries to help with that.
If you just want to make your own AI, the built-in module is a good place to start. It has a bunch of checkboxes & dropdowns for configuring the AI, all of that saves to a .wai file (but this file has no effect on the actual game, it's just for GUI purposes in the editor itself). After you're done configuring, it generates a separate .ai file which is the actual jass triggers based on your settings - This is the important file and should give you a good starting template if you want to make a custom AI.
@@victorvu8526
Re-Typing your comment because it seems to have been auto-deleted:
Apologies if my comment is appearing multiple times, I had issues with replies not working and I'm not sure if you're able to see this) I made some progress but now I have another problem. Turns out your tool was more effective on an older version of this map, mza wolfblood (non ai 2014 version). So after de-protection I extracted the j of the ai map and re-imported them into my de-protected one. However, when I tried saving, I got some jass compilation errors like undeclared variables. I'm not sure what the correct way to fix these are but, when I tried opening the j file in vs code and went to the line noted, I did not see where the error was at all. I am suspecting that after attempting to save the world editor is writing new lines of code. However since saving the failed I am not able to see and fix the new errors. Ex: imgur.com/a/Dg9grVY Is there something that I’m doing wrong?
@@victorvu8526 UA-cam seems to auto-delete comments and I have no idea why. I've tried everything to disable it, but failed. The only consistent thing I've found is that it doesn't like when URLs are in comments.
You're correct that the .j file is modified when you save in the world editor. Any units, trees, or doodads you add to the map are auto-converted to jass and injected into your .j file. Also, If you have global variables or multiple triggers in the trigger editor, those all get combined and injected into the .j file.
It's common to have jass errors after deprotection. Unfortunately, the tools not perfect yet, so they have to be fixed by hand :(
gg_ is the prefix for a global variable. snd is the prefix for sound. So gg_snd_te_1 is a global sound variable.
If you click Module / Sound Editor you should be able to see all the sound files.
My guess is my deprotection tool failed to recover one of the sound files.
You can just grab any random sound file and rename it to te_1 to fix it
If you go to this folder: %temp%\WC3MapDeprotector
While my tool is deprotecting, you'll see all the files extracting. You should be able to look in the "unknowns" folder and find the real sound file and rename it to te_1
"Unknown" means it doesn't know the correct filename, but the file contents are usually still valid (occasionally it can be a fake file which will be corrupted) - You can test by playing it in any audio program. So, if you know the correct filename you can recover it manually.
This is amazing I've been struggling to make improvements to an old map that I really love to play with my friendss Bleach V One piece 13 , just want to add more heros I would totally pay you
Did the tool work for deprotecting the map? I can give advice if deprotection fails. I don't really have time to help design new heroes.
There are maps that required packages, ¿could you teach how to combine them and compress them into a single file for warcraft reforged?
The process should be the same with pre-reforged and reforged.
Are you talking about making a new map or deprotecting an existing one?
If making new, when importing a custom library like a custom RPG damage calculator/etc, the author of that library should have an explanation included with the package, in a readme.txt or something - Usually the instructions are to take their script, modify a few placeholder variable values, and copy/paste into a new custom script section in the trigger editor.
If deprotecting, all of the JASS would have already been combined into one giant file (war3map.j) and its no longer broken into separate scripts for each library - It's difficult to separate the code & organize it at that point so usually you just have to try your best to read & understand all of it & edit it as one giant script, ignoring the fact that it once came from multiple library packages.
@@ai-gamer It is a map that is a few years old, first it would have to be unprotected, right?
before combine the package with the map (i'm new to this).
Another detail, i can't open custom maps because it takes me out of the map right after opening the lobby.
In warcraft frozen throne you just have to copy and paste the package in the indicated folder (with the map pasted of course).
In wc3 reforged i think this way does not exist and the solution would be to combine the package and the map into one
If WC3 exits the lobby immediately after opening a map, it is either corrupted, or made for a different version of WC3 - You'll need to downgrade to an old version of WC3 (have to download via a torrent) or deprotect it & upgrade it to be compatible with reforged. It's technically a copyright violation to download an old torrent unless you own the original RoC/TFT discs (can purchase off ebay), but if you purchased reforged I don't think there's any moral/ethical dilemma since it's essentially the same game.
Yes, if you're wanting to add a package to an existing map, you'll need to deprotect it first.
If you have a map that can open in lobby but its protected, you can technically add a package without de-protecting. You just open in MPQEditor, extract the war3map.j file, edit in notepad (copy/paste package to correct location in file), then import into map via MPQEditor. - This allows you to edit the maps files directly without opening in World Editor, but the capabilities are limited because most files are binary format not human readable.
@@ai-gamer I have bought wc3 reforged, it is probably not compatible with the reforged version.
I think the hard part is unprotecting it and updating the map to be compatible with wc3 reforged.
To then combine the map with the package.
nice work, where can I download this tool(runtime)? I cant seem to build it on my visual studio
by runtime I mean a build of this winforms application.
Click releases on my GitHub
This works great on most maps for me but sometimes it starts the process of deprotecting it and gets to the point where it says "Extraction Complete" and then just closes. the map is called "Monster Savior" on hiveworkshop. any ideas whats going on?
Thanks for the feedback.
Looks like just a random bug in my app. I'll try to fix it in the next version.
I just released a new version (1.2.9.0) - Can you test it & see if the problem is fixed?
hey, how do I run the application ? I was try to find the exe file but there is none in the zip file and in the github
Extract the zip file.
Execute this file:
Launch_WC3MapDeprotector.bat
@@ai-gamer hi sorry for the delay update, I try some maps but it stuck extraction and it suck a lot of cpu usage
Are you sure it was stuck? How long did you let it run? On simple maps it only takes a couple minutes, but on complicated maps it can take an hour.
Do you have a new fast PC or is it old?
I definitely need to make some improvements to speed up the tool, but I think it still works even if it's slow sometimes.
@@ai-gamer it's a 7mb of maps. currently using Safe Mode because that's the only way that my cpu not reaching 100% .in safe mode it's only 55-65%
@@ai-gamer it's an old laptop and it's 2 core AMD Athlon
hi i would like to edit unit attributes on old warcraft 3 mod (Nirvana) can you give me the tutorial?
I replied to this in your other comment.
It does not work, the .bat file will not start the program because it says wc3mapdeprotector does not exist.
You have to extract the zip file. I think you just double-clicked to open it, which doesn't actually extract. Kind of a bug in windows but maybe I could make it more user friendly.
@@ai-gamer My bad, I did exctract the zip file but I figured out I downloaded the wrong one. The correct zip file was in the release section and I clicked on code and download zip.
Glad you got it working.
i want open Dota 6.86 AI
WC3MapDeprotector 1.2.0.0
warnings --->no anything
Debug Log--->Decompiling war3map script file
Waited for 5-10 minutes and still no response
On some maps it can be really slow. On my brand new PC the longest is 1 hour. On older computers it can be worse. Leave it overnight & I bet it will finish.
I'll try to improve the speed in the future.
I just released a faster version of the program, please try it out and see if it works better for you.
finally i can learn from awesome maps. its all times the same. average and good maps share their secrets/triggers but superior Maps play Gatekeeper.
Thanks a lot for seeing the bigger Advantage instead of the Risk!!! I understand a few Black Sheeps could be horrible but i believe after all this Years the People that are still arround care for the Game and just search for Knowledge.
Not all heros wear Capes , ty AI Gamer!
Hope it helps you. Let me know what cool mods you make with it!
Sup bro! Maybe you can help me out with a map I'm trying to find!
I remember that you start the game as a wisp and need to choose a hero by stepping in the TP in front of the one you want. When you step into it, you are teletransported for a map full of creatures and start to farm. I remember that at the very north there was a Tidehunter Ivl 30. The Medusa was very hard to kill too.
When you die you go to a safe place, that you can but itens. I remember that the crystal Maiden have a spell that 6 waves of ice drops from the sky. And i remember too that Furion was a druid and his normal attack was big energy balls veeeeery slow! That is it. Do you remember play any map like this?
Sorry man, I don't remember any map like that. Good luck finding it :)
My map that I made says DEPROTECT at the top, can I remove that?
Haha. I put that intentionally in order to prevent non-map makers from stealing people's work or putting cheats in maps. I explain my philosophy in the disclaimer when the program opens. It's essentially a watermark to show that it's been deprotected.
Yes, it can be removed, but no I'm not going to tell you how. A real map maker should know how to remove it easily :)
@@ai-gamer No problem, I'll look into it
I wanted to make a Troll and Elves x8 for fun but when i looked in the trigger editor it had a few stuff, but basically all the code was missing. I'm not a coder myself but changing a few variables to gain more gold should be pretty easy. What could be the issue?
Are you using the GUI (Experimental) feature? That will definitely be missing trigger code. If you're using the default plain text triggers I've never noticed any missing code, in fact it usually produces duplicate code because some of the code is re-generated by the editor automatically on save.
Full deprotection where you can save in the editor unfortunately still requires some manual work, but this tool gets you close. The purpose is if you're going to fully take over maintenance of a map through the editor. If you just want to make a minor code change, there's an easier way.
Run the tool but don't open/save in the editor. Use MPQEditor to open the map, extract war3map.j or war3map.lua, edit in notepad, & replace with MPQEditor.
I just updated my tool with lots of bug fixes. Can you try it out again on that troll+elves map & let me know if the missing jass code is there now? Any other suggestions for improvement would be awesome. Thanks!
@@ai-gamer Hey, i tested the Troll & Elves map long ago when i wrote the comment above 3 weeks ago. I didn't realize i was looking at the variables; all i had to do was click the very top icon, but answering your question yes it does show. However when i tried deprotecting another Map with version 1.2.0.0 it would go through the process making me play test and such, but after play testing it would just stop responding and crash, so i'd have to manually close it. The odd thing is that i could deprotect the same map using version 1.1.6.0. Additionally the same map i deprotected would have half of its trigger function missing I.E completely empty trigger functions and the custom script is empty too. I think the script was written JassCraft so that's probably why it doesn't show.
@@Ottonary Which map is causing the freeze/crash? If you can send me the epic war map ID # (not the full URL or UA-cam will block the comment)
Maybe leave it running while you eat dinner or something just to see if it's really frozen? Some maps take a long time.
@@ai-gamer I don't think the author posted on epic war map ID but i did run the program again on the same map and it works. It even shows the custom script code; it just took a really long time like you said. Previously when it was decompiling it would say "not responding" after a while, but this time the program would stay active but I'd have to manually click somewhere to for it to start deprotecting again. Also all the unit models and names were reset back to their default names, except their custom stats. So object editor would show a bunch of repeating units with the same names and icons.
Man, how to edit save code to change it from one username to the other?
It's a little complicated. You have to edit the JASS to find the username variable, hard-code it during the save function to your new value, & then use this hacked map to load your old code & re-save in order to re-generate it.
@@ai-gamer Tnx. Will you be making a video on this? Or can provide resources on it?
That's a good idea for a future video. Thanks.
Im having some trouble deprotecting Trolls and Elves Final Version. The Deprotecter says its a succes and i am able to open the map in the editor. I can, however, not play the map. The game crashes when i try to run it (even if havent opened it in the editor beforehand). I am also not able to save the map in the editor and i am not able to fix manually as i dont have enough experience with jass.
I did make it work with another map however, so thank you for this great tool !
Glad you got it working on the other map. You could try the "GUI/Visual Triggers (Experimental)" button, to see if that helps - That will help you avoid Jass, but it doesn't always work. Otherwise, you might need to study up on Jass or try a different map. Unfortunately, the tool doesn't work perfectly on all maps yet :(
I just published a big update to my tool. Can you try it with Trolls & Elves & let me know if any of the issues you had before have been fixed? Any feedback you have would be awesome. Thank you!
excellent work,
is rhis updated deprotector?
Thanks. Yes, this is brand new, written from scratch. I just finished coding it. It should work WAY better than the previous tools. Let me know how it works for you.
@@ai-gamer its looking for the exe file
edited: nevermind, got it.! thanks
update: detected as trojan virus
github.com/speige/WC3MapDeprotector/releases
Is that where you downloaded from?
The newest version is 1.0.1.0
If you extract the zip file it has an exe located at 1.0.1.0\WC3MapDeprotector.exs
What antivirus are you using? It shouldn't have a Trojan virus.
Can you log a bug on this page? github.com/speige/WC3MapDeprotector/issues
You can upload a screenshot on GitHub issues.
@@ai-gamer my anti-virus is AVG, and it detected as win32: Evo-gen [trj]
@@polkulotznad3987 Strange. I just created a virtual machine with a fresh windows 7 install & the latest version of AVG. I didn't get any errors. Can you go to github.com/speige/WC3MapDeprotector/issues and upload some screenshots so I can try to reproduce it?
Excellent work 😍
Glad you like it. Let me know if you end up making any cool mods with it.
can you help with on map?
Marvel TD Avengers 2008, i just want to change the lumber initial, to get it to the end.
since 2012 trying to finish this map :\
github.com/speige/wc3mapdeprotector
Have you tried to deprotect with this tool?
ua-cam.com/video/Og1bGnSEoy8/v-deo.html - This video might help you as well, I show how to hack a different tower defense by allowing "greedisgood" type cheat codes, no deprotection necessary (just editing Jass directly inside protected MPQ file).
Hello sir, can you tell me which link i need to download, so i can test your tool and deprotect map ? Ty in advance.
github.com/speige/wc3mapdeprotector
Click "Releases" on the right side.
Pick the latest version
Under that click "Assets", then click "WC3MapDeprotector.zip"
Hey amazing tool, thanks so much! I just have an issue, when saving a map with world editor it complains of function redeclarations. I believe this has something to do with the .wct and .j files which have the same function names but they differ slightly, the functions in .wct are missing some lines of code. Is there a way around this? Saving the map corrupts it and makes it unopenable in warcraft 3 even if I don't make any changes.
I've looked at the .j file and there are no duplicate functions so something else must be going on here.
As far as duplicate functions, unfortunately they have to be fixed by hand. The issue is map protectors take every function, inline them, change the order around, and obfuscate things. So, during deprotection I try my best to recover it. The issue is some of the triggers are auto-generated by the editor (for example when you drop a unit on the map it converts it to trigger code on save), & my deprotector isn't perfect at determining what's custom & what's auto-generated. If my tool mistakenly recovers auto-generated code, it'll cause duplicates on save.
The reason the .j file doesn't have the duplicates is because you haven't saved yet. The wct is what you see when you're typing the code in the editor, the other is the .j file that actually executes at runtime. During deprotection I don't mess with the .j file, only the editor version, so the map should run fine after deprotection but might corrupt after saving.
It's actually normal for wct to be missing some things, because it shouldn't have any of the auto-generated code.
Hope that helps.
I just released an update to my deprotection app with some bug fixes. Can you try it again & let me know if the issues you were having is fixed?
Wow this is amazing!!!
Thanks!
I don't think I know how to use it correctly
Were you able to open it in the world editor?
I don't know how to use GitHub, can you put the WC3MapDeprotector tool in another path?
github.com/speige/wc3mapdeprotector
Click "Releases" on the right side
Choose the latest version.
Click "WC3MapDeprotector.zip"
Go to your downloads folder
Right-click extract the zip you downloaded
Open Launch_WC3MapDeprotector.bat
@@ai-gamer Thank you very much. I downloaded that tool.
@@ai-gamer running the WE tool gets the message ''user defined variable conflicts with generated variables '' can you help me resolve this issue?
I just released a new version of the tool, can you try again & see if the problem is solved?
@@ai-gamer Okay let me try, thank you.
Thank you for the Tool!! 'wonder if it works on the older version.
It should work on the old version, but I haven't tested it. Let me know if it doesn't.
Bro you are doing gods work, I like to tinker with old maps. Where can I support?
Thanks bro!
github.com/sponsors/speige
@@ai-gamer Just did. I just found out one of your videos and you used my map as one of the examples. Was pretty cool!
Thanks man!
Which map was it?
@@ai-gamer tevo
Used the tool and loved it, reminds me of w3map Restorer Russian tool.
Feedback: Preplaced units will always be doubled since script still contains the preplaced units script on top of the .doo file. Would be nice if it is automatically removed in the script under the _old init functions then those preplaced in the map would be automatically set to the udg_unit variables (same with rects). With this, the tool simply is the best map restoration tool to exist.
+would be nice for automatic unhex script tool option
Do you have a link to the w3map restorer tool? I'd like to decompile it & see if there's anything valuable I can add to mine. You can't send links in YT comments, so put it in a github issue, if you have it.
Can you give me more details on the "unhex" option? I think I already do that. Are you talking about the FourCC codes 'hpea' ? Those can be obfuscated like $######## or as an integer or even as ('hpea' + '0000'). I try to de-obfuscate those where I can. Do you have an example where it's not working, or are you talking about something else?
As far as duplicate units, I'd love to fix that, but it's on the backburner right now because it's a complicated problem. Essentially, it has to be fixed by hand. The issue is with a protected map they take EVERY function called inside function main, inline them all, change the order around, and obfuscate things. So, I have to parse it back to the original. But, all of that code is auto-generated by the editor, so it really needs to be in native editor files like war3mapunits.doo, but in a proprietary binary format instead of jass. So, that recovery is complicated & not perfect yet. If I only recover part of the data, when you save in the editor, it'll regenerate function main & anything missing will be lost permanently. For that reason, I take the original function main & rename it to main2 so that it won't get overwritten. Then as a deprotector your job is to figure out what parts of main2 are duplicate & can be deleted and which parts to keep. It's kind of a pain unfortunately. The alternative is if I don't call main2 you won't have duplicate units, but you could have missing units instead (or missing sounds/etc). - I should probably add an explanation of that in the program log.
Improving the jass decompilation & recovery is on my github issues, I'd like to get to it eventually but it's difficult & I have other priorities taking my time :(
Thanks for the feedback. Let me know if you have any other ideas for improvement.
OMG! This is it!
Glad you like it. Let me know how it works out for you.
This map deprotector goes not responding on me every time
Strange. I'm happy to help research it with you. It seems to be working for most people.
Have you tried with several different maps, or just one?
Have you tried leaving it running overnight?
Can you try on a friends' computer, in case it's something weird with your PC?
I used your tool. but I couldn't edit anything.
The tool doesn't work perfectly for every map. I just tested it on custom hero defense. GUI triggers aren't working for that map, so you'll have to edit the jass directly. Also, if you scroll around the render screen of the editor, you'll notice the terrain and doodads are there, but no buildings or units - So, it failed to deprotect that part as well. I'm still working on improving the tool, but unfortunately, it'll be awhile before it can do every map perfectly.
If you want to edit this map, you'll need to really learn the internals of warcraft 3 & the editor, it won't be easy & will need solid programming skills. But, it's a great project to learn with if you're interested in that. If you're not up to the challenge, maybe try my tool on a different map or wait for me tool to get further improvements.
Here's a video on how to edit a map without opening in the world editor at all:
ua-cam.com/video/Og1bGnSEoy8/v-deo.html
Here's a video on how to deprotect by hand, so you can learn the internals of the world editor:
ua-cam.com/video/5OrON63GQkI/v-deo.html
@@ai-gamer I'm not ready for that yet, but thank you. you are incredible. I'll try to edit without opening the editor
@@gabrielbernardes7695 I just made an updated version of my deprotection tool. Can you try it out & see if it works any better for you?
I've made some improvements to the tool, try it out & let me know if you're able to open in the editor now.
Respect and ty bro. Im on my way to find the hidden command in the chinese map from dz version, do u have some idea to do this?
Good luck!
Assuming it's activated via sending a chat message, I'd start by searching the .j file or the text in the trigger editor module. If you're reading the raw jass, look for a function like TriggerRegisterPlayerChatEvent. If you're looking at GUI triggers look for something like "Player 1 (Red) types a chat message containing ...."
If it's activated by an actual lever you have to attack with your player on the ground, I'd look at where the blue regions are drawn on the screen for clues. If you know what the hidden command is supposed to do (invulnerability or something), you could find the jass code that grants invulnerability and then work backwards from there to see what code calls that function.
Let me know if you're able to figure it out. I'm excited to hear what you find.
It is sad. I really was existed when I found this. And yes it worked, I could open Natures Wrath I often play with 2 friends. I wanted to add something own and learn fromthe Triggers, because when it comes to trigger, I have no clue.
But sadly, it seemed that they didn't survived the unprotection-
Did you try the "visual trigger" checkbox? If not, it only does the raw jass code.
It doesn't always work. I'm still actively trying to improve the tool.
yeah later I did and it still was broken, the triggerss and other places. It is like you said, it will never work 100%.@@ai-gamer
I just released a new version of my app with improved trigger recovery. Can you try it on Nature's Wrath again & let me know if the triggers are still missing?
Yo, can people put malware into the w3x files?
It's not very likely, but theoretically possible.
There are 2 ways I know of. Option 1: Malware can disguise itself as a fake file extension, but needs to be executed somehow. So, if you rename something like virus.exe to virus.w3x it's not really a warcraft map & Windows won't execute it by default, but if the virus creator can trick you into running it as an exe, it could run the malware. (This isn't specific to w3x, but virus creators often disguise things as different file extensions to trick people).
Option 2: If it's a true w3x file it can only be opened by warcraft3 or a similar program (world editor, etc). Those programs will open the map file & execute it, however all of those types of programs are designed to only give the map access to what it's allowed to touch (game units, etc), so they shouldn't normally be able to harm your computer, at most they could help you cheat in game. However, c++ (which most games including WC3 are coded in) is susceptible to a bug called memory buffer overflow. Security researchers are always trying to patch these bugs, so the latest version of reforged is considered safe, until a hacker finds a new exploit. However, older versions of wc3 did have this bug. Map creators sometimes call this a MemoryHack. It basically allows the map to run any code directly on Windows, not just warcraft code inside the game. Typically map creators used this to add new features to the base game that aren't normally there. Popular maps like Dota used this. For example, saving your character to the Internet so you didn't lose your progress. I've never heard of anyone using this to create a virus, but it's certainly possible.
@@ai-gamer WoW you are amazing, thanks for the fast and lengthy answer and also the open source work you do. Its fascinating that throughout the long time warcraft 3 and custom maps have been around, nobody actually created some malwares embedded into these maps. Btw, just wanna ask some questions out of curiosity, like what is your occupation, im guessing some kind of CS profession, and also are you trying to make this youtube a full time thing, or just as a hobby, cause man the videos are really good quality?
There were definitely a lot of people that put "cheats" into maps. I'm sure a random malware exists somewhere, I just haven't seen it or heard about it.
Thanks, glad you like my content.
Sure, ask me anything you want.
My profession is a software engineer. I build full-stack web apps. I've been doing this a long time (~ 25 years) bouncing around between a bunch of small companies in my city. My current preferred languages for business apps are C#, SQL, & Angular (TypeScript/JavaScript, CSS, HTML). But, I'd much rather be coding games, if I had the choice :)
I would love to make UA-cam a full-time thing. My goal is to teach people how to code using video games. That's how I got my start (& it's a lot more fun than making business apps). Unfortunately, I gotta pay the bills somehow. Maybe if I hit the UA-cam lottery & get a lot of subscribers I'll be able to get enough ad-revenue to go full-time someday, we'll see :)
@@ai-gamer There is no way you can't get a solid game coding job with 25+ years of experience. Or is it that you want to make your own games? Because that was the only reason I didn't go into game dev, I don't wanna create other people's ideas, I want to create mine :D
About the youtube career, I really hope it works out, 3 years ago I would have said that these type of videos wouldn't get much attention, because its such a niche. But in the last 2 years coding, programming and game development, is starting to become pretty mainstream, so I think you might actually have a good chance of "hitting the UA-cam lottery". Especially, if you keep making such good quality videos (even though I only saw 3 so far [but I loved all 3]). Also the 25+ experience really hits hard, cause I had professors with the same amount of experience, but weren't this good at explaining all the steps, and how things work. So I wish you all the best.
Thanks for the compliments. It motivates me to make more content!
You're right, I could get a gaming job if I wanted. There's not many gaming companies in my area, so business apps was an easier path for me. Now that remote is popular I could re-consider it, but since the majority of my experience is in business apps, I don't want to start over climbing the corporate ladder in a new industry.
I have made some very basic games on my own, but nothing noteworthy. For now my goal is to make game mods instead of full games & to teach people how to do it on UA-cam. Honestly, I just hope it helps people learn coding, even if it never earns me any $.
Good job on the program but I don't really see the point of your anti-cheat disclaimer.
First of all, deprotection is intrinsically something that's been frowned upon for many years by modding communities and it's a taboo topic on many forums and for the right reasons.
You don't need to deprotect map to cheat it as long as MPQ editors can open it so you can look into its map script and modify it and then import it back, this increases byte size and this is how you can differentiate between cheated and original map. Besides map protection some developers go to more extreme lengths and corrupt MPQ archive as well so you need to rebuild mpq, use name scanners, merge listfiles etc and then try to get as less unknown files as possible but you will always have some missing files in forms of models, sprites or doodads at the end of the day, especially on big maps.
Deprotection is mainly used by other form of "cheaters", those who wish to steal the works of someone else as you mentioned, I suppose best word for them would be rippers since they look for specific parts of maps to reappropriate such as terrain or units.
If a map has been protected then that means its original author doesn't want for his work to be used by anyone else. I think map protection is just silly cause modding should be distributed free and open source but that is their choice and we should respect it, if you want to continue their work then you try to contact them and ask for permission to edit and ask for them to send you unprotected source map.
So with all that being said, what exactly do you mean by visual triggers? Are you claiming your tool can recover/restore GUI triggers? Because if so then honestly yes your tool is pretty much revolutionary because all other fail in this regard and this is key feature most people want for good or bad purposes but mostly bad since as I mentioned people who use deprotection do it do obtain map assets and code if possible and usually for their own interests.
But anyway if you really figured out a way to restore triggers then hats off to you sir because with obsolete tools even if you successfully deprotected a map you'd still lose all triggers so essentially you could never really continue a map through deprotection means unless you are willing to rewrite the map from scratch.
Great points here.
Yes, I mean GUI triggers. Still a work in progress, but it works on some maps.
I agree deprotection is frowned upon, but I disagree that it's for the right reasons. I think it hurts the gaming community as a whole. Most popular maps were a result of gradual improvements over time from multiple authors and usually each transition to a new author required deprotection.
You even said yourself that you think maps should be free and open source. I think that's how 99% of the community feels, just not the forum admins or map creators.
I'm attempting to make a middle ground that protects the authors while still allowing modding. The disclaimer is simply to educate people on why deprotection is frowned upon. Teach people correct principles and let them govern themselves. If people understand what bad behaviors hurt the community, they will probably comply.
The disclaimer is only a small part. My tool also adds watermarks to make it obvious to anyone accidentally playing a deprotected map so it stops it from further distribution. It's true you can look at the byte size to see if you're on a modified map, but the average gamer won't do that. The watermarks I add are obvious to any player.
My watermarks are fairly easy to remove for someone who understands the world editor, but not for the average cheater who just embeds a script written by someone else but doesn't understand code. I have ideas for future improvements to the watermark by having a digital encrypted signature similar to how websites do SSL public/private keys, but I haven't worked on that yet. The idea is to make it obvious to the player that the map wasn't made by the real author.
My tool understands corrupted MPQ headers & unknown files, it does actually recover them & repack. Doesn't get 100% of all unknown files yet, but it's pretty good & I'm still improving it.
Emailing the author to ask for an un-protected map is unlikely to be successful. However, there's nothing ethically wrong about reading their code to learn & then using that knowledge to make your own map from scratch. In fact, I guarantee every map creator does this. Certainly straight up stealing is bad. Ripping is debatable. If you're directly competing with the original map & splitting the community, that's bad because the patreon donations will go to you instead of the real author. If you're using those assets on a completely different map, I think it's probably fine but technically against copyright, you should re-create the asset by hand rather than ripping.
My opinion anyway. Your thoughts?
@@ai-gamer I rushed my OP a bit due to work so I should've clarified I'm also a map maker albeit small contributions to a well known map so I am kind of split on the protection subject, it's kind of double edged sword. I am for FOSS but at the same time I understand why people protect their work.
We had our map leaked before and they stole our work without giving credits where credits are due. We officially took over map from original author and put incredible amount of time to improve it for many years and then it ended up on Russian private server one day and now there's several iterations of the map. I suppose it doesn't truly matter because it was free from the beginning and there's nothing to lose but it's a matter of pride and something you can call your own creation I guess so this is why map makers won't give it away just like that, you have to pry it from their cold dead hands haha. It's somewhat like those warez groups in game cracking, movie encoders etc compete albeit illegal but there is this code of honor among thieves and people who break the rules get their stuff nuked or worse like DDoS, but I'm getting off-topic, I'm just thinking there's not a real solution to this problem and it all depends on modder at the end of the day.
E.g. better comparison would be so many famous Half Life or Skyrim mods who eventually became pay to own, some having standalone game, some are open source but not free, others are free but closed source, some are just trying to commercialize their product by any means and I can respect that if you put your time, tears and sweat into your project.
So there isn't a real solution to this problem and there may never be one, we can only hope people will start seeing modding as less of a competition and more as something to do for fun at least in War3 and similar old games.
Great perspective. I agree with basically everything you said.
I think the "code of honor among thieves" is the key point. By preventing all deprotection, and banning any discussion of the topic, we're disallowing the good reasons for deprotection. All we need is a way to make sure people follow the code of honor.
Think about all the social justice warriors in the world. If anyone breaks the rules in society. They get canceled & banned & blacklisted & boycotted. So there's no need to prevent bad behavior from happening, the fear of punishment keeps people in check.
The issue in the battle.net community is 99% are players and 1% are map makers. The 99% have no way of knowing if the code of honor was broken, so they don't know which maps to blacklist. If we can make a system that notifies the gamer when a map breaks the rules (cheat-packed, ripped, etc), they can choose to boycott the map, which solves the problem.
The purpose of my disclaimer is to explain the code of honor. The purpose of my watermark is to tell the gamer if the map is breaking the rules. It's a step in that direction, but far from perfect. I eventually want to code a "map signature" to make the watermark more clear to the gamer when a map has been cheat-packed or ripped & to make it harder for the hacker to fake or remove the watermark.
I found a way to fix the compile errors. I just used AI and it managed to fix it
But one thing i noticed is that units and building are duplicated. Any way to fix this?
Which AI took did you use? ChatGPT?
@@ai-gamer Yeah
Which map is it? I'll test & see if I can fix it.
Generally this happens if the script functions are named wrong. The editor expects specific function names to generate the units & when I save it re-codes those based on any units you've dragged into the render screen. If it can't find the existing function, it makes a new one, so that would cause duplicated units instead of replacing the previous ones. In that case, you could fix it by deleting the extra function in the triggers that has the wrong name.
@@ai-gamer Most maps i've tried has duplicated units but one example is the last map from resurrection of the scourge.
Thank you for promoting ethical behaviour! Every little roadblock goes a long way to dissuade 'cheater forks'.
It would be nice to have a "show unknown files" button after a non-forced deprotect attempt. I realize this might involve sending the user over to an already installed MPQ editor. In the meantime, I'm trying out the brute force feature to give myself the best chance of resurrecting the abandoned XAOS map. I'm planning to fix bugs, give it a couple of balance patches and get it more in line with modern AOS-style sensibilities.
Naturally, I expect to encounter compiling errors, as all previous deprotection attempts have thrown a couple. I'll check your video backlog for some hints.
Are you planning to create a dedicated tutorial for such errors? I believe fixing those is usually the logical next step in deprotecting very involved maps.
I'd ignore the brute-force feature for now. It's going to take a really long time & not find much. Maybe run it overnight & then cancel in the morning.
I just published an updated version of the app that does a better job with unknown files, if you want to try it out.
You can already see the unknown files very easily, no MPQ editor needed. Just open up the location where the app is installed, & you'll see a folder called mapName.work, that's where it extracts everything. There will be an unknowns folder beneath that.
I am definitely planning on doing more videos showing how to use my deprotection tool. & How to do map creation & modding in general.
Ethical behavior is really important to me. In the end you can't stop someone from doing wrong, but you can at least teach them why it's bad & give them roadblocks, like you said. The issue with protection is it hurts the community. The issue with cheaters & stealers is they also hurt the community. I'm hoping this creates a good middle ground.
Let me know how things go with deprotecting XAOS!
Yes, you will have some compiler errors to deal with. I'm hoping to improve my tool over time, but it's super complicated, so we'll see :)
@ai-gamer
Alright, after a solid two days' worth of trying and using the latest version, I'm reaching the end of my rope. If you could, I'd really appreciate your input!
In any approach, I am getting 3 unknown files that I have yet to figure out how to look into. Thanks for directing me where to find them.+
GUI approach:
- It seems like a lot of variables are not recovered with this option. Specifically most gg (system-generated globals) didn't make it.
- Likewise, the sound editor is empty.
- I tried simply creating udg_ variables and editing all references, though I stumped on trying to input the Arthas40 sound file. If I right-click -> Use as Sound, my Editor crashes. This does not happen if all triggers are deleted beforehand. I suspect WE tries to connect all mentions of this file and somehow stumbles over itself.
- All in all I recovered 239 triggers, 295 functions and 115 non-trigger variables
Jass-only approach:
- Trying to compile via WE throws a "Function redeclared" error for CreateBuildingsForPlayer0 (and all other players) and a couple of other functions. In the JASSHelper debugger, I can see the script trying to define these functions twice, which is conversely not the case inside the init script. I do not know why this is the case.
- I tried saving the file without a script and then inserting the .j file directly with MPQMaster. This runs the map in WC3, though most triggers are clearly broken (namely at least all menu, quest and countdown descriptions and starting barrier).
- All in all I recovered 240 trigger variables and 318 non-trigger variables (also no functions or triggers, though that is of course expected here)
If you want to see for yourself, this is the link: www.epicwar.com/maps/21294/
Thank you so much for all your responses!
PS: Brute Forcing has, as predicted, not worked. After a full 24h, it only reached 8. It would likely need a couple more days to finish.
I'd ignore the unknown files. 3 is very low, and probably won't affect your gameplay much (possibly a missing model, text, or sound somewhere, but probably a file that was never used that the programmer forgot to delete). There are maps with many more than that, which is a major problem, but I'm working on improving it.
Honestly, the trigger recovery is still a work in progress. The issue is world editor creates a bunch of variables when saving because it converts all the doodads/sounds/units that you've placed onto the render screen into code in the war3map.j, so it has to merge the existing code with the new code. Protectors obfuscate the script file (randomize variable & function names), so world editor doesn't know how to merge them together, so it gets errors & duplicate code. I'll work on improving the script recovery in the future, but for now it's a long painstaking process of manual bug fixes :(
As far as visual/text triggers, I'd start with whichever one has fewer errors. In general, I prefer text triggers for actually coding & bug fixing, but visual are nice the 1st time you open a map, just to get a quick glance at how the map was designed & to orient yourself to the program's overall structure.
@ai-gamer
You're right, it seems like there might be quest and menu text in those files, which I have to add at some point. Not critical.
I totally agree about your last point. I had a much easier time understanding how the original dev implemented their design decisions by looking at the visual triggers.
Quick Update (I feel like this comment thread is becoming my dev log :D ):
- The sound crash only happens if there is an already defined sound variable somewhere in a trigger. As a workaround I used different sounds or temporarily changed the preset sound, added the sound file to my active sound editor and then changed back.
- I've managed to get all missing gg_unit pointers back. I did this by selecting all already placed units with an action (such as hide) one after another. This prompted WE to calculate a short bit and worked to fix more compile errors. I now understand more clearly what you mean when talking about how the units are placed only in the render and WE having to work backwards essentially. It's going to take a while to find everything that wasn't merged correctly, but I now have a clrearer way forward.
Dev log on here is awesome. That helps other people learn if they search through the comments.
Not sure if you're on the newest version of WC3MapDeprotector, but it now names the unknowns {hash}.extension where extension is auto-detected based on file contents.
So, I see these 3 files:
10473130907757326590.blp
3918739247265421392.blp
4948227483043834138.blp
blp are image files, usually used as textures for mdl/mdx models or as icons.
Download BLPLab from HiveWorkshop to view them.
If they're actually used, you'll see a white model instead of a textured model when it renders (or I think the face of a blizzard employee or green square for icons).
It's pretty obvious 3918739247265421392.blp is the loading screen image. However, the LOADINGSCREEN.MDX model points at FULLSCREEN.BLP, so I bet the other file is a duplicate that was forgot to be deleted.
The other 2 look like "gear" icons, one enabled & one disabled. Knowing that it'd be cool to guess names like gear.blp gear2.blp, but they could have named it something completely random, so brute force is safer.
I'm working on a "live game scanner" to find those files which will be much faster than brute force, so then we won't need to "guess" the filename.
wc3 map editor is so trash they really needed to upgrade it for reforged
I'd say the world disagrees that the world editor is trash, because thousands of amazing games were built with it. In fact, I don't know of anything better that has come out in the 20 years since. Some other editors have more features, but they are too complex for non-programmers to use.
They did some minor updates to the editor for reforged, but not much. I'd love to see more improvements to the editor, but I'm relatively happy with it in its current state. If you're having issues with frequent crashing, try switching from HD to SD graphics mode in the editor (you can still play the game itself in HD if you want).
It's disheartening to see content promoting deprotecting Warcraft 3 maps, especially when you're seeking support for it. Many creators, myself included, have invested a lot of time and passion into learning the World Editor and building within its intended framework. There's no getting around the World Editor Terms of Service since Blizzard owns all rights in the end.
While anyone can create their own map, advocating for deprotection software feels like encouraging a shortcut. Sure, there's an argument for opening maps for learning purposes, but the reality is most maps are built by hobbyists who may not prioritize a clear organization of the Warcraft 3 editor's elements. Deprotecting them exposes the way these elements are put together, but it doesn't necessarily provide a well-organized learning path. You'll likely end up with a complex structure that's difficult to decipher, hindering your ability to truly understand the editor's functionalities. The Warcraft 3 engine has its limitations, and wrestling with someone else's unoptimized design can be a real struggle.
Let's be honest, deprotection tools are more likely to be used for convenience than genuine learning. Creating software to bypass protections, even if they're not ironclad, undermines the effort and intent of the original creators. Most people who use such tools will likely be motivated by a desire to take credit for someone else's work, potentially even for profit. It's rare to find someone with a genuine passion for learning who would resort to deprotection.
I completely understand and respect your position. As a map maker myself, I would be very upset if someone stole my work and took credit for it.
I think from both a moral and legal perspective, deprotection tools are fine, but using them for copyright violation is not.
My tool explains copyright rules and makes you agree to them before using it. I think educating people is useful to prevent misuse.
In addition, my tool intentionally puts many watermarks into the deprotected map to make it obvious to any gamer that the map has been stolen, so they don't support hacked maps.
My hope is that this is only used to resurrect dead maps or for learning. There are a lot of maps that broke with reforged & the original authors have abandoned the projects.
In the end, every tool, like a car, can be used for good or evil, I can't control that, but I have faith in humanity that the majority will use it for good.
Many maps were already broken prior to Reforge due to issues like the old mem-hack method, which was long patched because it was malicious. It's not the maps, Warcraft Reforged itself is broken and still remains this way, calling it map abandonment in that regard does not seem morally right to me even if it is what it is.
@@jasper1883 Sure, blizzard broke the map, which is not the author's fault, but the map is still broken. If the author isn't available to fix blizzard's mess, I don't think it's wrong for someone else in the community to do it. I think resurrecting a dead map is a service to the community, and most authors would be happy someone did them a favor. It's like when someone abandons an open source project because they're too busy, they want someone else to take over. I think the purpose of protection, for most authors, was to avoid hackers/cheaters, which my tool tries to prevent via watermarks.
Resurrecting a dead map could indeed be a service to the community. However, you're making some broad assumptions here. You claim that most authors would be happy with someone else fixing their maps, but have you actually asked any authors about this? It seems speculative to assert that you know the preferences of the majority of map authors in the Warcraft 3 community without concrete evidence. If an author intended for their map to be openly modified, they likely wouldn't have protected it in the first place. The fact that a map is protected suggests that the author wanted to maintain control over how it is used and modified.
Additionally, you mention that the purpose of protection for most authors was to avoid hackers and cheaters, and that your tool tries to prevent this via watermarks. However, it's unclear how watermarks would effectively prevent hacking or cheating. Watermarks are typically used to indicate ownership or authorship, not to secure content against manipulation. They don't provide actual protection against someone altering the map's functionality or introducing cheats.
Yes, I'm making assumptions. Yes, I researched the topic before I came to that conclusion. Obviously there are some who agree with me and some who disagree with me. I can't please everyone.
The watermarks announce to the host and gamer in-lobby & in-game that the map has been hacked, so everyone will abandon the hacked version of the map, preventing its distribution. The majority of cheaters inject a script written by someone else, because they don't know how to code, so this prevents most of them. A real map maker who is resurrecting a map will have to go through the effort of finding & removing the watermarks, which there are many.
In the end, the tool could be used for good or for evil. I can't control that. I think the potential for good is greater than the potential for evil, otherwise I wouldn't have built it. I'm doing my best to combat those who try to use it for evil, but I can't 100% prevent it.
I have a map that doesnt show up at all in my game I was wondering if you could tell me what I need to do to fix it? id is 331583
Usually if it doesn't show up at all in the game, the map files are corrupted or they are incompatible with the version of the game you own.
I just tested that map on my PC & it's working fine. I have reforged. If you're on classic, maybe that's the issue?
i'm just stuck on 'trigger error' not sure doing wrong or has a issue
epicwar : 338287
I'm not sure why it's failing on that specific map. I'll try to fix it when I have time, but I'm a little busy right now, so it'll be a while.
You may need to try a different map for now. Sorry :(
try War of the Two Gods 2.2b (p) Final.w3x from entgaming
What ideas do you have for improvements to that map?
hi i would like to edit unit attributes on old warcraft 3 mod (Nirvana) can you give me the tutorial?
Download Ladik's MPQ Editor.
Use it to open & extract all files from Nirvana.mpq
Search for *.txt and *.slk in that folder
You can edit *.txt in notepad
You can edit *.slk in Microsoft Excel
After saving your changes, add the modified files back into the Nirvana.mpq using Ladik's MPQ Editor
Nirvana.mpq also has a file called, war3map.w3a, which is additional data for abilities. Hopefully you won't need to touch it, but if you do: Make a new map, save as w3x
copy the war3map.w3a from Nirvana.mpq into the new w3x
edit the w3x in the official blizzard world editor & save
extract the updated war3map.w3a from the w3x using Ladik's MPQ Editor
replace the war3map.w3a in Nirvana.mpq using Ladik's MPQ Editor using the updated version of the file extracted from the w3x
Good luck!