- Joined
- Nov 29, 2012
- Messages
- 6,631
Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.
I am really bad in knowing if my map is an MUI so I dont know but I hope it is....

I think giving tips is not allowed?
![]()
Even if he deletes it now you have seen it.
maybe remove the 's' (hundred)...Ok, let me replace "Thousands" with "Hundreds" then![]()
| Zephyr Contest #10 ~ What lies on the other side! |
| Description |
| Triggers |
GC Setup

Events


Map initialization

Conditions

Actions


-------- - --------


-------- Ability Objects --------


-------- - --------


Set GCD_Ability = Gate of Cosmic Dreamworld


-------- - --------


-------- - --------


-------- C O N F I G U R A T I O N --------


-------- - --------


-------- - --------


-------- - --------


-------- Effect created on cast --------


-------- - --------


Set GCD_OnCastSFX = Objects\Spawnmodels\NightElf\NECancelDeath\NECancelDeath.mdl


-------- - --------


-------- Portal Model --------


-------- - --------


Set GCD_PortalMDL = Abilities\Spells\NightElf\Starfall\StarfallCaster.mdl


-------- - --------


-------- Portal Size --------


-------- - --------


Set GCD_PortalSize = 2.50


-------- - --------


-------- Fountain delay --------


-------- - --------


Set GCD_FountainSpawnDelay = 1.00


-------- - --------


-------- Number of wisps created on cast --------


-------- - --------


Set GCD_CastWispNumber = 8


-------- - --------


-------- Distance that wisp has to travel --------


-------- - --------


Set GCD_CastWispDist = 600.00


-------- - --------


-------- Speed of wisp spinning around the caster(by angle) --------


-------- - --------


Set GCD_CastWispSpinSpeed = 135.00


Set GCD_CastWispSpinSpeed = (GCD_CastWispSpinSpeed x 0.04)


-------- - --------


-------- Model of Wisp --------


-------- - --------


Set GCD_CastWispModel = units\nightelf\Wisp\Wisp.mdl


-------- - --------


-------- Wisp Scale --------


-------- - --------


Set GCD_CastWispSize = 1.00


-------- - --------


-------- Height --------


-------- - --------


Set GCD_CastWispZ = 75.00


-------- - --------


-------- Special Effect done by wisp while spinning/travelling --------


-------- - --------


Set GCD_CastWispMoveSFX = Abilities\Spells\Human\Feedback\ArcaneTowerAttack.mdl


-------- - --------


-------- Fountain spin speed --------


-------- - --------


Set GCD_FountainSpinSpeed = 22.50


-------- - --------


-------- Wisp missile spawn time --------


-------- - --------


Set GCD_WispSpawnTime = 0.20


-------- - --------


-------- Number of missiles released per spawn time --------


-------- - --------


Set GCD_WispSpawnNumber = 3


-------- - --------


-------- Distance need to travel by the wisp --------


-------- - --------


Set GCD_WispDist = GCD_CastWispDist


-------- - --------


-------- Travel speed of wisp --------


-------- - --------


Set GCD_WispSpeed = 200.00


Set GCD_WispSpeed = (GCD_WispSpeed x 0.04)


-------- - --------


-------- Parabola height of wisp --------


-------- - --------


Set GCD_WispParabolaZ = 300.00


-------- - --------


-------- Special Effect created by wisp when they die --------


-------- - --------


Set GCD_WispDeathEffect = Abilities\Spells\Other\Charm\CharmTarget.mdl


-------- - --------


-------- Wisp Color Table --------


-------- - --------


Set GCD_WispColors[1] = Red


Set GCD_WispColors[2] = Blue


Set GCD_WispColors[3] = Purple


Set GCD_WispColors[4] = Yellow


Set GCD_WispColors[5] = Orange


Set GCD_WispColors[6] = Green


Set GCD_WispColorIndex = 6


-------- - --------


-------- Channel Duration --------


-------- - --------


Set GCD_ChannelDuration[1] = 9.00


Set GCD_ChannelDuration[2] = 11.00


Set GCD_ChannelDuration[3] = 15.00


-------- - --------


-------- Damage and Mana burn values --------


-------- - --------


Set GCD_Damage[1] = 100.00


Set GCD_Damage[2] = 125.00


Set GCD_Damage[3] = 200.00


Set GCD_ManaBurn[1] = 50.00


Set GCD_ManaBurn[2] = 75.00


Set GCD_ManaBurn[3] = 100.00


-------- - --------


-------- DMB Loop --------


-------- - --------


Set GCD_DMB_Loop = 1.00


-------- - --------


-------- Special effect created when units are affected --------


-------- - --------


Set GCD_DMB_SFX = Abilities\Spells\Human\Feedback\ArcaneTowerAttack.mdl


-------- - --------


-------- Effect Radius --------


-------- - --------


Set GCD_EffectRadius = GCD_CastWispDist


-------- - --------


-------- Number of layers of shard --------


-------- - --------


Set GCD_ShardLayer = 5


-------- - --------


-------- Number of shards per layer --------


-------- - --------


Set GCD_ShardNumberPerLayer = 12


-------- - --------


-------- Distance of layers to each other --------


-------- - --------


Set GCD_ShardLayerDist = (GCD_CastWispDist / (Real(GCD_ShardLayer)))


-------- - --------


-------- Model of shards --------


-------- - --------


