Map Adapter

Level 19
Joined
Jan 1, 2018
Messages
739
Hi all, yes I'm still alive.

I just uploaded v1.3.0 of this tool, here's the changelog:
  • Updated runtime to .NET 6.0
  • Added 'diff' option to file context menu to view changes (currently limited to 25000 characters for performance)
  • Added a new form for initial setup to configure the appsettings file
  • Added 'get help' button where you can create a .zip file so I can hopefully reproduce your issues
  • Support for adapting war3mapSkin files by merging them with the regular war3map files

Now to reply to the posts some of which are a year old...

Ran this on Custom Hero Survival 4.0d (2019) to port to 1.26a, and got a C# AdapterError "Sequence contains no elements" @ war3map.w3u.
Hi.
Your tool is a lifesaver, really appreciate your work. Wish you all the best.
Could somebody help me with some issues regarding downgrade? I'm trying to convert a map from 1.35 to 1.26a.
First, adapter gives an error on .w3u components saying "Sequence contains no elements", but the map has a lot of custom units.
Second, it can't adapt some trigger functions (see attachment). But I can't understand why - all this functions didn't exist in 1.26a, really? Or I just messed something?
View attachment 454636
op's last post was like a year ago but i'm still gonna post this anyway

trying to convert a map from the current reforged version to 1.27a, but i get an AdapterError on the files war3map.w3u and war3mapSkin.w3u, both of them saying "Sequence contains no elements"

i assume this post is one of the reasons for the error but it doesn't really explain much

also this probably doesn't matter but this is the map in question. not sure what to do now, really wanted to downgrade this map to 1.27a since it has too many issues in reforged
I think the 'sequence contains no elements' error is caused by the game files. I only tested this on v1.31.1 but you all seem to be trying to adapt to v1.26/1.27.
To investigate this I added the 'get help' button which includes the game files required by this tool in the .zip file.

Has this issue been resolved?
Yes it has finally been fixed in v1.3.0

What do I do if this shows up???
Required file not found: C:\path\to\war3.w3mod\units\abilitydata.slk
Directory not found: C:\path\to\war3.w3mod\units
Directory not found: C:\path\to\war3.w3mod
Directory not found: C:\path\to
Directory not found: C:\path
This is because you did not update the path in appsettings.json file. I have added an initial setup form so you no longer need to manually make the appsettings file, hopefully this makes the tool easier to use.
 
Level 13
Joined
May 13, 2017
Messages
163
Oh My God! Your map adapter works!! It's amazing! I've been trying to rebuild my Bows and Arrows campaign map by map from version 1.36 to 1.27 and the terraining is very discouraging to remake on each map. The adapter doesn't retain the triggers and unit data but at least all of the terrain can be adapted now. That just saved me a bunch of precious time on each map. Thanks a ton!
 
Level 19
Joined
Jan 1, 2018
Messages
739
welcome bacc
the sequence error thingy seems to have been fixed on war3mapSkin.w3u but i'm still getting the error on war3map.w3u
anyways just gonna dump this here
Thanks for providing the .zip file so I could reproduce the issue, seems it was indeed caused by the game files, specifically unitweapons.slk, which uses a different column name in 1.26/1.27. I have fixed this issue in v1.3.1
 
Level 12
Joined
Mar 21, 2008
Messages
375
still doesnt work unfortunately
i don't get any errors anymore when converting the map, but trying to actually play the map on wc3 doesn't work. the map at least shows up on the custom games list, but trying to start it just kicks me back to the pregame lobby thing. also playing on wc3 1.27a if it matters
 
Level 19
Joined
Jan 1, 2018
Messages
739
still doesnt work unfortunately
i don't get any errors anymore when converting the map, but trying to actually play the map on wc3 doesn't work. the map at least shows up on the custom games list, but trying to start it just kicks me back to the pregame lobby thing. also playing on wc3 1.27a if it matters
Did you edit the war3map.j file? Its status shows adapted but it seems there's still some incompatible variables being used that probably causes the map not being able to load: 'CAMERA_FIELD_NEARZ', 'CAMERA_FIELD_LOCAL_PITCH', 'CAMERA_FIELD_LOCAL_YAW', 'CAMERA_FIELD_LOCAL_ROLL', and 'PLAYER_COLOR_MAROON'.
 
Level 12
Joined
Mar 21, 2008
Messages
375
oh yeah there was some random trigger in the map that recolored some unit to maroon. forgot to remove that, my bad

i didn't edit the .j file to my knowledge (prior to this post that is)

