- Joined
- Dec 3, 2008
- Messages
- 189
Hi and welcome to my Maze-Tutorial. In this tutorial you will learn how to make a succesfull maze. Of course you don't learn all triggers you could use in it, but I will show you the basics of it...
Content:
1. What's a Maze?
2. Making the terrain
3. Triggers
3.1 Off-Path dying-trigger
3.2 Patroling-trigger
3.3 Shooting-trigger
3.4 Die by touching enemys-trigger
3.5 Revive at checkpoint-trigger
4. The End
A Maze is a custom map, in which you mostly have to follow a provided path without touching the ground or enemys. Often you control a hero with has good speed and is agile. Very often, this is the classic Night-Elven Demonhunter. On the path there are patroling units which kill you if you touch them. So you have to AVOID touching them
Then often you have units like mortars who shoot at the path so that you have to have good timing if you don't want to run in the shot. Mostly the mortars have so much damage, that they kill you with one shot. At least you often have checkpoints after each "Level" of the Maze. If you reach it, normally all heroes will be revived there. Sometimes you have continues so if all of you die you restart at last checkpoint until you have no more continues...
Here I show you a mini-map of a Maze (Polar Escape by LimiteR):
Ok, now you know what a Maze is. Hurry and have a look on the next step
The terrain of a Maze is very important. It shouldn't be too boring (e.g. only darkness) but it also shouldn't have every terrain-type next to each other (e.g. grass next to snow next to dirt and so on). Of course if you want to make a Maze like "World of Maze" or something like this you could or should use many terrain-types, but the players should know where they are safe and where they die...
Here I will show you a good terrain-type:
You see that its clear where you can walk and where you die. The grass is safe but the earth is deadly. So you have to walk carefully on the grass. Next I will show you a terrain thats not good:
Nobody will understand which terrain-type kills and which is safe. Maybe more than one type will kill? The players will have to try it out which costs them a continue or some heroes. Would be a bad start for your Maze. And I think you don't want to tell them in fact which ground kills and which is safe. They should understand it on their own, so: Keep it clear!
Triggers are very important in a Maze (like in 99.9% of all custom maps^^).
Kill the heroes if they come in range with an enemy or kill them if they go off of path. All this will be shown in the next steps...
This trigger you really need in ALL kinds of Mazes. If players touch the ground which they should avoid of touching: They DIE!
Making this is a very easy trigger but it will be shown here, though:
(The easiest way is to make it with regions. Make regions where the heroes should die)
In a Maze you have units which patrol on specific points on the map. Often they are controlled by Player 12 (Brown), but it can be whatever you want until its an ENEMY of all players. Also the units should be controlled by the Computer.
Now I'll show you the patroling-trigger:
(The enemys which patrol should ALL be invulnerable. Just go to Object-Editor [F6] and give them the "Invulnerable(Neutral)" ability)
The shooting-trigger is needed if you want to make mortars or other splash-attack units to shoot on the ground so that its a obstacle for players. You can make the units shooting permanently or shoot at specific events. (e.g. a unit enters a region)
Thats maybe the most important trigger after dying by touching forbidden terrain. You have to make that if a player's unit touchs an enemy's unit, the player's unit dies. This is a trigger which you have to make for each player.
It will look like this:
Also a very important trigger is the revive at checkpoint-trigger. In this trigger you make sure, if a player reaches a new checkpoint, all living heroes will die, and ALL heroes will respawn at the new checkpoint. For this trigger we need three variables:
Playing_Players - Real-Variable (No array, start-value[Number of maximal players])
Hero_Count - Real-Variable (No array, start-value[Number of Players/Heroes)
Continues - Real-Variable (No array, start-value[Number of continues you want to give the players]
You open the variable-editor by clicking on the big "X" in the Trigger-Editor [F4]. The following trigger will set the Playing_Player variable to the number of currently playing players . Let's say in your Maze can play 8 Players. Then your trigger looks like this:
(And you REMOVE their hero)
This trigger you make for each player. Now we come to the last trigger, the reviving at checkpoints. After we made the last triggers this can be easily done:
Congratulations!!!
You have made it through this tutorial (finally ) and you know the basics about making a Maze now. Now you can make any triggers that make difficulties for the players. Your creativity is needed here. Experiment with triggers who create units, make obstacles and so on. Nothing is forbidden!
But in the end, I would give you some more tips:
1. Don't make the levels TOO long. Nobody wants to play an endless level!
2. Don't forget to make many checkpoints if your Maze is hard. Anyways, do as many checkpoints as levels you have.
3. Think of fun! Don't make endless circles of path which patrolers on it. Think of new triggers which makes the game interesting (If you need some of them, you could also leave a comment or send me a message...)
4. Have fun by making your Mazes!!!
(I hope this tutorial could help you. If you have suggestions post me )
Content:
1. What's a Maze?
2. Making the terrain
3. Triggers
3.1 Off-Path dying-trigger
3.2 Patroling-trigger
3.3 Shooting-trigger
3.4 Die by touching enemys-trigger
3.5 Revive at checkpoint-trigger
4. The End
1. What's a Maze?
A Maze is a custom map, in which you mostly have to follow a provided path without touching the ground or enemys. Often you control a hero with has good speed and is agile. Very often, this is the classic Night-Elven Demonhunter. On the path there are patroling units which kill you if you touch them. So you have to AVOID touching them
Then often you have units like mortars who shoot at the path so that you have to have good timing if you don't want to run in the shot. Mostly the mortars have so much damage, that they kill you with one shot. At least you often have checkpoints after each "Level" of the Maze. If you reach it, normally all heroes will be revived there. Sometimes you have continues so if all of you die you restart at last checkpoint until you have no more continues...
Here I show you a mini-map of a Maze (Polar Escape by LimiteR):
Ok, now you know what a Maze is. Hurry and have a look on the next step
2. Making the Terrain
The terrain of a Maze is very important. It shouldn't be too boring (e.g. only darkness) but it also shouldn't have every terrain-type next to each other (e.g. grass next to snow next to dirt and so on). Of course if you want to make a Maze like "World of Maze" or something like this you could or should use many terrain-types, but the players should know where they are safe and where they die...
Here I will show you a good terrain-type:
You see that its clear where you can walk and where you die. The grass is safe but the earth is deadly. So you have to walk carefully on the grass. Next I will show you a terrain thats not good:
Nobody will understand which terrain-type kills and which is safe. Maybe more than one type will kill? The players will have to try it out which costs them a continue or some heroes. Would be a bad start for your Maze. And I think you don't want to tell them in fact which ground kills and which is safe. They should understand it on their own, so: Keep it clear!
3. Triggers
Triggers are very important in a Maze (like in 99.9% of all custom maps^^).
Kill the heroes if they come in range with an enemy or kill them if they go off of path. All this will be shown in the next steps...
3.1 Off-Path killing-trigger
This trigger you really need in ALL kinds of Mazes. If players touch the ground which they should avoid of touching: They DIE!
Making this is a very easy trigger but it will be shown here, though:
(The easiest way is to make it with regions. Make regions where the heroes should die)
-
Off Path
-
Events
- Unit - A Unit enters <DeathRegion1>
- Unit - A Unit enters <DeathRegion2>
- Unit - A Unit enters <DeathRegion3>
-
Conditions
- (Unit-Type of (Triggering-Unit)) equals to <[YourPlayerHeroes]>
-
Actions
- Kill <TriggeringUnit>
-
Events
3.2 Patroling-trigger
In a Maze you have units which patrol on specific points on the map. Often they are controlled by Player 12 (Brown), but it can be whatever you want until its an ENEMY of all players. Also the units should be controlled by the Computer.
Now I'll show you the patroling-trigger:
(The enemys which patrol should ALL be invulnerable. Just go to Object-Editor [F6] and give them the "Invulnerable(Neutral)" ability)
-
Patrol 1
-
Events
- Game - Initialization
- Conditions
-
Actions
- Unit - Order <A_Unit> to <Patrol> to <OnePatrolingRegion>
-
Events
3.3 Shooting-trigger
The shooting-trigger is needed if you want to make mortars or other splash-attack units to shoot on the ground so that its a obstacle for players. You can make the units shooting permanently or shoot at specific events. (e.g. a unit enters a region)
-
Shots
-
Events
- Time - Periodic Time Event - (Every (4 seconds) of game time)
- Conditions
-
Actions
- Unit - Order <Mortar_1> Targeting <ShootRegion_1>
-
Events
3.4 Die on touching enemys-trigger
Thats maybe the most important trigger after dying by touching forbidden terrain. You have to make that if a player's unit touchs an enemy's unit, the player's unit dies. This is a trigger which you have to make for each player.
It will look like this:
-
Touch_Enemys_Red
-
Events
- Unit - A Unit comes withing <75> of <Reds_Hero>
-
Conditions
- (Owner of (Triggering-Unit)) equals to <Enemy[Player12]>
-
Actions
- Unit - Kill <Reds_Hero>
-
Events
3.5 Revive at checkpoint-trigger
Also a very important trigger is the revive at checkpoint-trigger. In this trigger you make sure, if a player reaches a new checkpoint, all living heroes will die, and ALL heroes will respawn at the new checkpoint. For this trigger we need three variables:
Playing_Players - Real-Variable (No array, start-value[Number of maximal players])
Hero_Count - Real-Variable (No array, start-value[Number of Players/Heroes)
Continues - Real-Variable (No array, start-value[Number of continues you want to give the players]
You open the variable-editor by clicking on the big "X" in the Trigger-Editor [F4]. The following trigger will set the Playing_Player variable to the number of currently playing players . Let's say in your Maze can play 8 Players. Then your trigger looks like this:
-
Number_of_Players
-
Events
- Time - Elapsed game-time equal to <0.01> seconds
- Conditions
-
Actions
-
For each (Integer A) from 1 to <number of players>
-
Do - Actions
- If/Then/Else - If Player(Integer A) slot status doesn't equal to <Playing> then do <Variable - Set Playing_Players = (Playing_Players) - 1
-
Do - Actions
-
For each (Integer A) from 1 to <number of players>
-
Events
(And you REMOVE their hero)
-
Player_1_Leaves
-
Events
- Player - player leaves game
- Conditions
-
Actions
- Variable - Set Playing_Players = (Playing_Players) - 1
- Unit - Remove (Reds_Hero) from the game
-
Events
-
Hero_Count_Reaches_0
-
Events
- Game - Value of Hero_Count becomes = 0
- Conditions
-
Actions
-
If/Then/Else
-
If - conditions
- If (Continues) bigger than 0
-
Then - actions
- Hero - Revive (Red's_Hero) instantly at (LastCheckpointReached)
- Hero - Revive (Blue's_hero) instanty at (LastCheckpointReached)
- -------- etc --------
-
Else - Actions
-
For integer a from 1 to <number of players>
- Game - Defeat Player(Integer A) with the message (Your_Message)
-
For integer a from 1 to <number of players>
-
If - conditions
-
If/Then/Else
-
Events
-
Red_Hero_Dies
-
Events
- Unit - (Reds_Hero) dies
- Conditions
-
Actions
- Variable - Set Hero_Count = Hero_Count - 1
-
Events
This trigger you make for each player. Now we come to the last trigger, the reviving at checkpoints. After we made the last triggers this can be easily done:
-
Checkpoint_1
-
Events
- Unit - Unit enters <Checkpoint_1>
-
Conditions
- (Unit-type of (Triggering-Unit)) equals to (YourHeroType[e.g.Demonhunter])
-
Actions
- Unit-Group - Pick every unit in (Units of type YourHeroType) and do (Kill - Picked Unit)
- Wait 1 second
- Hero - Revive (Reds_Hero) instantly at <Checkpoint_1>
- Hero - Revive (Blues_Hero) instantly at <Checkpoint_1>
- -------- //[Do this for all heroes]\\ --------
- Variable - Set Hero_Count = Playing_Players
-
Events
4. The End
Congratulations!!!
You have made it through this tutorial (finally ) and you know the basics about making a Maze now. Now you can make any triggers that make difficulties for the players. Your creativity is needed here. Experiment with triggers who create units, make obstacles and so on. Nothing is forbidden!
But in the end, I would give you some more tips:
1. Don't make the levels TOO long. Nobody wants to play an endless level!
2. Don't forget to make many checkpoints if your Maze is hard. Anyways, do as many checkpoints as levels you have.
3. Think of fun! Don't make endless circles of path which patrolers on it. Think of new triggers which makes the game interesting (If you need some of them, you could also leave a comment or send me a message...)
4. Have fun by making your Mazes!!!
(I hope this tutorial could help you. If you have suggestions post me )
Last edited by a moderator: