• Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
  • Read Evilhog's interview with Gregory Alper, the original composer of the music for WarCraft: Orcs & Humans 🔗Click here to read the full interview.

===[NEW] Spell Workshop [NEW]===

Status
Not open for further replies.
Level 3
Joined
Oct 12, 2010
Messages
39
lets say we do X spells for each person.
we are 3 people.

X = 105 / 3 = 35
35 spells each person
each spell = 1 hour. (so not true..)
35*1 = 35.
that means, 35 hours wasted on 35 spells.
which ussualy takes 0.1 - 4.5 hours per spell.
so lets say its 0.1, which is 10 mins?
35*0.1 = 3.5
3.5 hours. that IS STILL ALOT, and so impossible to make a spell in 10 mins unless its a useless stupid spell.

so i guess we wont be ble to finish them all, unless you got ~35-50 hours.
we might be able to finish some of them,
unlses you just went big with 105.


21 units with 5 spells each, 4 normals and 1 ulti.

5*21=105


But 35/h per person isnt very long time if you split it up in chunks of 3hrs

35/3 = 11,56

So, basicly, if you do 3 spells a day it will take aprox 11-12 days.
But as some of the spells require way more time then 3 hours (i think atleast) We round this up to 20 days instead.

35/20 = 0,8333=> spells a day.

And as you got 30 days to do this its acctually this: 35/30 = 0,8517
Still not very much :)

And its 1 month from when I put the list up, and that won't be for another 3-4 days i think >.<


EDIT: Will release it in 7 parts of 25 spells each. First part is comming tomorrow.
EDIT2: Changed my mind, "only" 95 spells now, as i cant get ideas for 2 of the chars >.<
 
Last edited:
Level 3
Joined
Oct 12, 2010
Messages
39
Name: Horror
Levels: 10
Description: The Psykeeper creates a horrible illusion that damages the target for X damage and does X damage in a small area. The target then get's paused for [(Spell level * Target level) / 100] seconds, then it get’s unpaused.

Name: Mind
Levels: 10
Description: The Psykeeper takes over the target's mind for X seconds dealing damage to them equal to [(Spell level + Target level) * 100] per second. If the unit dies while under the effect of Mind it explodes dealing [(Spell level + Target level) * 30] in 400 AoE.

Name: Nightmare
Levels: 10
Description: The Psykeeper put's the target into sleep while giving the target the worst nightmare it could ever get. This makes the target to take [(Spell level * Target level) * 100] damage per second for [(Target level / Spell level) / 10] seconds.

Name: Betrayal
Levels: 10
Description: The Psykeeper causes the targeted unit to attack a friendly unit while under the effect of Betrayal. The duration of betrayal is [Spell level * 10] seconds. If the targeted unit kills an allied unit while under the effect of Betrayal the targeted unit will deal [(Spell level * Target Level) + Ally Level * (Caster level/10)] damage to itself.

Name: Pain, Death and Fear [ULTIMATE]
Levels: 5
Description: The Psykeeper splits up into Pain, Death and Fear who each got different abilities (these should fit with the name). The duration for these is [(Spell level * Caster Level) / 10] seconds. If anyone of these survives until the end of the duration time the Psykeeper retakes its original form.
=======================================================

Name: Soul Slash
Levels: 10
Description: The Soul Blade Master teleports behind a target and smashes it's swords into the ground stunning the target for [Spell level * 1.5] seconds. After this the SBM attacks the target with [Spell level * 3] quick slashes dealing [(Target level/10) * (Caster Level/Spell level)] in damage each.

Name: Blade Mastery
Levels: 10
Description: Increases the chances to hit a critical hit that increases the damage by [(Spell level * 10) * (Target level/10) + (Damage * Spell level)] also decreases the chance to miss by [(Spell level * 10) - (Target level / 100)] and increases the chance that an attacking unit will miss by [(Spell level * 10) - (Casters level / 25)].

Name: Soul Steal
Levels: 10
Description: The duration of this spell = [(Spell level * 10) + (Caster level / 50)] seconds. While the casting unit is under effect of SS each hit will drain Mana = [(Attacked unit level / 10) + (Casters level * 5)] and each hit will also steal [(Attacked unit level * 5) + (Casters level * 2)] hit points.

Name: Shift
Levels: 10
Description: Changes place with the targeted unit (must be an enemy) and deals [(Spell level * 5) * (Target level + Caster level)] damage and stunning the target for [(Spell level * 0.5) + (Target level / 40)

Name: Soul Split [ULTIMATE]
Levels: 5
Description: The SBM kills itself and instantly revives in the form of its evil soul and its good soul. The look of the souls are the same as the SBM but transparent. And the evil one is transparent black and the good one is transparent yellow. Duration of the souls is [(Spell level * 10) + (Caster level / 10)
======================================================

Name: Fire Vortex
Levels: 10
Description: The Fire Titan creates a vortex out of fire around it dealing [(Spell level * Caster level) * (Spell level * 2)] to enemies in an AoE of 250 increasing by 25 each level. Also it the vortex shoots out balls of fire to enemies in an AoE of 350 increasing by 40 each level. The damage of the balls are [(Spell level * (Caster level + Target level)/100) * (Spell level * (Caster level / 100)] and the amount of balls it shoots out each [(((Spell level + Caster level)/200)/2)] seconds is equal to [(Spell level * Caster level)/100 – (Spell level * 2.5)

Name: Hotline
Levels: 10
Description: The Fire Titan creates a long line of fires (about same length as the spell Impale) dealing [(Spell level * Target level) * (Caster level + Amount of units in line)/1000)] damage to each targeted unit in line. After this the Fire Titan sends a rather big ball of fire through the line dealing an additional [(Spell level * Amount of units in line) * (Caster level / 10)] to each target in that line.

Name: Fire Up
Levels: 10
Description: The Fire Titan gains an additional [Current damage * 2 + ((Spell level * 10) + (Caster level * 20))] damage. The Fire Titan’s attack also becomes ranged when it cannot reach the target by melee. Each attack reduces the target’s armor by [(Spell level * 5) * (Target armor/200)]

Name: Flame Ball
Levels: 10
Description: Casts a huge ball made of pure fire to damage the enemy as much as possible. Damage = [(Spell level + (Target level * 2)) + (Caster level * (str+agi+int * 2))]

Name: Hellfire [ULTIMATE]
Levels: 5
Description: Puts the ground on fire in an AoE of 800 around the Fire Titan, also stunning all enemies in that area for [Spell level * 3] seconds. Then the Fire Titan casts multiple fire strikes all over that area dealing [(Spell level * 100) * (Caster level/10)] each. While doing this multiple meteors will crash down from the sky in that area dealing [(Spell level * 15) * (Caster level + (str+agi+int * 10))] The amount of meteors is [(Spell level * 20) + (Caster level/10)] During this the Fire Titan’s armor is boosted to [(Spell level * 200) * (Caster level * 20)]

=======================================================

Thats part 1/7

These are from the "hell" side, so make the spells look mean :)
If anything is confusing, ask me and i will explain :)

Also the parts in [] are the calculations that gives the correct ammount (;
 
Last edited:
Level 6
Joined
Sep 27, 2008
Messages
258
nice detail for the spells

i will try my best to do this on
 
Last edited:
I try to do this...sounds fun...

Name: Hotline
Levels: 10
Description: The Fire Titan creates a long line of fires (about same length as the spell Impale) dealing [(Spell level * Target level) * (Caster level + Amount of units in line)/1000)] damage to each targeted unit in line. After this the Fire Titan sends a rather big ball of fire through the line dealing an additional [(Spell level * Amount of units in line) * (Caster level / 10)] to each target in that line.

BTW is this a firewall with fireball?

@iAcce

Your ideas are BTW awesome!!!
 
Last edited:
Level 6
Joined
Sep 27, 2008
Messages
258
yea i am trying to make the spell Shift but i got stuck....
maybe you can help
Name: Shift
Levels: 10
Description: Changes place with the targeted unit (must be an enemy) and deals [(Spell level * 5) * (Target level + Caster level)] damage and stunning the target for [(Spell level * 0.5) + (Target level / 40)


k this is what i got so far i got the swap down but the rest just flew right over my head

  • Shift
    • Events
      • Unit - A unit Begins casting an ability
    • Conditions
      • (Ability being cast) Equal to [Q]Shift
    • Actions
      • Set Shiftcaster = (Triggering unit)
      • Set ShiftTarget = (Target unit of ability being cast)
      • Set ShiftCasterLoc = (Position of Shiftcaster)
      • Set ShiftTargetLoc = (Position of (Triggering unit))
      • Unit - Create 1 DummyShiftCaster for (Triggering player) at ShiftCasterLoc facing Default building facing degrees
      • Unit - Add a 25.00 second Generic expiration timer to (Last created unit)
      • Unit - Create 1 DummyShiftTarget for (Triggering player) at ShiftTargetLoc facing Default building facing degrees
      • Unit - Add a 25.00 second Generic expiration timer to (Last created unit)
      • Set ShiftDummyCaster = (Position of Shiftcaster)
      • Set ShiftDummyTarget = (Position of ShiftTarget)
      • Unit - Move Shiftcaster instantly to ShiftDummyTarget
      • Unit - Move ShiftTarget instantly to ShiftDummyCaster
      • -------- Don't know How to do [(Spell level * 5) * (Target level + Caster level)] damage and stunning the target for [(Spell level * 0.5) + (Target level / 40) --------
 
Level 3
Joined
Oct 12, 2010
Messages
39
I try to do this...sounds fun...

Name: Hotline
Levels: 10
Description: The Fire Titan creates a long line of fires (about same length as the spell Impale) dealing [(Spell level * Target level) * (Caster level + Amount of units in line)/1000)] damage to each targeted unit in line. After this the Fire Titan sends a rather big ball of fire through the line dealing an additional [(Spell level * Amount of units in line) * (Caster level / 10)] to each target in that line.

BTW is this a firewall with fireball?

@iAcce

Your ideas are BTW awesome!!!

Yeah, basicly :)