as for the camera stuff, there's some additional lines that appear in the .j file that don't appear in a previous version of my map that's 1.27a compatible. it's in the "CreateCameras" function:
call CameraSetupSetField( gg_cam_Camera_001, CAMERA_FIELD_NEARZ, 100.0, 0.0 )
call CameraSetupSetField( gg_cam_Camera_001, CAMERA_FIELD_LOCAL_PITCH, 0.0, 0.0 )
call CameraSetupSetField( gg_cam_Camera_001, CAMERA_FIELD_LOCAL_YAW, 0.0, 0.0 )
call CameraSetupSetField( gg_cam_Camera_001, CAMERA_FIELD_LOCAL_ROLL, 0.0, 0.0 )
i just kinda removed these from each camera, not sure if that's a good idea but it made the map work
i'm not really knowledgeable on this topic but those particular lines seem to have been introduced at some point in some reforged patch idk lol

anyways TY very much for the help, finally i can play on a non dogwater version of wc3.........................................................
 
Level 1
Joined
Sep 3, 2024
Messages
2
i just kinda removed these from each camera, not sure if that's a good idea but it made the map work
That's what I had to do for some maps too btw. Not sure if its a good idea either but it gets maps working :)
___

Great tool Drake, thanks for the work put into this!
 
Level 4
Joined
Jun 30, 2023
Messages
24
Lots of thanks for the updates, @Drake53 . An small issue I have faced is that many Reforged maps are distributed with EditorVersion 6113. However, MapAdapter refuses to process them.

Hex-editing their version to 6114 allows MapAdapter to successfully convert them, but I feel like this issue is worth reporting anyway.

I think the 'sequence contains no elements' error is caused by the game files. I only tested this on v1.31.1 but you all seem to be trying to adapt to v1.26/1.27.
To investigate this I added the 'get help' button which includes the game files required by this tool in the .zip file.

I don't remember how I originally set up the v1.1.6 distribution I installed, but v1.3.1 reported that my folder was missing 3 files:
  • Units/AbilityBuffMetaData.slk
  • Units/AbilityBuffData.slk
  • Doodads/DoodadMetaData.slk

So I added them, and MapAdapter no longer crashes(*) when converting Custom Hero Survival v4.0d to 1.26a. (To recap: it used to throw "AdapterError", but it now says "Adapted"). Nevertheless, the converted map cannot be opened by 1.26a, which is expected, since the JASS needs some massaging.

(*) Upon further investigation, it turns out that the v1.1.6 Map Adapter ALSO doesn't crash anymore when dealing with this map, even without those 3 files. It's highly likely that, for unrelated reasons, I had already added the ACTUAL needed files at some date between my original report and today's test.

BTW, your tool has been a crucial element in the development of my backports project, so thanks again!
 

Attachments

  • (4)goldshire.w3x
    190 KB · Views: 5
  • (4)goldshire-original.w3x
    190.1 KB · Views: 6
  • adapter-6113.png
    adapter-6113.png
    12.6 KB · Views: 16
  • CustomHeroSurvival4.0d-to-1.26.zip
    1.3 MB · Views: 9
Last edited:
Level 19
Joined
Jan 1, 2018
Messages
739
Lots of thanks for the updates, @Drake53 . An small issue I have faced is that many Reforged maps are distributed with EditorVersion 6113. However, MapAdapter refuses to process them.

Hex-editing their version to 6114 allows MapAdapter to successfully convert them, but I feel like this issue is worth reporting anyway.
I did some tests some time ago and only found 6112 and 6114, so I assumed 6113 was skipped (or only used on internal/test builds): War3Net/src/War3Net.Build.Core/Resources/GameBuilds.json at master · Drake53/War3Net
I checked the map you attached and its build number is 16269, which isn't listed here so probably an internal build version: Warcraft client builds
 
Last edited:
Could someone port these terrain templates to work on legacy like Patch 1.28?
 
Last edited:
Level 28
Joined
Dec 3, 2020
Messages
968
I also have a request:
Can someone port these terrains template to work on patch 1.29.2 (or below)?
Durotar (the classic graphics one)

(I will post a few more maps later)
 
Level 5
Joined
Aug 19, 2021
Messages
40
Hello! So when i opened my MPQ editor, apparently i can't find the abilitybuffdata.slx and abilitybuffmetadata.slx file at all? I used WC3 ver 1.27.1 for the directory, and i have scoured through all of the possible directory for no results still! I required it to make work on my map adapters, so if i anyone knows where to find them please do tell, thank you!
 
Level 7
Joined
Sep 30, 2017
Messages
100
Hello @Drake53
I'm trying to use your map adapter v1.3.1 to play a map made by ISL called the Shadow Covenant and adapt all but got an error that says "The given key 'BlzStartUnitAbilityCooldown' was not present in the dictionary." This map recommaned 1.32 to play but i want to play it on 1.31.1 if that could happen any tip?



I believe it is something got to do with this: Cooldown Reduction [vJASS][LUA]
 
Level 19
Joined
Jan 1, 2018
Messages
739
Hello! So when i opened my MPQ editor, apparently i can't find the abilitybuffdata.slx and abilitybuffmetadata.slx file at all? I used WC3 ver 1.27.1 for the directory, and i have scoured through all of the possible directory for no results still! I required it to make work on my map adapters, so if i anyone knows where to find them please do tell, thank you!
n00b shared these files earlier in this post: Map Adapter

Hello @Drake53
I'm trying to use your map adapter v1.3.1 to play a map made by ISL called the Shadow Covenant and adapt all but got an error that says "The given key 'BlzStartUnitAbilityCooldown' was not present in the dictionary." This map recommaned 1.32 to play but i want to play it on 1.31.1 if that could happen any tip?
The error is because that native was added in 1.32, so you can't play the map in 1.31 unless you have a replacement, or you can delete the function, however that will cause the map to not work as intended.
You can look up natives and in which patch they were introduced here: jassdoc/common.j at master · lep/jassdoc
 
Level 12
Joined
Mar 21, 2008
Messages
375
kinda didnt wanna impose last time but i am back again to ask some shit

so i can successfully convert maps now, but when i try opening them in the world editor in their respective wc3 versions, i get the error "trigger data is missing or invalid"? just wondering if this is something you could potentially fix, or if it's just a issue on my end and i'm just dumb. anyways i can't even open wc3 on the latest shitpatch which is why i'm asking looool
 
Level 19
Joined
Jan 1, 2018
Messages
739
kinda didnt wanna impose last time but i am back again to ask some shit

so i can successfully convert maps now, but when i try opening them in the world editor in their respective wc3 versions, i get the error "trigger data is missing or invalid"? just wondering if this is something you could potentially fix, or if it's just a issue on my end and i'm just dumb. anyways i can't even open wc3 on the latest shitpatch which is why i'm asking looool
Thanks for reporting. This was an issue with the adapter not making the required changes to the war3map.wtg and war3map.wct files. I only ever tested this tool for patch v1.31 so never ran into this myself.
I have updated the tool to v1.3.2, you can find the download in the OP.
 
Level 34
Joined
May 14, 2021
Messages
1,598
same problem here I have no idea how it works I have the setup window which tells me that I am missing files a guide would be really cool thank you
Probably you have a broken installation of the game.
Make sure you followed the instructions correctly, specifically the presence of "appsetings.json" file in your game root.
 
Level 3
Joined
Mar 20, 2019
Messages
12
Probably you have a broken installation of the game.
Make sure you followed the instructions correctly, specifically the presence of "appsetings.json" file in your game root.
i mean yeah of course i dont know anything about warcraft 3 file and i'm not english native i just did a lot of thing to try and its didnt work the post really need a tuto or at least some picture
 

Attachments

  • Capture.PNG
    Capture.PNG
    27.6 KB · Views: 29
Level 19
Joined
Jan 1, 2018
Messages
739
New update, mostly focused on UI improvements:

v1.4.0 changelog:
  • Diagnostics now display a severity level (INF/WRN/ERR) and are grouped if they have the same message+severity;
  • Filename text color will now turn violet if the file has been modified;
  • File status list shortened by merging some of them together (adapted status is now compatible status + violet text);
  • File list sort can now be cleared (clicking a header now loops ASC > DESC > None > ASC instead of ASC > DESC > ASC);
  • Added icons for file status and context menu items;
  • Added context menu items to save files and undo changes;
  • Improvements to save file dialog.

Note that I haven't fully implemented the new diagnostics yet, there are still some missing, so you may get an empty diagnostics list for certain file types.

i mean yeah of course i dont know anything about warcraft 3 file and i'm not english native i just did a lot of thing to try and its didnt work the post really need a tuto or at least some picture
It seems you have set the directory to "my documents", but it needs to point to the directory which contains the game files.
You have to download either an MPQ viewer, or a CASC viewer for patch 1.30 and later, and extract the game files from your warcraft 3 installation.
This is described at the bottom of the OP.
 
Level 28
Joined
Feb 2, 2006
Messages
1,629
This is a really useful tool I would like to use.
From the first post "Unfortunately, these cannot be automated at the moment, so you need to make the changes manually. To help you with that, here's a list of some common adjustments you may need to make:"
This could be automated if the map does not use a custom scripts/common.j file by simply adding a scripts/common.j file with the listed functions.
 
Level 1
Joined
Sep 25, 2021
Messages
3
Dear Author, I have many maps of this type here and they cannot be converted by the object editor. Could you please help me figure out the reason?
 

Attachments

  • ZHS v0.36.w3x
    65.3 MB · Views: 2
Top