Set GCD_ShardModel = Abilities\Weapons\SpiritOfVengeanceMissile\SpiritOfVengeanceMissile.mdl


-------- - --------


-------- scale of shards --------


-------- - --------


Set GCD_ShardScale = 1.50


-------- - --------


-------- Shard Parabola --------


-------- - --------


Set GCD_ShardParabola = 1.00


-------- - --------


-------- Shard Speed --------


-------- - --------


Set GCD_ShardSpeed = GCD_ShardLayerDist


Set GCD_ShardSpeed = (GCD_ShardSpeed x 0.04)


-------- - --------


-------- Shard Death Effect --------


-------- - --------


Set GCD_ShardDeathEffect = Abilities\Spells\Human\DispelMagic\DispelMagicTarget.mdl
GC Cast

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to GCD_Ability

Actions


Set GCD_Portal = (Triggering unit)


Set GCD_Level = (Level of GCD_Ability for GCD_Portal)


Set GCD_Loc = (Target point of ability being cast)


-------- - --------


-------- Index caster --------


-------- - --------


Unit - Create 1 Dummy for (Triggering player) at GCD_Loc facing 0.00 degrees


Set GCD_Portal = (Last created unit)


Set GCD_TempIndex = (Custom value of GCD_Portal)


Set GCD_Player[GCD_TempIndex] = (Triggering player)


Set GCD_GroupId[GCD_TempIndex] = 1


Set GCD_Max[GCD_TempIndex] = GCD_ChannelDuration[GCD_Level]


Set GCD_Duration[GCD_TempIndex] = 0.00


Set GCD_TDamage[GCD_TempIndex] = GCD_Damage[GCD_Level]


Set GCD_TManaBurn[GCD_TempIndex] = GCD_ManaBurn[GCD_Level]


Set GCD_Pulse[GCD_TempIndex] = 0.00


Set GCD_Spawn[GCD_TempIndex] = 0.00


Set GCD_Angle[GCD_TempIndex] = (Random angle)


Special Effect - Create a special effect attached to the chest of GCD_Portal using GCD_PortalMDL


Set GCD_MDL[GCD_TempIndex] = (Last created special effect)


Animation - Change GCD_Portal's size to ((GCD_PortalSize / 0.01)%, 0.00%, 0.00%) of its original size


Unit Group - Add GCD_Portal to GCD_Group


Trigger - Turn on GC Loop <gen>


-------- - --------


-------- Create wisp --------


-------- - --------


Set GCD_TempPlayer = GCD_Player[GCD_TempIndex]


For each (Integer GCD_TempI) from 1 to GCD_CastWispNumber, do (Actions)



Loop - Actions




Set GCD_TempAngle = ((Real(GCD_TempI)) x (360.00 / (Real(GCD_CastWispNumber))))




Unit - Create 1 Dummy for GCD_TempPlayer at GCD_Loc facing GCD_TempAngle degrees




Set GCD_TempU = (Last created unit)




Custom script: if UnitAddAbility(udg_GCD_TempU, 'Amrf') and UnitRemoveAbility(udg_GCD_TempU, 'Amrf') then




Custom script: endif




Set GCD_TempIndex = (Custom value of GCD_TempU)




Set GCD_N[GCD_TempIndex] = 0




Set GCD_P[GCD_TempIndex] = 0




Set GCD_N[GCD_P[0]] = GCD_TempIndex




Set GCD_P[0] = GCD_TempIndex




-------- - --------




-------- Index dummy --------




-------- - --------




Set GCD_Max[GCD_TempIndex] = GCD_ChannelDuration[GCD_Level]




Set GCD_Duration[GCD_TempIndex] = 0.00




Set GCD_Dist[GCD_TempIndex] = 0.00




Set GCD_Angle[GCD_TempIndex] = GCD_TempAngle




Set GCD_GroupId[GCD_TempIndex] = 2




Set GCD_Org[GCD_TempIndex] = GCD_Portal




Special Effect - Create a special effect attached to the chest of GCD_TempU using GCD_CastWispModel




Set GCD_MDL[GCD_TempIndex] = (Last created special effect)




Animation - Change GCD_TempU flying height to GCD_CastWispZ at 0.00




Unit - Change color of GCD_TempU to GCD_WispColors[(Random integer number between 1 and GCD_WispColorIndex)]




Animation - Change GCD_TempU's size to ((GCD_CastWispSize / 0.01)%, 0.00%, 0.00%) of its original size




Unit Group - Add GCD_TempU to GCD_Group


Special Effect - Create a special effect at GCD_Loc using GCD_OnCastSFX


Special Effect - Destroy (Last created special effect)


Custom script: call RemoveLocation(udg_GCD_Loc)


Trigger - Turn on GC Loop <gen>
GC Loop

Events


Time - Every 0.04 seconds of game time

Conditions

Actions


If (All Conditions are True) then do (Then Actions) else do (Else Actions)



If - Conditions




(Number of units in GCD_Group) Equal to 0



Then - Actions




Trigger - Turn off (This trigger)



Else - Actions




Unit Group - Pick every unit in GCD_Group and do (Actions)





Loop - Actions






Set GCD_U = (Picked unit)






Set GCD_Index = (Custom value of GCD_U)






Custom script: set udg_GCD_X = GetUnitX(udg_GCD_U)






Custom script: set udg_GCD_Y = GetUnitY(udg_GCD_U)






Set GCD_Loc = (Position of GCD_U)






-------- - --------






-------- Group 1 : Casters --------






-------- - --------






If (All Conditions are True) then do (Then Actions) else do (Else Actions)







If - Conditions








GCD_GroupId[GCD_Index] Equal to 1







Then - Actions








If (All Conditions are True) then do (Then Actions) else do (Else Actions)









If - Conditions










GCD_Duration[GCD_Index] Less than GCD_Max[GCD_Index]









Then - Actions










Set GCD_Duration[GCD_Index] = (GCD_Duration[GCD_Index] + 0.04)










-------- - --------










-------- Damage Units --------










-------- - --------










If (All Conditions are True) then do (Then Actions) else do (Else Actions)











If - Conditions












GCD_Pulse[GCD_Index] Greater than GCD_DMB_Loop











Then - Actions












Set GCD_Pulse[GCD_Index] = 0.00












Custom script: set bj_wantDestroyGroup = true












Unit Group - Pick every unit in (Units within GCD_EffectRadius of GCD_Loc) and do (Actions)













Loop - Actions














Set GCD_TempU = (Picked unit)














If (All Conditions are True) then do (Then Actions) else do (Else Actions)















If - Conditions
















(GCD_TempU is A structure) Not equal to True
















(GCD_TempU is Magic Immune) Not equal to True
















(GCD_TempU is alive) Equal to True
















(GCD_TempU belongs to an enemy of GCD_Player[GCD_Index]) Equal to True















Then - Actions
















Unit - Cause GCD_U to damage GCD_TempU, dealing GCD_TDamage[GCD_Index] damage of attack type Chaos and damage type Divine
















Unit - Set mana of GCD_TempU to ((Mana of GCD_TempU) - GCD_TManaBurn[GCD_Index])
















Set GCD_Offset = (Position of GCD_TempU)
















Special Effect - Create a special effect at GCD_Offset using GCD_DMB_SFX
















Special Effect - Destroy (Last created special effect)
















Custom script: call RemoveLocation(udg_GCD_Offset)















Else - Actions











Else - Actions












Set GCD_Pulse[GCD_Index] = (GCD_Pulse[GCD_Index] + 0.04)










-------- - --------










-------- Create Wisps --------










-------- - --------










If (All Conditions are True) then do (Then Actions) else do (Else Actions)











If - Conditions












GCD_Spawn[GCD_Index] Greater than GCD_WispSpawnTime











Then - Actions












Set GCD_Spawn[GCD_Index] = 0.00












Set GCD_Angle[GCD_Index] = (GCD_Angle[GCD_Index] + GCD_FountainSpinSpeed)












For each (Integer GCD_TempI) from 1 to GCD_WispSpawnNumber, do (Actions)













Loop - Actions














Set GCD_TempAngle = (((360.00 / (Real(GCD_WispSpawnNumber))) x (Real(GCD_TempI))) + GCD_Angle[GCD_Index])














Unit - Create 1 Dummy for GCD_Player[GCD_Index] at GCD_Loc facing GCD_TempAngle degrees














Set GCD_TempU = (Last created unit)














Custom script: if UnitAddAbility(udg_GCD_TempU, 'Amrf') and UnitRemoveAbility(udg_GCD_TempU, 'Amrf') then














Custom script: endif














Set GCD_TempIndex = (Custom value of GCD_TempU)














-------- - --------














-------- Index dummy --------














-------- - --------














Set GCD_Dist[GCD_TempIndex] = 0.00














Set GCD_Angle[GCD_TempIndex] = GCD_TempAngle














Set GCD_GroupId[GCD_TempIndex] = 3














Special Effect - Create a special effect attached to the origin of GCD_TempU using GCD_CastWispModel














Set GCD_MDL[GCD_TempIndex] = (Last created special effect)














Unit - Change color of GCD_TempU to GCD_WispColors[(Random integer number between 1 and GCD_WispColorIndex)]














Animation - Change GCD_TempU's size to ((GCD_CastWispSize / 0.01)%, 0.00%, 0.00%) of its original size














Unit Group - Add GCD_TempU to GCD_Group











Else - Actions












Set GCD_Spawn[GCD_Index] = (GCD_Spawn[GCD_Index] + 0.04)









Else - Actions










-------- - --------










-------- Create Shards --------










-------- - --------










For each (Integer GCD_TempI) from 1 to GCD_ShardLayer, do (Actions)











Loop - Actions












Set GCD_TempDist = (GCD_ShardLayerDist x (Real(GCD_TempI)))












For each (Integer GCD_TempI2) from 1 to GCD_ShardNumberPerLayer, do (Actions)













Loop - Actions














Set GCD_TempAngle = ((Real(GCD_TempI2)) x (360.00 / (Real(GCD_ShardNumberPerLayer))))














Unit - Create 1 Dummy for GCD_Player[GCD_Index] at GCD_Loc facing GCD_TempAngle degrees














Set GCD_TempU = (Last created unit)














Custom script: if UnitAddAbility(udg_GCD_TempU, 'Amrf') and UnitRemoveAbility(udg_GCD_TempU, 'Amrf') then














Custom script: endif














Set GCD_TempIndex = (Custom value of GCD_TempU)














-------- - --------














-------- Index dummy --------














-------- - --------














Set GCD_Max[GCD_TempIndex] = GCD_TempDist














Set GCD_Dist[GCD_TempIndex] = 0.00














Set GCD_Angle[GCD_TempIndex] = GCD_TempAngle














Set GCD_GroupId[GCD_TempIndex] = 4














Special Effect - Create a special effect attached to the origin of GCD_TempU using GCD_ShardModel














Set GCD_MDL[GCD_TempIndex] = (Last created special effect)














Animation - Change GCD_TempU's size to ((GCD_ShardScale / 0.01)%, 0.00%, 0.00%) of its original size














Unit Group - Add GCD_TempU to GCD_Group














Trigger - Turn on GC Loop <gen>










Unit Group - Remove GCD_U from GCD_Group










Special Effect - Destroy GCD_MDL[GCD_Index]










Custom script: set udg_GCD_MDL[udg_GCD_Index] = null







Else - Actions






-------- - --------






-------- Group 2 : Wisps --------






-------- - --------






If (All Conditions are True) then do (Then Actions) else do (Else Actions)







If - Conditions








GCD_GroupId[GCD_Index] Equal to 2







Then - Actions








If (All Conditions are True) then do (Then Actions) else do (Else Actions)









If - Conditions










GCD_Duration[GCD_Index] Less than GCD_Max[GCD_Index]









Then - Actions










Set GCD_Duration[GCD_Index] = (GCD_Duration[GCD_Index] + 0.04)










Set GCD_Offset = (Position of GCD_Org[GCD_Index])










If (All Conditions are True) then do (Then Actions) else do (Else Actions)











If - Conditions












(Distance between GCD_Loc and GCD_Offset) Less than GCD_CastWispDist











Then - Actions












Set GCD_Dist[GCD_Index] = (GCD_Dist[GCD_Index] + 0.04)












Set GCD_TempDist = ((((4.00 x GCD_CastWispDist) x GCD_Dist[GCD_Index]) x (GCD_FountainSpawnDelay - GCD_Dist[GCD_Index])) / (GCD_FountainSpawnDelay x GCD_FountainSpawnDelay))












Custom script: set udg_GCD_X = GetUnitX(udg_GCD_Org[udg_GCD_Index]) + udg_GCD_TempDist * Cos(udg_GCD_Angle[udg_GCD_Index] * bj_DEGTORAD)












Custom script: set udg_GCD_Y = GetUnitY(udg_GCD_Org[udg_GCD_Index]) + udg_GCD_TempDist * Sin(udg_GCD_Angle[udg_GCD_Index] * bj_DEGTORAD)












Unit - Make GCD_U face GCD_Angle[GCD_Index] over 0.00 seconds











Else - Actions












Set GCD_Angle[GCD_Index] = (GCD_Angle[GCD_Index] + GCD_CastWispSpinSpeed)












Custom script: set udg_GCD_X = GetUnitX(udg_GCD_Org[udg_GCD_Index]) + udg_GCD_CastWispDist * Cos(udg_GCD_Angle[udg_GCD_Index] * bj_DEGTORAD)












Custom script: set udg_GCD_Y = GetUnitY(udg_GCD_Org[udg_GCD_Index]) + udg_GCD_CastWispDist * Sin(udg_GCD_Angle[udg_GCD_Index] * bj_DEGTORAD)












Unit - Make GCD_U face (GCD_Angle[GCD_Index] + 90.00) over 0.00 seconds










Custom script: call SetUnitX(udg_GCD_U, udg_GCD_X)










Custom script: call SetUnitY(udg_GCD_U, udg_GCD_Y)










Special Effect - Create a special effect at GCD_Loc using GCD_CastWispMoveSFX










Special Effect - Destroy (Last created special effect)










Custom script: call RemoveLocation(udg_GCD_Offset)









Else - Actions










Unit Group - Remove GCD_U from GCD_Group










Special Effect - Destroy GCD_MDL[GCD_Index]










Unit - Kill GCD_U







Else - Actions






-------- - --------






-------- Group 3 : Missile Wisps --------






-------- - --------






If (All Conditions are True) then do (Then Actions) else do (Else Actions)







If - Conditions








GCD_GroupId[GCD_Index] Equal to 3







Then - Actions








If (All Conditions are True) then do (Then Actions) else do (Else Actions)









If - Conditions










GCD_Dist[GCD_Index] Less than GCD_WispDist









Then - Actions










Set GCD_Dist[GCD_Index] = (GCD_Dist[GCD_Index] + GCD_WispSpeed)










Set GCD_TempZ = (((4.00 x GCD_WispParabolaZ) / GCD_WispDist) x ((GCD_WispDist - GCD_Dist[GCD_Index]) x (GCD_Dist[GCD_Index] / GCD_WispDist)))










Animation - Change GCD_U flying height to GCD_TempZ at 0.00










Custom script: set udg_GCD_X = udg_GCD_X + udg_GCD_WispSpeed * Cos(udg_GCD_Angle[udg_GCD_Index] * bj_DEGTORAD)










Custom script: set udg_GCD_Y = udg_GCD_Y + udg_GCD_WispSpeed * Sin(udg_GCD_Angle[udg_GCD_Index] * bj_DEGTORAD)










Custom script: call SetUnitX(udg_GCD_U, udg_GCD_X)










Custom script: call SetUnitY(udg_GCD_U, udg_GCD_Y)









Else - Actions










Unit Group - Remove GCD_U from GCD_Group










Special Effect - Create a special effect at GCD_Loc using GCD_WispDeathEffect










Special Effect - Destroy (Last created special effect)










Special Effect - Destroy GCD_MDL[GCD_Index]










Unit - Kill GCD_U







Else - Actions






-------- - --------






-------- Group 4 : Shards --------






-------- - --------






If (All Conditions are True) then do (Then Actions) else do (Else Actions)







If - Conditions








GCD_GroupId[GCD_Index] Equal to 4







Then - Actions








If (All Conditions are True) then do (Then Actions) else do (Else Actions)









If - Conditions










GCD_Dist[GCD_Index] Less than GCD_Max[GCD_Index]









Then - Actions










Set GCD_Dist[GCD_Index] = (GCD_Dist[GCD_Index] + GCD_ShardSpeed)










Set GCD_TempZ = (((4.00 x (GCD_ShardParabola x GCD_Max[GCD_Index])) / GCD_Max[GCD_Index]) x ((GCD_Max[GCD_Index] - GCD_Dist[GCD_Index]) x (GCD_Dist[GCD_Index] / GCD_Max[GCD_Index])))










Animation - Change GCD_U flying height to GCD_TempZ at 0.00










Custom script: set udg_GCD_X = udg_GCD_X + udg_GCD_ShardSpeed * Cos(udg_GCD_Angle[udg_GCD_Index] * bj_DEGTORAD)










Custom script: set udg_GCD_Y = udg_GCD_Y + udg_GCD_ShardSpeed * Sin(udg_GCD_Angle[udg_GCD_Index] * bj_DEGTORAD)










Custom script: call SetUnitX(udg_GCD_U, udg_GCD_X)










Custom script: call SetUnitY(udg_GCD_U, udg_GCD_Y)









Else - Actions










Unit Group - Remove GCD_U from GCD_Group










Special Effect - Create a special effect at GCD_Loc using GCD_ShardDeathEffect










Special Effect - Destroy (Last created special effect)










Special Effect - Destroy GCD_MDL[GCD_Index]










Unit - Kill GCD_U







Else - Actions
| Credits |
| Bribe - Unit Indexer |
| This is my final entry |
Anyways here's another WiP of mine, WiP # 4.
I was supposed to add Almia's Linked List Table and Timed Effect to my spell but when I imported it my map ceased to load, so I had to remove it.
CREDITS:
-Almia (Knockback)
-Paladon (Jump System)
It looks like bugged,I can't see any units knockbacked.Also,the I can't see the caster do the omnislash
Because of my addicted job in spells,I was going to review it but I remembered that this was a Contest XD
Oh it's not bugged; the knockbacks just don't happen in thick crowds, and sometimes when faced with a few enemies (1 or 2) the damage from the two circle of stomps kills the units before the knockback so it does not happen.
Also in the current version mostly what the user sees is the jump, but in some cases when the path is clear the jump and knockback mix so the units are sent even beyond the camera bounds.
I'll post a YouTube video later.
P.S. The Omnislash is there, just happens really, really fast, because I don;t know how to make it wait without ruining the MUI.
Why not just seperate the units then? If im a judge,i will deduct it.
the jump and knockback mix so the units are sent even beyond the camera bounds.
Almia said:If im a judge,i will deduct it.
if its camera bounds only, thats okay... but make sure that units don't go beyond map bounds...
as for the MUI in larger time periods, there's a quite a few ways to do that...
Anyways here's another WiP of mine, WiP # 4.
I was supposed to add Almia's Linked List Table and Timed Effect to my spell but when I imported it my map ceased to load, so I had to remove it.
CREDITS:
-Almia (Knockback)
-Paladon (Jump System)
I must admit that I'm almost finish with the spell, at least 98% done. All I'm doing now is fixing the tooltip and figuring out what more to add.
I can't reduce the sfx now because it will be the spell's core, and besides the user can just set it to None.mdl in the Configuration trigger.
And as I have mentioned before you're not going to really see the caster move through the enemies and you probably won't based on the current version, because I can't figure out how to make it wait without ruining the MUI, not until the contest is over.
When and if I'm successful at adding a wait to the Omnislashing you or any other user will always see the hero do the omnislash, but right now, that's just impossible to do.
Anyways, I have removed that Phoenix-missile sfx that are created when the blademaster hits a unit, and I have replaced it with the Batroll-blood special effect, so the hero will be a little bit more visible after the omnislash despite the killer default special effect.
The special effect when the hero is doing the random slashin in the enemy is really quite disturbing too, you should also change that. =)
I know; I changed to the Batroll-blood spawned effects sfx. So now the only noticeable effects are those of the jump's and the knockback's.
I'm making it a configurable right now.
well it can't be either, it's one or the other, and that determines whether or not there's another 24 hours some weren't expecting, or 24 hours people were expecting which isn't there

ZS Config

Events


Time - Elapsed game time is 0.00 seconds

Conditions

Actions


-------- CONFIGURE --------


-------- Circle Start to Final Configurables --------


-------- ///////////////////////////////////// --------


-------- Determines the number of sttomps created at Cast --------


Set ZS_StartCircleNumber = 12


-------- Determines the number of stomps created at the latter --------


Set ZS_FinalCircleNumber = 8


-------- Determines how far the effects are created from the caster --------


Set ZS_StartCircleOffset = 200.00


Set ZS_FinalCircleOffset = 100.00


-------- Determines how much damage are created by the stomps --------


Set ZS_StartCircleDamage = 50.00


Set ZS_FinalCircleDamage = 50.00


-------- Determines the SFX units created for the stomps --------


Set ZS_StartDummy = ZS_Dummy


Set ZS_FinalDummy = ZS_FinalDummy


-------- ///////////////////////////////////// --------


-------- End Circle Config --------


-------- 1-Second Omnislash Configurables (Where the caster charges towards the nearest enemy units) --------


-------- ///////////////////////////////////// --------


-------- Determined How many times the caster moves around the battlefield slashing: --------


Set ZS_Omnislash_Loop = 8


-------- Determines the Range the caster omnislashes from his original position: --------


Set ZS_Omnislash_Range = 600.00


-------- Determines the damage the caster inflicts whilst omnislashing --------


Set ZS_Omnislash_Damage = 100.00


-------- The Attack Type for the damage inflicted whilst omnislashing: --------


Set ZS_Omnislash_AttackType = Chaos


-------- The Damage Type for the attack inflicted whilst omnislashing --------


Set ZS_Omnislash_DamageType = Divine


-------- Determines the sfx attached to the caster --------


Set ZS_Omnislash_Sfx = Abilities\Weapons\PhoenixMissile\Phoenix_Missile.mdl


-------- Determines where on the caster the sfx is attached to while omnislashing --------


Set ZS_Omnislash_AttachPoint = weapon


-------- Determines the sfx created at the slashed unit when hit: --------


Set ZS_OmniHit_sfx = Objects\Spawnmodels\Orc\Orcblood\BattrollBlood.mdl


-------- Determines what animation is played when the caster slashes the enemy --------


Set ZS_Omnislash_AttackAnim = attack


-------- ///////////////////////////////////// --------


-------- End 1-Second Omnislash Config --------


-------- ///////////////////////////////////// --------


-------- Start Knockback Config --------


-------- Knockback Distance Traveled: --------


Set ZS_KBD = 500.00


-------- Knockback Duration --------


Set ZS_KBDU = 1.50


-------- Allow trees to die: --------


Set ZS_KBB = True


-------- The Knockback's SFX --------


Set ZS_KSFX = Abilities\Weapons\FrostWyrmMissile\FrostWyrmMissile.mdl


-------- ///////////////////////////////////// --------


-------- End Knockback Config --------


-------- ///////////////////////////////////// --------


-------- Jump Config (When Units are hit) --------


-------- ///////////////////////////////////// --------


-------- How high the targets are lifted off the ground --------


Set ZS_JumpHeight = 1.00


-------- Allow them to destroy trees when they hit them? --------


Set ZS_DestroyTreesDash = True


-------- How fast the units travel whilst jumping: --------


Set ZS_JumpSpeed = 7.00


-------- Increments in distance when lifted off the ground: --------


Set ZS_JumpIncrement = 500.00


-------- The sfx units have while jumping --------


Set ZS_JumpSFX = Abilities\Weapons\GreenDragonMissile\GreenDragonMissile.mdl


-------- The animation they play (may be set to none) --------


Set ZS_JumpAnim = none


-------- How fast that animation is played --------


Set ZS_JumpAnimSpeed = 0.60


-------- End Jump Config --------


-------- END CONFIG --------
ZS Cast

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Zephyr Strike

Actions


If (All Conditions are True) then do (Then Actions) else do (Else Actions)



If - Conditions




ZS_MaxIndex Equal to 0



Then - Actions




-------- If no instance is running, we turn on the loop --------




Trigger - Turn on ZS Loop <gen>



Else - Actions


Set ZS_MaxIndex = (ZS_MaxIndex + 1)


Set ZS_Caster[ZS_MaxIndex] = (Triggering unit)


Set ZS_CasterLoc[ZS_MaxIndex] = (Position of ZS_Caster[ZS_MaxIndex])


Set ZS_TempPlayer[ZS_MaxIndex] = (Owner of ZS_Caster[ZS_MaxIndex])


Set ZS_Counter[ZS_MaxIndex] = 0


Set ZS_Omniboolean[ZS_MaxIndex] = False
ZS Loop

Events


Time - Every 0.03 seconds of game time

Conditions

Actions


For each (Integer ZS_CurrentIndex) from 1 to ZS_MaxIndex, do (Actions)



Loop - Actions




Set ZS_Counter[ZS_CurrentIndex] = (ZS_Counter[ZS_CurrentIndex] + 1)




If (All Conditions are True) then do (Then Actions) else do (Else Actions)





If - Conditions






ZS_Counter[ZS_CurrentIndex] Equal to 30





Then - Actions






Animation - Change ZS_Caster[ZS_CurrentIndex]'s animation speed to 50.00% of its original speed






Animation - Play ZS_Caster[ZS_CurrentIndex]'s attack 1 animation






-------- [START] Circle War Stomp [START] --------






Set ZS_CasterLoc[ZS_CurrentIndex] = (Position of ZS_Caster[ZS_CurrentIndex])






For each (Integer ZS_CirclInt) from 1 to ZS_StartCircleNumber, do (Actions)







Loop - Actions








Set ZS_TempPoint[ZS_CurrentIndex] = (ZS_CasterLoc[ZS_CurrentIndex] offset by ZS_StartCircleOffset towards ((Real(ZS_CirclInt)) x (360.00 / (Real(ZS_StartCircleNumber)))) degrees)








Unit - Create 1 ZS_StartDummy for ZS_TempPlayer[ZS_CurrentIndex] at ZS_TempPoint[ZS_CurrentIndex] facing Default building facing degrees








Set ZS_Dummy[ZS_CirclInt] = (Last created unit)








Unit - Add a 0.30 second Generic expiration timer to ZS_Dummy[ZS_CirclInt]








Animation - Play ZS_Caster[ZS_CurrentIndex]'s attack 1 animation






Set ZS_TempGroup1[ZS_CurrentIndex] = (Units within 300.00 of ZS_CasterLoc[ZS_CurrentIndex] matching (((Matching unit) belongs to an enemy of ZS_TempPlayer[ZS_CurrentIndex]) Equal to True))






Unit Group - Pick every unit in ZS_TempGroup1[ZS_CurrentIndex] and do (Actions)







Loop - Actions








Unit - Cause ZS_Caster[ZS_CurrentIndex] to damage (Picked unit), dealing ZS_StartCircleDamage damage of attack type Chaos and damage type Divine






Custom script: call DestroyGroup(udg_ZS_TempGroup1[udg_ZS_CurrentIndex])






Custom script: call RemoveLocation(udg_ZS_TempPoint[udg_ZS_CurrentIndex])






-------- [END] Circle War Stomp [END] --------






-------- [START]1-second Omnislash[START] --------






For each (Integer ZS_LoopInt) from 1 to ZS_Omnislash_Loop, do (Actions)







Loop - Actions








