Custom Race Creation: Advanced Mechanics

Level 12
Joined
Sep 6, 2015
Messages
580
Custom Race Creation: Advanced Mechanics


Making video games is like a science. Everything needs to be planned and well thought-out in order for the game to be fun and challenging, and the mechanics behind a seemingly simple game can actually be very complex and thouroughly thought-out.
This tutorial will deal with the advanced mechanics of custom race creation. It will try to cover everything that has not been covered in other custom race creation tutorials, as well as some additional things. In other words, it will deal with those mechanics that give flavour and strategic complexity to a custom race, so it feels like one of the four base races.

It's time to get racist.


Table of contents:

- The list of useful links
- Main principles of custom race creation
- Unit customisation
- The importance of these mechanics
- Unit examination
- AI - common issues


First of all, the list of useful links:


Custom race design tutorials:
Race creators - Guidliness for making a custom Race
How to: Create a Full-working Custom Race
Design Guide for a Fifth Race - Wc3C.net

AI editor tutorials:
AI Editor
Tutorial: The WC3 AI Editor - Wc3C.net
The AI Editor - Wc3C.net

Custom race implementation:
Creating a Difficulty Settings Dialog for your map | Warcraft III World Editor Tutorials Map Making Help Blog (can be used for choosing a race too)
How to: Create a Full-working Custom Race
Custom Race System - Wc3C.net
Blizz-Like Melee Settings For Extra Races 2.5

Other useful tutorials/posts:
Unit classifications and target types
Abilities - Guide
Base abilities for custom spells cast by melee-game AI units
The Unit Editor Fields
List of Hidden Material Within the World Editor
Custom Pathing Maps
AI - Basics and Triggers | The Helper
How to make a Campaign AI - Wc3C.net

Official Warcraft 3 strategy guide:
Mojo StormStout's Warcraft III Strategy Guide

Testing Grounds - the map for the overview and testing of all units/buildings and their abilities:
www.hiveworkshop.com/threads/testing-grounds-the-map-for-the-overview-and-testing-of-all-units-buildings-and-their-abilities.286574/
This map contains, if not all, then almost all units, heroes and buildings present in the game, and some enemy units for combat testing. It is used for the overview and testing of the units, heroes and buildings and their abilities, and for numerous other purposes utilised by map makers, players and others. It can also be useful for giving you ideas about what units and abilities you should use in your map and off which units/abilities to base them. The map can also be found attached at the end of this post.


Main principles of custom race creation:

1. Blizzard's maxim - "Easy to learn, hard to master."
When creating a custom race you shouldn't make overly complex abilities, units, buildings, etc, but you should go with simple concepts that have depth when combined with other things and that have an element of tactical use in them. When you look at the four base races, none of their abilities have lengthy texts with thousands of effects, but all of them become complex when put into a big picture and have an element of strategy. This doesn't mean you can't create complex abilities and other things, but this is how the four base races were made and it's highly recommended.

2. "Thing" and "counter-thing"
When you look at how the melee games function, you'll see that they are full of things that counter certain other things and that they are basically based on this system. For example, you have buffs/debuffs and dispels, spellcasters and magic-immune units, buildings and siege units/abilities, flying units and anti-air abilities, invisible units and invisibility detectors, the system of armour and attack types (magic attacks counter heavy armour, fortified armour counters piercing attacks, etc.), etc. So, you see, they are full of these things and they come in many categories, which will be discussed later in this tutorial. The success of your army is partially guided by these things, and of which roles you composed it.

3. Roles
Guided by the rule of "thing" and "counter-thing", each unit should have its role - its purpose. What is meant by this is that it should have it's strengths, something that it's useful for, and weaknesses. For example - Dryad is good versus spellcasters, but has weak stats; Mountain Giant's role is to tank, but its weaknesses are that it can't attack air units, that it's slow and that it is the most expensive unit in the game; Priest is a healer, but it can't attack well, and is killed fast; etc. So, you see, each unit has its role in your army and its strengths and weaknesses. No unit you make should have an "good for everything" role and be without a weakness, otherwise what's the point of all the other units? Not even the most powerful units, like Chimaeras and Frost Wyrms, are without a weakness. Also, no two units should have the completely same role. Basically, all units you make should always be useful for something and have a weakness. An example of this are Footman and Knight - their roles are basically the same and Knight is generally more powerful, but Footman still has Defend and is much cheaper/faster to train.

