1. Are you planning to upload your awesome spell or system to Hive? Please review the rules here.
    Dismiss Notice
  2. Seek unity between the elements in the 22nd Terraining Contest Poll.
    Dismiss Notice
  3. Seize the moment! The 18th Mini Mapping Contest has commenced.
    Dismiss Notice
  4. Gather 'round - the 20th Icon Contest Poll is out.
    Dismiss Notice
  5. The heavens smile on the old faithful. The 16th Techtree Contest has begun.
    Dismiss Notice
  6. Check out the Staff job openings thread.
    Dismiss Notice
Dismiss Notice
60,000 passwords have been reset on July 8, 2019. If you cannot login, read this.

Hell's Portal v1.0

Submitted by mjllonir
This bundle is marked as approved. It works and satisfies the submission rules.
Hell's Portal v1.0
--------------------------------------
Created by Mjllonir

Description :

Summons a Portal at target point, dealing damage over time for every unit inside the AOE of 15/30/45 dps. The portal will stay up for 10/20/30 seconds and summon a demon that will work for you for 60/90/120 seconds.

This spell is MUI, has a Description of everything and should be leakless.

If you have any questions, don't hesitate to PM.

Additional Information
Information about the spell

Triggers

  • HP Activation
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Hell's Portal
    • Actions
      • -------- This is to turn on the loop spell. --------
      • -------- This way we don't "Turn on" the spell twice if we have more than one player using the spell. --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • HP_MUI Equal to 0
        • Then - Actions
          • Trigger - Turn on HP Loop <gen>
        • Else - Actions
      • -------- When the spell is activated, we add one to the amount of MUI. --------
      • -------- This keeps track of the number of participants --------
      • Set HP_MUI = (HP_MUI + 1)
      • Set HP_MUI_Total = (HP_MUI_Total + 1)
      • Set HP_Active[HP_MUI_Total] = True
      • -------- CUSTOMIZABLE --------
      • Set HP_Portal_AoE[HP_MUI_Total] = 600.00
      • Set HP_DPS_Amount[HP_MUI_Total] = 15.00
      • Set HP_Time_Amount[HP_MUI_Total] = 10.00
      • Set HP_Demon_Time_Amount[HP_MUI_Total] = 30.00
      • -------- END CUSTOMIZABLE --------
      • -------- Each time we trigger the spell, we turn the angle back to 0. --------
      • Set HP_Dummy_Angle = 0.00
      • -------- General Variables that we see all the time. --------
      • Set HP_Caster[HP_MUI_Total] = (Triggering unit)
      • Set HP_Portal_Point[HP_MUI_Total] = (Target point of ability being cast)
      • -------- The Timers for the amount of time the Portal will stay in game, that the Ring will stay in game and the demon itself. --------
      • Set HP_DPS_Timer[HP_MUI_Total] = ((Real((Level of Hell's Portal for HP_Caster[HP_MUI_Total]))) x HP_DPS_Amount[HP_MUI_Total])
      • Set HP_Portal_Timer[HP_MUI_Total] = ((Real((Level of Hell's Portal for HP_Caster[HP_MUI_Total]))) x HP_Time_Amount[HP_MUI_Total])
      • Set HP_Demon_Timer[HP_MUI_Total] = (30.00 + ((Real((Level of Hell's Portal for HP_Caster[HP_MUI_Total]))) x HP_Demon_Time_Amount[HP_MUI_Total]))
      • -------- Height of a dummy to be able to turn the portal horizontal. --------
      • Set HP_Height[HP_MUI_Total] = 60.00
      • Set HP_Dummy_Height_Point[HP_MUI_Total] = (HP_Portal_Point[HP_MUI_Total] offset by HP_Portal_Offset_Dist towards HP_Portal_Dummy_Angle degrees)
      • -------- Sine the Star has 5 corners, for each corner summon a dummy. --------
      • -------- This dummy sets down a position (Corner_Points) so we may attach the lightning effects. --------
      • For each (Integer HP_Dummy_Number_1) from 1 to 5, do (Actions)
        • Loop - Actions
          • Set HP_Dummy_Number_2 = (((HP_MUI_Total - 1) x 5) + HP_Dummy_Number_1)
          • Set HP_Corner_Points[HP_Dummy_Number_2] = (HP_Portal_Point[HP_MUI_Total] offset by HP_Portal_AoE[HP_MUI_Total] towards HP_Dummy_Angle degrees)
          • Unit - Create 1 Dummy for (Owner of HP_Caster[HP_MUI_Total]) at (HP_Corner_Points[HP_Dummy_Number_2] offset by 0.00 towards 0.00 degrees) facing 0.00 degrees
          • Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
          • Set HP_Dummy_Point[HP_Dummy_Number_2] = (Position of (Last created unit))
          • Set HP_Dummy_Angle = (HP_Dummy_Angle + 72.00)
      • -------- This FOR is put in place to create the RING of the Lightning effects. --------
      • For each (Integer HP_Dummy_Number_1) from 1 to 5, do (Actions)
        • Loop - Actions
          • Set HP_Dummy_Number_2 = (((HP_MUI_Total - 1) x 5) + HP_Dummy_Number_1)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • HP_Dummy_Number_1 Less than 5
            • Then - Actions
              • Lightning - Create a Finger of Death lightning effect from source HP_Dummy_Point[HP_Dummy_Number_2] to target HP_Dummy_Point[(HP_Dummy_Number_2 + 1)]
              • Set HP_SFX_Lightning_Ring[HP_Dummy_Number_2] = (Last created lightning effect)
            • Else - Actions
              • -------- There is an ELSE, otherwise the Lightning effects would not attach at the right spot. --------
              • Lightning - Create a Finger of Death lightning effect from source HP_Dummy_Point[HP_Dummy_Number_2] to target HP_Dummy_Point[(HP_Dummy_Number_2 - 4)]
              • Set HP_SFX_Lightning_Ring1[HP_Dummy_Number_2] = (Last created lightning effect)
      • -------- This FOR is put in place to create the STAR of the Lightning effects. --------
      • For each (Integer HP_Dummy_Number_1) from 1 to 4, do (Actions)
        • Loop - Actions
          • Set HP_Dummy_Number_2 = (((HP_MUI_Total - 1) x 5) + HP_Dummy_Number_1)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • HP_Dummy_Number_1 Not equal to 4
            • Then - Actions
              • Lightning - Create a Finger of Death lightning effect from source HP_Dummy_Point[HP_Dummy_Number_2] to target HP_Dummy_Point[(HP_Dummy_Number_2 + 2)]
              • Set HP_SFX_Lightning_Star[HP_Dummy_Number_2] = (Last created lightning effect)
            • Else - Actions
              • -------- There is an ELSE, otherwise the Lightning effects would not attach at the right spot. --------
              • Lightning - Create a Finger of Death lightning effect from source HP_Dummy_Point[HP_Dummy_Number_2] to target HP_Dummy_Point[(HP_Dummy_Number_2 - 3)]
              • Set HP_SFX_Lightning_Star1[HP_Dummy_Number_2] = (Last created lightning effect)
              • Lightning - Create a Finger of Death lightning effect from source HP_Dummy_Point[(HP_Dummy_Number_2 + 1)] to target HP_Dummy_Point[(HP_Dummy_Number_2 - 2)]
              • Set HP_SFX_Lightning_Star2[HP_Dummy_Number_2] = (Last created lightning effect)
      • -------- This is the floating dummy in the air so the Portal may be Horizontal --------
      • -------- There are variables aferwards to determin the Position of the Unit. --------
      • Unit - Create 1 Dummy for (Owner of HP_Caster[HP_MUI_Total]) at HP_Dummy_Height_Point[HP_MUI_Total] facing Default building facing degrees
      • Set HP_Height_Unit[HP_MUI_Total] = (Last created unit)
      • Set HP_Height_Point[HP_MUI_Total] = (Position of HP_Height_Unit[HP_MUI_Total])
      • Animation - Change HP_Height_Unit[HP_MUI_Total] flying height to HP_Height[HP_MUI_Total] at 0.00
      • -------- We summon the Portal and change variables so it faces upwards. --------
      • Unit - Create 1 Dummy (Portal) for (Owner of HP_Caster[HP_MUI_Total]) at HP_Height_Point[HP_MUI_Total] facing Default building facing degrees
      • Set HP_Portal[HP_MUI_Total] = (Last created unit)
      • Special Effect - Create a special effect attached to the chest of HP_Portal[HP_MUI_Total] using Doodads\Cinematic\ShimmeringPortal\ShimmeringPortal.mdl
      • Set HP_SFX_Portal[HP_MUI_Total] = (Last created special effect)
      • Animation - Lock HP_Portal[HP_MUI_Total]'s Chest to face HP_Height_Unit[HP_MUI_Total], offset by (0.00, 0.00, 0.00)
      • Unit - Add a 0.01 second Generic expiration timer to HP_Height_Unit[HP_MUI_Total]

  • HP Loop
    • Events
      • Time - Every 1.00 seconds of game time
    • Conditions
    • Actions
      • -------- Starting off the loop at each 1 second, we start with a FOR for each player using this spell --------
      • For each (Integer HP_MUI_Current) from 1 to HP_MUI_Total, do (Actions)
        • Loop - Actions
          • -------- Make sure the spell is active, otherwise it will directly turn off the spell. --------
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • HP_Active[HP_MUI_Current] Equal to True
            • Then - Actions
              • -------- If the Ring Timer is higher than 0... --------
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • HP_Portal_Timer[HP_MUI_Current] Greater than 0.00
                • Then - Actions
                  • -------- If the Time is equal to (Total Time - 7 seconds) --------
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • HP_Portal_Timer[HP_MUI_Current] Equal to (HP_Time_Amount[HP_MUI_Current] - 7.00)
                    • Then - Actions
                      • For each (Integer HP_Dummy_Number_1) from 1 to 5, do (Actions)
                        • Loop - Actions
                          • -------- This creates a special Effect at each corner of the Star at the momentthe Demon Spawns --------
                          • Set HP_Dummy_Number_2 = (((HP_MUI_Current - 1) x 5) + HP_Dummy_Number_1)
                          • Special Effect - Create a special effect at HP_Corner_Points[HP_Dummy_Number_2] using Abilities\Spells\Demon\DarkPortal\DarkPortalTarget.mdl
                          • Set HP_SFX_Summon_Demon_Ring[HP_Dummy_Number_2] = (Last created special effect)
                          • Special Effect - Destroy HP_SFX_Summon_Demon_Ring[HP_Dummy_Number_2]
                      • -------- This Creates the Demon as well as adds a nice special Effect --------
                      • Special Effect - Create a special effect at HP_Portal_Point[HP_MUI_Current] using Abilities\Spells\Human\FlameStrike\FlameStrike1.mdl
                      • Unit - Create 1 Infernal Demon for (Owner of HP_Caster[HP_MUI_Current]) at HP_Portal_Point[HP_MUI_Current] facing Default building facing degrees
                      • Set HP_Demon_Unit[HP_MUI_Current] = (Last created unit)
                      • -------- This adds a Timer to the Demon so he doesn't last the whole game. --------
                      • Unit - Add a HP_Demon_Timer[HP_MUI_Current] second Generic expiration timer to HP_Demon_Unit[HP_MUI_Current]
                      • Special Effect - Destroy (Last created special effect)
                    • Else - Actions
                  • -------- Checks what group of units are inside the Ring, and chooses them all. --------
                  • Set HP_Target_Group[HP_MUI_Current] = (Units within HP_Portal_AoE[HP_MUI_Current] of HP_Portal_Point[HP_MUI_Current] matching (((Matching unit) belongs to an enemy of (Owner of HP_Caster[HP_MUI_Current])) Equal to True))
                  • Unit Group - Pick every unit in HP_Target_Group[HP_MUI_Current] and do (Actions)
                    • Loop - Actions
                      • -------- It deals damage over time (each second) --------
                      • Special Effect - Create a special effect attached to the chest of (Picked unit) using Objects\Spawnmodels\Human\HumanBlood\BloodElfSpellThiefBlood.mdl
                      • Unit - Cause HP_Caster[HP_MUI_Current] to damage (Picked unit), dealing HP_DPS_Timer[HP_MUI_Current] damage of attack type Spells and damage type Unknown
                      • Special Effect - Destroy (Last created special effect)
                  • -------- Bring the Timer down 1 second --------
                  • Set HP_Portal_Timer[HP_MUI_Current] = (HP_Portal_Timer[HP_MUI_Current] - 1.00)
                • Else - Actions
                  • -------- If the Timer is lower than 0 seconds, we begin the recycling section of the spell --------
                  • -------- We destroy the Portal --------
                  • Special Effect - Destroy HP_SFX_Portal[HP_MUI_Current]
                  • -------- We destroy ALL the Lightning effects --------
                  • -------- We also remove a few Points using a bit of custom text that we wouldn't be able to remove with normal GUI. --------
                  • For each (Integer HP_Dummy_Number_1) from 1 to 5, do (Actions)
                    • Loop - Actions
                      • Set HP_Dummy_Number_2 = (((HP_MUI_Current - 1) x 5) + HP_Dummy_Number_1)
                      • Lightning - Destroy HP_SFX_Lightning_Ring[HP_Dummy_Number_2]
                      • Lightning - Destroy HP_SFX_Lightning_Star[HP_Dummy_Number_2]
                      • Lightning - Destroy HP_SFX_Lightning_Ring1[HP_Dummy_Number_2]
                      • Lightning - Destroy HP_SFX_Lightning_Star1[HP_Dummy_Number_2]
                      • Lightning - Destroy HP_SFX_Lightning_Star2[HP_Dummy_Number_2]
                      • Custom script: call RemoveLocation (udg_HP_Corner_Points[udg_HP_Dummy_Number_2])
                      • Custom script: call RemoveLocation (udg_HP_Dummy_Point[udg_HP_Dummy_Number_2])
                  • -------- We add an expiration timer to Vexorian's Dummy. (Basically kill it) --------
                  • Unit - Add a 0.01 second Generic expiration timer to HP_Portal[HP_MUI_Current]
                  • -------- We also remove a few Points using a bit of custom text that we wouldn't be able to remove with normal GUI. --------
                  • Custom script: call RemoveLocation (udg_HP_Portal_Point[udg_HP_MUI_Current])
                  • Custom script: call RemoveLocation (udg_HP_Height_Point[udg_HP_MUI_Total])
                  • Custom script: call RemoveLocation (udg_HP_Dummy_Height_Point[udg_HP_MUI_Total])
                  • -------- Destroy the Unit group chosen when units are in the ring --------
                  • Custom script: call DestroyGroup (udg_HP_Target_Group[udg_HP_MUI_Current])
                  • -------- Substract one player from the group because he is done using the spell. --------
                  • Set HP_MUI = (HP_MUI - 1)
                  • Set HP_Active[HP_MUI_Current] = False
                  • -------- If the amount of players is 0, it will turn off the spell instantly. --------
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • HP_MUI Equal to 0
                    • Then - Actions
                      • Set HP_MUI_Total = 0
                      • Trigger - Turn off (This trigger)
                    • Else - Actions
            • Else - Actions



How to Import?

Importing this spell is quite easy. All you need to do is Copy and Paste. Here is a list of what you will need to copy and paste :

OBJECTS (3) :
-Dummy (Portal)
-Dummy
-Infernal Demon

ABILITIES (1) :
-Hell's Portal

TRIGGERS (2) :
-HP Activate
-HP Loop

IMPORTS (1) :
-Vexorian's Dummy

*No Third Party programs needed*


Changelog

Global Changelog

v0.1 : Submitted to the Hive.


Current Changelog

I hope you enjoy it! Please do not hesitate to send me any bugs, glitches you find.

Credits

Maker : For fixing a few bugs.
Vexorian : For creating the nice dummy.



Please Comment and rate :). Don't forget to credit me if you use this spell

Mjllonir

Keywords:
Hell's Portal, Mjllonir, summon, demon, devil
Contents

Hell's Portal v1.0 (Map)

Reviews
Moderator
12:00, 20th Feb 2010 TriggerHappy: I didn't notice any leaks, it performed well and it's MUI.
  1. 12:00, 20th Feb 2010
    TriggerHappy:

    I didn't notice any leaks, it performed well and it's MUI.
     
  2. Demongrip

    Demongrip

    Joined:
    Sep 8, 2009
    Messages:
    80
    Resources:
    6
    Spells:
    6
    Resources:
    6
    From the screen I can say big eye candy.Also the triggering(you use kingz indexing system as I see).Too lazy to check for leaks atm otherwise the code seems good.
    Edit:
    • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    • If - Conditions
    • HP_MUI Equal to 0
    • Then - Actions
    • Set HP_MUI_Total = 0
    • Trigger - Turn off (This trigger)
    • Else - Actions
    • Else - Actions


    Shouldn`t this tag be separated from the loop action?I`ve been doing the same thing long time ago and sometimes it bugs when casted multiple times.
     
  3. mjllonir

    mjllonir

    Joined:
    May 31, 2009
    Messages:
    432
    Resources:
    3
    Spells:
    3
    Resources:
    3
    From what I noticed when I casted it multiple times, it doesn't bug. If anyone does notice that it bugs, please do not hesitate to tell me. And thank you very much for the nice review ;)
     
  4. togera90

    togera90

    Joined:
    May 20, 2009
    Messages:
    97
    Resources:
    0
    Resources:
    0
    HAHAHA LOOKS GOOD could be sweet for a movie or a campaign if u will
     
  5. GhostKnife

    GhostKnife

    Joined:
    Jul 28, 2009
    Messages:
    65
    Resources:
    0
    Resources:
    0
    Nice, like torgera90 said, this could be great for cut-scenes in your map/campaign.
     
  6. Dr. Boom

    Dr. Boom

    Joined:
    May 1, 2008
    Messages:
    1,549
    Resources:
    3
    Maps:
    1
    Spells:
    1
    Tutorials:
    1
    Resources:
    3
    Seas =)

    First of all I like the spell and everything works fine - so I would give 3/5 (without these ideas) or 4,5/5 (with these ideas) - because:

    1) The upper part of the portal is green ( on the gras ) don't know if that is fix-able but if it is you should do this.
    Proof:
    [​IMG]

    2) You should base this ability on an ability with and AOE Circle ( Like Rain of Fire )

    3) I think it better if every 10 seconds 1 demon spawn then only 1 demon spawn after the end of the duration ( 10/20/30 )

    4) Maybe you should add some locust summoner at the ends of the circle. As you see ( at the screen ) these ends seems to be cuted. There summoner can be based on acolyte with stand work gold - animation

    Note: Everything I said is nothing against you, your idea or you spell. This are just some points, how I think to improve this spell.
     
  7. Rethon

    Rethon

    Joined:
    Feb 21, 2008
    Messages:
    68
    Resources:
    0
    Resources:
    0
    could a map from Frozen Throne be uploaded containing this spell please?
     
  8. mjllonir

    mjllonir

    Joined:
    May 31, 2009
    Messages:
    432
    Resources:
    3
    Spells:
    3
    Resources:
    3
    There is one....You just have to click on the download button
     
  9. lich_king_nerzhul

    lich_king_nerzhul

    Joined:
    Jun 2, 2010
    Messages:
    2
    Resources:
    0
    Resources:
    0
    how do i use this i mean import?
     
  10. Azure Assassin

    Azure Assassin

    Joined:
    Jan 24, 2010
    Messages:
    25
    Resources:
    0
    Resources:
    0
    Looks Pretty CoOL, nice :D
     
  11. Jonteking92

    Jonteking92

    Joined:
    Jun 23, 2010
    Messages:
    5
    Resources:
    0
    Resources:
    0
    help with hell's portal

    i have copied everything exactly like you have but still it looks like this in my map, what could be wrong?
    [​IMG]
     

    Attached Files:

  12. Jejmaze

    Jejmaze

    Joined:
    Aug 30, 2010
    Messages:
    4
    Resources:
    0
    Resources:
    0
    I was gonna do something like that but it would appear you made it first :/
    Oh well, I'll probably just make one anyway ^^
     
  13. Rage5968

    Rage5968

    Joined:
    Jan 14, 2012
    Messages:
    1
    Resources:
    0
    Resources:
    0
    Great spell! 5/5 +rep ^^