• Check out the results of the Techtree Contest #19!
  • Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
  • Read Evilhog's interview with Gregory Alper, the original composer of the music for WarCraft: Orcs & Humans 🔗Click here to read the full interview.
  • Create a void inspired texture for Warcraft 3 and enter Hive's 34th Texturing Contest: Void! Click here to enter!
  • The Hive's 22nd Icon Contest: Creep Abilities is now concluded, time to vote for your favourite set of icons! Click here to vote!

Make map work post 1.23

Level 6
Joined
Jul 3, 2006
Messages
102
While reworking one of my old maps that broke with 1.24, I have read about the return bug and went through all of my code. I do not see any issues and JASS syntax checker reports no errors.
Is there anything else with old maps that should be remediated for them to work post 1.23 besides the return bug?
 
Are you trying to play the map on 1.26 where return bug is basically the only problem, or are you playing it on 2.03+ with years of Reforged changes and possible issues?

Can you share steps you tried and where the map fails to load? For example, failure to load in World Editor might lead to different help than if it crashes during loading of scripts, or immediately after gameplay starts

Reforged changed:
  • The format of the map header / removed name note at top of MPQ
  • The format of the w3i information file that includes info like map name, used version, loading screen, etc
  • The format of the .doo file that declares the type and location of all doodads
  • The format of w3u, w3a, and other similar Object Editor files that describe custom units and abilities for the map (since August 19, 2022 these are on v3 and have some convoluted attempt to support skin splitting for HD or SD)
  • The format of Units.doo file used for World Editor unit information
  • The number of available jass natives (many were added)
  • The format of all ingame textures and models (dds replaces blp, mdx1200 replaces mdx800)
  • The format of sounds for soundsets in the game (now its one table instead of two and has Reforged lip sync data, but this is unlikely to affect your map unless you're doing crazy stuff). All audio files changed to flac instead of wav.
  • The format of unit profile TXT data, by adding the UnitSkins file to permit a unit to have a skin type independent from its object type (and so the UnitSkins new profile file contains the related unit definitions now, although obviously we commonly match hfoo footman behavior to hfoo skin data for model and unit name, etc)
  • The number of players in the game -- this means maps which directly referenced Player 13 or Player 16 to access Neutral Hostile and Neutral Passive are now instead going to have those units be owned by Maroon and Violet players or something)

The game pretends very hard that the format of all these things did not change, and tries to back-support your map as if it were not a different format for a different game. But this is a game of pretend and auto conversions on 2.03 -- whereas on a patch such as 1.26 it would load your map as-is from 1.23 or below, but with the difference that return bug is a script error.

Also, removal of return bug on 1.26 to fix a virus exploit failed, and so you can do the same return bug on 1.26 but you have to write a more complicated subroutine to cause the bug -- after you do the map from 1.23 can run the exact same way. This also means any map you play on Patch 1.26 gets administrator access to your computer in a way that will not trigger virus protection, because it will masquerade as if it were the normal Warcraft III game itself.
1.27 and 1.28 are also vulnerable likewise, 1.29 is the first one where I was unable to get old return bug maps to work via the published workaround on Hive.

Edit: A lot of what I mentioned above should not matter for you but if you open your map on Reforged editor and save it again, it should probably forward port the map to the new formats automatically. Without knowing how that process failed for you, or what isn't working, it's difficult to help -- because listing the endless list of arbitrary stuff that changed and might affect the map as I mentioned above is presumably going to be a waste of time versus resolving targeted issues with the specific map.
 
Last edited:
Thanks for detailed reply.
I am trying with version 1.24. The map shows in the map list but when selected, there are no players/teams and if I click on "Start game", it comes back to the map screen right away without any errors or messages.

PS: Is it possible to have old plain warcraft updated to 1.29+? All the links I find online get me to the Reforged version via the Battle.net app.
 
As far as I know, you need to download specific versions after 1.28 some time (no more patch files).
There is links some versions with links (untested by me):
 
I am trying with version 1.24. The map shows in the map list but when selected, there are no players/teams and if I click on "Start game", it comes back to the map screen right away without any errors or messages.
If you get "no player slot" while attempting to select a map in-game, that means your JASS map script has an error. This can occur if it is from an old version of Warcraft III and used now removed language features or you are trying to save the map with the latest version of World Editor, which obviously changes its old format to be compatible with Reforged ones (check Retera's detailed info above). It can also occur with maps made in third-party WEs (like JNGP) when JassHelper fails to compile the JASS script on map save due to an error, crash, file permission or anything else that stops a valid JASS script being produced.

You might want to provide a link to the map for better analysis.

PS: Is it possible to have old plain warcraft updated to 1.29+? All the links I find online get me to the Reforged version via the Battle.net app.
You can't install your specific versions of WC3 since 1.28 because Blizzard killed those patches in favor of Reforged.

Should you want to download any versions of WC3 pre-1.32, you can still find on this thread below:

All versions of WC3 up to 1.31.1 don't require Battle.net app, but you can't play this version online anymore through official Battle.net server. The offline installer method for patching has been stopped after 1.27b.

Needless to say, installing this version afterwards still requires valid 26-digit CD-Keys.

The "old plain Warcraft updated to 1.29+" illustrates imho a recurring problem with terminology, when it comes to classify the versions of the game that have been released since 1.27b in 2016. Most people might understand versions after 1.32 as "Reforged" even if it was actually an updated "Classic" version of the game, while TFT versions (up to 1.31) are now being called the "Legacy WC3".
 
Hmm, maybe that's an issue with 1.24 then. In the last few years I have used 1.22, 1.26, and 1.27 frequently but have not often used 1.24 to be honest. I forget if it might have had some unfinished updates to the hashtable APIs or something.
 
Back
Top