Tutorial How to convert a Frozen Throne map so it is playable in Reign of Chaos

Ashlebede

New Member
Reaction score
43
This tutorial explains how you can make a map in the Frozen Throne's (TFT) World Editor and then convert it so all your Reign of Chaos (RoC) friends can play it.

This method allows you to use almost everything TFT's World Editor has to offer and also allows the use of TFT-only spells. This method was used for the conversion of the famous TFT-quality map Hero Line Wars RoC and was sent to my friend Sesamia by its creator, Kueken. I would like to thank him for telling me how he converted his map and allowing me to write this tutorial.

So, if you want to make your map playable in RoC, thou shalt need the following :

  • A complete TFT install updated with the most recent patch
  • An MPQ editor (such as WinMPQ)
  • A TFT map and the author's permission OR a map you made yourself
  • Microsoft Excel (or OpenOffice.org Calc, its free and open source equivalent)
  • Windows or a Windows Emulator (such as Wine)

It is also recommended that you have the following :

  • Patience
  • A map optimizer, to reduce file size (such as Vexorian's Wc3mapoptimizer)
  • Warcraft 3 Viewer (if you want to use TFT-only models)
  • A RoC-only install updated with the most recent patch (for testing)
  • Fun :p

Before we start converting our map, we need to get some required files in TFT's installation folder. Open war3x.mpq (they are both in your installation folder) with the MPQ editor. It contains a (listfile). Extract it in any folder.

Now, open war3patch.mpq, which is also in your installation folder. It has no listfile ; all the files have weird names. In your editor's options, set the listfile to the one you extracted earlier. The files should now show up with acceptable names.

From war3patch.mpq, extract the following files to an empty folder :

  • UI\TriggerData.txt
  • Units\AbilityData.slk
  • Units\CampaignAbilityFunc.txt
  • Units\CommonAbilityFunc.txt
  • Units\HumanAbilityFunc.txt
  • Units\ItemAbilityFunc.txt
  • Units\NeutralAbilityFunc.txt
  • Units\NightElfAbilityFunc.txt
  • Units\UndeadAbilityFunc.txt

Now, open your finished TFT map (or make it). Make sure none of the units in the Object Editor are based on TFT-only units. For instance, you can create a unit based on Footman and give it TFT-only abilities, such as Locust, which makes it unselectable. However, you cannot base a unit on the Spell Breaker, which is a TFT-only unit.

This restriction does not apply when you have TFT-only units that are not preplaced on the map and are only placed using triggers. If you have any pre-placed units based on TFT-only ones on your map, you will either have to create a new similar unit-type based on a RoC unit or place them using triggers. A good way to know if a unit is based on a TFT-only unit is to find it in the Object Editor and press CTRL+U, which resets the unit to its default, the unit on which it is based. If that unit is a Blood Mage, you know it won't work. Remember to do CTRL+Z to undo the changes if you want to go back to the modified unit.

That is the only real restriction. Do not preplace anything based on TFT-only objects. This also applies for doodads, items and destructables.

You are free to use almost any of the TFT-only content, even trigger actions, gameplay constants, custom abilities... however, there are a few trigger actions that do not work (very few, in fact), such as Unit - Hide.

Oh, by the way, if you are going to use any TFT-only model files, you might want to either replace them with RoC models or import them into your map. To do that, you will need to open war3x.mpq (the file that contains all TFT models and textures) with Warcraft 3 Viewer and find the model you're looking for. Extract it, write down its original path in war3x.mpq and do the same for every texture it uses. To find out which textures are used by a model file, go in Warcraft 3 Viewer's menu : Current File>Show used texture names. If your model also has a portrait version, extract is as well. Now, import the textures and models into the map using the World Editor's Import Manager and change their paths to the ones they had in war3x.mpq. If you do not import the textures and models, the models will not show up on computers that do not have TFT installed. Please note that importing TFT models into your map increases file size a lot.

Now, create your map as you would for any TFT map, remembering these restrictions. Once you are finished and everything is done, convert all triggers to custom text (in the trigger editor, Edit>Convert to Custom Text) and save it with a new file name, such as "myMap_CustomText.w3x".

Once that is done (it can be long if you have many non-Jass triggers), you have to make your map playable in RoC by removing every single TFT feature it has. It is the hardest (the longest, at least) part of the conversion. It is usually done by :

  • Removing all triggers
  • Removing all custom abilities and resetting the base abilities to default by using the CTRL+SHIFT+U hotkey
  • Resetting all custom doodads to default by using the CTRL+U and CTRL+SHIFT+U again for base ones
  • Removing all custom buffs and resetting all base buffs to default
  • Removing all custom upgrades and resetting the base upgrades to default
  • Removing all custom destructables and resetting the base destructables to default
  • Removing all items that are not pre-placed and resetting others, as well as resetting the base items to default (if unsure whether they are pre-placed or not, reset them to default)
  • Removing all units that are not pre-placed and resetting others, as well as resetting the base items to default (if unsure whether they are pre-placed or not, reset them to default)
  • Resetting gameplay constants to default

If it was all done correctly, your map should now have the .w3m extension. To verify whether or not it can have the .w3m extension, go in the menu Scenario>Map Description and look at that dialog box. It should tell you if you can't save it as a RoC map and why not. Change that stuff so it can work in RoC and then save your map with a new name, such as "myMap_Empty.w3m".

Now, to make your map's TFT-only features (which do not exist anymore :p) work in RoC, we need to import some of TFT's files, those which we extracted from war3patch.mpq. But then, we need to edit them a bit. That is where Excel comes in handy.

Open the file AbilityData.slk with Excel or OpenOffice.org Calc. It should show all sorts of ability rawcodes and stuff in some sort of table. One of the columns, in the first row, reads "version". That column describes whether or not the ability is available in RoC.

So, you'll have to change every single "1" in that column to a "0", since "1" describes TFT and "0" describes RoC. Good luck with that, it can be long. To do so, I simply pressed 0, enter, 0, enter, 0, enter... many, many times (there are about 700 rows if I remember well). Or you can use the attached file which is already modified. Then save the AbilityData.slk file.

Now that all the abilities are available in RoC, we should import that file. In the World Editor, with your empty map, open the Import Manager. Import all of the files we extracted earlier and change their paths to the ones they had in war3patch.mpq.

For instance, "war3mapImported\AbilityData.slk" becomes "Units\AbilityData.slk". In fact, you'll just have to change all those "war3mapImported"s to "Units"s, except for TriggerData.txt, which becomes "UI\TriggerData.txt". Remember the file names are case sensitive.

Now, open your original map (the pure TFT version with custom text triggers) with the MPQ editor and extract the following files :

  • war3map.j
  • war3map.w3a
  • war3map.w3e
  • war3map.w3h
  • war3map.w3q
  • war3map.w3t
  • war3map.w3u
  • war3map.wct
  • war3map.wtg
  • war3map.wts
  • war3mapExtra.txt
  • war3mapMisc.txt
  • war3mapSkin.txt

Those are basically all the files of your map, since they contain your map script, object editor data, trigger data, gameplay constants, interface options... they may not all be present in the map ; extract only those that exist.

Now, in the RoC version, open the Import Manager and import the files you just extracted. As for the war3patch.mpq files, change their paths to the original ones. For instance, "war3mapImported\war3map.j" becomes "war3map.j". Remove the "war3mapImported\" from every file name.

And now ? Your map should work. Yep, it should work in RoC. However, the file's size increased by a lot. You will want to run a map optimizer and/or widgetizer now that it's finished, to decrease loading time and file size.

And now, all your Reign of Chaos friends should be able to play your map. :thup:

I included a demo map. I called it "Footman with Locust". Believe it or not, it's about a footman with the Locust ability, which makes it unselectable and invulnerable. His friend, Mountain King with Banish, likes to Banish the 3 defenseless blue peasants on the map. What is so special is that it can be played in Reign of Chaos. Yes sir, it can.

View attachment FootmanWithLocustFinal.w3m <=== Demo map
View attachment AbilityData.slk.RAR <=== Modified AbilityData.slk
 

Sgqvur

FullOfUltimateTruthsAndEt ernalPrinciples, i.e shi
Reaction score
62
>So, you'll have to change every single "1" in that column to a "0", since "1" describes TFT and "0" describes RoC. Good luck with that, it can be long. To do so, I simply pressed 0, enter, 0, enter, 0, enter... many, many times (there are about 700 rows if I remember well).

I think you can drag the first column down and every column that is beneath it will change it's value to the one you started dragging from.

Quite alot of requirements just to make your map a time traveler but if you have lots of RoC friends I guess its worth it.

I've always asked my self what's this map Hero Line Wars RoC doing in the custom maps section in bnet in frozen throne and I played it a few times but figured it's some kinda of ancient map(no offense) (from 2002-3-4) that people play from nostalgia but guess I was really really wrong. It was actually made by an educated mapper who likes backwards compatibility.
 

Ashlebede

New Member
Reaction score
43
Yes, it is made by an experimented mapper and it is a TFT-quality map. Many people think that because a map was made for RoC, it is worse than a TFT map ( which is like racism, but for maps... mappism ? RoCism ? ), and many even think that it's not possible to make a TFT map playable in RoC if it has TFT-only abilities. HLW RoC proves them wrong. The development was stopped pretty damned closed to a year ago, though...

I ain't a pr0 at Excel, by the way, so I didn't know that shortcut. You can just take that .rar file, anyways, which contains the modified AbilityData.slk.

(Changed the demo map, was the wrong map... >>D: )
 

tooltiperror

Super Moderator
Reaction score
231
You should attach the files right to the post.
 

Sim

Forum Administrator
Staff member
Reaction score
534
Will this see an update sooner or later?
 

Ashlebede

New Member
Reaction score
43
Will this see an update sooner or later?

Anything in particular that needs an update ? (except attaching the files directly to the post, which I'm too lazy/don't know how to do)

{sorry about the late reply, I don't visit this website too often, these days...)
 

Sim

Forum Administrator
Staff member
Reaction score
534
Before we start converting our map, we need to get some required files in TFT's installation folder. Open war3x.mpq (they are both in your installation folder) with the MPQ editor. It contains a (listfile). Extract it in any folder.

Now, open war3patch.mpq, which is also in your installation folder. It has no listfile ; all the files have weird names. In your editor's options, set the listfile to the one you extracted earlier. The files should now show up with acceptable names.

From war3patch.mpq, extract the following files to an empty folder :

  • UI\TriggerData.txt
  • Units\AbilityData.slk
  • Units\CampaignAbilityFunc.txt
  • Units\CommonAbilityFunc.txt
  • Units\HumanAbilityFunc.txt
  • Units\ItemAbilityFunc.txt
  • Units\NeutralAbilityFunc.txt
  • Units\NightElfAbilityFunc.txt
  • Units\UndeadAbilityFunc.txt

These.
 

BEeeH-

New Member
Reaction score
2
Nice guide!:> But what do you mean with this??? "set the listfile to the one you extraced earlier" How? :O

In your editor's options, set the listfile to the one you extracted earlier. The files should now show up with acceptable names.
 

tooltiperror

Super Moderator
Reaction score
231
The files in the post should be attached to the post, not linked, if possible.

This has been needing the update mentioned by Sim for a long time, so I'll take the liberty to send this to the home for abandoned resources.
 

ChosenOreo

New Member
Reaction score
0
You don't even need to do all that

All you need to do is import the files from war3patch.mpq, and then import ALL files from yourmap.w3x into blankmap.w3m (except for the "(listfile)" and "(attributes)".
 
General chit-chat
Help Users
  • No one is chatting at the moment.
  • Varine Varine:
    How can you tell the difference between real traffic and indexing or AI generation bots?
  • The Helper The Helper:
    The bots will show up as users online in the forum software but they do not show up in my stats tracking. I am sure there are bots in the stats but the way alot of the bots treat the site do not show up on the stats
  • Varine Varine:
    I want to build a filtration system for my 3d printer, and that shit is so much more complicated than I thought it would be
  • Varine Varine:
    Apparently ABS emits styrene particulates which can be like .2 micrometers, which idk if the VOC detectors I have can even catch that
  • Varine Varine:
    Anyway I need to get some of those sensors and two air pressure sensors installed before an after the filters, which I need to figure out how to calculate the necessary pressure for and I have yet to find anything that tells me how to actually do that, just the cfm ratings
  • Varine Varine:
    And then I have to set up an arduino board to read those sensors, which I also don't know very much about but I have a whole bunch of crash course things for that
  • Varine Varine:
    These sensors are also a lot more than I thought they would be. Like 5 to 10 each, idk why but I assumed they would be like 2 dollars
  • Varine Varine:
    Another issue I'm learning is that a lot of the air quality sensors don't work at very high ambient temperatures. I'm planning on heating this enclosure to like 60C or so, and that's the upper limit of their functionality
  • Varine Varine:
    Although I don't know if I need to actually actively heat it or just let the plate and hotend bring the ambient temp to whatever it will, but even then I need to figure out an exfiltration for hot air. I think I kind of know what to do but it's still fucking confusing
  • The Helper The Helper:
    Maybe you could find some of that information from AC tech - like how they detect freon and such
  • Varine Varine:
    That's mostly what I've been looking at
  • Varine Varine:
    I don't think I'm dealing with quite the same pressures though, at the very least its a significantly smaller system. For the time being I'm just going to put together a quick scrubby box though and hope it works good enough to not make my house toxic
  • Varine Varine:
    I mean I don't use this enough to pose any significant danger I don't think, but I would still rather not be throwing styrene all over the air
  • The Helper The Helper:
    New dessert added to recipes Southern Pecan Praline Cake https://www.thehelper.net/threads/recipe-southern-pecan-praline-cake.193555/
  • The Helper The Helper:
    Another bot invasion 493 members online most of them bots that do not show up on stats
  • Varine Varine:
    I'm looking at a solid 378 guests, but 3 members. Of which two are me and VSNES. The third is unlisted, which makes me think its a ghost.
    +1
  • The Helper The Helper:
    Some members choose invisibility mode
    +1
  • The Helper The Helper:
    I bitch about Xenforo sometimes but it really is full featured you just have to really know what you are doing to get the most out of it.
  • The Helper The Helper:
    It is just not easy to fix styles and customize but it definitely can be done
  • The Helper The Helper:
    I do know this - xenforo dropped the ball by not keeping the vbulletin reputation comments as a feature. The loss of the Reputation comments data when we switched to Xenforo really was the death knell for the site when it came to all the users that left. I know I missed it so much and I got way less interested in the site when that feature was gone and I run the site.
  • Blackveiled Blackveiled:
    People love rep, lol
    +1
  • The Helper The Helper:
    The recipe today is Sloppy Joe Casserole - one of my faves LOL https://www.thehelper.net/threads/sloppy-joe-casserole-with-manwich.193585/
  • The Helper The Helper:
    Decided to put up a healthier type recipe to mix it up - Honey Garlic Shrimp Stir-Fry https://www.thehelper.net/threads/recipe-honey-garlic-shrimp-stir-fry.193595/

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top