4. Easy control
When you take a look at the four base races, you see that many of their abilities are autocast or passive. This is because, if they weren't, you would have to break your keyboard and mouse by clicking every ability each time it should be cast and targeting it. Heroes usually have one passive ability and all of their abilities aren't always targetable. On the other hand, units' abilities are usually very simple to control. The ones that should be cast constantly, that have low cooldown and little mana cost are usually auto-cast. The normal, clickable, abilities are usually abilities that don't need to be clicked much - untargetable abilities, abilities that stay active, or the abilities that have high cooldown or mana cost, and that need to be specially targeted, otherwise they would go to waste if they were auto-cast. Units also have a lot of passive abilities to ease the control, and not all of them have useable abilities. They usually don't have summon abilities (except Necromancer) and targeted single-target and aoe damage abilities, since, unlike heroes, you can summon a lot of those units and casting those abilities with a lot of them would be overpowered, and would also require a lot of clicking.

5. Variety
The custom race units should have as many roles, "things" which have their corresponding "counter-things", different armour and weapon types, and different types of everything as possible. No two spells should be the same or extremely similar. No two units should have the same ability or two extremely similar abilities, unless it's a racial trait or a certain state ability, like Spell Immunity and Resistant Skin. The variation and the complex strategic environment of the race are what makes it have that "flavour" and depth the four base races have. The more, the better. However, don't overdo it, and if you improvise and create something new for your race, be sure it's balanced.

6. Meaningful and reasonable techtree
The race's techtree should be carefully planned, as any imbalances in it will make your race less playable and more or less powerful than other races. How to create such a techtree can be seen in the custom race design tutorials that have been listed above, but you don't need to follow that exact pattern as long as you keep an eye out for balance. But balance isn't the only thing that should be taken into account when constructing a tecthtree. Your techtree should also grant your race a feeling of progression, freedom of choice, customisation and specialisation. So, for example, at the start of each game you would choose which progression curve to follow up to which units and specialise in them. Unit upgrades play a big part here. This freedom of choice also adds a valuable strategic aspect to your race. Another thing you should keep an eye out for are the units'/upgrades'/buildings' gold/lumber/food costs and build times. They should be set according to the units'/buildings'/upgrades' merits, or in other words, their power and usefulness, and the race's economy, or in other words, resource gathering rate and methods.

7. Balance
This is a very important aspect, especially if your race can be played with/versus other races. You should carefully test and calculate everything. It isn't easy to make a whole race completely balanced, but give your best. If your race isn't balanced, playing it wouldn't feel nice and right and it would feel strategically impaired.


Unit customisation:


Now that we have covered the main principles of race creation, we can move on to designing the units and their abilities. This is the Table that we will be using for that (the document will also be attached in at the end of this post):
Screenshot_2.png

Screenshot_1.png
This may look too complex to you now, but it's not that complex. However, it's important to take all of these factors written in the table into account when creating units and abilities for your race. Remember, you want to create a complex environment for your race with as many as possible "things" which have their corresponding "counter-things" and with various unit roles, just like the four base races have, and even improvise and create something completely new, something unique, although you should take care not to disturb the balance. Now we will move onto explaining the table and everything else that should be known and taken into account:

First row - headings:

AbilitiesThe various types of abilities found in the game. One ability can have more than one tag. For example, Brilliance Aura is +aura +mot (mana over time). One important thing about abilities is that by ticking "Allow negative values in the Object Editor" in the Preferences of your World Editor, you can enter negative numbers into the effects of some abilities and thus create new custom abilities. For example by entering a negative value into Brilliance Aura, you can make it drain mana instead of regenerating it, so it would change its ability type tags into +aura +dmot (decrease mana over time).
ArmorThese are armour types. For the table about the effects of armour and attack types, look here: Warcraft III - Basics -> Armor and Weapon Types. There, you also have other explanations about them. The Divine armour type isn't mentioned there - only the Chaos attack deals full damage to it, while other attack types deal almost no damage. Melee, siege and mechanical units usually have Heavy armour, ranged Medium, spellcasters are Unarmored, while flying units usually have Light armour. Each armour type is better or worse versus the attack types. For example, the Fortified armour of buildings takes very little damage from Piercing attacks. This system is in place to encourage unit counters and unit mixing in combat. You should have varied armour and attack types in your custom race units. The armour and attack types should also fit the units' weapons/missiles and model armour somehow.
AttackThe attack types. Consult the link above under "Armor", for their effects and explanations. Melee units and ranged with glaives usually have Normal attack, ranged Piercing, siege Siege, and spellcasters Magic, while the only unit in the four melee races that has Chaos attack is the Infernal summoned by Dreadlord's ultimate ability. Each attack type is better or worse versus the armour types. For example, Normal attacks of melee units are powerful versus the Medium armour of ranged units. This system is in place to encourage unit counters and unit mixing in combat. You should have varied armour and attack types in your custom race units. The armour and attack types should also fit the units' weapons/missiles and model armour somehow.
RangeBasic types of range arranged from close to long. Pretty self-explanatory by themselves. An important thing to mention here are the formation ranks. Formation ranks control in what order your units move and stand. It is manipulated via Stats - Formation Rank in the Object Editor. Each unit has its own place in the formation, and the places range from the frontmost (0) to the backmost (4). The frontmost units should logically be normal melee units, who usually also serve as tanks, and they take the number 0 (Example: Footman). Next, there are low-range ranged units, and they take the number 1 (Example: Spell Breaker). Note that Huntress is 0, though, since it's a tank and Night Elves don't have other tank units at start. Next, there is the number 2, which is reserved for normal ranged units, spellcasters (no matter if they are melee or not) and flying units (also doesn't matter if they are melee or not)(Example: Archer). After that, we have the number 3 that is reserved for ground mechanical units (Example: Demolisher). The number 3 isn't only reserved for long-range mechanical siege units, but, for example, Siege Engine and Obsidian Statue also have that rank number. Finally, the number 4 is reserved for workers, although Owl Scout has that rank number too (Example: Peon). Note that there are some irregularities when it comes to summoned units, and that wards always have the rank number 0, since they can't move (at least not voluntarily). Heroes follow the same pattern as units - the melee ones are rank 0 and the ranged ones are rank 2.
RangedRanged ranges (excluding siege) - a sub-class of Range. Low is, for example, Huntress, Normal is Archer without the range upgrade, and high is Archer with the range upgrade.
MeleeMelee ranges - a sub-class of Range. Normal is, for example, Footman, and medium is Mountain Giant with a War Club (250 range). Medium-range melee units can attack from behind the melee units and thus take less melee spots around the unit and can faster acquire their target.
ClassUnit classifications. Manipulated through Stats - Unit Classification in the Object Editor. For their explanations, look here: Unit classifications and target types. Those which are not explained there: Neutral - appears in the Unit Palette only if you choose Neutral Passive; Suicidal - cannot be loaded into a transport; Walkable - units can walk over it/go through it, has no collision; Tree - still unknown (cannot be targeted by tree-targeting abilities, wood cannot be extracted from it by attacking); Giant - still unknown (can be devoured, can be loaded onto a transport, units have footstep sounds even without it (only certain models have those sounds)); Workers will also flee when attacked if their Stats - Can Flee is set to True; Suicidal will also try to blow themselves up when near the enemy buildings if they have an ability based off the Kaboom! ability. Note also that Worker units usually also have a defensive purpose - Peons can go into Burrows to give them an attack and can Pillage, Wisps can Detonate, Peasants can turn into Militia, Acolytes can be Sacrificed to become Shades.
MovTypeMovement type. Manipulated through Movement - Type in the Object Editor. Mounted units have the Horse type, the ones on foot have Foot, Lich hero has Hover (if you put Hover on a foot unit, it won't lose its footsteps), flying have Fly, floating have Float, the ones that move both on ground and in water have Amphibious (swimming animations required). Horse, Foot and Hover movement types are for the units that can move only on the ground.
SpeedUnit speed, pretty self-explanatory. Workers are usually Slow, Ancients are Very Slow, Grunts are Average, Raiders are Fast, the Raiders with Bloodlust on are Very Fast.
RoleUnit combat roles. Examples: Tank - Mountain Giant, Ranged - Archer, Anti-air - Hippogryph (these units' attacks that can target only air units usually have very high damage), Caster - Sorceress, Healer - Priest, Scout - Shade, Siege - Meat Wagon. An important thing to mention here is that Casters don't take weapon and armour upgrades, they have their own special three-tier caster upgrades, which are set up differently from other upgrades - they also require Text - Caster Upgrade Names and Tips and Art - Caster Upgrade Art to be set in the unit's properties and Stats - Class to be set to Caster in the properties of the caster upgrade in the Object Editor. The three-tier weapon and armour upgrades also need their Stats - Class to be set to either Armor, Melee, Ranged or Artillery. Other upgrades' Stats - Class should be set to None.
AttSpeedUnit attack speed. Examples: Acolyte - Slow, Abomination - Average, Ghoul - Fast, Ghoul with Bloodlust - Very Fast, Acolyte with Slow - Very Slow.
AbilTypeAbility types, pretty self-explanatory.
BuildingsBuilding types. Examples: Hall - Keep, Food - Farm, Upgrade - Blacksmith, Factory - Barracks, Tower - Guard Tower, Altar - Altar of Kings, Mine - Haunted Gold Mine. Note that Towers should be able to be used offensively too, in addition to defensively.
AIBuildPAI building placement type, manipulated via Pathing - AI Placement Type. Controls how and where the AI should build buildings. Gold mine buildings should be Resource, unit-training buildings (except the ones that only train flying units, they should be None) and altars should be Factory, town halls should be Hall, towers should be General, other buildings None.
TargetTarget types. Controls what a unit is targeted as, which targets a unit can target with its attack(s), and which targets an ability can target. These are manipulated via Combat - Targeted As, Combat - Attack # - Targets Allowed in the Object Editor of units, or Stats - Targets Allowed of abilities. They are pretty self-explanatory.
WeaponWeapon types. These are manipulated via Combat - Attack # - Weapon Type. Examples: Footman has Normal, Rifleman has Instant, Mortar Team has Artillery, upgraded Glaive Thrower has Artillery (Line), Archer has Missile, upgraded Huntress has Missile (Bounce), upgraded Gryphon Rider has Missile (Line), rooted Ancient Protector has Missile (Splash). Here's what they do:
  • "Normal" allows the use of Weapon Sounds but doesn't allow the use of projectile art or area splash damage.
  • "Artillery" allows the use of area splash damage and projectile art, and also gives the "Attack Ground" ability to the attacker. It does not allow the use of weapon sounds.
  • "Artillery (Line)" is used in combination with the "Vorpal Blades" ability and upgrade in order to create a line attack.
  • "Missile (Splash)" allows the use of area splash damage and projectile art. It does not allow the use of weapon sounds.
  • "Missile (Bounce)" is used in combination with the "Moon Glaive" ability and upgrade in order to create a bouncing attack.
  • "Missile (Line)" is used in combination with the "Storm Hammers" ability and upgrade in order to create a bouncing attack.
Quoted from: The Unit Editor Fields. Note that the units with the Missile weapon types will miss 25% of their attacks if attacking the units that are on higher ground than they are.
AttacksThe attacks the unit uses. Manipulated via Combat - Attacks Enabled in the Object Editor. It can be Attack 1 Only, Attack 2 Only, Both or None. Which attacks are enabled can be changed in-game via upgrades.
DeathWhat the unit does when it dies. Raise controls whether it can be raised, for example, via Raise Dead, or resurrected or not, Decay controls if its corpse will be there decaying after it dies. Examples: flying units and raised units Can't Raise, Do Not Decay, heroes, buildings and mechanical units Can't Raise, Do Decay, normal units Can Raise, Do Decay. There are probably no units that Can Raise, Don't Decay, since if they don't decay they can't be raised.
CollisionCollision size can be very important for a unit. It is manipulated via Pathing - Collision Size in the Object Editor and it should usually fit its size. Depending on the collision size, the unit may or may not be able to fit through tight spaces, and thus be able to escape the surrounding enemy troops which are trying to trap it between them, for example, or to more or less successfully block enemy troops from passing by it, or even block your own troops. Examples: Big collision size - Huntress, Small collision size - Archer. Buildings can have Small or Big collision size too, but their collision size is also affected by Pathing - Pathing Map. Pathing map is the green square you see before you place the building after you've selected it in the Build menu. Factory (that produce ground units), Altar and Hall-type buildings should have a really Big pathing map that surpasses the model size, since some space needs to be left for the units trained in them to exit the building, move freely around it and not to get stuck, and other buildings usually have Smaller pathing maps. The pathing map should also fit the actual size of the building model, otherwise the buildings could overlap and it wouldn't look good, if it is too small, and if it's too big, the base may require really much space to be built. If you want to create your own custom pathing maps, take a look at this tutorial: Custom Pathing Maps.
RegenHealth regeneration types. Manipulated via Stats - Hit Point Regeneration Type. It can be either None, Always, Only while on Blight, Only during the day, and Only during the night. Night Elf units, Blood Elf Archer campaign unit and Medivh have Only during the night, Undead units have Only while on Blight, while others usually have Always. Mechanical units don't regenerate health. Heroes always regenerate. Here, it can be seen that the environment can also be used on a strategic level when designing a race.
SightHow far a unit/building can see under certain circumstances. Manipulated via Stats - Sight Radius (Day) and (Night). A unit can either see more at night, more at day, always the same or it can be blind (0 sight radius). Units and buildings usually have less sight radius at night than they do at day. That's why it's better to scout at day and move troops at night. However, the Ultravision upgrade and the Glyph of Ultravision power-up item grant units the same night vision as their day vision. The Moonstone item can change day into night, and its ability can also be set to change the time of day to any time. Scouting and flying units usually have higher sight radius than other units. Towers usually have much higher day sight radius than other buildings. Blind units cannot be seen by the controlling player in the fog of war. Creep huts and tents are, for example, blind units.
Ability-related columns: Abilities, AbilType, Target, Range, Ranged, Melee
Unit-related columns: Armor, Attack, Range, Ranged, Melee, Class, MovType, Speed, Role, AttSpeed, Target, Weapon, Attacks, Death, Collision, Regen, Sight
Building-related columns: Armor, Buildings, AIBuildP, Target, Death, Collision, Sight (For towers also: Attack, Range, Ranged, Melee, AttSpeed, Weapon, Attacks)

Further explanation of ability types (the Abilities column of the table):

buffPositive effects which benefit a unit and stay on it for a certain time.
Example: Bloodlust
debuffNegative effects which stay on a unit for a certain time.
Example: Curse
dispelRemoves buffs and/or debuffs.
Example: Dispel Magic
invisbleMakes units invisible.
Example: Invisibility
detectDetects invisible units.
Example: Dust of Appearance
invulnerMakes units invulnerable.
Example: Divine Shield
resistMakes the unit resist certain spells, and reduces the duration of negative spells.
Example: Resistant Skin
immuneMakes the unit immune to all spells.
Example: Spell Immunity
disableStops the unit from performing any action for a certain amount of time.
Example: Cyclone
auraAn ability that passively affects all units around the bearer.
Example: Brilliance Aura
damageDeals damage.
Example: Firebolt
healRegenerates health.
Example: Heal
resurrectBrings a dead unit back to life.
Example: Ancestral Spirit
summonSummons a unit to fight for you.
Example: Summon Water Elemental
desummDamages summoned units specifically.
Example: Devour Magic
demanaDrains mana.
Example: Feedback
manaregRegenerates mana.
Example: Spirit Touch
controlTakes control of the enemy unit.
Example: Possession
siegeAffects specifically buildings.
Example: Corrosive Breath
antiairAffects specifically air units.
Example: Web
attmodAttack modifier - affects unit's attacks.
Example: Envenomed Spears
scoutingUsed to scout and spy on the enemy.
Example: Sentry Ward
transformTransforms the unit into some other unit or form. These abilities have a very useful strategic aspect, as they add a new role to a unit which can be used to adapt the unit to different situations, and you need to plan which of the unit forms to use, when and how.
Example: Metamorphosis
shapeshPermanent transform, a sub-class of transform.
Example: Bear Form
dotDamage over time, a sub-class of damage.
Example: Envenomed Spears
hotHeals over time, a sub-class of heal.
Example: Rejuvenation
speedIncreases attack/movement speed, can be a sub-class of buff.
Example: Bloodlust
slowDecreases attack/movement speed, can be a sub-class of debuff.
Example: Slow
missMakes the unit miss some of its attacks, can be a sub-class of debuff.
Example: Curse
evadeMakes the unit evade some of the attacks against it, can be a sub-class of buff.
Example: Evasion
teleportMoves the unit(s) from one place to another in an instant.
Example: Blink
critbashAttmod abilities with a percentage chance to be activated. A sub-class of attmod. Critical Strike and Bash are basically the same abilities - they are based off the same ability. If you give damage multiplier to Bash, it will show red numbers just like Crit does, and if you set Stats - Duration of Crit above 0, it stuns just like Bash does.
aoeAn ability that affects all units in a targeted area.
Example: Flame Strike
motManareg over time, a sub-class of manareg.
Example: Clarity Potion
dmotDemana over time, a sub-class of demana.
Example: Siphon Mana
channelAn ability which the caster channels for a certain amount of time.
Example: Life Drain
armorIncreases armour, can be a sub-class of buff.
Example: Devotion Aura
dearmorReduces armour, can be a sub-class of debuff.
Example: Faerie Fire
attspeedIncreases attack speed, a sub-class of speed.
Example: Bloodlust
attslowDecreases attack speed, a sub-class of slow.
Example: Slow
stunA disable that cannot be dispelled, a sub-class of disable. Achieved by adding one of the Stunned buffs to an ability and increasing its Stats - Duration to the wanted stun duration.
Example: Hurl Boulder
polyhexTransforms an enemy into a critter that can move, but can't do anything else. A sub-class of disable.
Example: Polymorph
sleepPuts the unit to sleep. The unit can be awaken by attacking it. Setting its Data - Stun Duration will make the unit be invulnerable for a set time. The invulnerability cannot be dispelled. A sub-class of disable.
Example: Sleep
defendReduces the movement and/or attack speed in exchange for a defensive effect.
Example: Defend
reflectReflects damage back to the attacker or deflects it.
Example: Spiked Barricades
callCalls units to the building for a defensive purpose.
Example: Battle Stations
pillageSteals resources by attacking buildings. How much is gained depends on the cost of the building.
Example: Pillage
debuildDestroys/unsummons your own building usually for a partial resource refund.
Example: Unsummon Building
blightCreates blight.
Example: Sacrificial Skull
deblightRemoves blight, usually when a non-undead building is built on blight.
Example: Blight Dispel Small
sacrificeSacrifices a unit for a beneficial effect.
Example: Dark Ritual
corpseAny ability that has anything to do with corpses.
Example: Exhume Corpses
dmgredReduces received damage.
Example: Hardened Skin
magredReduces received magic damage.
Example: Elune's Grace
commandBasic commands that most units have, and certain more specific ones, like Build, Select User, Load and Unload.
Example: Attack
specSpecialised abilities which only affect certain types of units or which only work in certain situations.
Examples: Death Coil, Shadowmeld
miscMiscellaneous abilities that don't fall under any other category.
Example: Moonstone

The importance of these mechanics:

These advanced mechanics are not only useful for the reasons mentioned in the seven main principles of custom race creation (see above), but also for other things.
For example, if your race doesn't have any healing method, its units become useless after being significantly damaged, and you can only kill them then to free up food to make new ones, since the passive health regeneration is negligible. Another good example would be Town Portal Scroll. If there weren't for it, players wouldn't be able to defend their base while on attack, and they would be discouraged from attacking and behave much more passively and defensively.
When the race's units are lacking some of the more important mechanics or roles, they are usually compensated for in the race's items, summoned units, transforms and/or wards.
The ability types in the table are listed roughly from the most common in the four base races, to the more specific ones, with the two lines representing more important divisions.
Ultimately, it depends on the type of your map and your own liking what you will do and won't do.


Unit examination:

Now, when the unit/ability customisation has been covered, we can take a look at how the four base races of Warcraft 3 are structured. In these screenshots the units of each race are arranged into columns based on certain traits they share, though they don't need to be strictly limited to those traits:

Heroes and wards:
Screenshot_6.png
1st columnHeroes with healing abilities. Not strictly limited only to the role of healing.
2nd columnRanged damage-based heroes. Not strictly limited only to that role.
3rd columnManipulative melee (except Blood Mage) damage-based heroes. Not strictly limited only to that role.
4th columnTanks. Not strictly limited only to that role.
Units and summoned units:
Screenshot_5.png
1st columnWorkers.
2nd columnInvulnerable and invisible units. Good for scouting.
3rd columnCasters with debuff abilities. Not strictly limited to that role.
4th columnMagic/attack immune/resistant units. Obsidian Destroyer and Faerie Dragon also fit here.
5th columnHealers.
6th columnHigh-end melee units - good tanks. Infernal can fit here too.
7th columnSiege units.
8th columnNormal melee units. Huntress fits here because she has really low range and can tank.
9th columnNormal ranged units.
10th columnNormal flying units. Phoenix fits here too.
11th columnFlying casters - they mostly rely on their abilities.
12th columnAnti-air flying units. Excellent scouts. Dragonhawk Rider and Troll Batrider also fit here as they have anti-air abilities.

AI - common issues:

- AI doesn't attack properly:
Look at this tutorial - Tutorial: The WC3 AI Editor - Wc3C.net - under "IV. Attacking Tab" how to properly set up the AI attacking. Also make sure you have no workers in your attack groups and that "Have No Mercy" is ticked in the AI properties.
- AI makes extra buildings: If that happens with upgrading buildings, take a look at this in order to fix it: [Solved] - AI builds additional lower upgrade level buildings after they have been upgraded. The problem is that AI doesn't detect the upgraded buildings as another version of the unapgraded ones, and it builds extra unapgraded buildings, because they are in the building queue too.
- AI gets stuck somewhere along the building queue: Check if the units in the building queue don't surpass the food limit at any point, and add extra food buildings where necessary. If you have units that transform, you might want to leave some extra food space, since the AI doesn't detect transformed units as another version of the base unit, and builds extra untransformed units, because they are in the building queue still. You could also try adding the transformed unit to the Techtree - Dependency Equivalents of the untransformed unit. This hasn't been proven to work, though, and if it works, it works only for units, and not for buildings. Another thing that can cause this problem is if you didn't take into account the requirements for something to be built. If all the requirements aren't built/researched before, the AI won't be able to build/research that thing and it will not be able to progress further down the building queue. Finally, this issue can also occur when there is no space for the AI to build buildings.
- AI lags the game: That can happen if the AI attack route is blocked by something. Try unclogging the attack routes on your map, or creating a normal ground attack route if none such exist. However, if you want to improvise, there is no easy workaround for this problem. For more info see: AI lags the game when it doesn't have a proper attack route.


And that's it. Enjoy!
 

Attachments

  • Table.zip
    8.2 KB · Views: 178
  • TestingGrounds.w3x
    54.2 KB · Views: 253
Last edited:
Level 35
Joined
Jul 29, 2008
Messages
8,711
Aw man! You beat me to it... Obviously gonna post to subscribe, but I'm going back to read it & will Edit.

//EDIT1// - OK, dang, yeah, you did (for the most part) do everything I wanted to do. Pooh.

Well, for the most part I'm a huge fan; it's (almost) all there, and you really cover lots of good material. Mostly, I'd just say you should consider reformatting parts for clarity, ease-of-reading, and organization; take, for example, the "first row - headings" section; each of those sections could really be better put into a Table or something. Saves you words & marks it off.

Also, I'd say the abilities (in your spreadsheet) should just be written all the way out. I'm also kinda worried about overlap; not that you have any, but that you *should* have some. How "similar" should an ability be to be combined on your chart? Critical Strike & Bash are pretty different in my mind, for example.

Really good work collating all that information, though. And all those other tutorials. A great 'one-stop shop'.
 
Last edited:
Level 12
Joined
Sep 6, 2015
Messages
580
Thanks for the feedback, I'll see what I can do to improve it. The tutorial isn't finished yet, so I'll still make quite a few changes and also add the parts currently marked as Incoming.
Also, I'd say the abilities (in your spreadsheet) should just be written all the way out. I'm also kinda worried about overlap; not that you have any, but that you *should* have some. How "similar" should an ability be to be combined on your chart? Critical Strike & Bash are pretty different in my mind, for example.
I'm gonna explain and write the full names in the post anyway. I may write them in the table too if I find it convenient.
That table in no sense represents all the nuances of all abilities, it's there just like a rough estimate of their types.
 
Level 12
Joined
Sep 6, 2015
Messages
580
Reeeeeaaaally?
Yes, tested and confirmed.
Also of note: Spiked Carapace can reduce damage taken as well, actually.
Yes, I know. Actually, many abilities in the table belong to multiple categories. For example, Defend can go into dmgred, and reflect categories too in addition to the defend category. As I wrote above:
One ability can have more than one tag. For example, Brilliance Aura is +aura +mot (mana over time).
abilities can have more than one tag on them. If I had wanted them all to be "pure" abilities that belong only to one category, I would've put Spiked Barricades there instead. But then, not all of the fields have one of those "pure" abilities, like, for example, the defend and aura categories which I've already mentioned. That's just an examplar ability which has the quality of reflection, and which can take the reflect tag.
 
Level 35
Joined
Jul 29, 2008
Messages
8,711
Yes, tested and confirmed.
Wow, cool. Not ultimately useful (except rarely), but cool.

Alok said:
Yes, I know. Actually, many abilities in the table belong to multiple categories. For example, Defend can go into dmgred, and reflect categories too in addition to the defend category. As I wrote above:
abilities can have more than one tag on them. If I had wanted them all to be "pure" abilities that belong only to one category, I would've put Spiked Barricades there instead. But then, not all of the fields have one of those "pure" abilities, like, for example, the defend and aura categories which I've already mentioned. That's just an examplar ability which has the quality of reflection, and which can take the reflect tag.
Oh sure. I just thought your example was a "pure" example. It's fine that it's not.
 

PurgeandFire

Spell Moderator
Level 43
Joined
Nov 11, 2006
Messages
7,501
This is a great guide! I love how comprehensive it is. And the fact that you center it around a set of principles makes it easier to learn and remember.

I feel like this is a testament to just how well Warcraft 3 units were designed. I particularly liked that you mentioned how counters/weaknesses are significant and how each unit has a role, and should have some reason to be chosen over another (e.g. footman vs knight).

If I were designing a race, I'd definitely check back on this. Great job. Approved.

P.S. Regarding the screenshot for "units and summoned units - part 2", it is a bit difficult to tell the columns in that one. Might be better with an aerial camera (angle of attack set to 270). But I think people will get the gist, so you don't need to change it unless you really want to.
 
Level 12
Joined
Sep 6, 2015
Messages
580
This is a great guide! I love how comprehensive it is. And the fact that you center it around a set of principles makes it easier to learn and remember.

I feel like this is a testament to just how well Warcraft 3 units were designed. I particularly liked that you mentioned how counters/weaknesses are significant and how each unit has a role, and should have some reason to be chosen over another (e.g. footman vs knight).

If I were designing a race, I'd definitely check back on this. Great job. Approved.

P.S. Regarding the screenshot for "units and summoned units - part 2", it is a bit difficult to tell the columns in that one. Might be better with an aerial camera (angle of attack set to 270). But I think people will get the gist, so you don't need to change it unless you really want to.
Thank you very much.

I might change the screenshots. I wanted to change them before because of some of the errors I made, but never got to it.
 
Level 35
Joined
Jul 29, 2008
Messages
8,711
So have you more or less finished this? I've read through it IIRC, but I can't tell where you've edited in additional stuff.

Also, you may want to consider 'cleaning up' those test map images; right now it only barely makes sense, even with the key. The first necessity should be getting it all in one image; simply zoom out in the WE sufficiently (we can all open the image in a new tab & then zoom in as we wish; and at this point, I think we all know the unit's silhouettes). I'd also suggest doing some terraining; all plain dirt with perhaps grass or rock making a line of grids // heck, what am I talking about. Just use the grid feature in WE; take a WE screenshot instead of an in-game one. Same deal, though; should be able to get it all in one, maaaaybe two images.
 
Level 12
Joined
Sep 6, 2015
Messages
580
So have you more or less finished this? I've read through it IIRC, but I can't tell where you've edited in additional stuff.

Also, you may want to consider 'cleaning up' those test map images; right now it only barely makes sense, even with the key. The first necessity should be getting it all in one image; simply zoom out in the WE sufficiently (we can all open the image in a new tab & then zoom in as we wish; and at this point, I think we all know the unit's silhouettes). I'd also suggest doing some terraining; all plain dirt with perhaps grass or rock making a line of grids // heck, what am I talking about. Just use the grid feature in WE; take a WE screenshot instead of an in-game one. Same deal, though; should be able to get it all in one, maaaaybe two images.
This is basically finished. I may add or change a thing or two here or there, but it is officially finished.
I've changed the screenshots and updated the key accordingly, and made some other changes and additions.
 
Level 35
Joined
Jul 29, 2008
Messages
8,711
This is basically finished. I may add or change a thing or two here or there, but it is officially finished.
Cool! I'll be sure to link to it in my comprehensive "race-making" guide.

xD

Alok said:
I've changed the screenshots and updated the key accordingly, and made some other changes and additions.


Noice; interesting choice, going completely top-down. Though, I should've been more specific; I think you could still benefit from some more space between the units (like, actually being able to differentiate them), whether that means "more than one square per section" and/or "more space between filled squares", i.e. buffer zones... But I'm probably just being picky.
 
Top