What do you need help on? Cancel X

Jump to:
Would you recommend this Guide? Yes No Hide
Send Skip Hide

World Editor FAQ by PinkFloyd1965

Updated: 09/28/02

This FAQ is Copyright 2002 by:
  PinkFloyd1965 (trigger basics, editor)
  Masamune Hunter (cinematics)
  Necrosis (terrain)
  Sephiroth101 (MPQ editing, unit basics)

Questions? Comments? Contributions?

I hate emails, and the last thing I need is more spam. Lucky for you,
I have a board system set up. Just check and make sure noone else has
posted on the exact same subject (that is, make sure you title your
post clearly so noone else will waste board space). Updates (planned
or completed) on the WE FAQ may also be seen here...

| http://pinkfloyd1965.50megs.com/ |

Anything you would like to contribute to this FAQ is HIGHLY supported.
All credit will go to whoever submits it. Give me your email address
and post on the board; it will surely be answered.

Unpublished work Copyright 2002

  This document is protected by US Copyright Law, and the Berne
Copyright Convention of 1976.  It is for private and personal use
only--it cannot be reprinted in part or in whole, or reproduced in
any way or in any form (written or otherwise). It is a free
document that cannot be used in any sort of commercial transaction,
including selling it or giving it away as a gift. This FAQ cannot
be referenced, altered, or used by anybody (including webmasters,
publishers, and magazine staff) without our express written
permission. This FAQ was created and is owned by us, PinkFloyd1965,
Masamune Hunter, Necrosis, and Sephiroth101.  It can be found
exclusively at www.GameFAQs.com. All copyrights and trademarks are
acknowledged and respected that are not specifically mentioned herein.

The copyright declaration above was written by Chris MacDonald and
appears in his FFVII FAQ on www.GameFAQs.com.

Programs used (all of which may be found at wc3campaigns.com):
World Editor Enhanced Blink

Introduction and Copyright Information
  A Quick FAQ
  Useful Tips
  Basic Commands
Masamune Hunter
  Starting Off
  Camera Properties
  Camera Movement
  Camera Triggers
  Optional Camera Triggers
  Example Cinematics
  The Terrain Editor
  Modifying the Tileset
  Things to Remember
  The Unit Editor
  The MPQ File Format
  Editing Spells and Abilities
  Other MPQ Things
Special Thanks

||                      N E W   S E C T I O N                       ||

Editor, Basics of Triggers, Ascii Art :-P :




Action - A command that will be done once a certain event occurs and
  all conditions are satisfied
Boolean - Word-math; this is in short just a comparison of values
  that an object may have without using numbers. For example,
  ((This FAQ) is (Good)) Equal to (True), which would test to see if
  it is true that this FAQ is good. In this case, the Boolean is
  obviously satisfied ;) .
Condition - If the required condition is met, a trigger will continue
Event - This sets off a trigger
Field - Specific bits of information that may be edited within a
  trigger; usually blue and underlined
MDX - A model file for displaying a particular unit in the actual
MPQ - Blizzard stores all the game info in an MPQ, and you will need
  an MPQ extractor for some parts of this FAQ (the MPQ is probably
  located in "C:\Program Files\Warcraft III\war3.mpq")
SLK - Contains unit data, obtainable by extraction from the MPQ
String - A sequence of data, usually words (i.e. "This is a good FAQ"
  would be considered a string)
Trigger - A sequence of commands that will execute once a specified
  event occurs and all the conditions are met
Variable - These are used to keep track of data. If you have ever
  taken algebra, these could be considered like x or y values, except
  there are many different variables, each with its own task. For
  example, to keep track of a unit, you would need to use a Unit
W3M - A map file

A Quick FAQ

Where do I find the Starcraft units featured in the outtakes?
You'll need to download an enhanced World Editor. I would heavily
recommend either the Xtra Editor or World Editor Enhanced Blink.

WE Blink can be found at http://www.wc3campaigns.com

Once installed correctly, the units will become available just like
every other unit.

Every time I test my RPG map, it says I win when I start it up? Why?
Each map you begin in the World Editor starts off with triggers that
are already placed into it. You should delete any of those triggers
that conflict with your map. To find them, press F4 (the Trigger
Editor), and click on the trigger called "Map Initialization". They
are fairly self-explanatory, but you should probably get rid of all of
them except for this one...

Melee Game - Use melee time of day (for all players)

I don't want people to be able to see my terrain until that area is
explored. How do I do this?
Simple. Go to Scenario -> Map Description... Uncheck the box at the
bottom that says "Masked areas are partially visible".

How do I delete a unit?
You need to learn to use the Selection Brush correctly. When on, you
can select and move units, doodads, or regions. When off, you can
place units, doodads, or regions. To toggle this on or off, just
press the Space Bar.

Where is the Gold Mine/Waygate?
Check the Neutral Buildings section of your Unit Editor. They should
be under Neutral Passive -> Buildings.

What does that Gem in the corner do?
When it's activated, if you delete a character it will play it's
death animation. Repeatedly clicking on the gem will cause "Pissed"
quotes to play.


Triggers are written as such:

Functions Used... (unless explained in the paragraph above it, this
  indicates which events, conditions, and actions are used in the
  trigger, as well as the order in which they are used)

Events (ANY event will set off a trigger)
Conditions (ALL conditions must be satisfied for the trigger to act)
Actions (once events and conditions are acceptable, this will run)

All variables (cameras, units, etc.) will be written in BOLD. I
don't make my variables in upper-case normally, but this is done to
make sure all things changeable in the trigger are clear. Otherwise,
the appearance of the trigger should appear WORD-FOR-WORD as written,
aside from the occasional ____, which indicates a number to be
specified by the editor him/herself.

Useful Tips

Getting Wait Commands to Work in Multiplayer

Arguably the most important multiplayer command is the usage of wait
commands. To address this, you can use this simple set of triggers:

Functions Used...
For Each Integer A, Do Action

Click on the second field in this function, and change the value 10
to the function Player - Count Players In Player Group. Then change
"(All players controlled by a Computer player)" to "(All players
controlled by a User player)". The end result should be as such:

  For each (Integer A) from 1 to (Number of players in (All players
    controlled by a User player)), do (Wait ____ seconds)

Character Selection
|               | Frequently, RPGs begin with trigger-based character
| x           x | selection. To mimic that, follows this sequence of
|_____     _____| triggers, unit placement, and region placement.
 _____|   |_____  You must create regions first that completely
|               | enclose the units (placed on their own "x"). To make
| x           x | things easier, name the regions similar to the units
|_____     _____| they enclose. For example, the region surrounding
 _____|   |_____  UNIT might be called UNITREGION. I will use that
|               | character and region in the following example. You
| x           x | must also create another region (mine called START)
|______   ______| where you want the selected characters to be moved
                  to once they are selected by the Wisp.

Functions used...
Unit - Unit Enters Region
Unit-Type Comparison
Unit - Move Unit (Instantly)
Unit - Change Owner
Unit - Remove

  Unit - A unit enters UNITREGION 
  (Unit-type of (Entering unit)) Equal to Wisp
  Unit - Move UNIT  instantly to (Center of START )
  Unit - Change ownership of UNIT  to (Owner of (Entering unit))
    and Change color
  Unit - Remove (Entering unit) from the game  

Game Caching

**Note: This cannot be used in multiplayer.

Let's just say you want to store a hero (named HERO) in order to
transport him to your next map (like a campaign).

| HERO = hero                                                        |
| GAMECACHE.w3v                                                      |
|   CATEGORY = the category where it is stored in the cache          |
|     LABEL = the label where it is stored in the category           |

Functions used...
Game Cache - Create Game Cache
Game Cache - Store Unit
Game Cache - Save Game Cache

  Game Cache - Create a game cache from GAMECACHE.w3v
  Game Cache - Store HERO  as LABEL of CATEGORY in (Last
    created game cache)
  Game Cache - Save (Last created game cache)

Now, you have entered your next map in your campaign, and you would
like to revive your hero (HERO). You also have a choice location
picked out for his revival, a region named START. It's simple:

Functions used...
Game Cache - Create Game Cache
Game Cache - Restore Unit Facing Angle

  Game Cache - Create a game cache from GAMECACHE.w3v
  Game Cache - Restore LABEL of CATEGORY from (Last created game
    cache) for Player 1 (Red) at (Center of START ) facing 0.00

Yea! Now your saved hero is transferred to your next map. You can also
use Game Cache functions to send numeric values to the next map. It is
done the exact same way as you would transfer a hero; just check out
the other Game Cache actions.

Values for Special Effects

Oddly enough, Blizzard didn't supply the World Editor with a range of
values to choose from when selecting where a Special Effect is
attached. So, here are some valid string values...

left hand
right hand
weapon (applies to heroes only)

Setting Up and Using a Leaderboard

You need to create two triggers for this. Name one LEADBEGIN and the
other LEADCHANGE. Let me just get it out there before I explain it.
Just follow the hierarchy exactly and you'll be fine. To get things
started, create an Integer variable array called KILLS. This is one of
the most complex basic triggers out there, so I made a hierarchy.
Basically, click each field and put in the value specified. It will
definitely work if you follow it to a tee.

Functions used...
Time - Time Elapsed
Leaderboard - Create
  (All players)
Player Group - Pick Every Player In Player Group And Do Action
  All Players Matching Condition
    Player Slot Status Comparison
      Player Slot Status
        Matching Player
      Equal to
      Is playing
  Leaderboard - Add Player
    Picked Player
    Last Created Leaderboard
    Player - Player Name
      Picked Player
Leaderboard - Show/Hide
  Last Created Leaderboard

  Time - Elapsed game time is 0.20 seconds
  Leaderboard - Create a leaderboard for (All players) titled KILLS
  Player Group - Pick every player in (All players matching
    (((Matching player) slot status) Equal to Is playing)) and do
    (Leaderboard - Add (Picked player) to (Last created leaderboard)
    with label (Name of (Picked player)) and value 0)
  Leaderboard - Show (Last created leaderboard)

Yes, I know that is one very long action.

Functions used...
Unit - Player-Owned Unit Event
  Player 1 (Red) --> Player 12 (Brown)
Player Comparison
  Owner Of Unit
    Event Response - Triggering Unit
  Not equal to
  Owner Of Unit
    Event Response - Killing Unit
Set Variable [yeah, another complex one]
  Player - Player Number
    Owner of Unit
      Event Response - Killing Unit
    Player - Player Number
      Owner of Unit
        Event Response - Killing Unit
For Each Integer A, Do Action
  Leaderboard - Change Player Value
    Conversion - Convert Player Index To Player
      For Loop Integer A
    Last Created Leaderboard
    For Loop Integer A
Leaderboard - Sort
  Last Created Leaderboard
  Descending order

  Unit - A unit owned by Player 1 (Red) Dies
  Unit - A unit owned by Player 2 (Blue) Dies
  Unit - A unit owned by Player 3 (Teal) Dies
  Unit - A unit owned by Player 4 (Purple) Dies
  Unit - A unit owned by Player 5 (Yellow) Dies
  Unit - A unit owned by Player 6 (Orange) Dies
  Unit - A unit owned by Player 7 (Green) Dies
  Unit - A unit owned by Player 8 (Pink) Dies
  Unit - A unit owned by Player 9 (Gray) Dies
  Unit - A unit owned by Player 10 (Light Blue) Dies
  Unit - A unit owned by Player 11 (Dark Green) Dies
  Unit - A unit owned by Player 12 (Brown) Dies
  (Owner of (Triggering unit)) Not equal to (Owner of (Killing unit))
  Set KILLS[(Player number of (Owner of (Killing unit)))] =
    (KILLS[(Player number of (Owner of Killing unit)))] + 1.00)
  For each (Integer A) from 1 to 12, do (Leaderboard - Change the
    value for (Player((Integer A))) in (Last created leaderboard) to
  Leaderboard - Sort (Last created leaderboard) by Value in Descending

Sigh... that was pretty exhausting. Okay, to explain. Leaderboards
have a glitch where they won't work in a Map Initialization trigger.
That's why they must be placed in a trigger that goes off about as
soon as the game starts. I used a For command just for sake of being
original, because most leaderboards are very similar. If it does not
work, I guess I'll just change it back to a regular command.

Shaking the Camera

To make the camera shake (like when Archimonde summons Infernals), you
can use two actions: Camera - Sway Camera Source or Camera - Sway
Camera Target. The Source action will make the camera itself move
around while still focusing on the center of the map, while the Target
action will make the camera's focus on the center continue to stutter.
To stop either command, you can use the Camera - Reset Game Camera or
Camera - Stop Swaying Camera commands. The preset values for both the
Target and Source commands are reasonable, and adjusting them
significantly are unnecessary.

Manipulating the Camera Properties

There are many functions that players may wish to change about the
current camera. While you can use cinematic control by creating
cameras at specific points and then used the Camera - Apply Camera
Target (Timed) action, you may also want to adjust the camera's zoom
or angle of attack at any point in the game.

To do this, you should take your own look at the Camera actions. A
particularly useful action is the Camera - Set Camera Field (Timed)

Distance to target - Each camera focuses on one specific point. By
  adjusting this, you can zoom in or out. Initial value is 1650.
Far Z - This determines how far the camera will see. Increasing the
  distance visible will slow down the game somewhat. Only adjust this
  for cinematics, as you really shouldn't need it otherwise.
Angle of attack - This determines the angle at which the camera looks
  at the point. 0 or 360 is a completely level viewpoint, 270 is
  birdseye view. 304 is the initial value.
Field of view - This can also be used as a zoom function. However, it
  is preferable to use the Distance to target field.
Roll - This determines how tilted the camera is. By setting this to
  180, you can turn the camera upside-down. Initial value is 0.
Rotation - This shows how much the camera is rotated relative to its
  focal point. The camera originally faces north with a value of 90.
  180 is west, 270 is south, 0 or 360 is east. 

Making Destructible Doodads Drop Items

One of the most interesting aspects of the campaigns was the dropping
of items upon the destruction of certain props (i.e. boxes, huts,
and the like). To the dismay of beginning editors, there is no easy
way to make a doodad drop an item like most units. That's because it
is entirely trigger-based. As an example, assume BOXDOODAD is a
specific box on the world map. When BOXDOODAD dies, I want it to drop
a Tome of Experience.

Functions Used...
Destructible Doodad - Destructible Doodad Dies
Item - Create [for the second field, use Destructible Doodad -
  Position of Destructible]

  BOXDOODAD  dies  
  Create Tome of Experience at (Position of (Dying destructible

Accelerating/Decelerating Night and Day

If you want to slow down/speed up the rate of night and day, you can
use the Game - Set Time Of Day Speed. To stop the daily cycle, you can
use the Game - Turn Day/Night Cycle On/Off. If you want this to take
effect for the entire duration of the map, then put this action in the
Melee Initialization trigger.

Making Creeps Sleep

You may want creeps, for some reason or another, to be asleep. This
only requires one action, but it's fairly simple.

If you want EVERY creep to go to sleep during the day, use the
Unit Group - Pick Every Unit In Unit Group And Do Action command in
conjunction with the Unit - Make Unit Sleep one and place it in the
Melee Initialization trigger...

Unit Group - Pick every unit in (Units owned by Neutral Hostile) and
  do (Unit - Make (Picked unit) Sleep when unprovoked)

If you want only specific units to sleep, use the Unit - Make Unit
Sleep command and do that again for each specific unit you want it to
affect and place it in the Melee Initialization trigger.

Basic Commands

Do Nothing

This is usually used in conjuction with the If/Then/Else commands. It
does nothing at all, which is useful when combined with an If command.
If you don't want anything to happen if the If command is not
satisfied, you can just place a Do Nothing action in the Else field.


This has absolutely no effect on the game at all. It is merely
useful for explaining what the nearby actions do. This can be
helpful for people to learn from your own map, or even to
remember what complex actions are used for.


Never use this command in multiplayer. Different computers can react
differently to this command, and it can set triggers off-balance.

Otherwise, the Wait command can be used to wait a specified number of
seconds so that commands are more spaced-out. This is used frequently
in cinematics.

2.00 = You can adjust this in order to specify the number of seconds
   that your computer will wait.

Wait For Sound

This command, similar to the Wait command, can be used to make
sure a sound finishes before an action is commenced. As an
advanced use, it can be adjusted so that actions occur at a
specific point during a sound. Note, however, that this does
not work with in-game music.

(Last played sound) = Can't be changed.
2.00 = Adjust the number of seconds of wait time.

Set Variable

Arguably the most important command in RPG-making, this allows you to
set the basic variables in your game. I will run down the most used:

Integer = This is mainly used for If/Then/Else commands. This cannot
  be used to trigger events, though, and I would recommend using
  a Real variable unless you plan to base the variable on random
Real = For all functions that do not require integers, such as
  specifying the values in arrays or random integers, you should
  use real variables. These can be used to satisfy events, and are
  thus vital to setting off events through the use of a variable.
Timer = This is necessary for creating multiplayer RPG-type maps. By
  utilizing a timer, you can eliminate the necessity of mistimed
  Wait functions.
Unit = In RPGs, players often have one character. One method of
  tracking these characters is by creating a Unit Array. By using
  Unit[PLAYERNUMBER] = PLAYERCHARACTER, you can make sure you can
  always identify the correct units during cinematics as well as
  even boss battles.
Unit-Type = This can also be used to track units by their type.
  When selling weapons, you can use this to identify what type of
  weapons that character can buy.

Variable = Here you can select the appropriate variable. Mathematical
  operators are only useful when dealing with numeric values.
Value = Here you set the value of the variable. If you want to do
  basic arithmetic, such as increasing the variable by one, you can
  use something like VARIABLE = (VARIABLE + 1.00). To multiply by two,
  you can use VARIABLE = (2 x VARIABLE). As long as you are good at
  basic math, these should pose no problem. Note, however, that this
  can be used for incredibly advanced formulas. You can't teach this,
  and you can only learn this type of math through experience.

Skip Remaining Actions

This should also be used in conjunction with If/Then/Else commands.
The best use would be that if the "If" condition is not satisfied, you
can skip the remaining actions. This way, you can avoid any undue
cinematics, bonuses, or the like.


If the "Condition" field is not satisfied, the first "Action" field is
performed. Otherwise, the second "Action" field is performed. Most
often, the Condition will be either a Boolean Comparison or a variable
comparison. Examples are as follows:

Boolean Comparison
  ((Triggering unit) is A structure) Equal to True
Player Comparison
  (Owner of (Triggering unit)) Equal to Player 1 (Red)
Unit-Type Comparison
  ((Unit-type) of HERO) Equal to Tauren Chieftain

Animation - Play Unit Animation

This can play the animation of a specified unit once. If you want a
unit to do a victory pose or pretend to attack, you can use this. To
find the appropriate animation, use the Unit Layer and find the right
unit, and then look at the little box on the left of the WE that
shows the unit's model. Here, you can find the different animations
available. You can then type the string in to the function. For
example, if you want to play the peasant's "stand - 3" animation, the
function should look like so:

Animation - Play PEASANT 's stand - 3 animation

Animation - Change Unit...

These can adjust the model's values for specific characteristics.
They will be discussed in greater detail in the Unit section of the

Environment - Create Weather Effect

If you want there to be snow, rain, sunlight, etc. you can use this.
You are given a wide amount of weather effects to choose from, and
they can all add a lot of style to your map. They do slow system
performance, so make sure they are used sparingly.

(Playable map area) - You can specify the region in this field. It is
  recommended that you use pre-made regions, or do not adjust this
  area at all. Note, though, that you can create region-specific
  weather effects by double-clicking on a region with the Selection
  Brush enabled.
Ashenvale Rain (Heavy) - You can select the weather effect here.
  They can all be very neat, but you must remember not to have too
  much going on at the same time. The fog effect can actually
  enhance performance somewhat, while effects like wind will really
  bog down your computer.

Environment - Set...

The Set Sky and Set Fog commands are both self-explanatory. In fact,
the Sky function is very similar to the Weather Effect function.
The fields below are for the Set Fog function.

0 = This shows the fog style. Values range from 0 to 2
1000.00 and 8000.00 = These are the beginning and end points of the
  fog, respectively. Basically, these are the heights of the fog.
  At 1000, it is roughly the same height that we would associate
  with a smog layer.
0.00 = This determines the fog's overall density.
100.00 (all three) = These are the red, green, and blue values. If
  you know a bit about color composition, these should be easy to
  figure out. The default color is white.

Game - Text Message (...)

The Auto-Timed and Explicitly Timed functions are very useful for
displaying text. I prefer Auto-Timed functions because they
automatically adjust the display time with the text-length.

Hero - Drop Item From Hero Inventory Slot

Most Hero - ... Item ... functions are very self-explanatory. They
create an item and give it to the hero. However, this particular
function can cause the game to crash. For example, if you tell the
hero to drop his/her item from slot 1, and the hero doesn't have an
item there, the game will automatically exit.

Sound - Play Sound

A particular problem that everyone has is getting a sound to play.
This is because most sounds you import into the Sound Editor are 3D.
That means they must be placed on the map before they are played.
To remedy this (assuming you don't want it), you must go into the
Sound Editor, double-click the specific sound, then uncheck the box
for 3D sound. It should now play perfectly.

||                      N E W   S E C T I O N                       ||


 ________  _____|____         \/ ___|_      |     
     |     | ______ |     |   /\ |    |     |     
     |__   __________     |  / |  ___|_    / \    
  |  |          |      __/    /|     |    /   \   
 _|__|___    / _|  \           /   \ |   /     \_ 


For many people who want to create an RPG using the World Editor (or
any type of game, for that matter) may feel the need to place a movie
scene, or cinematic, which adds flavor and creativity to the map. This
guide was written in the hopes that I can start you off on your camera-
working skills. 

1. Starting Off
2. Camera Properties
3. Camera Movement
4. Camera Triggers
5. Optional Camera Triggers

Starting Off
First off, I'll try to explain the two basic layers that go into
making a full cinematic.  The first thing you will need to place is a
Camera, which can be found in the Camera Layer (the top menu bar in
the World Editor has a Layer section, pull it down and select Camera).
You can't create a movie without using cameras, can you?  Don't worry
about the specifics just yet, I'll get into more detail on that later.

Start off by placing three cameras, side by side.  Do this by opening
up the Camera Layer.  A screen should pop up on the right side of the
map, with three selections, Create Camera, View Selected Camera, and
Set Camera to Current View.  Right now, just worry about Create Camera.
Select it, and a blue, semi-translucent camera should appear in front
of the screen.

Move the screen around a little and you will see how the camera looks.
Basically, it looks like a regular movie camera, with an arrow
pointing towards the ground.  The area that arrow is pointing to is
what the screen will be centered on when the movie actually plays, or
what I call, the target.  

You can move the camera around into a better spot with your mouse,
which is the prefered way. Now, you may have noticed by now that you
can't have the camera facing other directions, or move closer to the
ground.  To fix this, double click the camera, and a Properties screen
should pop up.

Camera Properties
Several selections are availiable in this screen, I'll explain them.

Camera Name:

Camera Values:

  Target X - See below

  Target Y - See below

  Z Offset - These three selections are used to move the camera from
    wherever it is right now. 

    Increasing the X value will move the camera to the right,
    increasing the Y value moves it upward and the Z Offset affects
    how far off the ground the camera will be.

  Rotation - This affects what angle the camera will be facing.  The
    values that can be used here are from 0 to 360.  Making it 0
    points the camera right.  180 makes it point left. 90 points up,
    and 270 points downward.  This is one of the most important
    selections availiable for the camera.*

  Angle of Attack (AoA) - This is also a very useful tool, as it
    changes how far from the ground the camera is.  The higher the
    value (like the Rotation, the values can be from 0 to 360), the
    lower to the ground it will be.  Making it 360 puts the camera
    completely on the ground, whereas 10 makes it actually go under
    the ground.*
  Distance - This is how far from the target the camera will be.  The
    higher the value, the farther away the camera will be, and the
    smaller everything will look when the cinema plays.

  Roll - This gives the camera a nice tilting affect.  This tends to
    add an air of suspense to the movie. You've probably seen a movie
    where the camera tils to one side during a suspenseful part. The
    higher the value here, the more it will tilt to the right. Like
    the Distance and the AoA, the values here can be from 0 to 360.*

  Field of View (FoV) - This is, essentially, the zoom.  The higher
    the value, the farther away you will see from.  The lower the
    value, the closer to the ground you will see on your screen.
  Far Clipping (FarZ) - Don't worry about this one yet.  It doesn't
    really apply to the basics of camera working, so I'll leave it
    out for now.

*Notice how many of the values can only be from 1 to 360?  Think of
these as a circle.  The very top of the circle is both 0 and 360 (they
are the same thing).  If your still stumped, think of it as a clock.  
When it is 3:00, that is both 0 and 360.  270 would be 6:00, 180 would
be 9:00, and 90 would be 12:00.  If you are still stuck (completely
understandeable), I'll have several examples at the bottom of the 
Cinematics section that may help you.

All right. So hopefully, you now know how to place a camera and make
the zoom, tilt, angle, whatever, to your liking.  If you do, please
place a few cameras and try adjusting their properties to get the hang
of it.  If you don't understand, I'll have a few examples towards the
end of the Cinematics section that may help you (have I said that
already O_o?).

Remember how I told you to create three cameras, side by side?  Have
the cameras point towards a singular object (preferably a unit of some
kind).  Have one pointing straight forward at it (the Rotation would
be 90), one pointing to the right side of the unit (the Rotation would
be 180), and one pointing to the back of the unit (270).

Camera Movement
Now, before you can understand where to place the cameras, you need to
know how they work. When you create and complete the triggers for the
respective camera (you have to create quite a good deal of triggers,
but I'll explain those later), the screen will move from one camera to
the next in as straight a line as possible.  You should have three
cameras already created, facing one unit.  Once you have the triggers
up, it will move from the 1st camera (the one facing north), to Camera
2 (the one facing the units right side), then to Camera 3 (the one
facing the unit's back).

The end result of the triggers and cameras working together will have
the screen revolve around the unit starting at its front, to its side,
then its back.*  But don't worry about the triggers yet, this is just
to explain how the cameras will move when they are done, as to help
you know where to place them.

*When I say back, I don't neccesarily mean the actual back of the unit.
Unless you change the unit's Facing Degree, chances are, the camera
probably won't actually be facing it's back/front/side when I say it
will. Just imagine that the unit the cameras revolve around is facing
south (facing the bottom of the screen).

I'd like to make one last note before I finish the Movement section.
Chances are, you are probably feeling a bit confused right now. Don't
worry.  Just wait until I talk about the triggers, because that's when
I'll start giving examples where you can make your own cinematics,
which should clear up any confusion.

Camera Triggers
All right, now we get into the fun stuff.  I'm assuming you have the
cameras placed and in position, because the cinematic won't work right
if they aren't.  For explanation purposes, please place the three
cameras with their respective property adjustments as I have mentioned

First off, let me explain why you need the triggers.  The cameras will
not simply move by themselves.  You need to specify when and how they
will move, and you do that by using triggers.  If you are a complete
beginner in the ways of triggers, I suggest you read more about it in
that section of this FAQ.  Things could become a bit confusing

With that out of the way, we can begin.  Open up the Trigger Editor
from the Module menu at the top.  I suggest creating a new category
for the cinematics.  For the FAQ purposes, I'll name it Cinematics
(create a new category by clicking New at the top, and selecting
Category).  Now, create a new trigger (same way as the category, only
select Trigger), and name it whatever you feel like (I'll be naming 
the example, Cinematic 1).  

When the trigger comes up, you will see three things, Events,
Conditions, and Actions.  I won't go into great detail about these,
because this is the Cinematics section, not the Triggers.  But for general 
purposes, the Event is what will cause the trigger to occur (such
things as Map Initialization and Unit Entering a Region), the
Conditions are specific things that are used to further adjust when the
trigger happens, and the Action, which is what occurs when the Event is
First, I suggest you make the event Map Initialization (from here on,
I will assume you have read at least some of the Trigger section, to
save myself time).  Don't bother with conditions right now.  

Before I continue, I'd like to make a note of some of the Actions you
will be using to make the cinematics.

  Camera - Basically anything in the camera category is of use here
    (of course), but most importantly, Camera - Apply Camera Object.
    This is what causes the screen to move to the camera.

  Cinematics - This category is of obvious use also.  The main
    triggers here you will be using are Transmission from Unit and
    Cinematic Mode.  They are all pretty obvious, and add nice touches
    to any cinematic.  

  Transmission from Unit 
    This is when the units head appears at the bottom left of the
    screen and speaks to you (in the Single Player Missions you hear
    their voices from Voice Actors, when online, you will only see

  Cinematic Mode 
    This changes the screen to make it more of a movie feel.  All of
    the cinematics in the single player use Cinematic Mode.  It is of
    great use, and should probably be placed at the start of any
    Camera trigger.  Probably the most important uses of this is that
    it gets rid of Fog of War while the Cinematic is playing, which
    makes it so you can actually see what's going on. [Ed: It also
    removes user control.]

Please note, those are only the very basic triggers for working with
cameras.  There are many, many more.  This section was written just so
you can start on your way to cinematic making.

Now, you should have a trigger open, named whatever you chose
(remember, mine is Cinematic 1).  You should also have the event be
Map Initialization.  Once you have all of these down, you can start 
placing the Actions. Start by placing a Cinematic - Cinematic Mode.
This is always a good place to start for any cinematic, for the
reasons I have written above.

Just to specify, their are a few options you can change in
Cinematics - Cinematic Mode.  They are On and (All Players).  Both are
quite obvious, but for general reference, from now on, I will begin 
addressing triggers in this manner.

Here is what the trigger should look like:

  Cinematic - Turn Cinematic Mode On for (All Players)

Now, place a Unit - Pause/Unpause All Units event.  This causes all of
the units to stop doing everything, including attacking, moving,
whatever.  The trigger will look like this:

  Cinematic - Turn Cinematic Mode On for (All Players)
  Unit - Pause all units

The pause condition [Editor: In other sections, this may be referred
to as the "field".] (that is what I call any part of an event,
condition, or action that can be changed) can be changed from pause to
unpause.  The reason you have this is Action here is so that the units
won't attack each other while the cinematic is playing.  This doesn't
have to go right in the front, I just have placed it there for ease
in explanation.  

The next, and probably most important Action to place is the
Camera - Apply Camera Object (Timed).  It will look like this once you
have placed it:

  Cinematic - Turn Cinematic Mode On for (All Players)
  Unit - Pause all units
  Camera - Apply CAMERA1  for Player 1 (Red) over 5.00 seconds.

And here are the conditions you can change in it.
  Apply - This can either be Apply, which means move to over how long
    you chose in the seconds condition, or Apply without panning,
    which means just go straight there.

  CAMERA1 - This is where you select which camera to move to.  If you
    named the cameras the way I suggested, then CAMERA1 should be the
    first one you place.

  Player 1 (Red) - This is where you select which players will see the
    camera movement.  It may get tedious to have to create a new
    Camera - Apply Camera Object for each player, so there is a way to
    have each player in the game see it.  Refer to the Extras section
    for that Action.

[Editor: Here's the correct method, verbatim...

Functions Used...
Player Group - Pick Every Player In Player Group And Do Action
Camera - Apply Camera Object (Timed)

  Player Group - Pick every player in (All players) and do (Camera -
    Apply CAMERA1  for (Picked player) over ___ seconds)

Make sure this is all one function, and that you change the
"Player 1 (Red)" portion of the Apply Camera part to "Picked Player".]

  5.00 - This is where you choose how long the camera will move from
    one to the next. Because you are starting with the first camera
    (you aren't going to be moving from one fixed camera to the next,
    so each player's screen will probably be on different parts of the
    map), this effect won't be the same for each player.  Say one
    player's screen is on the other side of the map from where you
    placed the camera.  Their screen will move from their position to
    the camera in 5.00 seconds (or however long you have chosen).

    That would be a big difference from someone who has their screen a
    foot away from the camera.  Their screen will move very slowly to
    get to the camera in 5 seconds, whereas the person with their
    screen on the other side of the map will move rapidly to the
    camera. Try to keep that in mind when you chose this condition.
    [Editor: A possible solution is to apply a camera for all players
    at the beginning of the cinematic trigger for 0.00 seconds, so all
    players have the exact same viewpoint as the cinematic starts.]

Place the Camera - Apply Camera Object and adjust its properties to
your liking.  For explanation purposes, I will use the cameras you
should have placed around the unit already.  Thus, the Action should

  Cinematic - Turn Cinematic Mode On for (All Players)
  Unit - Pause all units
  Camera - Apply CAMERA1  for Player 1 (Red) over 5.00 seconds

If you have placed these first three Actions correctly (Cinematic Mode,
Pause all Units, and Apply Camera), then a Preview Camera Motion box
should appear to the right of the screen.  Use this to view the
movement of your camera.

As of right now, the entire trigger should look like this:

Cinematic 1
  Map Initialization
  Cinematic - Turn Cinematic Mode On for (All Players)
  Unit - Pause all units
  Camera - Apply CAMERA1  for Player 1 (Red) over 5.00 seconds

Now, if you Preview the camera, that should clear up any camera motion
confusion you might have. Before you place the next Apply Camera (so
it will move to CAMERA2), there is one more Action you will need to
apply.  It is the Wait action, and is the first one availiable in the
Action menu.  Place that directly under the Apply Camera.  This
prevents the camera from moving to fast on you.  The Wait action 
should look like this:

Wait 5.00 seconds

As a rule of thumb for right now, you should change the 2.00 part (how
long it will wait) to however long your camera is.  This will make it
nice and smooth.  See how your Apply Camera has the "...over 5.00
seconds" part?  Well make the Wait 5.00 seconds too. [Editor: Once in
a while, the camera's movement may be very staggered. In this case, it
may be that the cameras are arriving to their new spot ahead of time.
To remedy this, either increase the apply time or decrease the wait

Now you can place the next Apply Camera, and another Wait after that,
and the last of the Apply Cameras.  In total, the whole thing should
look like this:

Cinematic 1
  Map Initialization
  Cinematic - Turn Cinematic Mode On for (All Players)
  Unit - Pause all units
  Camera - Apply CAMERA1  for Player 1 (Red) over 5.00 seconds
  Wait 5.00 seconds
  Camera - Apply CAMERA2  for Player 1 (Red) over 5.00 seconds
  Wait 5.00 seconds
  Camera - Apply CAMERA3  for Player 1 (Red) over 5.00 seconds
  Wait 5.00 seconds

Preview the camera motion, and you should see the whole cinematic
running smoothly and on time.  The camera will start in front of the
unit, and revolve around it, ending up on its "back" side. Before you
can say this is a complete trigger, there are still a few things you
have to add.  Remember how you placed the Cinematic - Turn Cinematic
Mode On function?  Well, you have to place another Action at the end
of the trigger turning it off, or the game will just stay in Cinematic
Mode the whole game, leaving you unable to do anything.  You should
also place a Unit - Unpause all units Action.  The complete result of
all this should look like this:

Cinematic 1
  Map Initialization
  Cinematic - Turn Cinematic Mode On for (All Players)
  Unit - Pause all units
  Camera - Apply CAMERA1  for Player 1 (Red) over 5.00 seconds
  Wait 5.00 seconds
  Camera - Apply CAMERA2  for Player 1 (Red) over 5.00 seconds
  Wait 5.00 seconds
  Camera - Apply CAMERA3  for Player 1 (Red) over 5.00 seconds
  Wait 5.00 seconds
  Unit - Unpause all units
  Cinematic - Turn Cinematic Mode Off for (All Players)

You have now created your first real Cinematic, congratulations!

However, you can't be done yet, can you?  If you have viewed this in
the actual game (via Test Map [Editor: The shortcut is Ctrl+F9.]),
you'll probably notice it doesn't look very good.  First off, the
camera has moved into a different position.  Right now, it probably
doesn't look very weird, but what would happen if the camera was
placed on the ground at a tilt?  That would make it pretty hard to
move the unit, wouldn't it?  Therefore, you should always placed yet
another Action at the end of a cinematic trigger.  This Action is the
Camera - Reset Game Camera.  The Action should look like this:

Camera - Reset camera for Player 1 (Red) to standard game-view over
  2.00 seconds

This moves the screen back to the original "overhead" view.  The
action itself is pretty self-explanatory.  Add this in and the whole
thing should be:

Cinematic 1
  Map Initialization
  Cinematic - Turn Cinematic Mode On for (All players)
  Unit - Pause all units
  Camera - Apply CAMERA1  for Player 1 (Red) over 5.00 seconds
  Wait 5.00 seconds
  Camera - Apply CAMERA2  for Player 1 (Red) over 5.00 seconds
  Wait 5.00 seconds
  Camera - Apply CAMERA3  for Player 1 (Red) over 5.00 seconds
  Wait 5.00 seconds
  Unit - Unpause all units
  Cinematic - Turn Cinematic Mode Off for (All players)
  Camera - Reset camera for Player 1 (Red) to standard game-view over
    2.00 seconds

Now, this will make it look a bit better, but the cinematic still
isn't complete.  You probably want add conversations, right?  You want
a unit to be talking to you?  Well, the next section should explain 
that, as well as others...

Optional Camera Triggers

Assuming you now have a basic cinematic up, I'm sure you would like to
add a little more to it to give it a higher quality, right?  Well,
there are many more Actions availiable to help you do that.  The first 
I'll discuss will be the Cinematic - Transmission from Unit action.
This is what allows you to be spoken to by a unit during a cinematic.
Their head will appear on the bottom right of the screen, and their
text speech will appear along the bottom section, just like in Single
Player.  The action should look like this:

Cinematic - Send transmission to (All Players) from Unit named Name:
  Play No sound and display Message. Modify duration: Add 0.00 seconds
  and Wait.

The conditions here are:

  (All Players) - You know what this is

  Unit - You can manually chose which unit will be speaking to you.
    Please note that you need to actually have the unit speaking
    somewhere on the map, or a blank space will be shown instead of
    their face.

  Name - The name that will be shown for the unit sending the
    transmission to you,

  No sound - This is where you can add a sound to play while they
    speak.  If, for instance, you create your own voice acting, you
    can add that here. [Editor: MP3 format is highly recommended over
    the WAV format.]

  Message - What the unit will be saying, and the message will appear
    on the bottom section of the screen.

  Add - This either adds, subtracts, or sets the length of the message
    to whatever you choose in the next condition.

  0.00 - This is the length of what you chose in the last condition.
    Use this and the above condition to change the length of your

  Wait - This can be either Wait or Don't Wait, which makes it wait
    until the message is done to continue with the trigger.


You should probably place this one directly infront of the camera
action, so it will play the transmission as soon as the camera moves.

Another useful Action for cinematics is the Cinematic - Fade Filter.
This allows the screen to fade in and out, creating a nice transition
affect from one camera to the next.


Cinematic - Fade in and back out over 2.00 seconds using texture White
Mask and color
   (0.00, 0.00, 0.00) with 0.00% transparency

And here are the availiable fields to adjust...

  Fade in and back out - This is how the screen will fade.  It can
    Fade in and back out, Fade out, or Fade in.

  2.00 - This is how long the screen will fade out/in for.  If you set
    it at 5.00 seconds it will slowly grow darker for 5.00 seconds
    until it matches the color you chose in the next field.

  White Mask - This is what the screen will fade to.  It can be many
    different screens, but the main one you will probably be using for
    a nice fade affect will be Black Mask, which turns the screen
    black (obviously).

  (0.00, 0.00, 0.00) - This affects the tinting of the fade screen.
     The colors are (Red, Green, Blue).  Adjust the fields to make the
     fade texture more of one color.  The higher the number, the
     higher the tinting will be.

  0.00% - Adjust this field to affect how transparent the fade will
    be. The higher the value (up to 100), the more you will be able to
    see through the  fade screen.

Again, this is used nicely for transitions from one camera to the
next, but because of the numerous fade screens available, there are
many different uses for the Fade Filter.  Experiment with them and see
which one is right for your map.


Another useful Action is Cinematic - Enable User Control and
Cinematic - Disable User Control.  These make it so you cannot control
your units during a cinematic, which is understandably useful.

  Disable User Control for (All Players)

  Enable User Control for (All Players)

The only fields adjustable here are (All Players), which you already
know of. Just remember, if you do place a Cinematic - Disable User
Control, place it at the beginning of the trigger, and place a
Cinematic - Enable User Control at the end, or you won't be able to
continue the game after the cinematic ends.


There are, of course, many more Actions you can use to spice up your
movie, but for now, these are the basics.  My best advice would be to
look at each Action and see what they do in the real game.  Most of
them are pretty self-explanatory.

Example Cinematics

In this section you can download complete, working cinematics to give
examples of the various triggers I have been talking about.

If you download any, before you run it, open it with the World Editor.
Open the Trigger Editor and read the comments I have (in the box at
the top).  Take note of the things mentioned there.

Download any of these at PinkFloyd1965's website (see the top of the

Here is a list of what each download has
and what Actions are used.

Archimonde vs Mannoroth - This is the basic use of cameras. It shows
  several different views of Archimonde fighting Mannoroth. It shows
  the use of the Fade Filter as well as Camera - Reset Game View.

Archer vs Grunt - An Archer faces off against a Grunt. Actions used
  here are the Transmission from Unit and Pause All Units.

Siege - This shows off the more "fancy" uses of the Fade In/Out
  Action, as well as a few other triggers not needed for Cinematics.
  I also threw in the Pick Every Player action.

||                      N E W   S E C T I O N                       ||

Terrain and Map-Building:

 |\   | _       _    _    ____  /                 
 | \  |/_\  _  | |  / \  /  |   \                
 |  \ |    /   |\  |  |  \  |   /                
 |   \|\__|    | \__\/   /__|__/                
 |         \___|     \__/                        


The Terrain Editor

The Terrain Editor is one of the most important tools in making any
kind of map. In order to make a good looking map you need to plan
ahead, or even lay out your ideas on a piece of paper. That having
been said lets start with the basics. When you create a new map,
you’ll see a window appear. You will be able to choose from many
different options:

Map Size

  One of the most important options. This will decide how big your map
  is. 64x64 is the smallest, and 190x190 is the largest. You can even
  have a map that is 64X190 is you want to. Choose your map size

Playable Area

  This tells you how much of the map is playable. If you have a 64X64
  map, only 52X52 of the area would be playable.

Size Description

  This tells you whether your map is tiny, small, medium, or large.

The Tileset

  This is another Important one. This decides what your map will look
  like. The initial Tileset is Lordaeron Summer. This tileset has
  its own unique tiles. Look at each one to see which one fits your

  [Editor: Certain programs, such as the Xtra Editor and W3Z Map
  Editor, currently in beta, allow you to create your own custom
  tileset, including different cliff tiles.]

Initial Cliff Level

  The cliff level tells you how high or low your map is. The initial
  cliff level is 2, allowing you to make deep water and raise the
  ground level. If you have it at 0 you wont be able to lower the
  ground at all, but will be able to raise the ground level greatly.
  If you raise the cliff level to 14, you will not be able to raise
  the ground but will be able to lower the ground greatly.

  NOTE: You will learn how to raise or lower the ground later in this

Initial Water

  This gives you the option of covering the whole map with ground,
  shallow water, or deep water. The initial setting is ground.

Random Height Field

  If you select this checkbox you will find that your map has, well,
  random heights. It isn’t very useful, and doesn’t look very good in
  my opinion, but if you want to apply this texture I wont stop you!

*Now that you have selected all the beginning options you need to know
how to actually make your map. You’ll see a window on the side that
has all the terrain editing tools you need. Each tool is very useful:

Apply Texture

  This is the different types of tiles you can have. If you wanted to
  make a desert, you would make a dirt area. In order to select the
  tile of your choice, just click the Apply Texture box and select any
  of the tiles that pleases you.

    If you haven’t played as Undead yet you wouldn’t know what blight
    is. This is like corrupted ground that the undead can build on. 

  Add Boundary
    This creates a black wall that disables you to walk in that area. 

    [Editor: Note, though, that units can still see across these
    boundaries if they are in the map itself. You need to place
    Line of Sight Blockers (doodads) in order to prevent this if it
    would have a negative effect on your map, specifically an RPG.]

  Remove Boundary
    This removes the boundary from the map.

Apply Cliff                                

  One of the more important ones. This allows you to raise or lower
  the terrain grounds. It even allows you apply water or ramps. Here
  are some of the options you have:

  Decrease Two
   This lowers the ground by 2 cliff levels.

  Decrease One
    This lowers the ground by 1 cliff level.

  Same Level
    Very useful for making big areas of water, cliffs, or gaps in the
    ground. The way to using this effectively is selecting a cliff,
    and dragging it across a lower/higher level of terrain. You’ll see
    the results. 

  Increase One
    This raises the ground by 1 cliff level.

  Increase Two
    This raises the ground by 2 cliff levels.

  Deep Water
    This is deep water. You cannot place any units in deep water
    areas. (Lowers the ground by 2 cliff levels.)

  Shallow Water
    This is shallow water. You can place units in shallow water areas
    if you wish. (Lowers the ground by 1 cliff level.)

     This is sort of a conversion between different height levels.
     In order to place a ramp you must make a suitable area for a
     cliff, then try to click on the area you want the cliff to show
     up. It can get annoying, but if you work at it you’ll get a cliff
     to show up.

     [Editor: Assume that there are two ground level. One is at a
     height of 3, the other is at a height of 4. Follow this diagram:

    | 4 4 4 3 3 3 | The 4 represents the ground with a cliff level of
    | 4 4 4 3 3 3 | 4, and the 3 represents a cliff level of 3. The
    | 4 4 4 3 3 3 | only way to create a ramp between these two
    | 4 4 4 3 3 3 | heights is shown below...
    | 4 4 4 3 3 3 |
    | 4 4 4 3 3 3 |

    | 4 4 4 3 3 3 | The R indicates a ramp.
    | 4 4 4 3 3 3 |
    | 4 4 R R 3 3 |
    | 4 4 R R 3 3 |
    | 4 4 4 3 3 3 |
    | 4 4 4 3 3 3 |
    \-------------/ ]

  NOTE: Cliffs can appear to be strange looking, so if you find out
  that that is happening, just make a bigger area for you to apply the

Cliff Type          

  You can change the type of cliff you want in your map if you need a
  different matching cliff type. Beware though, if you combine these
  2 types of cliffs into 1 cliff it will not look good at all.

Apply Height

  Very useful in many cases. This gradually raises/lowers the ground.
  Apply to make mountains, gaps, plateaus, etc. etc.

   This gradually raises the ground.

    This Gradually lowers the ground

    This is just like the same level tool. It applies ground of the
    same level over lower/higher terrain.

    This applies pitted ground in the area of your choice.

    [Editor: This can make for all the slight variations in your
    terrain. In order to give the game a more realistic visual feel,
    this imitates the randomness of slope variations in real life.]

    This makes the terrain smooth and at ground level. It can be used
    to get rid of "noisy" terrain.


  Yet another useful tool. Instead of covering the map with very
  little bodies of water, you can cover massive amounts of your map
  with water, ground, cliffs, etc. This tool is incredibly easy to
  figure out, so work at using it and you’ll surely become very good
  at it.

*Now that we have covered he basic tools of the map editor we need to
get into he more advanced options, such as doodads, modifying the
tileset, random variations, etc etc.


This is optional, but incredibly useful for making your map look in
top shape. You can use these to apply rocks, chairs, thrones, walls,
gates, shrines, etc. You can also add cinematic doodads such as
fire, lightning, blue fire etc.

  This gives you the option to add bridges and ramps to your map.

  This doodad type lets you add fire, blue fire, lightning, etc.

  This option allows you to create Cliff Caves. 

  This allows you to create environmental doodads such as rocks,
  corn, lily pads, etc. These doodads are a must.

  [Editor: To maximize the effectiveness of these great doodads,
  place them rather sparingly along shorelines, and concentrate
  them in small inlets or ponds. Rocks can be placed with great
  effectiveness near Fountains or ruins.]

  This lets you add props for a cinematics, for show, or something
  to do with your map. 

  Use these doodads if you want to make a city.

  Use these for making trees, gates, cages, etc.

  [Editor: To make forests, use a large size for your Apply Brush.
  In other words, plant several trees at the same time, and drag
  your mouse to outline the tree walls of the forest.]

  This adds water doodads such as waterfalls, lily pads, etc.

Modifying the Tileset

  A very useful feature in the map editor is the ability to modify the
  tileset. This enables you to create your own tileset, and it is
  amazingly easy to use. Heres how to use it. Create a new map, and
  then go to the Modify Tileset option under the Tools/Advanced bar.
  To edit the tileset, check the box that says, "Use Custom Tileset".
  In order to combine two different tiles you need to know that you
  can only have a certain amount of tiles. You’ll see that each tile
  takes up a certain amount of "Tile Space". The initial tile space is
  12, so be careful. A tile takes up either 1 or 2 tile spaces. In
  order to add a tile to your map; select a tile from a different map
  type in the additional textures. Once you have selected your
  texture, click on the "Add Tile" box. Congratulations! You have your
  very own unique tileset. Now if you want your tileset to be in order,
  you can shift the tile right or left by clicking on the Shift Right/
  Shift Left boxes. It doesn’t really matter much, but if you’re picky
  then go ahead.

Things to Remember

Use your doodad
  Remember, use all your doodads! Select various doodads and put them
  in the fitting location. You need to know where to put them, or else
  your map won't look good.

Too much water is BAD
  Do NOT fill more than 1/4 of your map with water! You need to use
  your entire map effectively! Make everything have a tight fit, so
  you can have a longer RPG, Melee Map, Custom Map etc.

Make various cliff levels
  Try to use the raise cliff tool. You need to make obstacles in your
  map, and making higher ground levels is the key to doing so.

  Trees can just be like water. Don’t waste your map on Trees, they
  will just add more and more useless doodads to your map.

||                      N E W   S E C T I O N                       ||

MPQ Editing, Unit Editor:

  \           __           /|
 ---         /  \         / |
 |-         (    )       /  |
 ---   __  / \__/ \  __     |
 --,  /  \/   ||   \/  \    |
 |-' (    )---||---(    )   |
 |    \__/|   ||   |\__/    |
 - -   || |   ||   | ||  ___|____
 |-|   __  \  ||  /  __   ______
 - -  /  \  \ || /  /  \ /      \
 --- (    )--\__/--(    )|      |
  |   \__/ \ /  \ / \__/ |      |
 ---   ||   (    )   ||  |      |
 |-`   __  / \__/ \  __  |      |
 |-'  /  \/   ||   \/  \ \______/
 | \ (    )--------(    )
 /-\  \__/ \  __  / \__/   /|
 | |    \   \/  \/   /    / |
 \-/     \  (    )  /    /  |
 ---      \  \__/  /        |
  |        \  __  /         |
  |         \/  \/          |
 - -        (    )          |
 |-|         \__/        ___|____
 - -


The Unit Editor
First of all, this portion of the FAW is going to list things in the
advanced world editor. I will list a few things that may be different
between the normal editor, and advanced editor.

It helps if you download and install the editor from
www.wc3campaigns.com [Editor: World Editor Enhanced Blink]

To get into the unit editor, press F6 at any time whole World Editor
is loaded. First of all, you can press CONTROL+N to create a new unit.
This unit will use the stats of whatever unit it is based off of, and
you cannot create a new unit based off a custom unit.

The editor IS limited to around 90 or so custom units...

Lets go through the basic fields that you can see:

  Lists the name for the unit. If it is a hero, this is the name of
  the type of hero.
Name-Editor Suffix
  This is used by the World Editor only.  It is helpful when telling
  the difference between similar units, like the Owl Scouts.
Proper Names
  Used to give the hero names. The game will pick a random proper name
  for the hero when the hero is created. If multiple heros with the
  same name are created, they will have names like Bob, Bob II, Bob
  III and Bob XII, ect.
Model Used
  In the normal editor, you can click on the picture of a unit to
  decide what you want its actual 3D model to look like. In the
  advanced editor, this is a string that can be changed to the
  location of the 3D model in the war3.mpq.
Required Animation Names
  Used by the game to know how to change a unit. Used by units that
  "upgrade" and "morph". For instance, in order for a tower to be
  upgradable into a cannon tower, it MUST have the upgrade and second
  animation names, so the game knows how and what it upgrades into.
Interface Icon
  In the normal editor this is another click-on-the-picture method of
  selection. This is the actual graphical icon the game uses for the
  unit, like when you click to build it, when it is in a sub-group,
  etc. In the advanced editor, this is a string from the war3.mpq.
Scaling Value
  This determines the unit's size from its normal size when it was
  created in a 3D model creating program, like Gmax [Editor: gmax is
  excellent 3D modelling freeware. Its URL is discreet.com.]. 1.00 for
  a value indicates its normal size when it was created. A number
  below 1.00 in decimal form will decrease the unit's size in
  proportion to its normal size. Going above 1.00 has the opposite
  effect. The Lowest value is .10 and the highest is 999999.0.
Tinting Value (Red, Green, Blue)
  OK, this determines the units actual coloration, NOT its TEAM color.
  To pick a color, open up a program like MS Paint. Go into
  Colors -> Edit Colors..., then click on Define Custom Colors >> and
  on that spectrum of 16 bit colors, select one. On the bottom right
  corner of the custom color picker, there are the RGB color values!
  Pop these same numbers into Warcraft III and bam, the unit WILL be
  that exact coloration. [Editor: Do note that you cannot make units
  any whiter than they already are. The RGB for all standard units is
  (255, 255, 255)
Collision Size
  This will determine the size, in Warcraft III metric units, that
  this unit is "solid". That means if this number is 0, you can pass
  right through this unit. This usually does not need to be messed
  with. A rule of thumb is to scale this value proportionally with the
  scaling value.
Pathing Map
  This is the texture that appears under the unit, such as a building.
  This may NOT be left blank. The value is a string to the pathing map
  in the war3.mpq. Some sample textures are:
    PathTextures\12x12Simple.tga    - Texture under barracks; Medium
    PathTextures\4x4SimpleSolid.tga - Texture under towers; Smallest
    PathTextures\16x16Goldmine.tga  - Texture under goldmine; Largest
    PathTextures\6x6unbuildable.tga - Can be walked upon; no collision
    PathTextures\8x8Round.tga       - Texture under specials; Round
  These are all non-scalable so you need to find one that matches your
  size. You cannot build on top of a texture under a building, so
  Tower Defense maps typically use a 4x4 simple solid on all their
  towers, because this allows the towers to be neatly arranged, and
  close together.
Selection Scale
  This is the size of the circle that appears around a selected unit.
  Usually this has to be scaled in proportion to the scaling value,
  but it can be left alone.
Gold Cost
  This is the amount, in gold resources, that the unit costs to be
  built, bought at a shop, etc.
Lumber Cost
  This is the amount, in lumber resources, that the unit costs to be
  built, bought at a shop, etc.
Supply Cost
  This is how much food the unit uses. It can be set to zero.
Supply Produced
  This is how much food the unit produces [Editor: This is intended
  for units like Farms or Ziggurats.]. It can be set from 0 to 90.
Unit Classification
  In the normal editor, this is a list of classes that can be checked
  off. Making it "mechanical" makes it repairable, but unhealable.
  Making it "undead" means it can be injured by holy light. Making it
  "peon" lets it go into Orc Burrows, etc. In the advanced editor,
  this is usually a string, with multiple unit classes being
  separated by a comma and one space. [Editor: For example, you could
  write "peon, undead".]
Build Time
  This is the time the unit takes to build, in seconds. This may be
  more or less depending on the game speed.
Hitpoints: Maximum Base
  These are the max hitpoints that the unit can have at any time, not
  including upgrades. It can be set to extremely high and low numbers.
  [Editor: It may also increase when heroes obtain or use certain
Hitpoints: Regeneration Rate
  These are how mnay hitpoints the unit will recover per second. When
  used with heros, the hero's Strength is added to this number as he
  levels up, because Strength makes heros regenerate.
Hitpoints: Regeneration Type
  This is how the unit regenerates. It can be set to "none", "always",
  "at nighttime", "at daytime", or "while standing on blight". Even if
  set on none, all heros will regenerate if they have at least 1
Mana: Maximum
  This is the most mana the unit can have at any time without a single
Mana: Regeneration
  This is the amount of mana that is restored naturally each second.
Mana: Initial
  This is how much mana the unit has when it is produced. This is
  usually kept low to prevent new units from using powerful high-mana
  spells too early, like Possession or Polymorph.
  These are the units that need to be built in order for this unit to
  be built. If kept blank, the unit can be built by default.
Trained Units
  These are the units that this unit can train. Build time is factored
  in when training units. This is typically kept strictly to
Units Sold
  These are any units sold in the same way that a Mercenary Camp sells
  units. Unit stock, gold cost, and time interval are all considered
  for the unit being sold.
Items Sold
  These are any items that are sold in the same way that a Goblin
  Merchant might sell items. Gold cost, stock, and interval all are
  factored into this.
Upgrades Used
  These are all the upgrades that this unit will use. These upgrades
  have to be researched before the unit will take advantage of them.
Structures Built
  These are a list of structures that the unit is able to create from
  the ground up. The unit does not have to be classified as a peon,
  BUT, the unit MUST HAVE the Repair ability to build a structure.
Defense Base
  This is the amount of armor a unit has when it is first produced in
  a building, with no upgrades at all.
Defense Upgrade Bonus
  This is how much armor the unit gains with each armor upgrade.
Defense Type
  This is the type of armor that the unit uses.
Minimum Attack Range
  This is how far away from the target a unit has to be in oder to hit
  it. If a target is within the range specified, then the unit will
  not be able to attack. This can be set to 0.
Attacks Enabled
  This tells the game what attacks the unit uses. This can be set to
  None in order to make the unit have no attack. It can also be set to
  Attack 1 and Both. A unit may only have up to two attacks. The unit
  will automatically use the attack that deals the most damage to the
  enemy. This takes into consideration damage, armor, etc.
Attack Range
  This is how far the unit is able to shoot a projectile. A number
  under 101 is considered a melee attack, and the unit will have to
  stand right next to the enemy to damage him. This can be set up to
Attack Type
  This is the type of attack that is used by thr unit. If this is set
  to Spell, it will use Spell statistics. Normal units usually take
  100% damage from spells, and heros take 50-75% reduced spell damage.
Attack Weapon Type
  This is the type of "gun" the unit uses. I will describe each one:
    Normal           - A normal attack used for melee
    Instant          - Makes the projectile instantly hit its target
                       (i.e. Rifleman).
    Artillery        - Shoots a shell at the target that can be
                       dodged (i.e. Mortar Team).
    Artillery (Line) - Shoots a shell close to the ground that can be
                       dodged (i.e. Ballista with Impaling Bolt).
    Missile          - Shoots a projectile that follows its target
                       (i.e. Priest)
    Missile (Splash) - Shoots a missle the follows closely and
                       splashes (i.e. Demon Hunter in Demon Form).
    Missile (Bounce) - Shoots a missle that follows and bounces off
                       enemies (i.e. Huntress).
    Missile (Line)   - Shoots a missle that slightly follows.
Projectile Art
  In the normal editor, this is a selectable picture of the unit that
  you want your unit's attack to look like. In the advanced editor,
  this is a string and is located in war3.mpq. With the advanced
  editor, you can use previously unused attacks in the game too.
Projectile Speed
  This is how fast the projectile that you shoot goes. It is measured
  in Warcraft III metric units per second. 800 metric units is how far
  an orc tower shoots, just to give you a general idea. It can be set
  so slow, it crawls, or so fast, that is is instant.
Targets Allowed
  These are the types of units that your attack will be able to hit.
  Checking off only "Hero" means you can ONLY target heros. Checking
  off "Ground" enables you to hit ANY ground unit. Checking off
  "Ground" and "Enemy" forces the unit to be unable to hit themselves
  or their allies.
Damage Base
  This is the amount of damage the unit can deal in one normal hit.
Damage: Number of Dice
  This is a randomness factor added to the damage base. It should be
  kept to 1 or 2 for sake of simplicity.
Damage: Sides per Die
  This is the damage base, + or - this number. So if damage base is
  75, and this is 35, your damage will be +25 and-25 the base damage,
  so you will do roughly 50-100 damage with that example.
Cooldown Time
  This is how many attacks your unit can pull of per second. This
  number is limited depending on how complicated the unit's attack
  animation is.
Area of Effect: Full, Half, Quarter
  This is the radius, in a circle, around the area of impact that
  units will take full damage. This is used to calculate splash
  damage. The number is in Warcraft III metric units. So if this was
  800, then every unit within about an Orc Watch Tower's range from
  the impact will take full damage. You can also specify amounts if
  you want half or quarter splash damage.
Area of Effect: Targets
  These are the units that will be affected by the splash damage. By
  checking off "Enemy", you can prevent your own units from killing
  themselves from AOE (area of effect) damage.
  These are all the abilities (usually researchable) that the unit can
  use. These include harvesting gold, repairing, ect.
Caster Upgrade Names
  These are the classes of caster names. These can be changed as seen
  fit. Usually is composed of three caster names, each corresponding
  to that units degree of training, like "Initiate", "Adept", and
Caster Upgrade Tips
  When you hover over the caster name of a unit, this is what tells
  the game to display what spells that caster can use at each upgrade
  level of caster training.
Caster Upgrade Art
  This is the art used to show the level of training for a caster.
Targeted As
  This is what the unit is targeted as to the enemy. Can be set to
  fields like "Air" or "Ground".

The MPQ File Format
  MPQ [Editor: pronounced MoPaQ], what is it, you ask? .mpq files are
how Blizzard archives most of their games. The .mpq files store all
the info about Warcraft that Blizzard does not want people to mess
around with. But, by using an MPQ extractor, you can take the files
out of the .mpq archives and edit them, then put them back in. .mpq
editing allows you to do things like edit currently existing
abilities. By editing abilities you can change Tranquility to whatever
you want it to be. You can make Starfall drop flying sheep instead of
stars. The possibilites are endless. You can edit the AI scripts and
create your own. You can change the mini-map of your level to whatever
you want. You can open up Warcraft III's campaign maps in the editor,
and see how Blizzard made their maps. But how do you do this you ask?
Well, it is actually very simple, and I will guide you quickly and
easily on getting you started.

First of all, you need a good MPQ Extractor.  www.wc3campaigns.com has
MPQ2k and WinMPQ at their disposal. But which one is better?  MPQ2k
uses as DOS command line, and WinMPQ uses a nice graphical interface.
I reccomend WinMPQ because of its sheer simplicity and installation.
When you download WinMPQ, it will install all the files you need
easily and quickly. Ok, after installing WinMPQ, open it up, and let's
see the next thing we can do...

[Editor: TechMPQ is also available, and is my preferred tool. However,
it will not be explained in this FAQ.]

  OK, so you have WinMPQ opened up, right? Now, go to File --> Open.
Go to your Warcraft III directory, which is probably something like
C:\Program Files\Warcraft III or D:\Program Files\Warcraft III, and so
on. What you need to open up in this folder is the file called
War3.mpq. It takes a little while to open it up, but when it does, we
get a HUGE list of all the files in the MPQ!

(NOTE: Backup your war3.mpq file before changing. Also, NEVER delete
any files from your MPQ unless you put the file there and want to get
rid of it. If you use WinZip, this setup probably looks familiar.)

  Ok, as you can see, there are TONS of files here that you can
extract from the MPQ and use on your own. This program behaves a lot
like WinZip or WinAce. So, what can you do from here? Many, many
things. Take a look below.

Editing Spells and Abilities
This one is always something that people want to do [Editor: For those
who don't know, the normal WE lacks the ability to edit spells or
abilities.]. Anyways, you want to look for all of the following files
and extract them to any drive of your choice:


It can take a while to find these files on this HUGE list of files,
but, they are somewhat categorized. The files above will be under:


Where the word, RACE, is the race of the file that has the ability you
want to change. So, you can find the human files under
units\human\HumanAbilityFunc.txt. And so forth. Anyways, when you find
the files, right-click on them, and click on EXTRACT, then pop them
into any drive of your choice. It will create a new folder for you
depending on where the file is in the MPQ. So if you extracted the
human files above to your C:\ root, it would now be found now in:
C:\Units\Human\______.txt, where the ______ is the name of the file.
Let's go and open up HumanAbilityFunc.txt (find where you extracted it)
and take a look at the first ability. It should be somehting like this:

// Gyrocopter Bombs


Well, you probably have no clue what that all is, so let me explain
the fields above:

// NAME          - That is just a comment. It helps you see what the
                   ability is.
[____]           - Used by the game to identify the ability.
                   Don't change it.
Requires= xxxx   - More code used by the game.  Dont change it.
Art=xx\xx\xx.blp - This is the graphical art of the ability BUTTON.
                   It shows the location of the art in the war3.mpq.
                   You can change it to whatever you want.
Buttonpos=x,x    - This is where the button is located on the panel.
                   See the art below to find out.

                                       0   1   2   3

                                   0   x   x   x   x

                                   1   x   x   x   x

                                   2   x   x   x   x

                   The first number is the number on top row, the
                   second number is on bottom row. These can be
                   changed. So, the Gyrocopter Bombs icon is in the
                   position 1,2. 0,0 is always MOVE. 3,0 is always
                   ATTACK, and so forth.


Other abilities may have more fields in addition to those. If you
scroll down the .txt file, you can see many other abilities. Let's
take a look at BLIZZARD though. We get something like this:

// Blizzard



All right, many, many more fields than in Gyro Bombs. Let's see. The
Art field is what the button looks like that you have to click on to
cast blizzard. It can be changed.

Research art is what the button looks like that you click on to LEARN
blizzard. This can also be changed. Buttonpos is the position on the
command button grid (see above), and same with Researchbuttonpos,
except that's where the button is when you're learning the ability.

Casterart is anything that might appear over the unit when he is
casting a spell (like in starfall, runic symbols appear over the
caster). The order should be blank, and just tells the game what to

Further down is the Effectart. This is what the actual SPELL or
ABILITY looks like. It can be changed to the model of a pig, then pigs
would rain on the enemies instead of ice shards. The sounds are of
course just sounds and need to be left alone.


Now, how do you know what these things can be replaced with?  Like,
where do you get the path for a pig? In the MPQ! Remember that long
list of files? Well, whatever you see in the MPQ list is what you can
put into these fields (must have the same extension as the original
field though, like .mdl)

Well, if you decide to change one of these, to get it into your map
you have to simply open your map in WinMPQ. Click on ADD files. Find
your edited .txt. And add it in! That simple. Beware though, whenever
you save your map in the editor, you have to pop the edited .txt back
into your map. Putting these files in your map is referred to as
"injecting files".

Also one last note, the ability files ending in FUNC are to edit its
actual effects, and the ones eding in STRINGS are the ability
descrptions. Both files can be modified as much as you want, with
usually no errors at all. Also, you can only edit existing abilities,
never make new ones. Try it out! Some suggestions are to make Starfall
drop sheep, and call it Sheep Fall! Or change Tranquility so it drops
Rain of Fire meteors! Yuo can do many things with editing those
ability files!

*NOTE:  Some things can not be changed, like the damage of an ability,
or if it heals, or how long it lasts. These are hardcoded into the
game, and cannot be changed by conventional means*

Other MPQ Things
You are not limited to ability editing. Oh no, never! You can open
map files with WinMPQ and extract the minimap, and make your own
custom minimap. You can extract the common.ai file from war.mpq and
make your own AI scripts. You can extract the actual campaigns, and
edit them, or play them whenever you want. MPQing is one of the great
things today in WC3 editing, and it allows people to do very advanced
things. Do not limit yourself to what's in this small tutorial though.
Explore the MPQ, mess around with files. Almost anything is possible
with .mpq editing. Good luck with your editing!

Special Thanks:
Kao Megura (for convincing me to write something helpful)
Gnollz (giggle :-P )
Master LL (for never completing his map... like me)
Warbringer87 (for being a great terrain artist)
Everyone who contributed to our thread (check the webpage)

View in: