Spell Stomp of Corruption

baassee

Member
Reaction score
5
This was a spell I made a loong time ago in GUI. But hey it works and it's GUI so why not upload it?

Yeah right it has a requirement -.- a knockback system in GUI.

Link

SOCNEWNEWScreen.jpg

Info:

The Chieftain stomps the ground, creating a wave of corruption in each direction, dealing 1,2x strentgh to all units it hit. Also every unit the wave passes get knockbacked. Also all the unit it passes gets a small armor reduction for a small duration.
Knockback range, armor reduction and duration increases by level.

More read me is inside the demomap itself. And the triggers are fairly commented.

Enjoy!

Trigger:
  • SOC Ini
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Set TempLoc = (Center of (Playable map area))
      • Unit - Create 1 Dummy for Neutral Passive at TempLoc facing Default building facing degrees
      • Unit - Add SOC Armor Dummy to (Last created unit)
      • Unit - Add Stomp Of Corruption to (Last created unit)
      • Unit - Add a 0.01 second Generic expiration timer to (Last created unit)
      • Special Effect - Create a special effect at TempLoc using Abilities\Weapons\AvengerMissile\AvengerMissile.mdl
      • Special Effect - Destroy (Last created special effect)
      • Special Effect - Create a special effect at TempLoc using Objects\Spawnmodels\Undead\UndeadDissipate\UndeadDissipate.mdl
      • Special Effect - Destroy (Last created special effect)
      • Set SOC_SP = Abilities\Weapons\AvengerMissile\AvengerMissile.mdl
      • Set SOC_ECSP = Objects\Spawnmodels\Undead\UndeadDissipate\UndeadDissipate.mdl
      • Game - Preload SOC_SP
      • Game - Preload SOC_ECSP
      • Custom script: call PreloadStart()
      • Custom script: call RemoveLocation(udg_TempLoc)
      • Custom script: call DestroyGroup(udg_SOC_Hit[1])
      • Custom script: call DestroyTrigger(GetTriggeringTrigger())

Trigger:
  • SOC Cast
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Stomp Of Corruption
    • Actions
      • -------- The Indexing --------
      • -------- If index 1 is 0 then we turn on the loop else we just set some variables alright? <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="smilie smilie--sprite smilie--sprite1" alt=":)" title="Smile :)" loading="lazy" data-shortname=":)" /> --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • SOC_Index[1] Equal to 0
        • Then - Actions
          • Trigger - Turn on SOC Loop &lt;gen&gt;
        • Else - Actions
      • -------- Here we set index 1 +1 --------
      • Set SOC_Index[1] = (SOC_Index[1] + 1)
      • -------- and index 2 --------
      • Set SOC_Index[2] = (SOC_Index[2] + 1)
      • -------- ------------------------------------------ --------
      • Custom script: set udg_SOC_Hit[udg_SOC_Index[2]] = CreateGroup()
      • -------- SETTINGS --------
      • -------- ------------------------------------------ --------
      • -------- The Aoe of each boom in the stomp --------
      • Set SOC_AOE = 150.00
      • -------- the range between each boom counted 100xinteged end --------
      • -------- you can change that integer below too --------
      • Set SOC_Range = 100.00
      • -------- the caster who will do the damage, can be changed but I dont recommend it --------
      • Set SOC_Caster[SOC_Index[2]] = (Triggering unit)
      • -------- the caster point where you cast the &quot;stomp spell&quot; --------
      • -------- you can change it to like pos of picked unit if you want it to happen to alot of units etc --------
      • -------- not recommended to change --------
      • Set SOC_CasterPoint[SOC_Index[2]] = (Position of (Triggering unit))
      • -------- this point is set to unbug the spell because it bugs with the knockback else --------
      • -------- have it same as the caster point --------
      • Set SOC_KBCasterPoint[SOC_Index[2]] = (Position of (Triggering unit))
      • -------- the integer where it should start aka when it reach the end integer it stop --------
      • -------- have it at 0 and its fine <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="smilie smilie--sprite smilie--sprite1" alt=":)" title="Smile :)" loading="lazy" data-shortname=":)" /> --------
      • Set SOC_Integer[SOC_Index[2]] = 0
      • -------- the end, how many booms in each line --------
      • -------- I have it to 3+level of ability because then it starts with 4 booms and ends with 7 --------
      • -------- change this to how far the booms will go x the range variable!!! --------
      • Set SOC_IntegerEnd = (3 + (Level of Stomp Of Corruption for (Triggering unit)))
      • -------- the damage, as I&#039;ve set it to the strength of a hero it can be different so we have to index that too! --------
      • Set SOC_Damage[SOC_Index[2]] = (1.20 x (Real((Strength of (Triggering unit) (Exclude bonuses)))))
      • -------- Here we set the special effect for our needs, I will use this one --------
      • Set SOC_SP = Abilities\Weapons\AvengerMissile\AvengerMissile.mdl
      • -------- and for the eyecandy sp, can be chosen to not used --------
      • Set SOC_ECSP = Objects\Spawnmodels\Undead\UndeadDissipate\UndeadDissipate.mdl
      • -------- and last a boolean if you want the eyecandy or not (less lagg for some) --------
      • -------- set it as false if you dont want it --------
      • Set SOC_WantSP = True
      • -------- ------------------------------------------ --------
      • -------- END SETTINGS --------
      • -------- ------------------------------------------ --------
      • -------- the angle integer, will only be use below --------
      • Set SOC_AngleInteger[SOC_Index[2]] = 0
      • -------- now it&#039;s used --------
      • -------- here I set all the angles --------
      • -------- 11,25 x 1-32 that will create a circle, just look at the spell and you get it <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="smilie smilie--sprite smilie--sprite1" alt=":)" title="Smile :)" loading="lazy" data-shortname=":)" /> --------
      • For each (Integer A) from 1 to 32, do (Actions)
        • Loop - Actions
          • -------- sets the angle integer +1 --------
          • Set SOC_AngleInteger[SOC_Index[2]] = (SOC_AngleInteger[SOC_Index[2]] + 1)
          • -------- and the angle x the angle integer --------
          • Set SOC_Angle[(Integer A)] = ((Real(SOC_AngleInteger[SOC_Index[2]])) x 11.25)
          • -------- ------------------------------------------ --------
          • -------- Move on to the loop! --------
          • -------- ------------------------------------------ --------

Trigger:
  • SOC Loop
    • Events
      • Time - Every 0.03 seconds of game time
    • Conditions
    • Actions
      • -------- Wont comment the first here but its better then integer A --------
      • -------- Read Kingz tutorial for further explanasion --------
      • For each (Integer SOC_Index[3]) from 1 to SOC_Index[2], do (Actions)
        • Loop - Actions
          • -------- if/then/else --------
          • -------- checks if the start integer is less the the end integer, --------
          • -------- so if it isnt reached it will repeat itself again --------
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • SOC_Integer[SOC_Index[3]] Less than SOC_IntegerEnd
            • Then - Actions
              • -------- here we set the start integer +1 --------
              • Set SOC_Integer[SOC_Index[3]] = (SOC_Integer[SOC_Index[3]] + 1)
              • -------- here we do integer A --------
              • -------- to max 32 so it will spin all around the caster counting to the real --------
              • For each (Integer A) from 1 to 32, do (Actions)
                • Loop - Actions
                  • -------- here we set the temp point with the range x the starting integer --------
                  • Set TempLoc = (SOC_CasterPoint[SOC_Index[3]] offset by (SOC_Range x (Real(SOC_Integer[SOC_Index[3]]))) towards SOC_Angle[(Integer A)] degrees)
                  • -------- and the temp group with matching conditions --------
                  • -------- ------------------------------------------ --------
                  • -------- SETTING --------
                  • -------- ------------------------------------------ --------
                  • Set TempGroup = (Units within SOC_AOE of TempLoc matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is Magic Immune) Equal to False) and ((((Matching unit) is alive) Equal to True) and ((((Matching unit) belongs to an enemy of (Owner of SOC_Ca
                  • -------- and here we create sp and destroy it after --------
                  • Special Effect - Create a special effect at TempLoc using SOC_SP
                  • Special Effect - Destroy (Last created special effect)
                  • -------- here we pick all units in the unit group --------
                  • Unit Group - Pick every unit in TempGroup and do (Actions)
                    • Loop - Actions
                      • -------- create dummy that will cast the buff --------
                      • Unit - Create 1 Dummy for (Owner of SOC_Caster[SOC_Index[3]]) at TempLoc facing Default building facing degrees
                      • -------- timer so it will be removed --------
                      • Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
                      • -------- add the ability --------
                      • Unit - Add SOC Armor Dummy to (Last created unit)
                      • -------- and set the ability --------
                      • Unit - Set level of SOC Armor Dummy for (Last created unit) to (Level of Stomp Of Corruption for SOC_Caster[SOC_Index[3]])
                      • -------- and order to inner fire to bring it --------
                      • Unit - Order (Last created unit) to Human Priest - Inner Fire (Picked unit)
                      • -------- here we do the damage we set in the cast trigger SETTINGS --------
                      • Unit - Cause SOC_Caster[SOC_Index[3]] to damage (Picked unit), dealing SOC_Damage[SOC_Index[3]] damage of attack type Spells and damage type Death
                      • Unit Group - Add (Picked unit) to SOC_Hit[SOC_Index[3]]
                      • -------- if/then/else --------
                      • -------- if we have set our want eyecandy sp to true we create sp else we do nothing --------
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • If - Conditions
                          • SOC_WantSP Equal to True
                        • Then - Actions
                          • Special Effect - Create a special effect attached to the overhead of (Picked unit) using Objects\Spawnmodels\Undead\UndeadDissipate\UndeadDissipate.mdl
                          • Special Effect - Destroy (Last created special effect)
                        • Else - Actions
                      • -------- ------------------------------------------ --------
                      • -------- SETTINGS2 --------
                      • -------- ------------------------------------------ --------
                      • -------- here we set the caster in the knockback --------
                      • -------- U wont explain further, read the knockback system category apply actions trigger <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="smilie smilie--sprite smilie--sprite1" alt=":)" title="Smile :)" loading="lazy" data-shortname=":)" /> --------
                      • Set KBA_Caster = SOC_Caster[SOC_Index[3]]
                      • Set KBA_TargetUnit = (Picked unit)
                      • Set KBA_StartingPosition = (Point((X of SOC_KBCasterPoint[SOC_Index[3]]), (Y of SOC_KBCasterPoint[SOC_Index[3]])))
                      • Set KBA_Level = (Level of Stomp Of Corruption for SOC_Caster[SOC_Index[3]])
                      • Set KBA_Speed = 7.00
                      • Set KBA_DistancePerLevel = 100.00
                      • Set KBA_SpecialEffects[1] = Abilities\Spells\Human\FlakCannons\FlakTarget.mdl
                      • Set KBA_SpecialEffects[2] = Abilities\Weapons\AvengerMissile\AvengerMissile.mdl
                      • Set KBA_DestroyTrees = True
                      • -------- ------------------------------------------ --------
                      • -------- END SETTINGS2 --------
                      • -------- ------------------------------------------ --------
                      • -------- turns on the knockback --------
                      • Trigger - Run Cast A Knockback &lt;gen&gt; (checking conditions)
                      • -------- remove leaks --------
                  • Custom script: call DestroyGroup(udg_TempGroup)
                  • Custom script: call RemoveLocation(udg_TempLoc)
              • -------- here we check if the first integer reached the end integer --------
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • SOC_Integer[SOC_Index[3]] Greater than or equal to SOC_IntegerEnd
                • Then - Actions
                  • -------- if it is and that means that one spell has ended, we set the first index to - 1 --------
                  • Set SOC_Index[1] = (SOC_Index[1] - 1)
                  • -------- remove the caster points from the first trigger --------
                  • Custom script: call DestroyGroup(udg_SOC_Hit[udg_SOC_Index[3]])
                  • Custom script: call RemoveLocation(udg_SOC_CasterPoint[udg_SOC_Index[3]])
                  • Custom script: call RemoveLocation(udg_SOC_KBCasterPoint[udg_SOC_Index[3]])
                  • -------- and checks again but the index --------
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • SOC_Index[1] Equal to 0
                    • Then - Actions
                      • -------- we 0 value the index 2 --------
                      • Set SOC_Index[2] = 0
                      • -------- and turns of the loop because it has no use if no one is using it --------
                      • Trigger - Turn off (This trigger)
                    • Else - Actions
                • Else - Actions
            • Else - Actions
 

Attachments

  • baassee.SOC.MUI.v1.4.w3x
    64 KB · Views: 524

Carnerox

The one and only.
Reaction score
84
I like the spell, even as GUI.
The only thing is the amount of eye candy that was used isn't exactly my taste but still looks good. :thup:
 

baassee

Member
Reaction score
5
Hehe as said, it was in the early days.
I had another before but then they told me to change it to this, but it's changeable :D
 

tooltiperror

Super Moderator
Reaction score
231
It runs fine and appears not to leak. Can't say the effect matches the spell though. Not much of a fan of GUI but still very nice.
 
General chit-chat
Help Users
  • No one is chatting at the moment.
  • Varine Varine:
    How can you tell the difference between real traffic and indexing or AI generation bots?
  • The Helper The Helper:
    The bots will show up as users online in the forum software but they do not show up in my stats tracking. I am sure there are bots in the stats but the way alot of the bots treat the site do not show up on the stats
  • Varine Varine:
    I want to build a filtration system for my 3d printer, and that shit is so much more complicated than I thought it would be
  • Varine Varine:
    Apparently ABS emits styrene particulates which can be like .2 micrometers, which idk if the VOC detectors I have can even catch that
  • Varine Varine:
    Anyway I need to get some of those sensors and two air pressure sensors installed before an after the filters, which I need to figure out how to calculate the necessary pressure for and I have yet to find anything that tells me how to actually do that, just the cfm ratings
  • Varine Varine:
    And then I have to set up an arduino board to read those sensors, which I also don't know very much about but I have a whole bunch of crash course things for that
  • Varine Varine:
    These sensors are also a lot more than I thought they would be. Like 5 to 10 each, idk why but I assumed they would be like 2 dollars
  • Varine Varine:
    Another issue I'm learning is that a lot of the air quality sensors don't work at very high ambient temperatures. I'm planning on heating this enclosure to like 60C or so, and that's the upper limit of their functionality
  • Varine Varine:
    Although I don't know if I need to actually actively heat it or just let the plate and hotend bring the ambient temp to whatever it will, but even then I need to figure out an exfiltration for hot air. I think I kind of know what to do but it's still fucking confusing
  • The Helper The Helper:
    Maybe you could find some of that information from AC tech - like how they detect freon and such
  • Varine Varine:
    That's mostly what I've been looking at
  • Varine Varine:
    I don't think I'm dealing with quite the same pressures though, at the very least its a significantly smaller system. For the time being I'm just going to put together a quick scrubby box though and hope it works good enough to not make my house toxic
  • Varine Varine:
    I mean I don't use this enough to pose any significant danger I don't think, but I would still rather not be throwing styrene all over the air
  • The Helper The Helper:
    New dessert added to recipes Southern Pecan Praline Cake https://www.thehelper.net/threads/recipe-southern-pecan-praline-cake.193555/
  • The Helper The Helper:
    Another bot invasion 493 members online most of them bots that do not show up on stats
  • Varine Varine:
    I'm looking at a solid 378 guests, but 3 members. Of which two are me and VSNES. The third is unlisted, which makes me think its a ghost.
    +1
  • The Helper The Helper:
    Some members choose invisibility mode
    +1
  • The Helper The Helper:
    I bitch about Xenforo sometimes but it really is full featured you just have to really know what you are doing to get the most out of it.
  • The Helper The Helper:
    It is just not easy to fix styles and customize but it definitely can be done
  • The Helper The Helper:
    I do know this - xenforo dropped the ball by not keeping the vbulletin reputation comments as a feature. The loss of the Reputation comments data when we switched to Xenforo really was the death knell for the site when it came to all the users that left. I know I missed it so much and I got way less interested in the site when that feature was gone and I run the site.
  • Blackveiled Blackveiled:
    People love rep, lol
    +1
  • The Helper The Helper:
    The recipe today is Sloppy Joe Casserole - one of my faves LOL https://www.thehelper.net/threads/sloppy-joe-casserole-with-manwich.193585/
  • The Helper The Helper:
    Decided to put up a healthier type recipe to mix it up - Honey Garlic Shrimp Stir-Fry https://www.thehelper.net/threads/recipe-honey-garlic-shrimp-stir-fry.193595/

      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