Set ZS_TempGroup1[ZS_CurrentIndex] = (Units within ZS_Omnislash_Range of ZS_CasterLoc[ZS_CurrentIndex] matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is alive) Equal to True) and ((((Matching unit) belongs to an enemy of ZS_TempPlayer[ZS_CurrentIndex]) Equal t








Set ZS_TempGroup2[ZS_CurrentIndex] = (Random 1 units from ZS_TempGroup1[ZS_CurrentIndex])








If (All Conditions are True) then do (Then Actions) else do (Else Actions)









If - Conditions










(Number of units in ZS_TempGroup1[ZS_CurrentIndex]) Greater than 0









Then - Actions










Animation - Change ZS_Caster[ZS_CurrentIndex]'s vertex coloring to (100.00%, 100.00%, 100.00%) with 50.00% transparency










Animation - Change ZS_Caster[ZS_CurrentIndex]'s animation speed to 300.00% of its original speed










Unit Group - Pick every unit in ZS_TempGroup2[ZS_CurrentIndex] and do (Actions)











Loop - Actions












Animation - Play ZS_Caster[ZS_CurrentIndex]'s attack 1 animation












Set ZS_PickedUnit[ZS_LoopInt] = (Picked unit)












Set ZS_PickedUnitLoc[ZS_LoopInt] = (Position of ZS_PickedUnit[ZS_LoopInt])












-------- Jump Configuration (when units are hit) --------












Set JDA_JumpHigh_Distance = ZS_JumpHeight












Set JDA_DestroyTrees_Dash = ZS_DestroyTreesDash












Set JDA_TargetPoint = (ZS_PickedUnitLoc[ZS_LoopInt] offset by ((Real(ZS_LoopInt)) + ZS_JumpIncrement) towards (Angle from ZS_CasterLoc[ZS_CurrentIndex] to ZS_PickedUnitLoc[ZS_LoopInt]) degrees)












Set JDA_Unit = ZS_PickedUnit[ZS_LoopInt]












Set JDA_Speed = ZS_JumpSpeed












Set JDA_SpecialEffect = ZS_JumpSFX












Set JDA_Animation = ZS_JumpAnim












Set JDA_AnimationSpeed = ZS_JumpAnimSpeed












Trigger - Run Jump System 1 <gen> (checking conditions)












Custom script: call SetUnitPositionLoc( udg_ZS_Caster[udg_ZS_CurrentIndex], udg_ZS_PickedUnitLoc[udg_ZS_LoopInt])












Custom script: call RemoveLocation(udg_KB2D_Offset)












Custom script: call RemoveLocation(udg_KB2D_Loc)












-------- Start of Omnislashing --------












Set ZS_Counter[ZS_CurrentIndex] = 0












Custom script: call RemoveLocation( udg_ZS_PickedUnitLoc[udg_ZS_LoopInt])












Custom script: set udg_ZS_PickedUnitLoc[udg_ZS_LoopInt] = null












Animation - Play ZS_Caster[ZS_CurrentIndex]'s ZS_Omnislash_AttackAnim animation












-------- Knockback Configuration --------












Set KB2D_Source = ZS_Caster[ZS_CurrentIndex]












Set KB2D_Target = ZS_PickedUnit[ZS_LoopInt]












Custom script: set udg_KB2D_TempKey = GetHandleId(udg_KB2D_Target)












Set KB2D_SFX = ZS_KSFX












Set KB2D_Distance = ZS_KBD












Set KB2D_Duration = ZS_KBDU












Set KB2D_Loc = (Position of KB2D_Source)












Set KB2D_Offset = ZS_PickedUnitLoc[ZS_CurrentIndex]












Set KB2D_Angle = (Angle from KB2D_Loc to KB2D_Offset)












Set KB2D_AllowTreeDestroy = ZS_KBB












Custom script: call ExecuteFunc("ApplyKnockbackEffect")












Special Effect - Create a special effect attached to the chest of ZS_PickedUnit[ZS_LoopInt] using ZS_OmniHit_sfx












Special Effect - Destroy (Last created special effect)












Unit - Cause ZS_Caster[ZS_CurrentIndex] to damage ZS_PickedUnit[ZS_LoopInt], dealing ZS_Omnislash_Damage damage of attack type ZS_Omnislash_AttackType and damage type ZS_Omnislash_DamageType












Unit Group - Remove ZS_PickedUnit[ZS_LoopInt] from ZS_TempGroup2[ZS_CurrentIndex]










Custom script: call DestroyGroup( udg_ZS_TempGroup1[udg_ZS_CurrentIndex])










Custom script: call DestroyGroup( udg_ZS_TempGroup2[udg_ZS_CurrentIndex])










Animation - Change ZS_Caster[ZS_CurrentIndex]'s vertex coloring to (100.00%, 100.00%, 100.00%) with 0.00% transparency










Animation - Change ZS_Caster[ZS_CurrentIndex]'s animation speed to 100.00% of its original speed










Set ZS_Omniboolean[ZS_CurrentIndex] = True









Else - Actions










Custom script: call DestroyGroup( udg_ZS_TempGroup1[udg_ZS_CurrentIndex])










Custom script: call DestroyGroup( udg_ZS_TempGroup2[udg_ZS_CurrentIndex])










Set ZS_Omniboolean[ZS_CurrentIndex] = False






-------- [END] Omnislash[END] --------






-------- [START] Final Circle War Stomp [START] --------






Set ZS_CasterLoc[ZS_CurrentIndex] = (Position of ZS_Caster[ZS_CurrentIndex])






For each (Integer ZS_CirclInt) from 1 to ZS_FinalCircleNumber, do (Actions)







Loop - Actions








Set ZS_TempPoint[ZS_CurrentIndex] = (ZS_CasterLoc[ZS_CurrentIndex] offset by ZS_FinalCircleOffset towards ((Real(ZS_CirclInt)) x (360.00 / (Real(ZS_FinalCircleNumber)))) degrees)








Unit - Create 1 ZS_FinalDummy for ZS_TempPlayer[ZS_CurrentIndex] at ZS_TempPoint[ZS_CurrentIndex] facing Default building facing degrees








Set ZS_Dummy[ZS_CirclInt] = (Last created unit)








Unit - Add a 0.30 second Generic expiration timer to ZS_Dummy[ZS_CirclInt]








Animation - Play ZS_Caster[ZS_CurrentIndex]'s attack 1 animation






Unit Group - Pick every unit in ZS_TempGroup1[ZS_CurrentIndex] and do (Actions)







Loop - Actions








Unit - Cause ZS_Caster[ZS_CurrentIndex] to damage (Picked unit), dealing ZS_FinalCircleDamage damage of attack type Chaos and damage type Divine






-------- [END] Final Circle War Stomp [END] --------






Animation - Change ZS_Caster[ZS_CurrentIndex]'s animation speed to 100.00% of its original speed






Custom script: call DestroyGroup(udg_ZS_TempGroup1[udg_ZS_CurrentIndex])






Custom script: call RemoveLocation(udg_ZS_TempPoint[udg_ZS_CurrentIndex])






Custom script: call RemoveLocation(udg_ZS_CasterLoc[udg_ZS_CurrentIndex])






Custom script: set udg_ZS_TempPoint[udg_ZS_CurrentIndex] = null






-------- Recycling --------






Set ZS_Caster[ZS_CurrentIndex] = ZS_Caster[ZS_MaxIndex]






Set ZS_CasterLoc[ZS_CurrentIndex] = ZS_CasterLoc[ZS_MaxIndex]






Set ZS_Counter[ZS_CurrentIndex] = ZS_Counter[ZS_MaxIndex]






Set ZS_TempPlayer[ZS_CurrentIndex] = ZS_TempPlayer[ZS_MaxIndex]






Set ZS_Omniboolean[ZS_CurrentIndex] = ZS_Omniboolean[ZS_MaxIndex]






Set ZS_MaxIndex = (ZS_MaxIndex - 1)






Set ZS_CurrentIndex = (ZS_CurrentIndex - 1)






If (All Conditions are True) then do (Then Actions) else do (Else Actions)







If - Conditions








ZS_MaxIndex Equal to 0







Then - Actions








Trigger - Turn off (This trigger)







Else - Actions






-------- Instance Recycled --------






-------- End Loop --------






-------- End Cast --------





Else - Actions
Wait; can you explain the difference between the two boundaries?
And I only know one way to make an MUI wait, and I can't even get it to work. I was planning after this contest I ask the help of the higher-powers.
quick question though, does the contest end when it -becomes- the 24th, or does it end at midnight on the 24th? (I've probably missed something obvious on this matter)
actually, contests hosted by Pharaoh doesnt end in the exact date. maybe this will end a week after the given date
Thanks guys =D
Wait; does the Hive follow that or just this contest?
Adiktuz already answered my question, but for you Almia I was asking if Hive follows the GMT + 0.00 Time Zone.
