Tutorial Continues

n[u]ll

You can change this now in User CP.
Reaction score
93
Thanks to Amfidant's Tutorial Index


Welcome to...
Continues
(And other ideas for the advancing maze maker)
Work in Progress


In this (lets call it a guide), I will be showing you a few ways to "spice" up your mazes. :D
Now, think of a great maze that you love. Chances are this maze has some of the stuff we are about to go over in this guide... So, sit up, eyes straight, and uhh, don't get too bored xD.



First things first:
Continues

Continues are a great way to add more fun to your map, or make it easier. Continues (also called lives, chances, re-do's, etc...) are basically just a system of usually 3 triggers that allows the player(s) to give another go at the check point he/she/they were on when they all died. The number of continues left are usually shown inside either a Leaderboard or Multiboard (shown below). Now without further a'do I present to you, the very simple steps towards making your very own continue system.

First we will set up the variables. Press CTRL + B inside the Trigger Editor
Here are the variables we will use... (along with a link to show what they should look like inside the Variables Dialog.
http://i170.photobucket.com/albums/u244/JaKe-777/TH Tut/LB_V.jpg

Now we will set our heros (or runners). To do this we will make a trigger that looks like this,
Code:
Set Heros
    Events
        Map initialization
    Conditions
    Actions
        Set Hero[1] = Demon Hunter 0001 <gen>
        Set Hero[2] = Demon Hunter 0002 <gen>
        Set Hero[3] = Demon Hunter 0003 <gen>
        Set Hero[4] = Demon Hunter 0004 <gen>
        Set Hero[5] = Demon Hunter 0005 <gen>
and so on...

This will make it easier to referr to the units in the future. (For more info on using variable arrays visit Laika.'s tutorial)

Now we can get to the good stuff...

This is one thing I love to do. I will let the host (to learn how to find the host visit this link) decide how many continues he/she wants. This is the trigger that will do all that for me:
Code:
Show Dialog
    Events
        Time - Elapsed game time is 1.00 seconds
    Conditions
    Actions
        Dialog - Create a dialog button for Dialog labelled |CFF20C000Easy|r - (|CFF0042FF5|r)
        Set Dialog_button[1] = (Last created dialog Button)
        Dialog - Create a dialog button for Dialog labelled |CFFFE8A0EMedium|r - (|CFF0042FF3|r)
        Set Dialog_button[2] = (Last created dialog Button)
        Dialog - Create a dialog button for Dialog labelled |CFFFFFC00Hard|r - (|CFF0042FF1|r)
        Set Dialog_button[3] = (Last created dialog Button)
        Dialog - Create a dialog button for Dialog labelled |cffff0303Expert|r - (|CFF0042FF0|r)
        Set Dialog_button[4] = (Last created dialog Button)
        Dialog - Change the title of Dialog to |cffff0303Continues|r
        Dialog - Show Dialog for Host
PHP:
Dialog - Create a dialog button for Dialog labelled...
This basically makes a Dialog button for the Dialog that is to be shown.
PHP:
Set Dialog_button[#] = (Last created dialog Button)
Allows you to referr to that in the next trigger that we shall make.
PHP:
Dialog - Show Dialog for Host
This shows the dialog for the host of the game (if you didn't do the tutorial above, then just change host to player 1).
(If you are wondering what the |CFF..'s are then visit this tutorial by the lovely Pineapple xD)

Next we will check the amount the host wants to set it to.
Code:
Pick Dialog
    Events
        Dialog - A dialog button is clicked for Dialog
    Conditions
    Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                (Clicked dialog button) Equal to Dialog_button[1]
            Then - Actions
                Set Continues = 5
            Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                (Clicked dialog button) Equal to Dialog_button[2]
            Then - Actions
                Set Continues = 3
            Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                (Clicked dialog button) Equal to Dialog_button[3]
            Then - Actions
                Set Continues = 1
            Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                (Clicked dialog button) Equal to Dialog_button[4]
            Then - Actions
                Set Continues = 0
            Else - Actions
        Leaderboard - Create a leaderboard for (All players) titled ((|CFF1CE6B9 + ((String(Continues)) + |r )) + Continues Left)
        Set Leaderboard = (Last created leaderboard)
        Leaderboard - Show Leaderboard
If (All Conditions are True) then do (Then Actions) else do (Else Actions)

PHP:
If - Conditions (Clicked dialog button) Equal to Dialog_button[1] Then - Actions Set Continues = 5 Else - Actions
In english this is saying,
PHP:
If the host clicks the dialog button that was set to the variable Dialog_button[1] then give them 5 continues if not don't do anything.

PHP:
Leaderboard - Create a leaderboard for (All players) titled ((|CFF1CE6B9 + ((String(Continues)) + |r )) + Continues Left)
This creates a leaderboard that says # Continues Left (# referrs to the number of continues).

Next we make this simple trigger,
Code:
Set Board
    Events
    Conditions
    Actions
        Leaderboard - Change the title of Leaderboard to (|CFF1CE6B9 + ((String(Continues)) + (|r  + Continues Left)))
When this is used later on it will basically update the leaderboard, thats all.


Note: Inside all the checkpoint triggers at the beginning put
Code:
Trigger - Turn off Revive <gen>
then at the end put
Code:
Trigger - Turn on Revive <gen>


Now for the revive trigger...
Code:
Revive
    Events
        Time - Every 1.00 seconds of game time
    Conditions
        Continues Greater than or equal to 1
    Actions
        For each (Integer A) from 1 to 11, do (Actions)
            Loop - Actions
                If ((Hero[(Integer A)] is dead) Equal to True) then do (Do nothing) else do (Skip remaining actions)
        Trigger - Turn off (This trigger)
        Trigger - Turn off Defeat <gen>
        Set Continues = (Continues - 1)
        Trigger - Run Set Board <gen> (ignoring conditions)
        Player Group - Pick every player in (All players) and do (Camera - Pan camera for (Picked player) to (Center of checkpoint) over 1.25 seconds)
        Wait 1.25 seconds
        For each (Integer A) from 1 to 11, do (Actions)
            Loop - Actions
                Hero - Instantly revive Hero[(Integer A)] at (Random point in checkpoint), Hide revival graphics
        For each (Integer A) from 1 to 11, do (Actions)
            Loop - Actions
                Unit - Set mana of Hero[(Integer A)] to 100.00%
                Selection - Select Hero[(Integer A)] for (Player((Integer A)))
        Trigger - Turn on Defeat <gen>
        Trigger - Turn on (This trigger)
PHP:
For each (Integer A) from 1 to 11, do (Actions) Loop - Actions If ((Hero[(Integer A)] is dead) Equal to True) then do (Do nothing) else do (Skip remaining actions)
this is were we start using the Hero variable. This checks if every hero from 1 to 11 (change the 11 to the max number of players in your game) is dead, if they are then it will proceed with the trigger.
PHP:
Set Continues = (Continues - 1)
basically takes 1 continue away.
PHP:
Player Group - Pick every player in (All players) and do (Camera - Pan camera for (Picked player) to (Center of checkpoint) over 1.25 seconds)
this moves the camera to the center of the place the units are being revived at.
PHP:
Hero - Instantly revive Hero[(Integer A)] at (Random point in checkpoint), Hide revival graphics
This revives the units at random points in the designated regions.
PHP:
Unit - Set mana of Hero[(Integer A)] to 100.00%
Selection - Select Hero[(Integer A)] for (Player((Integer A)))
This sets all their mana to 100% and auto-selects the hero for the player.


Shops

Shops can also add more to your maze. As I'm sure many of you already know, a shop is basically a unit that can sell things, and pawn things for that matter. Shall you decide to make a shop here are some pointers:

Placement
First off, never place a shop where a unit can't reach without going off the path. Second, don't place shops in the middle of a level, it just isn't a good idea. Try placing them at the beginning of check points.


Items Sold
Putting an item that has nothing to do with mazing, such as ensnare, is just redundant. Put things like, potion of speed, pendant of energy, boots of speed and so on... Also, it's never a bad idea to make your own items, so keep that in mind.


Gold Distribution
Theres no point to having a store if the player can't buy anything for he/she doesn't have any gold. So here are some ideas of how to distribute gold:

You can distribute gold to each player periodically,
Code:
Distribute
    Events
        Time - Every 15.00 seconds of game time
    Conditions
    Actions
        For each (Integer A) from 1 to 11, do (Actions)
            Loop - Actions
                If ((Hero[(Integer A)] is alive) Equal to True) then do (Player - Add 50 to (Player((Integer A))) Current gold) else do (Do nothing)
This will check every 15 seconds if any runners are alive, and if it is it will add 50 gold to the corresponding player.

You may also give gold to each player when they reach a check point. To do this simply add this action to each check point trigger that you have...
Code:
Player Group - Pick every player in (All players) and do (Player - Add 150 to (Picked player) Current gold)
This will add 150 gold to every player in the game.


Secrets and Bonuses
Secrets and Bonuses are great ways to add twists and challenges to your maze. I won't go over much of these only because you should be creative shall you add a secret or a bonus to your map.
I will start off explaining Secrets:

Secrets
Secrets (as well as bonuses) can be in many shapes and forms. So to start off I will explain the basics of a secret. Secrets are usually a player-triggered event in which something in the players favor happens. For instance, a secret could be that a player types "-iwantgold" and he/she will get 1000 gold in return. Now, secrets usually aren't that obvious. But they can be if you want :D


Bonuses
Bonuses are usually obvious things, but hard to get. For instance, lets say your just mazing along and then you come across a split in the path, you look down one path and see that it takes you to the next check point. However, when looking down the other path, you notice that it leads to a dead end with tomes and other such "goodies". But the path to get there is rittled with treacherous units, and it seems impossible to get through. Things like that are basically what bonuses are.

And thats the rundown for ya on Secrets and Bonuses.

Thats all for now, when I get more ideas I'll get back to ya later. Leave comments and/or +rep! =)
 

Ghan

Administrator - Servers are fun
Staff member
Reaction score
889
This should probably go in the Tutorials, Spells, and Trigger Code section.

Anyway, I've never made a maze before, but I've heard a lot about them. This looks like it would be good for both first-time mazers or returning mappers. It is a Work in Progress, but so far it looks good.
 

~GaLs~

† Ғσſ ŧħə ѕαĸε Φƒ ~Ğ䣚~ †
Reaction score
180
Eh null...i had played a maze map like it must follow the camera bound moving...if the unit leaves the camera bound..it dies -_-''

I found this type system is quite fun...but how to make it..?
---------------------------------
You have got your thread in wrong section
 

waaaks!

Zinctified
Reaction score
256
i think this thread is 50% in the right section and 50% in the wrong section, because most of the time ppl that submitt tutorials always show their post in WE so that ppl can judge and later on mods will approve the tut...

the tut is quite nice, but theres something you lack, its hard to explain, because im already sleepy too...
 

n[u]ll

You can change this now in User CP.
Reaction score
93
Well, thx for the comments i'll add more later today.:D

>I found this type system is quite fun...but how to make it..?
hmm that does sound cool. Ill work on that right now.

>You have got your thread in wrong section
I put it here 'cause more people will critique it and i'll know what to fix.
 

elmstfreddie

The Finglonger
Reaction score
203
Good to see you back nll, I haven't seen you in awhile o_o

Good tutorial.
I thought continues were basic, but I've met a lot of people that didn't know how to do them :banghead: so it's a good thing you made this.
+rep?!
 

Sim

Forum Administrator
Staff member
Reaction score
534
> I put it here 'cause more people will critique it and i'll know what to fix.

If a thread belongs somewhere, you need to create it there. Moved. Next time, create it where it belongs.
 
P

Palumir

Guest
Err

The continues don't work, the dialog and everything does, but when you die nothing happens. Would anyone help? I really want continues of my map.. my MSN is [email protected] and AIM is Andrewjenkins11. Anyone come to my rescue?
 

n[u]ll

You can change this now in User CP.
Reaction score
93
The continues don't work, the dialog and everything does, but when you die nothing happens. Would anyone help? I really want continues of my map.. my MSN is [email protected] and AIM is Andrewjenkins11. Anyone come to my rescue?

Make sure you added the Hero variable (Unit Array). It should work though.

Edit - Oh he's just a visitor :p
 
General chit-chat
Help Users
  • No one is chatting at the moment.
  • Ghan Ghan:
    Still lurking
    +3
  • The Helper The Helper:
    I am great and it is fantastic to see you my friend!
    +1
  • The Helper The Helper:
    If you are new to the site please check out the Recipe and Food Forum https://www.thehelper.net/forums/recipes-and-food.220/
  • Monovertex Monovertex:
    How come you're so into recipes lately? Never saw this much interest in this topic in the old days of TH.net
  • Monovertex Monovertex:
    Hmm, how do I change my signature?
  • tom_mai78101 tom_mai78101:
    Signatures can be edit in your account profile. As for the old stuffs, I'm thinking it's because Blizzard is now under Microsoft, and because of Microsoft Xbox going the way it is, it's dreadful.
  • The Helper The Helper:
    I am not big on the recipes I am just promoting them - I use the site as a practice place promoting stuff
    +2
  • Monovertex Monovertex:
    @tom_mai78101 I must be blind. If I go on my profile I don't see any area to edit the signature; If I go to account details (settings) I don't see any signature area either.
  • The Helper The Helper:
    You can get there if you click the bell icon (alerts) and choose preferences from the bottom, signature will be in the menu on the left there https://www.thehelper.net/account/preferences
  • The Helper The Helper:
    I think I need to split the Sci/Tech news forum into 2 one for Science and one for Tech but I am hating all the moving of posts I would have to do
  • The Helper The Helper:
    What is up Old Mountain Shadow?
  • The Helper The Helper:
    Happy Thursday!
    +1
  • Varine Varine:
    Crazy how much 3d printing has come in the last few years. Sad that it's not as easily modifiable though
  • Varine Varine:
    I bought an Ender 3 during the pandemic and tinkered with it all the time. Just bought a Sovol, not as easy. I'm trying to make it use a different nozzle because I have a fuck ton of Volcanos, and they use what is basically a modified volcano that is just a smidge longer, and almost every part on this thing needs to be redone to make it work
  • Varine Varine:
    Luckily I have a 3d printer for that, I guess. But it's ridiculous. The regular volcanos are 21mm, these Sovol versions are about 23.5mm
  • Varine Varine:
    So, 2.5mm longer. But the thing that measures the bed is about 1.5mm above the nozzle, so if I swap it with a volcano then I'm 1mm behind it. So cool, new bracket to swap that, but THEN the fan shroud to direct air at the part is ALSO going to be .5mm to low, and so I need to redo that, but by doing that it is a little bit off where it should be blowing and it's throwing it at the heating block instead of the part, and fuck man
  • Varine Varine:
    I didn't realize they designed this entire thing to NOT be modded. I would have just got a fucking Bambu if I knew that, the whole point was I could fuck with this. And no one else makes shit for Sovol so I have to go through them, and they have... interesting pricing models. So I have a new extruder altogether that I'm taking apart and going to just design a whole new one to use my nozzles. Dumb design.
  • Varine Varine:
    Can't just buy a new heatblock, you need to get a whole hotend - so block, heater cartridge, thermistor, heatbreak, and nozzle. And they put this fucking paste in there so I can't take the thermistor or cartridge out with any ease, that's 30 dollars. Or you can get the whole extrudor with the direct driver AND that heatblock for like 50, but you still can't get any of it to come apart
  • Varine Varine:
    Partsbuilt has individual parts I found but they're expensive. I think I can get bits swapped around and make this work with generic shit though
  • Ghan Ghan:
    Heard Houston got hit pretty bad by storms last night. Hope all is well with TH.
  • The Helper The Helper:
    Power back on finally - all is good here no damage
    +2
  • V-SNES V-SNES:
    Happy Friday!
    +1
  • The Helper The Helper:
    New recipe is another summer dessert Berry and Peach Cheesecake - https://www.thehelper.net/threads/recipe-berry-and-peach-cheesecake.194169/

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top