• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

Where can I find info/documentation on custom maps?

Status
Not open for further replies.
Level 2
Joined
Mar 7, 2020
Messages
4
I recently got really into custom games. I am downloading maps I liked playing so I could host, custom campaigns etc.

But there are a couple of things that really confuse me
1. Where is all the documentation? I am a programmer so a vast selection of 3rd party software is not foreign to me. However, almost every library in programming (the good ones at least) comes with documentation. That is, a readme file which explains how to operate every part of the software, a changelog, a list of bugs etc.
I can only find .w3x map files, but no readme files. Like, if a map crashes, how am I supposed to debug the problem?
2. Why are there so many versions of the same map? There can be 5 different LTA maps, all 1.59b, all under same author. And there is no consistency - a map may jump from v9 to v15. Were the versions between not released? Where's the missing piece?
3. Where does all the development happen? Github? Do people that mod even use version control?
 

Ralle

Owner
Level 77
Joined
Oct 6, 2004
Messages
10,101
Haha, I can understand your confusion.

1.
Well, first of all. Many people came to modding WC3 the same ways kids learn to speak, with trial and error. But there are many good resources out there. One thing you can be sure about is that everyone uses World Editor. It comes with WC3 and allows you to edit maps. You can make GUI triggers that you will learn to understand by just trying them out for a while. Later you can get into JASS, or as you're a programmer, you might start there.

We have a tutorials section by the way:
WarCraft III Tutorials

If a custom map crashes, it's the map owner's problem (or Blizzard if it's a bug in WC3). It's not your problem unless it's your map and if it's your map... good luck. Try disabling triggers and see if you can single out the trigger.

2.
Everyone can edit everything and everyone can host anything so you are bound to get duplicates if someone edits a map and rehosts it or reuploads it. It's the wild west, everyone can do anything.

3.
You will be sad to find out that mapping isn't super easy to version control. It does happen and I know some of the devs are trying to make it more common. I know of only one map on Github, this one:
Strilanc/Wc3PowerTowers

But mostly, people don't use the tools you and I use in the enterprise. Many makers even lose their map because they aren't backing it up. They deleted it, used map protection and lost the original or overwrote it or accidentally opened it in the Reforged editor and couldn't revert to Classic.
 
Level 2
Joined
Mar 7, 2020
Messages
4
Haha, I can understand your confusion.

1.
Well, first of all. Many people came to modding WC3 the same ways kids learn to speak, with trial and error. But there are many good resources out there. One thing you can be sure about is that everyone uses World Editor. It comes with WC3 and allows you to edit maps. You can make GUI triggers that you will learn to understand by just trying them out for a while. Later you can get into JASS, or as you're a programmer, you might start there.

We have a tutorials section by the way:
WarCraft III Tutorials

If a custom map crashes, it's the map owner's problem (or Blizzard if it's a bug in WC3). It's not your problem unless it's your map and if it's your map... good luck. Try disabling triggers and see if you can single out the trigger.

2.
Everyone can edit everything and everyone can host anything so you are bound to get duplicates if someone edits a map and rehosts it or reuploads it. It's the wild west, everyone can do anything.

3.
You will be sad to find out that mapping isn't super easy to version control. It does happen and I know some of the devs are trying to make it more common. I know of only one map on Github, this one:
Strilanc/Wc3PowerTowers

But mostly, people don't use the tools you and I use in the enterprise. Many makers even lose their map because they aren't backing it up. They deleted it, used map protection and lost the original or overwrote it or accidentally opened it in the Reforged editor and couldn't revert to Classic.

Thanks for the answer.

1. Which language would you recommend for writing business logic? I've never heard of JASS before, and the only common language I saw with context to wc3 is Lua. Would you recommend doing all scripting in Lua? Cause I don't want to get into an obscure, ad-hoc language where there isn't a sizeable community to google for StackOverflow lifesavers. Lua seems to be the only one that is used professionally in the enterprise world.

2. So is it like FOSS? I can just "fork" a map and have my wicked way with it?

3. How so? I can see why graphical assets may be hard to implement into VCS, but what about code? Also, how can a map be "protected"?
 

Ralle

Owner
Level 77
Joined
Oct 6, 2004
Messages
10,101
1. Yes, Lua support came very recently. There's also the option to use TypeScript cc @TriggerHappy.

2. Well, yes. But some maps are protected and some people frown upon people making their own versions of their maps.

3. The problem is binary data. Object editor files, trigger files, terrain files. Even the script file is often the .wct file which is binary too, but I mean you can copy-paste the plain text code into files and do version control. It's just not a silver bullet.

A map can be protected by the author removing editor-only files from the map before publishing it. This makes the world editor crash when trying to open it and if you wrote your code in triggers, you only have the garbage compiled JASS version of the logic.
 
Level 2
Joined
Mar 7, 2020
Messages
4
1. Yes, Lua support came very recently. There's also the option to use TypeScript cc @TriggerHappy.

2. Well, yes. But some maps are protected and some people frown upon people making their own versions of their maps.

3. The problem is binary data. Object editor files, trigger files, terrain files. Even the script file is often the .wct file which is binary too, but I mean you can copy-paste the plain text code into files and do version control. It's just not a silver bullet.

A map can be protected by the author removing editor-only files from the map before publishing it. This makes the world editor crash when trying to open it and if you wrote your code in triggers, you only have the garbage compiled JASS version of the logic.

So basically, maps are wc3 executables. They are not the project, like difference between photoshop .psd and a .jpg photo you exported from it.
 

Ralle

Owner
Level 77
Joined
Oct 6, 2004
Messages
10,101
So basically, maps are wc3 executables. They are not the project, like difference between photoshop .psd and a .jpg photo you exported from it.
It's both. But only in case of triggers is actual compilation taking place into JASS which is the scripting language. When you move from beginner to more advanced, you will start writing your own JASS or now as of recently, Lua. These scripting languages are interpreted by the game directly.

A WC3 map is as @Chaosy mentioned just like a ZIP. It is called the MPQ format. There are many tools to go explore into the format.
 
Status
Not open for further replies.
Top