Page 1 of 1

[GUIDE] Porting any map from M16

Posted: February 21st, 2024, 1:17 am
by devoltz
Firstly, what is the M16 platform?

The M16 platform is a multiplayer platform for Warcraft 1.28.5 Korean version, featuring more 'sophisticated' maps. These maps are unique because they have their own server within the platform, allowing them to run platform server codes. A prime example of this is the fully cloud-based load/save system. Their platform.

Why does this guide exist?

Over time, as players seek more Warcraft maps, the transition to the current Reforged platform has rendered many old or other platform maps incompatible. This guide is written to teach you how to make maps from the M16 platform compatible with Warcraft Reforged.

Why don't M16 platform maps work on Warcraft Reforged?

The main reason is the use of certain codes that conflict with the current platform. However, this issue is 100% solvable.

Required Tools
  • MPQ Editor
  • Text Editor (Preferably one that supports UTF-8)
  • Customized Blizzard.j by me
  • Listfile
How to port maps from M16 to Reforged:

Export and Edit the Map Script:
Spoiler:
  • After exporting the 'war3map.j' file, open it with a text editor capable of handling UTF-8 encoding.
  • Initiate a search for the term 'endglobals'. Your goal is to identify and remove all code lines that commence with 'native'. However, it's crucial to retain any instances of the 'UnitAlive' native - these should not be removed.
  • Additionally, if you encounter the specific line constant playerunitevent EVENT_PLAYER_UNIT_DAMAGED=ConvertPlayerUnitEvent(52), ensure its removal from the script.
  • As a best practice, it's advisable to conduct a thorough syntax check of your JASS script. Utilize the pjass tool, coupled with the custom 'Blizzard.j', to verify the accuracy and compatibility of your script.
Reimport and Organize Files
Spoiler:
  • With the necessary edits completed, save your modifications to the 'war3map.j' file.
  • Proceed to reimport this updated file back into your map. If your map lacks a 'Scripts' folder, now is the time to create one.
  • Into this newly established or existing 'Scripts' folder, import the custom 'Blizzard.j' provided.
Anyshit u might need to download if for some reason attachments break

Re: [GUIDE] Porting any map from M16

Posted: February 21st, 2024, 3:42 am
by null
Amazing, speechless and marvelous! Mucho good job on dis tutorial.

Re: [GUIDE] Porting any map from M16

Posted: February 21st, 2024, 9:58 am
by brayan305
Awesome guide teach!

Re: [GUIDE] Porting any map from M16

Posted: February 21st, 2024, 12:05 pm
by Vegas
Can you cheat it and convert the map back to M16?

Re: [GUIDE] Porting any map from M16

Posted: February 21st, 2024, 4:45 pm
by devoltz
Vegas wrote:Can you cheat it and convert the map back to M16?
You don't actually need to convert it back to M16. Instead, you can cheat it using traditional methods. However, this approach won't work for maps that use a load and save system based on cloud storage. This is because these maps contain a secret key embedded within the map script and a hash verification of the .w3x file itself. Therefore, the server can detect that the map version is not legitimate. The only way to cheat on m16 maps is with memory manipulation. Converted maps would work normally, since there are none verification from blizzard.

Re: [GUIDE] Porting any map from M16

Posted: February 21st, 2024, 5:38 pm
by 3nemy_
Nice work!

Re: [GUIDE] Porting any map from M16

Posted: May 25th, 2024, 3:16 am
by InnerOR
Hi devo, I just followed your guide to port M16 maps
I delete the 'native' code except UnitAlive
but I can't find the map in reforge/can't open it in 1.26 either
Is there anything else I need to do?

Re: [GUIDE] Porting any map from M16

Posted: November 26th, 2024, 6:14 am
by oordgwqx
Did you check if all the needed files, like the changed blizzard.j, are in the right place? Missing or wrong files can cause this problem.