Template Simple Boss Template

D.V.D

Make a wish
Reaction score
73
Well, I've seen many people having problems with bosses so I made a very simple leakless template that works. The boss cannot be used 2 times at the same time. This map has a reigon that needs to be imported, the reigon used there is just for a effect and for the boss area. This template was perfectly made by me and here are the stages:
Enter: When you enter 500 from the boss, he gains 40 life for every unit leaving and entering the area of the unit. Also, every 10 seconds, the boss summons 3 golems that last 15 seconds.

Stage 1: When the boss has 75% of his life, he gets brilliance aura, enduranc aura, evasion and casts war stomp. Also after every 2 seconds, the boss gets 15 life.

Stage 2: When the boss has 50% life, he gets beserk, bash and he casts banish on a random unit in 400. Also, every 2 seconds, he deals 50 damage to random 6 units in 500 from the boss.

Stage 3: When the boss has 25% of his life, he has 5 seconds to get 50% life unless he dies. He also deals 50 damage to random 4 units in 400 every 1 second.

Final Breath: When the boss dies, he deals 500 damage to all units in 500 from him.

Code:
Passive Attacks
    Events
        Unit - A unit Is attacked
    Conditions
        (Attacking unit) Equal to Footman 0000 <gen>
    Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                (Random integer number between 1 and 10) Less than or equal to 4
            Then - Actions
                Set point[0] = (Position of Footman 0000 <gen>)
                Set point[1] = (point[0] offset by 300.00 towards (Facing of Footman 0000 <gen>) degrees)
                Set UnitGroup = (Units within 400.00 of point[1])
                Unit Group - Pick every unit in UnitGroup and do (Actions)
                    Loop - Actions
                        Special Effect - Create a special effect attached to the overhead of (Picked unit) using Abilities\Spells\Human\Avatar\AvatarCaster.mdl
                        Special Effect - Destroy (Last created special effect)
                        Unit - Set life of (Picked unit) to ((Max life of Footman 0000 <gen>) - 10.00)%
            Else - Actions
                Custom script:   call RemoveLocation(udg_point[0])
                Custom script:   call RemoveLocation(udg_point[1])
                Custom script:   call DestroyGroup(udg_UnitGroup)
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                (Random integer number between 1 and 10) Less than or equal to 2
            Then - Actions
                Set point[0] = (Position of Footman 0000 <gen>)
                Set UnitGroup = (Units within 400.00 of point[0])
                Unit Group - Pick every unit in UnitGroup and do (Actions)
                    Loop - Actions
                        Special Effect - Create a special effect attached to the overhead of (Picked unit) using Abilities\Spells\Human\Avatar\AvatarCaster.mdl
                        Special Effect - Destroy (Last created special effect)
                        Unit - Cause Footman 0000 <gen> to damage (Picked unit), dealing 100.00 damage of attack type Spells and damage type Normal
            Else - Actions
                Custom script:   call RemoveLocation(udg_point[0])
                Custom script:   call DestroyGroup(udg_UnitGroup)
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                (Random integer number between 1 and 10) Less than or equal to 3
            Then - Actions
                Set point[0] = (Position of Footman 0000 <gen>)
                Set group1 = (Units within 400.00 of point[0])
                Set UnitGroup = (Random 1 units from group1)
                Unit Group - Pick every unit in UnitGroup and do (Actions)
                    Loop - Actions
                        Unit - Add Purge to Footman 0000 <gen>
                        Unit - Order Footman 0000 <gen> to Orc Shaman - Purge (Picked unit)
                        Wait 2.00 seconds
                        Unit - Remove Purge from Footman 0000 <gen>
            Else - Actions
                Custom script:   call RemoveLocation(udg_point[0])
                Custom script:   call DestroyGroup(udg_group1)
                Custom script:   call DestroyGroup(udg_UnitGroup)

Code:
Dont Leave Reigon
    Events
        Unit - A unit leaves Region 000 <gen>
    Conditions
        (Triggering unit) Equal to Footman 0000 <gen>
    Actions
        Set point[0] = (Center of Region 000 <gen>)
        Unit - Order Footman 0000 <gen> to Move To point[0]
        Custom script:   call RemoveLocation(udg_point[0])

Code:
Attack Lowest Life
    Events
        Time - Every 3.00 seconds of game time
    Conditions
        (Footman 0000 <gen> is alive) Equal to True
    Actions
        Set point[0] = (Position of Footman 0000 <gen>)
        Set group1 = (Units within 400.00 of point[0])
        Set UnitGroup = (Random 1 units from group1)
        Unit Group - Pick every unit in UnitGroup and do (Actions)
            Loop - Actions
                Unit - Order Footman 0000 <gen> to Attack (Picked unit)
        Custom script:   call RemoveLocation(udg_point[0])
        Custom script:   call DestroyGroup(udg_group1)
        Custom script:   call DestroyGroup(udg_UnitGroup)

Code:
Boss Stage 1
    Events
        Unit - A unit enters Region 000 <gen>
    Conditions
        (Triggering unit) Not equal to Footman 0000 <gen>
    Actions
        Set point[0] = (Position of Footman 0000 <gen>)
        Special Effect - Create a special effect attached to the origin of Footman 0000 <gen> using Abilities\Spells\Human\Resurrect\ResurrectTarget.mdl
        Special Effect - Destroy (Last created special effect)
        Unit - Set life of Footman 0000 <gen> to ((Life of Footman 0000 <gen>) + 40.00)
        Animation - Play Footman 0000 <gen>'s victory animation
        Trigger - Turn on Summon <gen>
        Custom script:   call RemoveLocation(udg_point[0])
        Custom script:   call DestroyGroup(udg_UnitGroup)

Code:
Boss Stage 2
    Events
        Unit - Footman 0000 <gen>'s life becomes Less than or equal to (((Max life of Footman 0000 <gen>) / 4.00) x 3.00)
    Conditions
    Actions
        Unit - Add Brilliance Aura to Footman 0000 <gen>
        Unit - Add Endurance Aura to Footman 0000 <gen>
        Unit - Add Evasion to Footman 0000 <gen>
        Unit - Add War Stomp to Footman 0000 <gen>
        Unit - Order Footman 0000 <gen> to Orc Tauren Chieftain - War Stomp
        Trigger - Turn on Heal <gen>
        Trigger - Turn off (This trigger)

Code:
Boss Stage 3
    Events
        Unit - Footman 0000 <gen>'s life becomes Less than or equal to ((Max life of Footman 0000 <gen>) / 2.00)
    Conditions
    Actions
        Unit - Add Berserk to Footman 0000 <gen>
        Unit - Order Footman 0000 <gen> to Orc Troll Berserker - Berserk
        Unit - Add Bash to Footman 0000 <gen>
        Unit - Add Banish to Footman 0000 <gen>
        Set point[0] = (Position of Footman 0000 <gen>)
        Set group1 = (Units within 400.00 of point[0])
        Set UnitGroup = (Random 1 units from group1)
        Unit Group - Pick every unit in UnitGroup and do (Actions)
            Loop - Actions
                Unit - Order Footman 0000 <gen> to Human Blood Mage - Banish (Picked unit)
        Trigger - Turn on Explosions <gen>
        Custom script:   call RemoveLocation(udg_point[0])
        Custom script:   call DestroyGroup(udg_group1)
        Custom script:   call DestroyGroup(udg_UnitGroup)

Code:
Boss Stage 4
    Events
        Unit - Footman 0000 <gen>'s life becomes Less than or equal to ((Max life of Footman 0000 <gen>) x 0.25)
    Conditions
    Actions
        Game - Display to (All players) for 5.00 seconds the text: You have 5 seconds ...
        Trigger - Turn on Immolation <gen>
        Wait 5.00 seconds
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                (Footman 0000 <gen> is alive) Equal to True
            Then - Actions
                Special Effect - Create a special effect attached to the origin of Footman 0000 <gen> using Abilities\Spells\Human\Resurrect\ResurrectTarget.mdl
                Unit - Set life of Footman 0000 <gen> to 75.00%
                Special Effect - Destroy (Last created special effect)
            Else - Actions
                Trigger - Turn off Immolation <gen>

Code:
Final Breath
    Events
        Unit - A unit Dies
    Conditions
        (Triggering unit) Equal to Footman 0000 <gen>
    Actions
        Set point[0] = (Position of Footman 0000 <gen>)
        Set UnitGroup = (Units within 500.00 of point[0])
        Unit Group - Pick every unit in UnitGroup and do (Actions)
            Loop - Actions
                Special Effect - Create a special effect attached to the origin of (Picked unit) using Abilities\Spells\Undead\AnimateDead\AnimateDeadTarget.mdl
                Unit - Cause Footman 0000 <gen> to damage (Picked unit), dealing 500.00 damage of attack type Spells and damage type Normal
                Special Effect - Destroy (Last created special effect)
        Custom script:   call RemoveLocation(udg_point[0])
        Custom script:   call DestroyGroup(udg_UnitGroup)

Code:
Summon
    Events
        Time - Every 10.00 seconds of game time
    Conditions
        (Footman 0000 <gen> is alive) Equal to True
    Actions
        Animation - Play Footman 0000 <gen>'s victory animation
        For each (Integer A) from 1 to 3, do (Actions)
            Loop - Actions
                Unit - Create 1 Mud Golem for (Owner of Footman 0000 <gen>) at ((Position of Footman 0000 <gen>) offset by 256.00 towards (Facing of Footman 0000 <gen>) degrees) facing (Position of Footman 0000 <gen>)
                Special Effect - Create a special effect at (Position of (Last created unit)) using Abilities\Spells\Human\ThunderClap\ThunderClapCaster.mdl
                Special Effect - Destroy (Last created special effect)
                Unit - Add a 15.00 second Generic expiration timer to (Last created unit)

Code:
Heal
    Events
        Time - Every 2.00 seconds of game time
    Conditions
        (Footman 0000 <gen> is alive) Equal to True
    Actions
        Unit - Set life of Footman 0000 <gen> to ((Life of Footman 0000 <gen>) + 15.00)
        Special Effect - Create a special effect attached to the overhead of Footman 0000 <gen> using Abilities\Spells\Human\Heal\HealTarget.mdl
        Special Effect - Destroy (Last created special effect)

Code:
Explosions
    Events
        Time - Every 2.00 seconds of game time
    Conditions
        (Footman 0000 <gen> is alive) Equal to True
    Actions
        Set point[0] = (Position of Footman 0000 <gen>)
        Set group1 = (Units within 400.00 of point[0])
        Set UnitGroup = (Random 6 units from group1)
        Unit Group - Pick every unit in UnitGroup and do (Actions)
            Loop - Actions
                Special Effect - Create a special effect attached to the origin of (Picked unit) using Abilities\Weapons\Mortar\MortarMissile.mdl
                Special Effect - Destroy (Last created special effect)
                Unit - Cause Footman 0000 <gen> to damage (Picked unit), dealing 50.00 damage of attack type Siege and damage type Normal
        Custom script:   call RemoveLocation(udg_point[0])
        Custom script:   call DestroyGroup(udg_group1)
        Custom script:   call DestroyGroup(udg_UnitGroup)

Code:
Immolation
    Events
        Time - Every 1.00 seconds of game time
    Conditions
        (Footman 0000 <gen> is alive) Equal to True
    Actions
        Set point[0] = (Position of Footman 0000 <gen>)
        Set group1 = (Units within 400.00 of point[0])
        Set UnitGroup = (Random 4 units from group1)
        Unit Group - Pick every unit in UnitGroup and do (Actions)
            Loop - Actions
                Special Effect - Create a special effect attached to the origin of (Picked unit) using Abilities\Weapons\SteamTank\SteamTankImpact.mdl
                Special Effect - Destroy (Last created special effect)
                Unit - Cause Footman 0000 <gen> to damage (Picked unit), dealing 50.00 damage of attack type Siege and damage type Demolition
        Custom script:   call RemoveLocation(udg_point[0])
        Custom script:   call DestroyGroup(udg_group1)
        Custom script:   call DestroyGroup(udg_UnitGroup)

Have fun.

/D.V.D
/http://gamezonezelda.blogspot.com/ = my blog (still in edit)
 

Attachments

  • effect hack.w3x
    75.5 KB · Views: 212

wraithseeker

Tired.
Reaction score
122
I think this is too simple and before he gets 25% of his life , he said to me kill him in 5 second or we all die , I assume that it was about 3 seconds instead of 5 seconds.

Also you used a preplaced unit which most people wouldn't like / use since it would be such a pain to preplace bosses and hide them when game starts.

You used about 4~9 triggers which is way too much in my opinion, although I can see you put in the effort.

What if there is like 5 bosses and you need that much triggers? Omg I can't imagine my pain.. but nice effort still <3
 

Romek

Super Moderator
Reaction score
964
> I made a very simple leakless template that works
This does leak -_-

Code:
Effect Hack
    Events
        Time - Every 2.00 seconds of game time
    Conditions
    Actions
        Special Effect - Create a special effect at [B](Position of Footman 0000 <gen>)[/B] using Abilities\Spells\Human\ThunderClap\ThunderClapCaster.mdl

Also:

Code:
Boss Stage 1
    Events
        Unit - A unit enters Region 000 <gen>
    Conditions
        (Triggering unit) Not equal to Footman 0000 <gen>
    Actions
        [B]Set point[0] = (Position of Footman 0000 <gen>)[/B]
        Special Effect - Create a special effect attached to the origin of Footman 0000 <gen> using Abilities\Spells\Human\Resurrect\ResurrectTarget.mdl
        Special Effect - Destroy (Last created special effect)
        Unit - Set life of Footman 0000 <gen> to ((Life of Footman 0000 <gen>) + 40.00)
        Animation - Play Footman 0000 <gen>'s victory animation
        Trigger - Turn on Summon <gen>
 [B]       Custom script:   call RemoveLocation(udg_point[0])
        Custom script:   call DestroyGroup(udg_UnitGroup)[/B]
Is there any reason for the bolded lines?

I didn't look through the rest of the triggers.
 

T.s.e

Wish I was old and a little sentimental
Reaction score
133
Trigger:
  • Set UnitGroup = (Random 1 units from (Units within 400.00 of point[0]))

Leaks.

Trigger:
  • Unit - Create 1 Mud Golem for (Owner of Footman 0000 &lt;gen&gt;) at ((Position of Footman 0000 &lt;gen&gt;) offset by 256.00 towards (Facing of Footman 0000 &lt;gen&gt;) degrees) facing (Position of Footman 0000 &lt;gen&gt;)

Leaks.

Trigger:
  • Special Effect - Create a special effect at (Position of (Last created unit)) using Abilities\Spells\Human\ThunderClap\ThunderClapCaster.mdl

Leaks.

Trigger:
  • Set UnitGroup = (Random 6 units from (Units within 400.00 of point[0]))

Leaks.

Trigger:
  • Set UnitGroup = (Random 4 units from (Units within 400.00 of point[0]))

Leaks.

This is far from leakless.
 

D.V.D

Make a wish
Reaction score
73
Ok, I missed more leaks then usual. I will update this and make the bos sharder. There are like 4 to 9 triggers, what can you do about it? Impossible bosses probably uses like 10 - 14 triggers for one boss. You cna't reduce the amount of triggers unless you code in jass and this is for GUI. I will change fro 5 to 3 seconds too.
 

T.s.e

Wish I was old and a little sentimental
Reaction score
133
I never said anything about the amount of triggers, I said something about the amount of leaks. And I also doubt the usefulness of this system, it would take ages to configure, probably longer than rewriting it all yourself.
 

D.V.D

Make a wish
Reaction score
73
Eh, Im not talking about you, wraith said the amount of triggers and this is a example for people to learn from on how to make their own bosses, not to use the code and edit it.
 

D.V.D

Make a wish
Reaction score
73
Update:

-Added a few passive spells(3)
-Made the boss attack the creep with the lowest life
-Made the boss not leave the reigon
-The boss is now harder to kill because of all his heals and some effect your guys to
-Posted triggers(Total:12)
-Removed many leaks and removed the special effect leak
-Have fun:).
 

WolfieeifloW

WEHZ Helper
Reaction score
372
Like wraith said still;
Preplaced units and stuff, which the triggers rely on.
Too many triggers if you have even 5+ bosses.
And there's still leaks all over.
 

D.V.D

Make a wish
Reaction score
73
Well, if your going to say that you can make a whole boss script with less than 4 triggers with everything I have than be my guest and do it. Don't just say you can because its GUI. You can't really decrease the amount of triggers using it so if you think you can do it, be my guest. By the way im 12. And were all are the leaks you see?
 

WolfieeifloW

WEHZ Helper
Reaction score
372
I'm not saying that just because it's GUI :confused: ?
And you ignored my other two points of preplaced units and leaks :eek: .
 

D.V.D

Make a wish
Reaction score
73
Preplaced units will be changed next update and I seriously can't find any leaks. Im not saying that your saying I can't make the code smaller because its GUI. Its just that you really can't change the amount of triggers used for this boss and like other bosses, they use like 10 triggers to for abilities and AI. Same here.
 

Flare

Stops copies me!
Reaction score
662
Your Passive Attacks trigger is leaky, and the leak-clearing methodology is just WTF? - you create new groups/locations whenever the random attack procs, but you only destroy groups/locations when the random attack doesn't proc. If you get 5 %-chance hits in a row (doesn't matter which %-chance ability it is), you've got 10-15 leaks

The template is very difficult to import into one's map and configure properly
1) The large number of triggers does make it more difficult to import
2) Preplaced units and regions aren't the easiest things to cope with when importing triggers

Overall, could be a learning experience for some, but I can't see this being very practical to use
 
General chit-chat
Help Users
  • No one is chatting at the moment.
  • WildTurkey WildTurkey:
    is there a stephen green in the house?
    +1
  • The Helper The Helper:
    What is up WildTurkey?
  • The Helper The Helper:
    Looks like Google fixed whatever mistake that made the recipes on the site go crazy and we are no longer trending towards a recipe site lol - I don't care though because it motivated me to spend alot of time on the site improving it and at least now the content people are looking at is not stupid and embarrassing like it was when I first got back into this like 5 years ago.
  • The Helper The Helper:
    Plus - I have a pretty bad ass recipe collection now! That section of the site is 10 thousand times better than it was before
  • The Helper The Helper:
    We now have a web designer at my job. A legit talented professional! I am going to get him to redesign the site theme. It is time.
  • Varine Varine:
    I got one more day of community service and then I'm free from this nonsense! I polished a cop car today for a funeral or something I guess
  • Varine Varine:
    They also were digging threw old shit at the sheriff's office and I tried to get them to give me the old electronic stuff, but they said no. They can't give it to people because they might use it to impersonate a cop or break into their network or some shit? idk but it was a shame to see them take a whole bunch of radios and shit to get shredded and landfilled
  • The Helper The Helper:
    whatever at least you are free
  • Monovertex Monovertex:
    How are you all? :D
    +1
  • Ghan Ghan:
    Howdy
  • 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 Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top