1. Are you planning to upload your awesome spell or system to Hive? Please review the rules here.
    Dismiss Notice
  2. Find your way through the deepest dungeon in the 18th Mini Mapping Contest Poll.
    Dismiss Notice
  3. A brave new world lies beyond the seven seas. Join the 34th Modeling Contest today!
    Dismiss Notice
  4. Check out the Staff job openings thread.
    Dismiss Notice
Dismiss Notice
Hive 3 Remoosed BETA - NOW LIVE. Go check it out at BETA Hive Workshop! Post your feedback in this new forum BETA Feedback.
Dismiss Notice
60,000 passwords have been reset on July 8, 2019. If you cannot login, read this.

Seraphic Star v1.36

Submitted by Tank-Commander
This bundle is marked as approved. It works and satisfies the submission rules.
This is A recreation of yet another ff Boss spell casted by kuja: 'Seraphic Star' he didn't have this in ther origional game however he recieved it in the later ff game final fantasy dissidia.

The main idea was to recreate it's effect rather than appearance as apperance would take far too long and would probably cause mass lag from over sfx.

For a basic outline of what it does, it Creates a projectile, This projectile moves to the target point, It then grows. during this proccess it is using 3D Gravity to pull in all nearby units into it's centre.

After bursting it's boundaries it will explode causing 3D knockback on all units within it's area which is also calculated in 3D.

No damage or effects (stun and suchlike) are caused via custom data, the only use in the object editor was the casting spell and the dummies required.

Many aspects of this spell are changed per level and has a very confusing set of triggers for some people so as large amount of documentation has been added saying what you can/shouldn't touch. Uses the hashtables and relies heavily upon them.

Code

  • Creating the hashtable
    • Events
      • Time - Elapsed game time is 0.00 seconds
    • Conditions
    • Actions
      • -------- This is one trigger, you Just Dont mess with. --------
      • -------- * --------
      • Hashtable - Create a hashtable
      • -------- * --------
      • Set Sepharic_Star_Hashtable = (Last created hashtable)
      • -------- * --------
      • Countdown Timer - Start Intervals as a Repeating timer that will expire in 0.03 seconds

  • Init
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Ability being cast) Equal to Ultimate Serapharic Star
        • Then - Actions
          • -------- * --------
          • Set Currant_intstances = (Currant_intstances + 1)
          • -------- * --------
          • Set Temp_Point = (Position of (Triggering unit))
          • -------- * --------
          • -------- Change this to your dummy unit (missile) --------
          • Unit - Create 1 Core for (Owner of (Triggering unit)) at Temp_Point facing (Angle from Temp_Point to Temp_Point_2) degrees
          • -------- Set this to match the centre fly height of your 'sphere' --------
          • Animation - Change (Last created unit) flying height to 400.00 at 0.00
          • -------- Chanage this to effect the overall spell duration --------
          • Unit - Add a 0.50 second Generic expiration timer to (Last created unit)
          • -------- * --------
          • -------- This is the 'Growth tier' --------
          • Hashtable - Save 0 as 1 of (Key (Last created unit)) in Sepharic_Star_Hashtable
          • -------- Gravity Strength for this tier --------
          • Hashtable - Save 1 as 2 of (Key (Last created unit)) in Sepharic_Star_Hashtable
          • -------- Reserve checker --------
          • -------- For casting this spell --------
          • Hashtable - Save 1337 as 1337 of (Key (Last created unit)) in Sepharic_Star_Hashtable
          • -------- Set this to your dummy ability for your spell (damage is calculated primarily from this --------
          • Unit - Set level of Sepharic Star (Ultimate dummy) for (Last created unit) to (Level of Ultimate Serapharic Star for (Triggering unit))
          • -------- Sets the standard size --------
          • Hashtable - Save 100.00 as 3500 of (Key (Last created unit)) in Sepharic_Star_Hashtable
          • -------- * --------
          • Set Gravity_Unit_ID = (Last created unit)
          • -------- * --------
          • Set Gravity_unit = (Last created unit)
          • -------- This unit is for the facing angle of your sfx if you choose to use something other than the stock --------
          • -------- For your conviniance --------
          • Unit - Create 1 Target Dummy for (Owner of (Triggering unit)) at Temp_Point facing 0.00 degrees
          • -------- Set this to your spells duration --------
          • Unit - Add a 12.00 second Generic expiration timer to (Last created unit)
          • Set Target_Dummy = (Last created unit)
          • -------- * --------
          • -------- For additional information on this area, open the first 'if then else' function --------
          • Set Degrees_set = 0.00
          • -------- Set this to the amount of 'points' of your circle --------
          • -------- The points being were the surrounding Sfx is created --------
          • For each (Integer Debug) from 1 to 12, do (Actions)
            • Loop - Actions
              • -------- To create a differant shape, you only need to change this to make it, for exmaple to create a cylindrical shape on all layers this should be the same --------
              • -------- For and hour glass, It should start hiegh, get smaller, then larger again. --------
              • -------- Experiment and see what shapes you can make --------
              • -------- Set this the distance you wish this layer to be away from you centre --------
              • -------- as this is the lowest layer it should have the lowest distance --------
              • Set Temp_Point_2 = (Temp_Point offset by 250.00 towards Degrees_set degrees)
              • -------- Change the sfx to your surrounding sfx dummy --------
              • Unit - Create 1 Sfx 2 (ulti) for (Owner of (Triggering unit)) at Temp_Point_2 facing (Angle from Temp_Point_2 to Temp_Point) degrees
              • -------- Set this to the duration of your spell --------
              • Unit - Add a 12.00 second Generic expiration timer to (Last created unit)
              • -------- Set this layers fly height --------
              • -------- again as this is the lowest layer it should be the smallest --------
              • Animation - Change (Last created unit) flying height to 100.00 at 0.00
              • -------- Set this to 360/your points on your sphere --------
              • -------- I used 12 points so I did this --------
              • -------- 360/12 = 30 --------
              • Set Degrees_set = (Degrees_set + 30.00)
              • -------- * --------
              • Custom script: call RemoveLocation (udg_Temp_Point_2)
              • -------- As standard the Fly height increase by 100 per layer --------
              • -------- And the distance from the centre by 50 --------
          • -------- * --------
          • Set Degrees_set = 0.00
          • For each (Integer Debug) from 1 to 12, do (Actions)
            • Loop - Actions
              • Set Temp_Point_2 = (Temp_Point offset by 300.00 towards Degrees_set degrees)
              • Unit - Create 1 Sfx 2 (ulti) for (Owner of (Triggering unit)) at Temp_Point_2 facing (Angle from Temp_Point_2 to Temp_Point) degrees
              • Unit - Add a 12.00 second Generic expiration timer to (Last created unit)
              • Animation - Change (Last created unit) flying height to 200.00 at 0.00
              • Set Degrees_set = (Degrees_set + 30.00)
              • Custom script: call RemoveLocation (udg_Temp_Point_2)
          • -------- * --------
          • Set Degrees_set = 0.00
          • For each (Integer Debug) from 1 to 12, do (Actions)
            • Loop - Actions
              • Set Temp_Point_2 = (Temp_Point offset by 400.00 towards Degrees_set degrees)
              • Unit - Create 1 Sfx 2 (ulti) for (Owner of (Triggering unit)) at Temp_Point_2 facing (Angle from Temp_Point_2 to Temp_Point) degrees
              • Unit - Add a 12.00 second Generic expiration timer to (Last created unit)
              • Animation - Change (Last created unit) flying height to 400.00 at 0.00
              • Set Degrees_set = (Degrees_set + 30.00)
              • Custom script: call RemoveLocation (udg_Temp_Point_2)
          • -------- * --------
          • Set Degrees_set = 0.00
          • For each (Integer Debug) from 1 to 12, do (Actions)
            • Loop - Actions
              • Set Temp_Point_2 = (Temp_Point offset by 350.00 towards Degrees_set degrees)
              • Unit - Create 1 Sfx 2 (ulti) for (Owner of (Triggering unit)) at Temp_Point_2 facing (Angle from Temp_Point_2 to Temp_Point) degrees
              • Unit - Add a 12.00 second Generic expiration timer to (Last created unit)
              • Animation - Change (Last created unit) flying height to 300.00 at 0.00
              • Set Degrees_set = (Degrees_set + 30.00)
              • Custom script: call RemoveLocation (udg_Temp_Point_2)
          • -------- * --------
          • Set Degrees_set = 0.00
          • For each (Integer Debug) from 1 to 12, do (Actions)
            • Loop - Actions
              • Set Temp_Point_2 = (Temp_Point offset by 350.00 towards Degrees_set degrees)
              • Unit - Create 1 Sfx 2 (ulti) for (Owner of (Triggering unit)) at Temp_Point_2 facing (Angle from Temp_Point_2 to Temp_Point) degrees
              • Unit - Add a 12.00 second Generic expiration timer to (Last created unit)
              • Animation - Change (Last created unit) flying height to 500.00 at 0.00
              • Set Degrees_set = (Degrees_set + 30.00)
              • Custom script: call RemoveLocation (udg_Temp_Point_2)
          • -------- * --------
          • Set Degrees_set = 0.00
          • For each (Integer Debug) from 1 to 12, do (Actions)
            • Loop - Actions
              • Set Temp_Point_2 = (Temp_Point offset by 300.00 towards Degrees_set degrees)
              • Unit - Create 1 Sfx 2 (ulti) for (Owner of (Triggering unit)) at Temp_Point_2 facing (Angle from Temp_Point_2 to Temp_Point) degrees
              • Unit - Add a 12.00 second Generic expiration timer to (Last created unit)
              • Animation - Change (Last created unit) flying height to 600.00 at 0.00
              • Set Degrees_set = (Degrees_set + 30.00)
              • Custom script: call RemoveLocation (udg_Temp_Point_2)
          • -------- * --------
          • Set Degrees_set = 0.00
          • For each (Integer Debug) from 1 to 12, do (Actions)
            • Loop - Actions
              • Set Temp_Point_2 = (Temp_Point offset by 250.00 towards Degrees_set degrees)
              • Unit - Create 1 Sfx 2 (ulti) for (Owner of (Triggering unit)) at Temp_Point_2 facing (Angle from Temp_Point_2 to Temp_Point) degrees
              • Unit - Add a 12.00 second Generic expiration timer to (Last created unit)
              • Animation - Change (Last created unit) flying height to 600.00 at 0.00
              • Set Degrees_set = (Degrees_set + 30.00)
              • Custom script: call RemoveLocation (udg_Temp_Point_2)
          • -------- Set this to your spawn sfx --------
          • Unit - Create 1 Sfx spawn (Ulti) for (Owner of (Triggering unit)) at Temp_Point facing (Angle from Temp_Point to Temp_Point_2) degrees
          • -------- This just needs to be a short time --------
          • Unit - Add a 2.00 second Generic expiration timer to (Last created unit)
          • -------- * --------
          • Trigger - Turn on Loop <gen>
          • -------- * --------
          • Custom script: call RemoveLocation (udg_Temp_Point)
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Ability being cast) Equal to Sepharic Star
        • Then - Actions
          • -------- * --------
          • Set Currant_intstances = (Currant_intstances + 1)
          • -------- * --------
          • Set Temp_Point = (Position of (Triggering unit))
          • -------- * --------
          • Set Temp_Point_2 = (Target point of ability being cast)
          • -------- Change this to your dummy unit (missile) --------
          • Unit - Create 1 Projectile for (Owner of (Triggering unit)) at Temp_Point facing (Angle from Temp_Point to Temp_Point_2) degrees
          • -------- Chanage this to effect the overall spell duration --------
          • Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
          • -------- * --------
          • -------- This is the 'Growth tier' --------
          • Hashtable - Save 0 as 1 of (Key (Last created unit)) in Sepharic_Star_Hashtable
          • -------- * --------
          • Hashtable - Save (Distance between Temp_Point and Temp_Point_2) as 0 of (Key (Last created unit)) in Sepharic_Star_Hashtable
          • -------- Gravity Strength for this tier --------
          • Hashtable - Save 1 as 2 of (Key (Last created unit)) in Sepharic_Star_Hashtable
          • -------- Set this to your dummy ability for your spell (damage is calculated primarily from this --------
          • Unit - Set level of Sepharic Star (Dummy) for (Last created unit) to (Level of Sepharic Star for (Triggering unit))
          • -------- * --------
          • Trigger - Turn on Loop <gen>
          • -------- * --------
          • Custom script: call RemoveLocation (udg_Temp_Point_2)
          • -------- * --------
          • Custom script: call RemoveLocation (udg_Temp_Point)
        • Else - Actions

  • Loop
    • Events
      • Time - Intervals expires
    • Conditions
    • Actions
      • -------- CAUTION --------
      • -------- THIS SECTION IS INCREDABLY CONFUSING --------
      • -------- PROCEED WITH CARE --------
      • -------- Set to your dummy missile --------
      • Set Temp_Group = (Units in (Playable map area) matching (((Unit-type of (Matching unit)) Equal to Core) and ((Load 1337 of (Key (Matching unit)) from Sepharic_Star_Hashtable) Equal to 1337)))
      • -------- Dont change what unit group this picks --------
      • Unit Group - Pick every unit in Temp_Group and do (Actions)
        • Loop - Actions
          • -------- * --------
          • Set Gravity_unit = (Picked unit)
          • -------- * --------
          • Set Temp_Point = (Position of (Picked unit))
          • -------- * --------
          • Set Temp_Point_2 = (Temp_Point offset by (Load 0 of (Key (Picked unit)) from Sepharic_Star_Hashtable) towards (Facing of (Picked unit)) degrees)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Load 0 of (Key (Picked unit)) from Sepharic_Star_Hashtable) Less than or equal to 2.00
            • Then - Actions
              • Custom script: call RemoveLocation (udg_Temp_Point)
              • -------- Set the 155 number to your spells distance per level --------
              • Set Temp_Group_2 = (Units within (400.00 x (Real((Level of Sepharic Star (Ultimate dummy) for Gravity_unit)))) of Temp_Point matching ((((Owner of (Matching unit)) is an ally of (Owner of Gravity_unit)) Equal to False) and ((Owner of (Matching unit)) Not equal to (Owner of Grav
              • -------- * --------
              • Unit Group - Pick every unit in Temp_Group_2 and do (Actions)
                • Loop - Actions
                  • -------- * --------
                  • Set Temp_Point = (Position of (Picked unit))
                  • -------- * --------
                  • Hashtable - Save Handle OfTemp_Point as 9 of (Key (Picked unit)) in Sepharic_Star_Hashtable
                  • -------- * --------
                  • Custom script: call RemoveLocation (udg_Temp_Point)
              • Custom script: call DestroyGroup (udg_Temp_Group_2)
            • Else - Actions
              • Custom script: call RemoveLocation (udg_Temp_Point)
          • -------- * --------
          • Set Temp_Point = (Position of (Picked unit))
          • -------- * --------
          • Set Gravity_Unit_ID = (Picked unit)
          • -------- * --------
          • Hashtable - Save (Current flying height of Gravity_unit) as 10 of (Key Gravity_Unit_ID) in Sepharic_Star_Hashtable
          • -------- * --------
          • Hashtable - Save Handle OfTemp_Point as 9 of (Key Gravity_Unit_ID) in Sepharic_Star_Hashtable
          • -------- Set this to your spells Aoe --------
          • Set Temp_Group_2 = (Units within (400.00 x (Real((Level of Sepharic Star (Ultimate dummy) for Gravity_unit)))) of Temp_Point matching ((((Owner of (Matching unit)) is an ally of (Owner of Gravity_unit)) Equal to False) and ((Owner of (Matching unit)) Not equal to (Owner of Grav
          • -------- * --------
          • Custom script: call RemoveLocation (udg_Temp_Point)
          • -------- * --------
          • Custom script: call RemoveLocation (udg_Temp_Point_2)
          • -------- Dont change what unit group this picks --------
          • -------- * --------
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Load 0 of (Key (Picked unit)) from Sepharic_Star_Hashtable) Less than or equal to 2.00
            • Then - Actions
              • -------- Set the 155 number to your spells distance per level --------
              • Set Temp_Group_2 = (Units within (400.00 x (Real((Level of Sepharic Star (Ultimate dummy) for Gravity_unit)))) of Temp_Point matching ((((Owner of (Matching unit)) is an ally of (Owner of Gravity_unit)) Equal to False) and ((Owner of (Matching unit)) Not equal to (Owner of Grav
              • -------- * --------
              • Unit Group - Pick every unit in Temp_Group_2 and do (Actions)
                • Loop - Actions
                  • -------- * --------
                  • Set Temp_Point = (Position of (Picked unit))
                  • -------- * --------
                  • Hashtable - Save Handle OfTemp_Point as 9 of (Key (Picked unit)) in Sepharic_Star_Hashtable
                  • -------- * --------
                  • Custom script: call RemoveLocation (udg_Temp_Point)
              • Custom script: call DestroyGroup (udg_Temp_Group_2)
            • Else - Actions
          • Custom script: call RemoveLocation (udg_Temp_Point)
          • -------- * --------
          • Set Temp_Point = (Position of (Picked unit))
          • -------- * --------
          • Set Gravity_Unit_ID = (Picked unit)
          • -------- * --------
          • Hashtable - Save (Current flying height of Gravity_unit) as 10 of (Key Gravity_Unit_ID) in Sepharic_Star_Hashtable
          • -------- * --------
          • Hashtable - Save Handle OfTemp_Point as 9 of (Key Gravity_Unit_ID) in Sepharic_Star_Hashtable
          • -------- Set this to your spells Aoe --------
          • Set Temp_Group_2 = (Units within (400.00 x (Real((Level of Sepharic Star (Ultimate dummy) for Gravity_unit)))) of Temp_Point matching ((((Owner of (Matching unit)) is an ally of (Owner of Gravity_unit)) Equal to False) and ((Owner of (Matching unit)) Not equal to (Owner of Grav
          • -------- * --------
          • Custom script: call RemoveLocation (udg_Temp_Point)
          • -------- * --------
          • Custom script: call RemoveLocation (udg_Temp_Point_2)
          • -------- Dont change what unit group this picks --------
          • Unit Group - Pick every unit in Temp_Group_2 and do (Actions)
            • Loop - Actions
              • -------- * --------
              • Unit - Turn collision for (Picked unit) Off
              • -------- * --------
              • Hashtable - Save (Current flying height of (Picked unit)) as 10 of (Key (Picked unit)) in Sepharic_Star_Hashtable
              • -------- * --------
              • Hashtable - Save (Default flying height of (Picked unit)) as 11 of (Key (Picked unit)) in Sepharic_Star_Hashtable
              • -------- * --------
              • Hashtable - Save (Current flying height of Gravity_unit) as 10 of (Key Gravity_Unit_ID) in Sepharic_Star_Hashtable
              • -------- Damage formula --------
              • -------- Set the '20' to your landing damage of the units (will affect air units as well) --------
              • Hashtable - Save (160 x (Level of Sepharic Star (Ultimate dummy) for Gravity_unit)) as 50 of (Key (Picked unit)) in Sepharic_Star_Hashtable
              • -------- * --------
              • Unit - Add Crow Form to (Picked unit)
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Load 25 of (Key (Picked unit)) from Sepharic_Star_Hashtable) Equal to 0
                • Then - Actions
                  • Special Effect - Create a special effect attached to the chest of (Picked unit) using Abilities\Spells\Other\Incinerate\IncinerateBuff.mdl
                  • Hashtable - Save Handle Of(Last created special effect) as 20 of (Key (Picked unit)) in Sepharic_Star_Hashtable
                  • Hashtable - Save 1 as 25 of (Key (Picked unit)) in Sepharic_Star_Hashtable
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Load 10 of (Key (Picked unit)) from Sepharic_Star_Hashtable) Greater than (Load 10 of (Key Gravity_Unit_ID) from Sepharic_Star_Hashtable)
                  • (Gravity_unit is alive) Equal to True
                • Then - Actions
                  • Animation - Change (Picked unit) flying height to ((Load 10 of (Key (Picked unit)) from Sepharic_Star_Hashtable) - (Real((Load 2 of (Key Gravity_Unit_ID) from Sepharic_Star_Hashtable)))) at 0.00
                  • Hashtable - Save (Current flying height of (Picked unit)) as 10 of (Key (Picked unit)) in Sepharic_Star_Hashtable
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Load 10 of (Key (Picked unit)) from Sepharic_Star_Hashtable) Less than (Load 10 of (Key Gravity_Unit_ID) from Sepharic_Star_Hashtable)
                  • (Gravity_unit is alive) Equal to True
                • Then - Actions
                  • Animation - Change (Picked unit) flying height to ((Load 10 of (Key (Picked unit)) from Sepharic_Star_Hashtable) + (Real((Load 2 of (Key Gravity_Unit_ID) from Sepharic_Star_Hashtable)))) at 0.00
                  • Hashtable - Save (Current flying height of (Picked unit)) as 10 of (Key (Picked unit)) in Sepharic_Star_Hashtable
                • Else - Actions
              • -------- * --------
              • Unit - Remove Crow Form from (Picked unit)
              • -------- * --------
              • Set Temp_Point = (Position of Gravity_unit)
              • -------- * --------
              • Set Temp_Point_2 = (Position of (Picked unit))
              • -------- * --------
              • Unit - Move (Picked unit) instantly to Temp_Point_2, facing (Angle from Temp_Point_2 to Temp_Point) degrees
              • -------- Damage calculator set the '250' to your damage --------
              • Unit - Set life of (Picked unit) to ((Life of (Picked unit)) - (250.00 x (Real((Level of Sepharic Star (Dummy) for (Triggering unit))))))
              • -------- Gravity per level calculator --------
              • -------- Keep the number low --------
              • Hashtable - Save (2 x (Level of Sepharic Star (Ultimate dummy) for Gravity_unit)) as 7 of (Key (Picked unit)) in Sepharic_Star_Hashtable
              • -------- * --------
              • Custom script: call RemoveLocation (udg_Temp_Point_2)
              • -------- * --------
              • Custom script: call RemoveLocation (udg_Temp_Point)
          • -------- * --------
          • Custom script: call DestroyGroup (udg_Temp_Group_2)
      • -------- * --------
      • Custom script: call DestroyGroup (udg_Temp_Group)
      • -------- * --------
      • -------- Set to your dummy missile --------
      • Set Temp_Group = (Units in (Playable map area) matching ((Unit-type of (Matching unit)) Equal to Projectile))
      • -------- Dont change what unit group this picks --------
      • Unit Group - Pick every unit in Temp_Group and do (Actions)
        • Loop - Actions
          • -------- * --------
          • Set Gravity_unit = (Picked unit)
          • -------- It's best not to change this --------
          • -------- It controlls distance traveled by your missile --------
          • Set Sepharic_Star_Speed = ((Integer((Load 0 of (Key (Picked unit)) from Sepharic_Star_Hashtable))) / 2)
          • -------- * --------
          • Hashtable - Save (Real(Sepharic_Star_Speed)) as 0 of (Key (Picked unit)) in Sepharic_Star_Hashtable
          • -------- * --------
          • Set Temp_Point = (Position of (Picked unit))
          • -------- * --------
          • Set Temp_Point_2 = (Temp_Point offset by (Load 0 of (Key (Picked unit)) from Sepharic_Star_Hashtable) towards (Facing of (Picked unit)) degrees)
          • -------- * --------
          • Unit - Move (Picked unit) instantly to Temp_Point_2
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Load 0 of (Key (Picked unit)) from Sepharic_Star_Hashtable) Less than or equal to 2.00
            • Then - Actions
              • Custom script: call RemoveLocation (udg_Temp_Point)
              • -------- Set the 155 number to your spells distance per level --------
              • Set Temp_Group_2 = (Units within (155.00 x (Real((Level of Sepharic Star (Dummy) for Gravity_unit)))) of Temp_Point matching ((((Owner of (Matching unit)) is an ally of (Owner of Gravity_unit)) Equal to False) and ((Owner of (Matching unit)) Not equal to (Owner of Gravity_unit)
              • -------- * --------
              • Unit Group - Pick every unit in Temp_Group_2 and do (Actions)
                • Loop - Actions
                  • -------- * --------
                  • Set Temp_Point = (Position of (Picked unit))
                  • -------- * --------
                  • Hashtable - Save Handle OfTemp_Point as 9 of (Key (Picked unit)) in Sepharic_Star_Hashtable
                  • -------- * --------
                  • Custom script: call RemoveLocation (udg_Temp_Point)
              • Custom script: call DestroyGroup (udg_Temp_Group_2)
            • Else - Actions
              • Custom script: call RemoveLocation (udg_Temp_Point)
          • Custom script: call RemoveLocation (udg_Temp_Point)
          • -------- * --------
          • Set Temp_Point = (Position of (Picked unit))
          • -------- * --------
          • Set Gravity_Unit_ID = (Picked unit)
          • -------- * --------
          • Hashtable - Save (Current flying height of Gravity_unit) as 10 of (Key Gravity_Unit_ID) in Sepharic_Star_Hashtable
          • -------- * --------
          • Hashtable - Save Handle OfTemp_Point as 9 of (Key Gravity_Unit_ID) in Sepharic_Star_Hashtable
          • -------- Set this to your spells Aoe --------
          • Set Temp_Group_2 = (Units within (155.00 x (Real((Level of Sepharic Star (Dummy) for Gravity_unit)))) of Temp_Point matching ((((Owner of (Matching unit)) is an ally of (Owner of Gravity_unit)) Equal to False) and ((Owner of (Matching unit)) Not equal to (Owner of Gravity_unit)
          • -------- * --------
          • Custom script: call RemoveLocation (udg_Temp_Point)
          • -------- * --------
          • Custom script: call RemoveLocation (udg_Temp_Point_2)
          • -------- Dont change what unit group this picks --------
          • Unit Group - Pick every unit in Temp_Group_2 and do (Actions)
            • Loop - Actions
              • -------- * --------
              • Unit - Turn collision for (Picked unit) Off
              • -------- * --------
              • Hashtable - Save (Current flying height of (Picked unit)) as 10 of (Key (Picked unit)) in Sepharic_Star_Hashtable
              • -------- * --------
              • Hashtable - Save (Default flying height of (Picked unit)) as 11 of (Key (Picked unit)) in Sepharic_Star_Hashtable
              • -------- * --------
              • Hashtable - Save (Current flying height of Gravity_unit) as 10 of (Key Gravity_Unit_ID) in Sepharic_Star_Hashtable
              • -------- Damage formula --------
              • -------- Set the '20' to your landing damage of the units (will affect air units as well) --------
              • Hashtable - Save (20 x (Level of Sepharic Star (Dummy) for Gravity_unit)) as 50 of (Key (Picked unit)) in Sepharic_Star_Hashtable
              • -------- * --------
              • Unit - Add Crow Form to (Picked unit)
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Load 25 of (Key (Picked unit)) from Sepharic_Star_Hashtable) Equal to 0
                • Then - Actions
                  • Special Effect - Create a special effect attached to the chest of (Picked unit) using Abilities\Spells\Other\Incinerate\IncinerateBuff.mdl
                  • Hashtable - Save Handle Of(Last created special effect) as 20 of (Key (Picked unit)) in Sepharic_Star_Hashtable
                  • Hashtable - Save 1 as 25 of (Key (Picked unit)) in Sepharic_Star_Hashtable
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Load 10 of (Key (Picked unit)) from Sepharic_Star_Hashtable) Greater than (Load 10 of (Key Gravity_Unit_ID) from Sepharic_Star_Hashtable)
                  • (Gravity_unit is alive) Equal to True
                • Then - Actions
                  • Animation - Change (Picked unit) flying height to ((Load 10 of (Key (Picked unit)) from Sepharic_Star_Hashtable) - (Real((Load 2 of (Key Gravity_Unit_ID) from Sepharic_Star_Hashtable)))) at 0.00
                  • Hashtable - Save (Current flying height of (Picked unit)) as 10 of (Key (Picked unit)) in Sepharic_Star_Hashtable
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Load 10 of (Key (Picked unit)) from Sepharic_Star_Hashtable) Less than (Load 10 of (Key Gravity_Unit_ID) from Sepharic_Star_Hashtable)
                  • (Gravity_unit is alive) Equal to True
                • Then - Actions
                  • Animation - Change (Picked unit) flying height to ((Load 10 of (Key (Picked unit)) from Sepharic_Star_Hashtable) + (Real((Load 2 of (Key Gravity_Unit_ID) from Sepharic_Star_Hashtable)))) at 0.00
                  • Hashtable - Save (Current flying height of (Picked unit)) as 10 of (Key (Picked unit)) in Sepharic_Star_Hashtable
                • Else - Actions
              • -------- * --------
              • Unit - Remove Crow Form from (Picked unit)
              • -------- * --------
              • Set Temp_Point = (Position of Gravity_unit)
              • -------- * --------
              • Set Temp_Point_2 = (Position of (Picked unit))
              • -------- * --------
              • Unit - Move (Picked unit) instantly to Temp_Point_2, facing (Angle from Temp_Point_2 to Temp_Point) degrees
              • -------- Damage calculator set the '-100' to your damage (make sure you start it with a - or it will --------
              • -------- Be a healing spell --------
              • Unit - Set life of (Picked unit) to ((Life of (Picked unit)) - (100.00 x (Real((Level of Sepharic Star (Dummy) for (Triggering unit))))))
              • -------- Gravity per level calculator --------
              • -------- Keep the number low --------
              • Hashtable - Save (2 x (Level of Sepharic Star (Dummy) for Gravity_unit)) as 7 of (Key (Picked unit)) in Sepharic_Star_Hashtable
              • -------- * --------
              • Custom script: call RemoveLocation (udg_Temp_Point_2)
              • -------- * --------
              • Custom script: call RemoveLocation (udg_Temp_Point)
          • -------- * --------
          • Custom script: call DestroyGroup (udg_Temp_Group_2)
      • -------- * --------
      • Custom script: call DestroyGroup (udg_Temp_Group)
      • Set Temp_Group = (Units in (Playable map area) matching (((Matching unit) is in Returning_to_normal_fly_height) Equal to True))
      • -------- Dont change what unit group this picks --------
      • Unit Group - Pick every unit in Temp_Group and do (Actions)
        • Loop - Actions
          • -------- * --------
          • Unit - Add Crow Form to (Picked unit)
          • -------- * --------
          • Unit Group - Remove (Picked unit) from Returning_to_normal_fly_height
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Load 10 of (Key (Picked unit)) from Sepharic_Star_Hashtable) Less than (Load 11 of (Key (Picked unit)) from Sepharic_Star_Hashtable)
            • Then - Actions
              • -------- Rise calculation --------
              • Animation - Change (Picked unit) flying height to ((Current flying height of (Picked unit)) + ((Real((Load 2 of (Key Gravity_Unit_ID) from Sepharic_Star_Hashtable))) x 1.50)) at 0.00
              • -------- * --------
              • Hashtable - Save (Current flying height of (Picked unit)) as 10 of (Key (Picked unit)) in Sepharic_Star_Hashtable
              • -------- * --------
              • Unit Group - Add (Picked unit) to Returning_to_normal_fly_height
            • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Load 10 of (Key (Picked unit)) from Sepharic_Star_Hashtable) Greater than (Load 11 of (Key (Picked unit)) from Sepharic_Star_Hashtable)
                  • (Load 7 of (Key (Picked unit)) from Sepharic_Star_Hashtable) Equal to 0
                • Then - Actions
                  • -------- * --------
                  • Hashtable - Save 0.00 as 10 of (Key (Picked unit)) in Sepharic_Star_Hashtable
                  • -------- * --------
                  • Animation - Change (Picked unit) flying height to ((Current flying height of (Picked unit)) + ((Real((Load 2 of (Key Gravity_Unit_ID) from Sepharic_Star_Hashtable))) x -1.50)) at 0.00
                  • -------- * --------
                  • Set Temp_Point = (Position of (Picked unit))
                  • -------- Change to your landing sfx --------
                  • Special Effect - Create a special effect at Temp_Point using Objects\Spawnmodels\Human\FragmentationShards\FragBoomSpawn.mdl
                  • -------- * --------
                  • Special Effect - Destroy (Last created special effect)
                  • -------- * --------
                  • Special Effect - Destroy (Load 20 of (Key (Picked unit)) in Sepharic_Star_Hashtable)
                  • -------- * --------
                  • Unit - Cause (Load 100 of (Key (Picked unit)) in (Last created hashtable)) to damage (Picked unit), dealing (Real((Load 50 of (Key (Picked unit)) from Sepharic_Star_Hashtable))) damage of attack type Spells and damage type Normal
                  • -------- * --------
                  • Hashtable - Save 0 as 25 of (Key (Picked unit)) in Sepharic_Star_Hashtable
                  • -------- * --------
                  • Custom script: call RemoveLocation (udg_Temp_Point)
                  • -------- * --------
                  • Unit Group - Remove (Picked unit) from Returning_to_normal_fly_height
                  • -------- * --------
                  • Unit - Turn collision for (Picked unit) On
                  • -------- * --------
                  • Hashtable - Save -1 as 7 of (Key (Picked unit)) in Sepharic_Star_Hashtable
                  • Set Currant_intstances = (Currant_intstances - 1)
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Currant_intstances Equal to 0
                    • Then - Actions
                      • Trigger - Turn off (This trigger)
                    • Else - Actions
                • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Load 10 of (Key (Picked unit)) from Sepharic_Star_Hashtable) Greater than (Load 11 of (Key (Picked unit)) from Sepharic_Star_Hashtable)
            • Then - Actions
              • -------- Fall caluculation --------
              • Animation - Change (Picked unit) flying height to ((Current flying height of (Picked unit)) + ((Real((Load 2 of (Key Gravity_Unit_ID) from Sepharic_Star_Hashtable))) x -1.50)) at 0.00
              • -------- * --------
              • Hashtable - Save (Current flying height of (Picked unit)) as 10 of (Key (Picked unit)) in Sepharic_Star_Hashtable
              • -------- * --------
              • Unit Group - Add (Picked unit) to Returning_to_normal_fly_height
            • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Load 10 of (Key (Picked unit)) from Sepharic_Star_Hashtable) Less than (Load 11 of (Key (Picked unit)) from Sepharic_Star_Hashtable)
                  • (Load 7 of (Key (Picked unit)) from Sepharic_Star_Hashtable) Equal to 0
                • Then - Actions
                  • -------- * --------
                  • Hashtable - Save 0.00 as 10 of (Key (Picked unit)) in Sepharic_Star_Hashtable
                  • -------- * --------
                  • Animation - Change (Picked unit) flying height to ((Current flying height of (Picked unit)) + ((Real((Load 2 of (Key Gravity_Unit_ID) from Sepharic_Star_Hashtable))) x -1.50)) at 0.00
                  • -------- * --------
                  • Set Temp_Point = (Position of (Picked unit))
                  • -------- Change to landing Sfx --------
                  • Special Effect - Create a special effect at Temp_Point using Abilities\Spells\Other\Charm\CharmTarget.mdl
                  • -------- * --------
                  • Special Effect - Destroy (Last created special effect)
                  • -------- * --------
                  • Special Effect - Destroy (Load 20 of (Key (Picked unit)) in Sepharic_Star_Hashtable)
                  • -------- * --------
                  • Hashtable - Save 0 as 25 of (Key (Picked unit)) in Sepharic_Star_Hashtable
                  • -------- * --------
                  • Custom script: call RemoveLocation (udg_Temp_Point)
                  • -------- * --------
                  • Unit Group - Remove (Picked unit) from Returning_to_normal_fly_height
                  • -------- * --------
                  • Unit - Turn collision for (Picked unit) On
                  • -------- * --------
                  • Unit - Cause (Picked unit) to damage (Picked unit), dealing (Real((Load 50 of (Key (Picked unit)) from Sepharic_Star_Hashtable))) damage of attack type Spells and damage type Normal
                  • -------- * --------
                  • Hashtable - Save -1 as 7 of (Key (Picked unit)) in Sepharic_Star_Hashtable
                  • Set Currant_intstances = (Currant_intstances - 1)
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Currant_intstances Equal to 0
                    • Then - Actions
                      • Trigger - Turn off (This trigger)
                    • Else - Actions
                • Else - Actions
          • -------- * --------
          • Unit - Remove Crow Form from (Picked unit)
      • -------- * --------
      • Custom script: call DestroyGroup (udg_Temp_Group)
      • -------- * --------
      • Set Temp_Group = (Units in (Playable map area) matching ((Load 7 of (Key (Matching unit)) from Sepharic_Star_Hashtable) Greater than or equal to 1))
      • -------- Dont change what unit group this picks --------
      • Unit Group - Pick every unit in Temp_Group and do (Actions)
        • Loop - Actions
          • -------- * --------
          • Set Temp_Point = (Position of (Picked unit))
          • -------- Knockback speed --------
          • Set Temp_Point_2 = (Temp_Point offset by 10.00 towards (Facing of (Picked unit)) degrees)
          • -------- * --------
          • Unit - Move (Picked unit) instantly to Temp_Point_2
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Picked unit) is A flying unit) Equal to True
              • (Load 7 of (Key (Picked unit)) from Sepharic_Star_Hashtable) Greater than 10
            • Then - Actions
              • -------- * --------
              • Unit - Add Crow Form to (Picked unit)
              • -------- Flying unit knockback upwards calculation --------
              • Animation - Change (Picked unit) flying height to ((Current flying height of (Picked unit)) + ((Real((Load 2 of (Key Gravity_Unit_ID) from Sepharic_Star_Hashtable))) x 2.50)) at 0.00
              • -------- * --------
              • Hashtable - Save (Current flying height of (Picked unit)) as 10 of (Key (Picked unit)) in Sepharic_Star_Hashtable
              • -------- * --------
              • Unit - Remove Crow Form from (Picked unit)
            • Else - Actions
          • -------- * --------
          • Hashtable - Save ((Load 7 of (Key (Picked unit)) from Sepharic_Star_Hashtable) - 1) as 7 of (Key (Picked unit)) in Sepharic_Star_Hashtable
          • -------- * --------
          • Custom script: call RemoveLocation (udg_Temp_Point)
          • -------- * --------
          • Custom script: call RemoveLocation (udg_Temp_Point_2)
      • -------- * --------
      • Custom script: call DestroyGroup (udg_Temp_Group)
      • -------- * --------
      • Set Temp_Group = (Units in (Playable map area) matching ((Load 25 of (Key (Matching unit)) from Sepharic_Star_Hashtable) Equal to 1))
      • -------- Dont change what unit group this picks --------
      • Unit Group - Pick every unit in Temp_Group and do (Actions)
        • Loop - Actions
          • -------- Damage dealt (increases every second of spell duration) --------
          • Hashtable - Save ((Load 50 of (Key (Picked unit)) from Sepharic_Star_Hashtable) + 1) as 50 of (Key (Picked unit)) in Sepharic_Star_Hashtable
          • -------- * --------
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Load 7 of (Key (Picked unit)) from Sepharic_Star_Hashtable) Greater than 0
            • Then - Actions
              • Hashtable - Save 0 as 55 of (Key (Picked unit)) in Sepharic_Star_Hashtable
            • Else - Actions
          • -------- This part cancels damage to units that evaded the initial gravity effect --------
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Load 55 of (Key (Picked unit)) from Sepharic_Star_Hashtable) Equal to 5
            • Then - Actions
              • -------- * --------
              • Hashtable - Save 0 as 50 of (Key (Picked unit)) in Sepharic_Star_Hashtable
              • -------- * --------
              • Hashtable - Save 0 as 55 of (Key (Picked unit)) in Sepharic_Star_Hashtable
              • -------- * --------
              • Special Effect - Destroy (Load 20 of (Key (Picked unit)) in Sepharic_Star_Hashtable)
              • -------- * --------
              • Hashtable - Save 0 as 25 of (Key (Picked unit)) in Sepharic_Star_Hashtable
            • Else - Actions
          • -------- * --------
          • Hashtable - Save ((Load 55 of (Key (Picked unit)) from Sepharic_Star_Hashtable) + 1) as 55 of (Key (Picked unit)) in Sepharic_Star_Hashtable
      • -------- * --------
      • Custom script: call DestroyGroup (udg_Temp_Group)

  • Death replace
    • Events
      • Unit - A unit Dies
    • Conditions
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Unit-type of (Triggering unit)) Equal to Core
        • Then - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Load 1337 of (Key (Triggering unit)) from Sepharic_Star_Hashtable) Equal to 1337
            • Then - Actions
              • -------- * --------
              • Set Gravity_Unit_ID = (Triggering unit)
              • -------- * --------
              • Set Temp_Point = (Position of (Triggering unit))
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Load 3500 of (Key (Triggering unit)) from Sepharic_Star_Hashtable) Less than or equal to 1920.00
                • Then - Actions
                  • -------- Change this to your dummy centre --------
                  • -------- the thing that 'grows' --------
                  • Unit - Create 1 Core for (Owner of (Triggering unit)) at Temp_Point facing (Facing of (Triggering unit)) degrees
                  • -------- Gravity, You could change this but chances are you'll make it far too strong --------
                  • Hashtable - Save 3 as 2 of (Key (Last created unit)) in Sepharic_Star_Hashtable
                  • -------- checker --------
                  • Hashtable - Save 1337 as 1337 of (Key (Last created unit)) in Sepharic_Star_Hashtable
                  • -------- Set this to your dummy ability --------
                  • Unit - Add Sepharic Star (Ultimate dummy) to (Last created unit)
                  • -------- Set this to your dummy ability --------
                  • Unit - Set level of Sepharic Star (Ultimate dummy) for (Last created unit) to (Level of Sepharic Star (Ultimate dummy) for (Triggering unit))
                  • -------- If you don't want to get a pen/pencil and some paper to figure out new size/duration calculations. --------
                  • -------- You shouldn't touch this at all --------
                  • -------- **** --------
                  • Unit - Add a 0.50 second Generic expiration timer to (Last created unit)
                  • -------- Set this to 1920/your spells duration (x2) --------
                  • -------- For me it lasts 12 second so I did 12x2 = 24 --------
                  • -------- 1920/24 = 80 --------
                  • Hashtable - Save ((Load 3500 of (Key (Triggering unit)) from Sepharic_Star_Hashtable) + 80.00) as 3500 of (Key (Last created unit)) in Sepharic_Star_Hashtable
                  • -------- * --------
                  • Animation - Change (Last created unit)'s size to ((Load 3500 of (Key (Last created unit)) from Sepharic_Star_Hashtable)%, (Load 3500 of (Key (Last created unit)) from Sepharic_Star_Hashtable)%, (Load 3500 of (Key (Last created unit)) from Sepharic_Star_Hashtable)%) of its original size
                  • -------- Set This to the centre of your Circle/shape (as fly height) --------
                  • Animation - Change (Last created unit) flying height to 400.00 at 0.00
                • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • (Load 3500 of (Key (Triggering unit)) from Sepharic_Star_Hashtable) Greater than 1920.00
                    • Then - Actions
                      • -------- Your Explosion sfx --------
                      • Unit - Create 1 Sfx 1 for (Owner of (Triggering unit)) at Temp_Point facing (Facing of (Triggering unit)) degrees
                      • -------- Makes the Sfx alot bigger, If it's too big or too small still, change this --------
                      • Animation - Change (Last created unit)'s size to (700.00%, 700.00%, 700.00%) of its original size
                      • -------- This doesn't matter, Just so long as it isn't intant/ under 3 seconds you should be fine --------
                      • Unit - Add a 15.00 second Generic expiration timer to (Last created unit)
                      • -------- * --------
                      • Set Temp_Group = (Units within 400.00 of Temp_Point matching (((Owner of (Matching unit)) Not equal to (Owner of (Triggering unit))) and (((Load 10 of (Key (Matching unit)) from Sepharic_Star_Hashtable) Greater than or equal to 100.00) and ((Load 10 of (Key (Matching unit)) f
                      • -------- this is a complex part --------
                      • Unit Group - Pick every unit in Temp_Group and do (Actions)
                        • Loop - Actions
                          • Hashtable - Save Handle Of(Last created unit) as 100 of (Key (Picked unit)) in (Last created hashtable)
                          • -------- * --------
                          • Set Temp_Point_2 = (Position of (Picked unit))
                          • -------- * --------
                          • Unit Group - Add (Picked unit) to Returning_to_normal_fly_height
                          • -------- * --------
                          • Unit - Move (Picked unit) instantly to Temp_Point_2, facing (Angle from Temp_Point to Temp_Point_2) degrees
                          • -------- Damage calculation --------
                          • -------- Set the first number you see --------
                          • -------- to your multiplyer --------
                          • Hashtable - Save (250 x (Level of Sepharic Star (Ultimate dummy) for (Triggering unit))) as 200 of (Key (Picked unit)) in Sepharic_Star_Hashtable
                          • -------- * --------
                          • Unit - Cause (Load 100 of (Key (Picked unit)) in (Last created hashtable)) to damage (Picked unit), dealing (Real((Load 200 of (Key (Picked unit)) from Sepharic_Star_Hashtable))) damage of attack type Spells and damage type Normal
                          • -------- Knockback multiplyer --------
                          • -------- Same as above --------
                          • Hashtable - Save (160 x (Level of Sepharic Star (Ultimate dummy) for (Triggering unit))) as 7 of (Key (Picked unit)) in Sepharic_Star_Hashtable
                          • -------- * --------
                          • Custom script: call RemoveLocation (udg_Temp_Point_2)
                      • -------- * --------
                      • Custom script: call DestroyGroup (udg_Temp_Group)
                      • -------- * --------
                      • Custom script: call RemoveLocation (udg_Temp_Point)
                    • Else - Actions
              • -------- * --------
              • Hashtable - Save 400.00 as 10 of (Key (Picked unit)) in Sepharic_Star_Hashtable
              • -------- * --------
              • Custom script: call RemoveLocation (udg_Temp_Point)
              • Unit - Remove (Triggering unit) from the game
            • Else - Actions
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Unit-type of (Triggering unit)) Equal to Sfx 2 (ulti)
            • Then - Actions
              • Special Effect - Destroy (Load 4000 of (Key (Triggering unit)) in Sepharic_Star_Hashtable)
            • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Unit-type of (Triggering unit)) Equal to Projectile
        • Then - Actions
          • -------- set the condition to your Missile sfx --------
          • -------- It's important that this section is in reverse order --------
          • -------- Fith - second stage are the same, change them as appropriate --------
          • -------- Tier control --------
          • -------- * --------
          • Set Gravity_Unit_ID = (Triggering unit)
          • -------- * --------
          • Set Temp_Point = (Position of (Triggering unit))
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Load 1 of (Key (Triggering unit)) from Sepharic_Star_Hashtable) Equal to 5
            • Then - Actions
              • -------- Your Explosion sfx --------
              • Unit - Create 1 Sfx 1 for (Owner of (Triggering unit)) at Temp_Point facing (Facing of (Triggering unit)) degrees
              • Hashtable - Save 1 as 5 of (Key (Picked unit)) in Sepharic_Star_Hashtable
              • -------- * --------
              • Unit - Add a 15.00 second Generic expiration timer to (Last created unit)
              • -------- * --------
              • Set Temp_Group = (Units within 200.00 of Temp_Point matching (((Owner of (Matching unit)) Not equal to (Owner of (Triggering unit))) and (((Load 10 of (Key (Matching unit)) from Sepharic_Star_Hashtable) Greater than or equal to 100.00) and ((Load 10 of (Key (Matching unit)) f
              • -------- this is a complex part --------
              • Unit Group - Pick every unit in Temp_Group and do (Actions)
                • Loop - Actions
                  • Hashtable - Save Handle Of(Last created unit) as 100 of (Key (Picked unit)) in (Last created hashtable)
                  • -------- * --------
                  • Set Temp_Point_2 = (Position of (Picked unit))
                  • -------- * --------
                  • Unit Group - Add (Picked unit) to Returning_to_normal_fly_height
                  • -------- * --------
                  • Unit - Move (Picked unit) instantly to Temp_Point_2, facing (Angle from Temp_Point to Temp_Point_2) degrees
                  • -------- Damage calculation --------
                  • -------- Set the first number you see --------
                  • -------- to your multiplyer --------
                  • Hashtable - Save (100 x (Level of Sepharic Star (Dummy) for (Triggering unit))) as 200 of (Key (Picked unit)) in Sepharic_Star_Hashtable
                  • Unit - Cause (Load 100 of (Key (Picked unit)) in (Last created hashtable)) to damage (Picked unit), dealing (Real((Load 200 of (Key (Picked unit)) from Sepharic_Star_Hashtable))) damage of attack type Spells and damage type Normal
                  • -------- Knockback multiplyer --------
                  • -------- Same as above --------
                  • Hashtable - Save (60 x (Level of Sepharic Star (Dummy) for (Triggering unit))) as 7 of (Key (Picked unit)) in Sepharic_Star_Hashtable
                  • -------- * --------
                  • Custom script: call RemoveLocation (udg_Temp_Point_2)
              • -------- * --------
              • Custom script: call DestroyGroup (udg_Temp_Group)
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Load 1 of (Key (Triggering unit)) from Sepharic_Star_Hashtable) Equal to 4
            • Then - Actions
              • Unit - Create 1 Projectile for (Owner of (Triggering unit)) at Temp_Point facing (Facing of (Triggering unit)) degrees
              • -------- Stage identity --------
              • Hashtable - Save 5 as 1 of (Key (Last created unit)) in (Last created hashtable)
              • -------- Gravity strength for this tier --------
              • Hashtable - Save 6 as 2 of (Key (Last created unit)) in Sepharic_Star_Hashtable
              • -------- set to your dummy ability --------
              • Unit - Set level of Sepharic Star (Dummy) for (Last created unit) to (Level of Sepharic Star (Dummy) for (Triggering unit))
              • -------- Growth size --------
              • Animation - Change (Last created unit)'s size to (350.00%, 350.00%, 350.00%) of its original size
              • -------- * --------
              • Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Load 1 of (Key (Triggering unit)) from Sepharic_Star_Hashtable) Equal to 3
            • Then - Actions
              • Unit - Create 1 Projectile for (Owner of (Triggering unit)) at Temp_Point facing (Facing of (Triggering unit)) degrees
              • Hashtable - Save 4 as 1 of (Key (Last created unit)) in (Last created hashtable)
              • Hashtable - Save 5 as 2 of (Key (Last created unit)) in Sepharic_Star_Hashtable
              • Unit - Set level of Sepharic Star (Dummy) for (Last created unit) to (Level of Sepharic Star (Dummy) for (Triggering unit))
              • Animation - Change (Last created unit)'s size to (300.00%, 300.00%, 300.00%) of its original size
              • Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Load 1 of (Key (Triggering unit)) from Sepharic_Star_Hashtable) Equal to 2
            • Then - Actions
              • Unit - Create 1 Projectile for (Owner of (Triggering unit)) at Temp_Point facing (Facing of (Triggering unit)) degrees
              • Hashtable - Save 3 as 1 of (Key (Last created unit)) in (Last created hashtable)
              • Hashtable - Save 4 as 2 of (Key (Last created unit)) in Sepharic_Star_Hashtable
              • Unit - Set level of Sepharic Star (Dummy) for (Last created unit) to (Level of Sepharic Star (Dummy) for (Triggering unit))
              • Animation - Change (Last created unit)'s size to (250.00%, 250.00%, 250.00%) of its original size
              • Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Load 1 of (Key (Triggering unit)) from Sepharic_Star_Hashtable) Equal to 1
            • Then - Actions
              • Unit - Create 1 Projectile for (Owner of (Triggering unit)) at Temp_Point facing (Facing of (Triggering unit)) degrees
              • Hashtable - Save 2 as 1 of (Key (Last created unit)) in (Last created hashtable)
              • Hashtable - Save 3 as 2 of (Key (Last created unit)) in Sepharic_Star_Hashtable
              • Unit - Set level of Sepharic Star (Dummy) for (Last created unit) to (Level of Sepharic Star (Dummy) for (Triggering unit))
              • Animation - Change (Last created unit)'s size to (200.00%, 200.00%, 200.00%) of its original size
              • Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Load 1 of (Key (Triggering unit)) from Sepharic_Star_Hashtable) Equal to 0
            • Then - Actions
              • -------- Sets the base angle for your surrounding sfx --------
              • Set Angle_setter = 0.00
              • -------- Creates sfx before the other sfx --------
              • Special Effect - Create a special effect at Temp_Point using Abilities\Spells\Undead\AnimateDead\AnimateDeadTarget.mdl
              • -------- * --------
              • Special Effect - Destroy (Last created special effect)
              • For each (Integer Debug) from 1 to 5, do (Actions)
                • Loop - Actions
                  • -------- Creates the surrounding sfx --------
                  • Unit - Create 1 Sfx 2 for (Owner of (Triggering unit)) at Temp_Point facing Angle_setter degrees
                  • -------- Set this to your spells duration --------
                  • Unit - Add a 4.00 second Generic expiration timer to (Last created unit)
                  • -------- Change this to match your 'star --------
                  • -------- Formula: --------
                  • -------- 360/side of star --------
                  • Set Angle_setter = (Angle_setter + 72.00)
              • -------- The rest is the same --------
              • -------- as The others --------
              • Unit - Create 1 Projectile for (Owner of (Triggering unit)) at Temp_Point facing (Facing of (Triggering unit)) degrees
              • Hashtable - Save 2 as 2 of (Key (Last created unit)) in Sepharic_Star_Hashtable
              • Unit - Set level of Sepharic Star (Dummy) for (Last created unit) to (Level of Sepharic Star (Dummy) for (Triggering unit))
              • Hashtable - Save 1 as 1 of (Key (Last created unit)) in (Last created hashtable)
              • Animation - Change (Last created unit)'s size to (150.00%, 150.00%, 150.00%) of its original size
              • Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
            • Else - Actions
          • -------- * --------
          • Hashtable - Save (Default flying height of (Last created unit)) as 10 of (Key (Picked unit)) in Sepharic_Star_Hashtable
          • -------- * --------
          • Custom script: call RemoveLocation (udg_Temp_Point)
          • Unit - Remove (Triggering unit) from the game
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Unit-type of (Triggering unit)) Equal to Sfx 1
            • Then - Actions
              • -------- set the condition to your surrounding sfx --------
              • Unit - Remove (Triggering unit) from the game
            • Else - Actions



changelog

v1.36
Just noticed that in an experiment I was doing a long long time ago I accidently left it there without removing the remnents of it, hence this upate which changed it from 'unit starts channeling' back to 'starts the effect of'
man the an embrassing mistake >_>'
V1.35
Added ultimate version with extra eye candy
Fixed a leak
Lowered amount of general lag by changing the sfx model
Now there is 0% chance of getting killed.
Added alot of documentation about modifing the ulti version.

V1.20
Fixed to only Leak
Moved the '
  • Custom script: call DestroyGroup (udg_Temp_Group_2)
'
To it's correct position

V1.15
Minor Changes
Fixed the 'sfx but no moving' bug
Loop now turns off when not in use
Compacted the death replace trigger

V1.01
Fixed bounty bug


Now it has an ultimate version.

Give me Credits if you use this spell in your map plz.

Enjoy :)

Keywords:
FF, Final, Fantasy, Final Fantasy, Kuja, Zidane, Dissidia, Seraphic, Star, Seraphic Star, nine, 9, FFIX, FF9, FF1X, Explosion, Bewm, Boom, Bang, Blast
Contents

Serapharic Star (Map)

Reviews
Moderator
20:11, 8th Dec 2009 The_Reborn_Devil: The triggering looks good and there are no leaks. The effects are really nice. Status: Approved Rating: Recommended
  1. Tank-Commander

    Tank-Commander

    Spell Reviewer

    Joined:
    May 26, 2009
    Messages:
    1,538
    Resources:
    44
    Packs:
    1
    Spells:
    41
    Tutorials:
    2
    Resources:
    44
    I purposly had no dead checker, the idea is that It Pulls in all organic matter like the origional did, Ofcourse I excluded trees and such as that would effect a map too greatly.
     
  2. Blaxor

    Blaxor

    Joined:
    Sep 6, 2008
    Messages:
    411
    Resources:
    7
    Models:
    1
    Icons:
    6
    Resources:
    7
    It's really nice (ultimate laggs pretty much and I have a pretty high-end comp) but are you supposed to be able to select the core (dummy)?
     
  3. Tank-Commander

    Tank-Commander

    Spell Reviewer

    Joined:
    May 26, 2009
    Messages:
    1,538
    Resources:
    44
    Packs:
    1
    Spells:
    41
    Tutorials:
    2
    Resources:
    44
    I'm working on making the dummy unselectable at the moment for odvious reasons, However I am preoccupied with working on my next spell which is nearly completed, once it has been finished I can focus on fixing these bugs up.
     
  4. Dr Super Good

    Dr Super Good

    Spell Reviewer

    Joined:
    Jan 18, 2005
    Messages:
    26,193
    Resources:
    3
    Maps:
    1
    Spells:
    2
    Resources:
    3
    It does not lag high end comps at all (unless collision freeks out which is a WC3 bug).
     
  5. Cihparg

    Cihparg

    Joined:
    Jul 4, 2008
    Messages:
    958
    Resources:
    1
    Models:
    1
    Resources:
    1
    Well, This spell is just good now. :) What else could I say, Keep going my friend!
     
  6. The Judger

    The Judger

    Joined:
    Jun 11, 2010
    Messages:
    15
    Resources:
    0
    Resources:
    0
    Nice effect and all... keep on making spells ;)
     
  7. gaby-boy

    gaby-boy

    Joined:
    Jun 14, 2009
    Messages:
    114
    Resources:
    5
    Spells:
    4
    Tutorials:
    1
    Resources:
    5
    Nice Job!
     
  8. Gekigengar

    Gekigengar

    Joined:
    Aug 20, 2009
    Messages:
    1,490
    Resources:
    2
    Maps:
    1
    Spells:
    1
    Resources:
    2
    i used MAC, and it lagged me a lot (2nd spell), only 8 frames / sec

    i think its mac's wc3.

    anyways, the first skill also absorbed dead units? looks bad when it pulls corpses.
     
  9. Tank-Commander

    Tank-Commander

    Spell Reviewer

    Joined:
    May 26, 2009
    Messages:
    1,538
    Resources:
    44
    Packs:
    1
    Spells:
    41
    Tutorials:
    2
    Resources:
    44
    Well, I think I meantioned somewhere that I wanted it to drag corpses simply cos the idea is to pull all matter into the star (I wouldn't go as far as to pull destructibles cos that may make it unusable in certain maps) but I don't think it's too bad.

    (Pretty much posting this to just say it isn't an unintentional problem with the spell)
     
  10. Tomek320

    Tomek320

    Joined:
    Nov 14, 2010
    Messages:
    25
    Resources:
    0
    Resources:
    0
    I Found a bug :)

    When u kill and blow enemy till then is all OK,,, but after that when the corpes decay ur spell pick corpes too :) and dont do nothing to corpes becouse they are alredy death...
    Can u fix that or that isn't a bug? anyway its a great spell .. 5/5.. keep working :)
     
  11. shadowvzs

    shadowvzs

    Joined:
    Nov 13, 2006
    Messages:
    1,803
    Resources:
    2
    Spells:
    2
    Resources:
    2
    ultimate seraphic ability make kinda 15-20 sec lagg to me....

    only to me? i just level uped to max level and tryed on demo map and bang kinda freezed the whole wc3 till a enough long time


    for me worst and i got window xp so i doubt coz of ur mac :p
     
  12. Tank-Commander

    Tank-Commander

    Spell Reviewer

    Joined:
    May 26, 2009
    Messages:
    1,538
    Resources:
    44
    Packs:
    1
    Spells:
    41
    Tutorials:
    2
    Resources:
    44
    Yeah I can easily tell you why that happens - very simply it's because I don't use co-ordinates to move the units - I'd suggest sticking to the regular version - the ultimate is a bit of a showcase thing, This being one of my early ones it's pretty bad by comparison to my newer work
     
  13. Almia

    Almia

    Joined:
    Apr 24, 2012
    Messages:
    4,842
    Resources:
    35
    Spells:
    30
    Tutorials:
    4
    JASS:
    1
    Resources:
    35
    the ultimate one lagged me alot