And thx :)
 
Level 11
Joined
Sep 12, 2008
Messages
657
i make pshyco guy


Name: Horror
Levels: 10
Description: The Psykeeper creates a horrible illusion that damages the target for X damage and does X damage in a small area. The target then get's paused for [(Spell level * Target level) / 100] seconds, then it get’s unpaused.

Name: Mind
Levels: 10
Description: The Psykeeper takes over the target's mind for X seconds dealing damage to them equal to [(Spell level + Target level) * 100] per second. If the unit dies while under the effect of Mind it explodes dealing [(Spell level + Target level) * 30] in 400 AoE.

Name: Nightmare
Levels: 10
Description: The Psykeeper put's the target into sleep while giving the target the worst nightmare it could ever get. This makes the target to take [(Spell level * Target level) * 100] damage per second for [(Target level / Spell level) / 10] seconds.

Name: Betrayal
Levels: 10
Description: The Psykeeper causes the targeted unit to attack a friendly unit while under the effect of Betrayal. The duration of betrayal is [Spell level * 10] seconds. If the targeted unit kills an allied unit while under the effect of Betrayal the targeted unit will deal [(Spell level * Target Level) + Ally Level * (Caster level/10)] damage to itself.

Name: Pain, Death and Fear [ULTIMATE]
Levels: 5
Description: The Psykeeper splits up into Pain, Death and Fear who each got different abilities (these should fit with the name). The duration for these is [(Spell level * Caster Level) / 10] seconds. If anyone of these survives until the end of the duration time the Psykeeper retakes its original form.


yea i am trying to make the spell Shift but i got stuck....
maybe you can help
Name: Shift
Levels: 10
Description: Changes place with the targeted unit (must be an enemy) and deals [(Spell level * 5) * (Target level + Caster level)] damage and stunning the target for [(Spell level * 0.5) + (Target level / 40)


k this is what i got so far i got the swap down but the rest just flew right over my head

  • Shift
    • Events
      • Unit - A unit Begins casting an ability
    • Conditions
      • (Ability being cast) Equal to [Q]Shift
    • Actions
      • Set Shiftcaster = (Triggering unit)
      • Set ShiftTarget = (Target unit of ability being cast)
      • Set ShiftCasterLoc = (Position of Shiftcaster)
      • Set ShiftTargetLoc = (Position of (Triggering unit))
      • Unit - Create 1 DummyShiftCaster for (Triggering player) at ShiftCasterLoc facing Default building facing degrees
      • Unit - Add a 25.00 second Generic expiration timer to (Last created unit)
      • Unit - Create 1 DummyShiftTarget for (Triggering player) at ShiftTargetLoc facing Default building facing degrees
      • Unit - Add a 25.00 second Generic expiration timer to (Last created unit)
      • Set ShiftDummyCaster = (Position of Shiftcaster)
      • Set ShiftDummyTarget = (Position of ShiftTarget)
      • Unit - Move Shiftcaster instantly to ShiftDummyTarget
      • Unit - Move ShiftTarget instantly to ShiftDummyCaster
      • -------- Don't know How to do [(Spell level * 5) * (Target level + Caster level)] damage and stunning the target for [(Spell level * 0.5) + (Target level / 40) --------

use this:

  • Unit - Cause (Triggering unit) to damage (Target unit of ability being cast), dealing (((Real((Level of Animate Dead for (Triggering unit)))) x 5.00) x ((Real((Level of (Target unit of ability being cast)))) + (Real((Level of (Triggering unit)))))) damage of attack type Spells and damage type Normal
stun is harder, so post it here and ill update it.
 
Level 15
Joined
Jul 9, 2008
Messages
1,552
zpider

well here is what i have so far im just working out how im going to detect the collision so i can deal the damage/destroy the mana on collision

also instead of having him go invisible/invunerable i made his channeling spell Tranquility se he heals

i can change it to the way you want with invisible/invunerable if you want


also if you want any thing else changed just ask
 

Attachments

  • zpider.w3x
    289.1 KB · Views: 63
Hotline Spell...FINISHED...100% GUI...change model of the Flame to make it look better...

What will it do?, it will create a line of fire in front of the caster (damages the enemy in that line), then creates a giant ball of fire that damages enemy also...

EDIT 1: Damage of Flame Finished...I removed the 'wait' :)

  • Set FlameDamage = ((Level of Hotline [T] for CasterUnit) x ((Level of CasterTargetUnit) x ((Level of CasterUnit) + ((Integer(UnitsInline)) / 1000))))
EDIT 2: Damage of Fireball Finished...

  • Set FireballDamage = ((Level of Hotline [T] for CasterUnit) x ((Integer(UnitsInline)) x ((Level of CasterUnit) / 10)))


  • Hotline Flame
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Hotline [T]
    • Actions
      • Set FireballInt = 14
      • Set CasterUnit = (Casting unit)
      • Set CasterTargetUnit = (Target unit of ability being cast)
      • Set CasterLoc[1] = ((Position of CasterUnit) offset by 50.00 towards ((Facing of CasterUnit) + 0.00) degrees)
      • Set FlameLocReal = 100.00
      • Set FireballLocReal = 100.00
      • For each (Integer A) from 1 to 14, do (Actions)
        • Loop - Actions
          • Unit - Create 1 Dummy (Flame) for (Owner of CasterUnit) at (CasterLoc[1] offset by FlameLocReal towards ((Facing of CasterUnit) + 0.00) degrees) facing FlameLocReal degrees
          • Set FlameUnit = (Last created unit)
          • Set UnitsInline = (UnitsInline + (Real((Number of units in (Units within 100.00 of (Position of FlameUnit))))))
          • Set FlameDamage = ((Level of Hotline [T] for CasterUnit) x ((Level of CasterTargetUnit) x ((Level of CasterUnit) + ((Integer(UnitsInline)) / 1000))))
          • Unit - Cause FlameUnit to damage circular area after 0.00 seconds of radius 100.00 at (Position of FlameUnit), dealing (Real(FlameDamage)) damage of attack type Chaos and damage type Death
          • Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
          • Set FlameLocReal = (FlameLocReal + 50.00)
          • Set FireballInt = (FireballInt - 1)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • FireballInt Equal to 0
            • Then - Actions
              • Set UnitsInline = 0.00
              • Unit - Create 1 Dummy (Fireball) for (Owner of CasterUnit) at ((Position of CasterUnit) offset by FireballLocReal towards ((Facing of CasterUnit) + 0.00) degrees) facing ((Facing of CasterUnit) + 0.00) degrees
              • Set FireballUnit = (Last created unit)
              • Unit - Add a 1.00 second Generic expiration timer to FireballUnit
              • For each (Integer A) from 1 to 5, do (Actions)
                • Loop - Actions
                  • For each (Integer A) from 1 to 20, do (Actions)
                    • Loop - Actions
                      • Wait 0.03 seconds
                      • Unit - Move FireballUnit instantly to ((Position of FireballUnit) offset by FireballLocReal towards ((Facing of FireballUnit) + 0.00) degrees)
                      • Set UnitsInline = (UnitsInline + (Real((Number of units in (Units within 100.00 of (Position of FireballUnit))))))
                      • Set FireballDamage = ((Level of Hotline [T] for CasterUnit) x ((Integer(UnitsInline)) x ((Level of CasterUnit) / 10)))
                      • Unit - Cause FireballUnit to damage circular area after 0.00 seconds of radius 100.00 at (Position of FireballUnit), dealing (Real(FireballDamage)) damage of attack type Chaos and damage type Death
                      • Set FireballLocReal = (FireballLocReal + 0.50)
            • Else - Actions
 
Last edited:
he requested a spell for the boss not the gate and stuff only the entery witch is entering the arena. witch has nothing to do with the gate.

also i realy dislike how there are waits in that trigger

I cant really do it without waits, coz the ball & flame wont move...anyway the wait for this is very very very fast to happen, so no need to worry
 
Level 6
Joined
Sep 27, 2008
Messages
258
use this:

  • Unit - Cause (Triggering unit) to damage (Target unit of ability being cast), dealing (((Real((Level of Animate Dead for (Triggering unit)))) x 5.00) x ((Real((Level of (Target unit of ability being cast)))) + (Real((Level of (Triggering unit)))))) damage of attack type Spells and damage type Normal
stun is harder, so post it here and ill update it.

all i can find is this
  • Unit - Cause (Triggering unit) to damage (Target unit of ability being cast), dealing 500.00 damage of attack type Spells and damage type Normal
 
Level 11
Joined
Sep 12, 2008
Messages
657
wooho, im at last part in the horror spell!
i've made it so good, that i hate my self for going all thru for it..
its made using even boolexprs as locals to avoid leaks as much as possible! >.>
uses as much as less globals as possible, etc.. gah this was hard.
ill edit this and post it here.

edit: IM DONE! HURRAH!! :D

JASS:
library PsyKeeperHorror initializer OnInit
    globals
        //configurables
            private constant integer ABILITY_RAW = 'A000'
            // raw of the ability.
            private constant real BaseDamage = 100
            // base damage of the skill. before all changes.
            private constant boolean MultiplyDamage = true
            // asks if you want to multiply damage every level of ability.
            private constant real MultiplyDamageBy = 2
            // if boolean above is true, multiply by?
            // math is:
            //BaseDamage * (GetUnitAbilityLevel(caster, Horror) * MultiplyDamageBy)
            private constant real BaseDamageAoe = 150
            // how much does the spell damage per unit in aoe. (maximum)
            private constant boolean MultiplyAoeDamage = true
            private constant real MultiplyAoeDamageBy = 2
            // same as damage, just aoedamage.
            
            private constant real SpellReachedUnitsAoe = 150
            // aoe that damages units withing.
            
            // stun unit math from your words:
            //The target then get's paused for [(Spell level * Target level) / 100] seconds, then it get’s unpaused.
            // based by: Spell level * unit level / 100 = stun duration.
            // Example: 1 * 1 / 100 = 0.01
            // Example: 5 * 7 / 100 = 0.35 (thats what could happend. i reccomand lowering the math >.>
            // level 5 spell * level 7 unit = abuse.
            // Example: 10(spell level) * 20(unit level) = 1
            // 1 second stun, when hero is level 20. and i guess your game has 45 levels,
            // which ends up by:
            // 10 * 45 / 100 = 4.5 seconds!
            // thats enought to kill 5 units at that level.
            
            private constant real DownBy = 100 // this represents the X * Y / ||DownBy||(100 atm).
            // the 100 seconds, so basicly, if you increase, stun duration gets lowered, if you decrease, stun duration get increased.
            
            // defaults - for damaging units -
            private constant boolean ATTACK_DEFAULT             = false
            private constant boolean RANGED_DEFAULT             = false
            private constant attacktype ATTACK_TYPE_DEFAULT     = ATTACK_TYPE_NORMAL
            private constant damagetype DAMAGE_TYPE_DEFAULT     = DAMAGE_TYPE_NORMAL
            private constant weapontype WEAPON_TYPE_DEFAULT     = WEAPON_TYPE_WHOKNOWS
            
            private constant boolean ATTACK_DEFAULT_AOE         = false
            private constant boolean RANGED_DEFAULT_AOE         = false
            private constant attacktype ATTACK_TYPE_DEFAULT_AOE = ATTACK_TYPE_NORMAL
            private constant damagetype DAMAGE_TYPE_DEFAULT_AOE = DAMAGE_TYPE_NORMAL
            private constant weapontype WEAPON_TYPE_DEFAULT_AOE = WEAPON_TYPE_WHOKNOWS
            //---------
            
            private constant string StunModelPath               = "Abilities\\Spells\\Human\\Thunderclap\\ThunderclapTarget.mdl"
            // the path of the model to stun the hero, since i use a custom made stun.
            private constant string StunModelAttachmentPoint    = "overhead"
            // attach the path above to the "overhead" of the human
            // just like a regular stun effect.
            
        //dont touch below
        //------- Arrays
        private unit array Caster
        private unit array Target
        private real array Duration
        private real array aoedamage
        private effect array stunEffect
        //------- Non Arrays
        private integer Count = 0
        private integer Count2 = 0
        //-------------------
    endglobals
    
    private function OnLoop takes nothing returns nothing
        local integer c = 0
        if Count != 0 then
            loop
            set c = c + 1
            if Duration[c] >= 1 then
                set Duration[c] = Duration[c] - 0.032
            else
                call PauseUnit(Target[c], false)
                set Target[c] = null
                set Duration[c] = 0
                call DestroyEffect(stunEffect[c])
                set stunEffect[c] = null
                set Count2 = Count2 - 1
                if Count2 == 0 then
                    set Count = 0
                    set Count2 = 0
                endif
            endif
            exitwhen c == Count
            endloop
        endif
    endfunction
    
    private function UNIT_IS_ALIVE takes nothing returns boolean
        return GetWidgetLife(GetFilterUnit()) > 0.405
    endfunction
    
    private function GroupCall takes nothing returns nothing
        local unit t = GetEnumUnit()
        local player p = GetOwningPlayer(Caster[Count])
            if t != Target[Count] and IsUnitEnemy(t, p) then
                call UnitDamageTarget(Caster[Count], t, aoedamage[Count], ATTACK_DEFAULT_AOE, RANGED_DEFAULT_AOE, ATTACK_TYPE_DEFAULT_AOE, DAMAGE_TYPE_DEFAULT_AOE, WEAPON_TYPE_DEFAULT_AOE)
            endif
        set p = null
        set t = null
    endfunction
    
    private function OnCast takes nothing returns nothing
        local real damage = 0
        local group AoeG = CreateGroup()
        local boolexpr UNIT_IS_ALIVE_BER = Condition(function UNIT_IS_ALIVE)
        set Count = Count + 1
        set Count2 = Count2 + 1
        set Target[Count] = GetSpellTargetUnit()
        set Caster[Count] = GetTriggerUnit()
        
            if MultiplyDamage == true then
                set damage = BaseDamage * (GetUnitAbilityLevel(Caster[Count], ABILITY_RAW) * MultiplyDamageBy)
            else
                set damage = BaseDamage
            endif
            
            if MultiplyAoeDamage == true then
                set aoedamage[Count] = BaseDamageAoe * (GetUnitAbilityLevel(Caster[Count], ABILITY_RAW) * MultiplyAoeDamageBy)
            else
                set aoedamage[Count] = BaseDamageAoe
            endif
            
                set Duration[Count]  = (GetUnitAbilityLevel(Caster[Count], ABILITY_RAW) * GetUnitLevel(Target[Count])) / DownBy
        //dont touch below
        call PauseUnit(Target[Count], true)
        call ResetUnitAnimation(Target[Count])
        call IssueImmediateOrder(Target[Count], "stop")
        set stunEffect[Count] = AddSpecialEffectTarget(StunModelPath, Target[Count], StunModelAttachmentPoint)
        call UnitDamageTarget(Caster[Count], Target[Count], damage, ATTACK_DEFAULT, RANGED_DEFAULT, ATTACK_TYPE_DEFAULT, DAMAGE_TYPE_DEFAULT, WEAPON_TYPE_DEFAULT)
        call GroupEnumUnitsInRange(AoeG, GetUnitX(Target[Count]), GetUnitY(Target[Count]), SpellReachedUnitsAoe, UNIT_IS_ALIVE_BER)
        call ForGroup(AoeG, function GroupCall)
        
        call DestroyGroup(AoeG)
        call DestroyBoolExpr(UNIT_IS_ALIVE_BER)
        set Caster[Count] = null
        //---------------------------------
    endfunction
    
    private function OnCond takes nothing returns boolean
        return GetSpellAbilityId() == ABILITY_RAW
    endfunction
    
    private function OnInit takes nothing returns nothing
        local trigger DM = CreateTrigger()
            call TriggerRegisterAnyUnitEventBJ(DM, EVENT_PLAYER_UNIT_SPELL_EFFECT)
            call TriggerAddCondition(DM, Condition(function OnCond))
            call TriggerAddAction(DM, function OnCast)
                call TimerStart(CreateTimer(), 0.032, true, function OnLoop)
        set DM = null
    endfunction
endlibrary

the attachment includes ONLY the horror ability.
 

Attachments

  • Psykeeper.w3x
    25.1 KB · Views: 80
Level 33
Joined
Mar 27, 2008
Messages
8,035
Complete the spell pack before I edit the first post to include the spells
It'd be much easier ;D

Apparently, my PC is having a problem...
Gonna be like slow on producing the spell
Takes 3~4 days, you don't mind ?
If you want it urgent, then I have no choice but to make it 2 days-work..
 
Level 11
Joined
Sep 12, 2008
Messages
657
thanks ;p pretty sure i made a leak there..
just cant remember =[
i saw it yesterday, but had to go sleep..
now i couldnt find it.. ohwell ;p it wasnt big asfar as i can tell..

edit: took a look into mind spell, give me 1- 2 hours and its done.
 
Level 3
Joined
Oct 12, 2010
Messages
39
When I try to save the Horror after trying it out, it is unable to save and gets 104 compile errors ._.
 
Level 12
Joined
Jan 30, 2009
Messages
1,067
Simply a question

I'm not exactly here for a request yet.

I simply want to know if it's possible. I made another thread about this, but nobody is responding yet.

Anyway, in Legend of Dragoon, there's a system called the Additions system. Basically when you hit the corresponding button at the correct time, you do another attack (In the same sequence), and that builds up your chain and you do a finishing move based on how high you got your chain up to. This vid is what I'm talking about (You only need for watch the first couple sequences to see what I mean)


And I'm simply wondering if something like this is possible? For now.


http://www.hiveworkshop.com/forums/requests-341/lod-additions-system-possible-180991/ for details.
 
Level 3
Joined
Oct 12, 2010
Messages
39
daradas
Ok, ill do that and hope for it to work ^^

And btw, the thing u wrote that I probably have 45 levels... incorrect :)
Im going to have 700 levels ^^
 
Level 11
Joined
Sep 12, 2008
Messages
657
Holy shit 700 levels?!?
Dude, increase check by levels now!!
Omg, do you realise what is 10 * 700 / 100?!?!

10 * 700 = 7000
7000 / 100 = 70
frigging 70 seconds of pure stun?!?!
And make sure they dont double cast it ;o

edit: it is indeed possible to do what you asked ;p
 
Level 3
Joined
Oct 12, 2010
Messages
39
Haha, yeah i will do that ^^

But, can you link to the vJass new gen as i cant seem to find it >.<
 
Level 12
Joined
Jan 30, 2009
Messages
1,067
:O

Awesome.

EDIT: Are you sure that's possible in GUI, Def? I'm not so sure, but then again, I'm not an expert. xD

Don't get me wrong, I'd be real happy if it was done in GUI, so I can at least somewhat understand it.

Just... not certain.
 
Last edited:
Level 12
Joined
Jan 30, 2009
Messages
1,067
when iss my spell´s getting in progess.?

Not to be rude, but... It'll be done when it's done. As outlined in the Request Forum Guidelines at the top of this forum:


  • DO NOT expect or demand people to do your request, people have lives and are busy on other things.

They obviously have a lot that they are doing already. Also, if your request needs vJASS, UNDERSTAND that this team has only ONE person who can do it in vJASS. So, be patient. If it was in this thread, it's been seen.
 
Last edited:
Level 6
Joined
Sep 27, 2008
Messages
258
k got this and for some reason it won't do damage


  • Shift
    • Events
      • Unit - A unit Begins casting an ability
    • Conditions
      • (Ability being cast) Equal to [Q]Shift
    • Actions
      • Set Shiftcaster = (Triggering unit)
      • Set ShiftTarget = (Target unit of ability being cast)
      • Set ShiftCasterLoc = (Position of Shiftcaster)
      • Set ShiftTargetLoc = (Position of (Triggering unit))
      • Unit - Create 1 DummyShiftCaster for (Triggering player) at ShiftCasterLoc facing Default building facing degrees
      • Unit - Add a 25.00 second Generic expiration timer to (Last created unit)
      • Unit - Create 1 DummyShiftTarget for (Triggering player) at ShiftTargetLoc facing Default building facing degrees
      • Unit - Add a 25.00 second Generic expiration timer to (Last created unit)
      • Set ShiftDummyCaster = (Position of Shiftcaster)
      • Set ShiftDummyTarget = (Position of ShiftTarget)
      • Unit - Move Shiftcaster instantly to ShiftDummyTarget
      • Unit - Move ShiftTarget instantly to ShiftDummyCaster
      • Unit - Cause (Triggering unit) to damage (Target unit of ability being cast), dealing ((Real(((Level of [Q]Shift for (Triggering unit)) x 5))) x ((Real((Level of (Target unit of ability being cast)))) + (Real((Level of (Triggering unit)))))) damage of attack type Spells and damage type Normal
      • -------- stunning the target for [(Spell level * 0.5) + (Target level / 40) --------
but for the stun would i use pause unit or would i have to use a spell cased from a dummy unit?

and a side thing is jazz easier then what i am using or harder?
 
Level 12
Joined
Jan 30, 2009
Messages
1,067
By "jazz" if you mean "JASS" then, it depends.

  • Learning JASS
    • Events
    • Conditions
    • Actions
      • Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Triggering unit) Knows a (Programming Language)) Equal to (==) True
        • Then - Actions
          • Set JASS_Easy = True
        • Else - Actions
          • Set JASS_Easy = False
Sorry. Quite bored atm. :p
 
Here's my version of HORROR spell...100% GUI...

Known Problem:

  • Set HorrorPause = (((Real((Level of Horror [H] for CasterUnit))) x (Real((Level of CasterTargetUnit)))) / 100.00)
Why?, because of the "/100.00"...its very fast to Unpause the targeted unit (less than a second)

UPDATE: All fixed including the Special Effects...Area damage will damage every unit in a small area over time...


  • Horror
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Horror [H]
    • Actions
      • Set CasterUnit = (Casting unit)
      • Set CasterTargetUnit = (Target unit of ability being cast)
      • Set HorrorDamage = (((Real((Level of CasterUnit))) + 2.00) x ((Real((Level of CasterTargetUnit))) x (Real((Level of Horror [H] for CasterUnit)))))
      • Set HorrorAreaDamage = ((Real((Level of CasterUnit))) + (Real((Level of CasterTargetUnit))))
      • Set HorrorPause = (((Real((Level of Horror [H] for CasterUnit))) x (Real((Level of CasterTargetUnit)))) / 100.00)
      • Unit - Pause CasterTargetUnit
      • Unit - Create 1 Dummy (Timer/Pause) for (Owner of CasterUnit) at (Position of CasterTargetUnit) facing Default building facing degrees
      • Set PauseDummyTimer = (Last created unit)
      • Unit - Add a HorrorPause second Generic expiration timer to PauseDummyTimer
      • Special Effect - Create a special effect attached to the overhead of CasterTargetUnit using Abilities\Spells\Human\Thunderclap\ThunderclapTarget.mdl
      • Set SfxStun = (Last created special effect)
      • Cinematic - Clear the screen of text messages for (All players)
      • Game - Display to (All players) the text: Unit is Paused
      • Unit - Cause CasterUnit to damage CasterTargetUnit, dealing HorrorDamage damage of attack type Chaos and damage type Death
  • Pause Timer
    • Events
      • Unit - A unit Dies
    • Conditions
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Dying unit) Equal to PauseDummyTimer
        • Then - Actions
          • Cinematic - Clear the screen of text messages for (All players)
          • Game - Display to (All players) the text: Unit is Unpaused
          • Special Effect - Destroy SfxStun
          • Unit - Unpause CasterTargetUnit
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Dying unit) Equal to CasterTargetUnit
            • Then - Actions
              • Unit - Kill PauseDummyTimer
              • Special Effect - Destroy SfxStun
            • Else - Actions
  • Area Damage
    • Events
      • Time - Every 0.50 seconds of game time
    • Conditions
      • (Number of living Dummy (Timer/Pause) units owned by (Owner of CasterUnit)) Greater than 0
    • Actions
      • Unit - Cause CasterUnit to damage circular area after 0.00 seconds of radius 250.00 at (Position of (Random unit from (Units owned by (Owner of CasterUnit) of type Dummy (Timer/Pause)))), dealing HorrorAreaDamage damage of attack type Chaos and damage type Death
 
Last edited:
Level 6
Joined
Sep 27, 2008
Messages
258
hey mckill2009 do you know how i would do the stun for

Name: Shift
Levels: 10
Description: Changes place with the targeted unit (must be an enemy) and deals [(Spell level * 5) * (Target level + Caster level)] damage and stunning the target for [(Spell level * 0.5) + (Target level / 40)
 
hey mckill2009 do you know how i would do the stun for

Name: Shift
Levels: 10
Description: Changes place with the targeted unit (must be an enemy) and deals [(Spell level * 5) * (Target level + Caster level)] damage and stunning the target for [(Spell level * 0.5) + (Target level / 40)

Make a formula first then...like this...

  • Set StunTarget = (((Real((Level of YOUR SPELL for CasterUnit))) x 0.50) + ((Real((Level of CasterTargetUnit))) / 40.00))
Then you can add that formula via expiration timer for DUMMY unit...if that dummy unit dies then the target unit will UNPAUSE...
 
Level 6
Joined
Sep 27, 2008
Messages
258
ok thanks

so i got it to swap and i got the dmg formula and stun formula(don't know if stun is right)
swap part works dmg works and got it to stun but never unstuns but i don't think i did stun right.

so here is trigger tell me what i need to change to fix pls.


  • Shift
    • Events
      • Unit - A unit Begins casting an ability
    • Conditions
      • (Ability being cast) Equal to [Q]Shift
    • Actions
      • -------- Setting Spell caster and Target and there Locations --------
      • Set Shiftcaster = (Triggering unit)
      • Set ShiftTarget = (Target unit of ability being cast)
      • Set ShiftCasterLoc = (Position of Shiftcaster)
      • Set ShiftTargetLoc = (Position of (Triggering unit))
      • -------- Creating dummy units at locations of spell caster and target --------
      • Unit - Create 1 DummyShiftCaster for (Triggering player) at ShiftCasterLoc facing Default building facing degrees
      • Unit - Add a 25.00 second Generic expiration timer to (Last created unit)
      • Unit - Create 1 DummyShiftTarget for (Triggering player) at ShiftTargetLoc facing Default building facing degrees
      • Unit - Add a 25.00 second Generic expiration timer to (Last created unit)
      • -------- Setting location of dummies --------
      • Set ShiftDummyCaster = (Position of Shiftcaster)
      • Set ShiftDummyTarget = (Position of ShiftTarget)
      • -------- Moveing spell caster to location of targetdummy --------
      • Unit - Move Shiftcaster instantly to ShiftDummyTarget
      • -------- Moveing spell target to location of casterdummy --------
      • Unit - Move ShiftTarget instantly to ShiftDummyCaster
      • -------- This makes the spell caster and it target to swap places --------
      • -------- ----------------------------------------------------------------------------------------------------------------------------------- --------
      • -------- Setting Stun time formula --------
      • Set Shiftstun = (Integer((((Real((Level of [Q]Shift for Shiftcaster))) x 0.50) + ((Real((Level of ShiftTarget))) / 40.00))))
      • -------- Dealing damage to target of the spell --------
      • Unit - Cause Shiftcaster to damage ShiftTarget, dealing ((Real(((Level of [Q]Shift for Shiftcaster) x 5))) x ((Real((Level of ShiftTarget))) + (Real((Level of Shiftcaster))))) damage of attack type Spells and damage type Normal
      • -------- Stunning target of the spell --------
      • Unit - Create 1 DummyShiftStun for (Triggering player) at (Position of ShiftTarget) facing Default building facing degrees
      • Unit - Pause ShiftTarget
      • Unit - Add a (Real(Shiftstun)) second Generic expiration timer to (Last created unit)
and do i need like a custom script to remove variables and if so what are they?

Do you want me too do like custom icon or are you doing that?
 
Last edited:
Status
Not open for further replies.
Top