• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

Spell Request Thread [unofficial]

Status
Not open for further replies.
Level 11
Joined
Aug 25, 2006
Messages
971
Hey Hindyhat I decided I'd volunteer some of my time helping make spells. I just noticed how many people want to help make spells.

I find it kind of strange, because their have been many posts asking/requesting for spells, and only a few of the people here tried to help the person... Will if at any time you are overworked/lazy call me up, I'd love to make some some spells.
 
Level 5
Joined
Aug 16, 2007
Messages
149
Just_Spectating, if you replace the script, from the Attack_AttackDamage
function upwards with this you should be able to upgrade it using
upgrades. Note you'll have to set what upgrade you want (currently human
sword upgrade)
JASS:
//***************************************************************************\\
//                             Spell Name: Attack                            \\
//                            Spell Author: XieLong                          \\
//                       Conforms to the JESP Standard                       \\
//***************************************************************************\\

//= Needed Object and their ids (Make sure to copy all objects into your map and adjust the rawcodes)
//== Abilities
//=== Attack
constant function Attack_SpellId takes nothing returns integer
    return 'A000' // The spell's rawcode.
endfunction

//== Units
//=== Missile Dummy
constant function Attack_MissileId takes nothing returns integer
    return 'n002'
endfunction

//== Buffs
//=== B000 : Attack

//== Upgrades
//=== upgrade
constant function Attack_UpgradeId takes nothing returns integer
    return 'Rhme' //replace this with correct upgrade
endfunction

//= End of ObjectIds
//===========================================================================
//= Spell datas and settings

constant function Attack_LaunchImprecision takes nothing returns real
    return 10.
endfunction

constant function Attack_MissileSpeed takes nothing returns integer
    return 700 //covered distance per second
endfunction

constant function Attack_Range takes nothing returns integer
    return 800
endfunction

constant function Attack_MissileCollisonSize takes nothing returns real
    return 50.
endfunction

constant function Attack_AttackType takes nothing returns attacktype
    return ATTACK_TYPE_HERO
endfunction

function Attack_Damage takes player id returns real
    return (40. + GetRandomInt(0, 20*GetPlayerTechCountSimple(Attack_UpgradeId(), id)))
endfunction
 
Level 7
Joined
Oct 5, 2007
Messages
118
Maybee you can use ability levels?
Than change the following functions:
JASS:
function Attack_Damage takes integer lvl returns real
    return (40. + (10 * lvl) + GetRandomInt(0, 20))
endfunction
.
.
.
function Attack_Effects takes nothing returns nothing
...
            if Attack_HitConditions(c, v) then
                call UnitDamageTarget(c, v, Attack_Damage(GetUnitAbilityLevel(c, Attack_SpellId())), true, false, Attack_AttackType(), DAMAGE_TYPE_NORMAL, WEAPON_TYPE_WHOKNOWS )
                call DestroyEffect(AddSpecialEffectTarget(Attack_HitEyecandy(), v, "chest"))
                call KillUnit(u)
                call GroupClear(g)
                set i = R2I((Attack_Range() / 14) + .5)
            endif
...
 
Last edited:
Level 19
Joined
Aug 24, 2007
Messages
2,888
JASS:
function Impale_Snake_Fly_Duration takes integer ability_level,integer hero_level, integer str,integer agi,integer int returns real
// Determines the impale duration
return 1.0 + ability_level*0 +hero_level*0+ str*0 + agi*0 + int*0
endfunction

// ability_level    = Ability Level of the Spell
// hero_level       = Level of Casting Hero
// str              = Strenght of Casting Hero
// agi              = Agility of Casting Hero
// int              = Intelligence of Casting Hero

// Setup End

local integer level = GetUnitAbilityLevel(caster,GetSpellAbilityId())
local integer hlevel = GetHeroLevel(caster)
local integer agi = GetHeroAgi(caster,true)
local integer int = GetHeroInt(caster,true)
local integer str = GetHeroStr(caster,true)
local real damage = Impale_Snake_Damage(level,hlevel,str,agi,int)
local real height = Impale_Snake_Fly_Height(level,hlevel,str,agi,int)
local real duration = Impale_Snake_Fly_Duration(level,hlevel,str,agi,int)
I work like this (and store damage etc in struct)
JASS:
scope BlinkStrike

globals
private real Damage
private real Interval
private integer NumberOfHits

//! -------------- SETUP STARTS --------------

// Should trigger Preload spell in initialization
private constant boolean preload = false

// Spell Raw Code in object Editor
private constant integer SpellId = 'A009'
// Attack sound label
private constant string soundlabel = "MetalHeavySliceMetal"
// Bloodeffect model path
private constant string bloodeffect = "Abilities\\Spells\\Other\\Stampede\\StampedeMissileDeath.mdl"
// Blink Target model path
private constant string blinktarget = "Abilities\\Spells\\NightElf\\Blink\\BlinkTarget.mdl"
// Blink Caster model path
private constant string blinkcaster = "Abilities\\Spells\\NightElf\\Blink\\BlinkCaster.mdl"
endglobals


private function Setup takes integer ability_level,integer hero_level, integer str,integer agi,integer int returns nothing
// Damage done per attack
set Damage =  50.0 + ability_level*20.0 + 0*hero_level + str*0 + agi*0 + int*0
// TimeDelay between attacks
set Interval =  0.15 + ability_level*0 +0*hero_level + str*0 + agi*0 + int*0
// How many times caster will attack target
set NumberOfHits = 5 + ability_level*2 +0*hero_level + str*0 + agi*0 + int*0
endfunction

// ability_level    = Ability Level of the Spell
// hero_level       = Level of Casting Hero
// str              = Strenght of Casting Hero
// agi              = Agility of Casting Hero
// int              = Intelligence of Casting Hero

//! ---------- SETUP ENDS -------------

private struct BlinkStrikeTimer
unit caster
unit target
integer count
real damage
real startx
real starty
endstruct

function Blink_Strike_TimerFunc takes nothing returns nothing
local timer t = GetExpiredTimer()
local BlinkStrikeTimer tags = GetCSData(t)
local real dir = Atan2(GetUnitY(tags.target)-tags.starty,GetUnitX(tags.target)-tags.startx)
local sound snd = null
set tags.count = tags.count -1
    if tags.count <= 0 or GetUnitState(tags.target, UNIT_STATE_LIFE) <= 0.405 then
    call DestroyEffect(AddSpecialEffect(blinkcaster,GetUnitX(tags.caster),GetUnitY(tags.caster)))
    call SetUnitX(tags.caster,tags.startx)
    call SetUnitY(tags.caster,tags.starty)
    call SetUnitTimeScale(tags.caster,1)
    call PauseUnit(tags.caster,false)
    call IssueImmediateOrder(tags.caster,"stop")
    call UnitRemoveAbility(tags.caster,'Avul')
    call SetUnitAnimation(tags.caster,"stand")
    call DestroyEffect(AddSpecialEffect(blinktarget,GetUnitX(tags.caster),GetUnitY(tags.caster)))
    call tags.destroy()
    call DestroyTimer(t)
    return
    endif
set snd = CreateSoundFromLabel(soundlabel,false,true,true,0,0)
call SetSoundPosition(snd,GetUnitX(tags.target),GetUnitY(tags.target),50)
call StartSound(snd)
call KillSoundWhenDone(snd)
set snd = null
call SetUnitX(tags.caster,GetUnitX(tags.target)-Cos(dir)*100)
call SetUnitY(tags.caster,GetUnitY(tags.target)-Sin(dir)*100)
call SetUnitFacingTimed(tags.caster,bj_RADTODEG*dir+GetRandomReal(-90,90),0)
call SetUnitAnimation(tags.caster,"attack")
call UnitDamageTarget(tags.caster,tags.target,tags.damage,true,true,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_UNKNOWN,WEAPON_TYPE_WHOKNOWS)
call DestroyEffect(AddSpecialEffectTarget(bloodeffect,tags.target,"origin"))
set t = null

endfunction

private function SpellCast takes nothing returns nothing
local unit caster = GetTriggerUnit()
local BlinkStrikeTimer sets = BlinkStrikeTimer.create()
local timer t = CreateTimer()
local integer level = GetUnitAbilityLevel(caster,GetSpellAbilityId())
local integer hlevel = GetHeroLevel(caster)
local integer agi = GetHeroAgi(caster,true)
local integer int = GetHeroInt(caster,true)
local integer str = GetHeroStr(caster,true)
local real dir
local sound snd = CreateSoundFromLabel(soundlabel,false,true,true,0,0)
call Setup(level,hlevel,str,agi,int)
call UnitAddAbility(caster,'Avul')
call DestroyEffect(AddSpecialEffect(blinkcaster,GetUnitX(caster),GetUnitY(caster)))
call SetUnitTimeScale(caster,3)
set sets.target = GetSpellTargetUnit()
set sets.damage = Damage
set sets.caster = caster
set sets.count = NumberOfHits
set sets.startx = GetUnitX(caster)
set sets.starty = GetUnitY(caster)
call SetCSData(t,sets)
call TimerStart(t,Interval,true,function Blink_Strike_TimerFunc)
call PauseUnit(caster,true)
call SetSoundPosition(snd,GetUnitX(sets.target),GetUnitY(sets.target),50)
call StartSound(snd)
call KillSoundWhenDone(snd)
set snd = null
set dir = Atan2(GetUnitY(sets.target)-sets.starty,GetUnitX(sets.target)-sets.startx)
call SetUnitX(sets.caster,GetUnitX(sets.target)-Cos(dir)*100)
call SetUnitY(sets.caster,GetUnitY(sets.target)-Sin(dir)*100)
call SetUnitFacingTimed(sets.caster,bj_RADTODEG*dir+GetRandomReal(-90,90),0)
call SetUnitAnimation(sets.caster,"attack")
call UnitDamageTarget(sets.caster,sets.target,sets.damage,true,true,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_UNKNOWN,WEAPON_TYPE_WHOKNOWS)
call DestroyEffect(AddSpecialEffectTarget(bloodeffect,sets.target,"origin"))
call DestroyEffect(AddSpecialEffect(blinktarget,GetUnitX(caster),GetUnitY(caster)))
set t = null
set caster = null
endfunction

private function Conditions takes nothing returns boolean
return GetSpellAbilityId() ==  SpellId 
endfunction

//===========================================================================
function InitTrig_Blink_Strike takes nothing returns nothing
    local trigger spell = CreateTrigger()
    local integer i = 0
    local sound snd
    loop
    exitwhen i == 16
    call TriggerRegisterPlayerUnitEvent(spell,Player(i),EVENT_PLAYER_UNIT_SPELL_EFFECT,null)
    set i = i+1
    endloop
    call TriggerAddAction(spell,function SpellCast)
    call TriggerAddCondition(spell,Filter(function Conditions))
        if preload then
        call Preload(blinkcaster)
        call Preload(blinktarget)
        call Preload(bloodeffect)
        set snd = CreateSoundFromLabel(soundlabel,false,true,true,0,0)
        call StartSound(snd)
        call KillSoundWhenDone(snd)
        endif
    set spell = null
    set snd = null
endfunction

endscope
 
Level 3
Joined
Oct 25, 2007
Messages
26
HI im new in this thread but i very very want spell.
I want spell where after hero click on the icon spell,it will appear any targeting where hero want spell use.Target will be as sniper target and if he target spell then will appear laser from heaven what will be burn in this target location.Then spell dissapear.
Sorry for this explain but im not good in english
 
Level 19
Joined
Aug 24, 2007
Messages
2,888
why not just said: You target a point (not area) some laser effect comes from sky and burn target location

Anyway didnt mention:
- How much area it will burn
- How much damage it will do
- Burn ? like Catapult burns ground and damages every unit on burning ground ?. (Damage Over Time ?)

(Im not in team... whatever :D)
 
Level 19
Joined
Aug 24, 2007
Messages
2,888
hey sorry I wasnt gonna make that spell anyway
just warning the user
so when you see the request post
you'd feel better if there is a fixed one bellow it xD

Anyway he didnt post a fixed one after I warned

so Fail3d
 
Level 11
Joined
Aug 25, 2006
Messages
971
Hey Hindyhat I decided I'd volunteer some of my time helping make spells. I just noticed how many people want to help make spells.

I find it kind of strange, because their have been many posts asking/requesting for spells, and only a few of the people here tried to help the person... Will if at any time you are overworked/lazy call me up, I'd love to make some some spells.

That's not true bomber, I think only 2 people have requested spells they have both been addressed with quite a few posts.

I meant in other threads. All the people in this thread have been dealt with adequately.
 
Level 19
Joined
Aug 24, 2007
Messages
2,888
I use grim001's data system may I join
(just kidding dont sign me up)

man its soo good to that there is a forum that I can spam in it
(I dont mean Im allowed. Just ignoring rules.)
Horray for disorder
 
Level 1
Joined
Sep 15, 2007
Messages
2
Absorb
Icon: Death Coil
Tooltip: "Palus’ and his replicas’ viscous bodies can absorb attacks and spells, mitigating the damage and dividing Palus or the replica into two. Replicas last for 15 seconds."
Level 1 - 6% chance to absorb 15% of the damage. Replicas deal 10% damage and receive 275% damage.
Level 2 - 9% chance to absorb 20% of the damage. Replicas deal 15% damage and receive 250% damage.
Level 3 - 12% chance to absorb 25% of the damage. Replicas deal 20% damage and receive 225% damage.
Level 4 - 15% chance to absorb 30% of the damage. Replicas deal 25% damage and receive 200% damage.

You don't need to worry about making the replicas, that's already done in a separate trigger... I can just put "Run Trigger X" and get what I need.

I think that's all you need...

Thanks in advance.
 
Level 11
Joined
Aug 25, 2006
Messages
971
Hindyhat I'd like to be added to the list of spellmakers, if you don't have too many already. For examples of my work see the last two mini-spell contests.
 
Level 7
Joined
Oct 5, 2007
Messages
118
Hey, whatever you want. Tell me and what values should the damage, and I'll realize it for you. Maybee the primary attribute? Or the Hero-Level? Or something else? Just tell me exactly what you want and I'm going to realize it.
 
Level 20
Joined
Apr 22, 2007
Messages
1,960
Done PeanutPwnsYou's request:

[td]
deathcoil.gif
Absorb
"Palus’ and his replicas’ viscous bodies can absorb attacks and spells, mitigating the damage and dividing Palus or the replica into two. Replicas last for 15 seconds."
Level 1 - 6% chance to absorb 15% of the damage. Replicas deal 10% damage and receive 275% damage.
Level 2 - 9% chance to absorb 20% of the damage. Replicas deal 15% damage and receive 250% damage.
Level 3 - 12% chance to absorb 25% of the damage. Replicas deal 20% damage and receive 225% damage.
Level 4 - 15% chance to absorb 30% of the damage. Replicas deal 25% damage and receive 200% damage.
PeanutPwnsYou
#65
HINDYhat
[/td] [/TD]

EDIT: Also added wd40bomber7 to the list of spell makers. Welcome aboard! Anyway, for now I think that's enough Jassers on the team.
 

Attachments

  • Absorb_PeanutPwnsYou.w3x
    20.5 KB · Views: 102
Level 11
Joined
Aug 25, 2006
Messages
971
Also added wd40bomber7 to the list of spell makers.
Yea! Oh and just a heads up, you can never give me too much information about your spell. I want to know everything so I don't end up remaking it several times. I can't wait to get started. (Unfortunitly I'm all booked today and possibly tomorrow *waaa*)
 
Level 2
Joined
Sep 16, 2007
Messages
19
Hey guys,

I need a simple spell for a hero in my map: Freeze Armor.
You can turn the spell on and off (like the armor of the spellbreakers in wc3). When the spell is activated it drains 5 mana every 2 seconds from the caster. Whenever the caster attacks a target, it will lose 1 armor for 10 seconds, stacking up to -5 armor on lvl 1, -10 armor on lvl 2 and -30 armor on lvl 3.
When you turn the spell off, the hero will no longer decrease the armor of the enemy but the debuff stays for 10 seconds on the target.
After the 10 seconds the debuff will be removed and the target has full armor again.
The spell has no cooldown and can be turned on and off so often you wants.
Icon: http://www.hiveworkshop.com/resources_new/icons/1609/
(BTN for activating and DISBTN for deactivating)

Tanks in advance!

---Derbs

Edit: forgot the spellname^^
 
Level 7
Joined
Oct 5, 2007
Messages
118
Uhm, I'm very sorry cause busy ^^ but here are your fixes Just_Spectating:
First of all, here the line that will definetly make the caster unable to be hitten by the missile:
JASS:
    if (i < R2I((Attack_Range() / 14.) + .5) ) and ((GetRectMinX(GetWorldBounds()) <= x) and (x <= GetRectMaxX(GetWorldBounds())) and (GetRectMinY(GetWorldBounds()) <= y) and (y <= GetRectMaxY(GetWorldBounds()))) then
        call SetUnitX(u, x)
        call SetUnitY(u, y)
        call GroupEnumUnitsInRange(g, x, y, Attack_MissileCollisonSize(), null)
        call GroupRemoveUnit(g, u)
        call GroupRemoveUnit(g, c)
        loop
        ...
And I think you would like to have the upgrade system in the same trigger? So you have to add the following lines:
JASS:
// Object-Ids:
//== Items
//=== Upgrade
constant function Attack_ItemId takes nothing returns integer
    return '<here goes your tome's rawcode>' // The item's rawcode.
endfunction
...
//= Spell datas and settings
function Attack_Damage takes integer lvl returns real
    return (40. + 10 * lvl + GetRandomInt(0, 20))
endfunction
...

            if Attack_HitConditions(c, v) then
                call UnitDamageTarget(c, v, Attack_Damage(GetHandleInt(c, "AttackLvl")), true, false, Attack_AttackType(), DAMAGE_TYPE_NORMAL, WEAPON_TYPE_WHOKNOWS )
                call DestroyEffect(AddSpecialEffectTarget(Attack_HitEyecandy(), v, "chest"))
                call KillUnit(u)
                call GroupClear(g)

...
function Attack_Upgrade_Conditions takes nothing returns boolean
 return ( GetItemTypeId(GetManipulatedItem()) == Attack_ItemId() )
endfunction

function Attack_Upgrade_Actions takes nothing returns nothing
    //alternativ you could increase the level of the Attack ability (and change the tooltip that way)
    call SetHandleInt(GetManipulatingUnit(), "AttackLvl", GetHandleInt(GetManipulatingUnit(), "AttackLvl") + 1)
endfunction

function InitTrig_Attack takes nothing returns nothing
    local integer i = 0
    //Begin of the upgrade trigger
    local trigger t = CreateTrigger()
    loop
        call TriggerRegisterPlayerUnitEvent(t, Player(i), EVENT_PLAYER_UNIT_USE_ITEM, Condition(function ReturnTrue))
        set i = i + 1
        exitwhen i == 16
    endloop
    call TriggerAddCondition( t, Condition( function Attack_Upgrade_Conditions ) )
    call TriggerAddAction( t, function Attack_Upgrade_Actions )
    // End of th upgrade trigger
    set gg_trg_Attack = CreateTrigger(  )
    loop
        call TriggerRegisterPlayerUnitEvent(gg_trg_Attack, Player(i), EVENT_PLAYER_UNIT_SPELL_EFFECT, Condition(function ReturnTrue))
...
 
Level 3
Joined
May 13, 2007
Messages
69
I dont know if this is possible but here goes,

Name - Perish Song
When nearby non-Hero enemies hear the deadly song, they will recive a curse taking constant damage until they die.
Should be similar to Pit Lord's Doom spell, but is an Area of Effect spell (non-target) and does not summon creatures.
(suggested in my naga thread, i could never figure it out)
 
Level 11
Joined
Aug 25, 2006
Messages
971
Ok, my turn! Unfortunitly I'll probably be a bit too busy tomorrow to work on your spell, so I'll try to complete it tonight.
 
Level 20
Joined
Apr 22, 2007
Messages
1,960
Can anyone take care of Derbs?

Page 5:
Derbs said:
Hey guys,

I need a simple spell for a hero in my map: Freeze Armor.
You can turn the spell on and off (like the armor of the spellbreakers in wc3). When the spell is activated it drains 5 mana every 2 seconds from the caster. Whenever the caster attacks a target, it will lose 1 armor for 10 seconds, stacking up to -5 armor on lvl 1, -10 armor on lvl 2 and -30 armor on lvl 3.
When you turn the spell off, the hero will no longer decrease the armor of the enemy but the debuff stays for 10 seconds on the target.
After the 10 seconds the debuff will be removed and the target has full armor again.
The spell has no cooldown and can be turned on and off so often you wants.
Icon: http://www.hiveworkshop.com/resources_new/icons/1609/
(BTN for activating and DISBTN for deactivating)

Tanks in advance!

---Derbs

Edit: forgot the spellname^^
I don't have the time for a while.
 
Level 11
Joined
Aug 25, 2006
Messages
971
#&@^ One part of the spell 'Perish Song' isn't working. I'm trying to emulate the inability to cast spells after you've been doomed. (Doom doesn't work with multiple levels, so I can't use it) The problem with the silence is it isn't affecting the enemy units. It seems to effect only allied units. (Even the default ability) Wait... in that case I'll just make the dummy unit allied with the enemy units! GENIUS!

Edit: That doesn't work because... I don't know. It just doesn't! Anyone want to give me an alternative to silence and doom which stops spell casting?

Second Edit: DANG Life isn't fair. It turns out all the units I was trying to test silence on weren't spell casters to begin with...
I'm super tired so if the trigger has any problems report them please. Anyway here you go Cryo.

Sorry I don't know how to make a table like Hindyhat does and I'm too tired to look into it.
If this doesn't match your description it better be because I misunderstood and not because you didn't give me enough information. (Which you didn't)

@Hindyhat I'm super busy tomorrow so I won't be able to deal with it then, but if no one has gotten it by Wednesday I'll probably grab it.
 

Attachments

  • RQS_Perish Song.w3x
    16.8 KB · Views: 38
Last edited:
Level 7
Joined
Oct 5, 2007
Messages
118
Yea, I had have the same problem that he put alll the code in one line...
But here I attache the map another time so you can look the changes and take them in your map.

The names of the functions have still to be changed in the same way: Edit any 'Attack' to whatever your trigger is called. This includes also the function InitTrig_Attack, which should be changed automaticly when renaming the trigger...

€dit: Uh, there's an infinite loop within the initialisation:
JASS:
    set gg_trg_Attack = CreateTrigger(  )
    set i = 0 // < add this line to fix it :P
	loop
		call TriggerRegisterPlayerUnitEvent(gg_trg_Attack, Player(i), EVENT_PLAYER_UNIT_SPELL_EFFECT, Condition(function ReturnTrue))
		set i = i + 1
		exitwhen i == 16
	endloop
 

Attachments

  • Attack for Just_Spectating.w3x
    105 KB · Views: 33
Last edited:
Level 11
Joined
Aug 25, 2006
Messages
971
Ok, Cyro, I modified it to match your request, I'm not very good at balancing things so feel free to fiddle with the settings. Most of what I did was deleting things rather then adding things so it wasn't that big of a deal.
 

Attachments

  • RQS_Perish Song_2.w3x
    16.4 KB · Views: 40
Level 17
Joined
Apr 24, 2005
Messages
762
Id like a kind of Meteor spell only it would have a knockback effect on it. And i want it to be like when the meteor hits the ground, all targets will be knocked away from the meteor's hit point (the units are within a 250 radius). This would probably need a dummy unit at the meteors hit point. Example: when dummy unit is facing north and the unit is behind the dummy, it will be knocked back towards a point in the angle of 270 degrees, unit infront of it will fly towards a point in the angle of 90 degrees. Hope you understand.
 
Level 20
Joined
Apr 22, 2007
Messages
1,960
Id like a kind of Meteor spell only it would have a knockback effect on it. And i want it to be like when the meteor hits the ground, all targets will be knocked away from the meteor's hit point (the units are within a 250 radius). This would probably need a dummy unit at the meteors hit point. Example: when dummy unit is facing north and the unit is behind the dummy, it will be knocked back towards a point in the angle of 270 degrees, unit infront of it will fly towards a point in the angle of 90 degrees. Hope you understand.

That's simple. I could probably get it done quickly tonight. Just specify name/tooltip/levels and any other important information.
 
Level 17
Joined
Apr 24, 2005
Messages
762
Actually id like the model of the meteor to be the "star" from the premade wc3 spell "Starfall" (night elf spell) and a bit bigger if possible. And also stun after the knockback would be nice. Also the knockback shouldnt affect buildings.
Spell name would be: Starfall
Levels:3
Tooltip:Calls down a star from the sky to hit a group of enemies, knocking them away and stunning them for 3 seconds.
Dmg: ill have to use the spell and see what dmg fits best, so put anything u want.
 
Last edited:
Level 17
Joined
Nov 26, 2007
Messages
1,964
This one might be hard... i need a realistic grenade spell, similar to the one in Elimination.

Detail: The marine throws the grenade <distance(Varies per level)> which bounces, and explodes after 2 seconds. Each level increases damage and range. Level 1 - 500 range, 150 damage. Level 2- 650 range, 225 damage. Level 3- 700 range 300 damage.

I need it to like, bounce off of cliffs, and the ground, like Elimination tournament. I understand if it might be hard (i heard). So if it gets rejected i understand. Thanks in advanced!
 
Level 7
Joined
Oct 5, 2007
Messages
118
Just_Spectating:Uh, now I see your point :D Basicly you don't have to change the name with which the integer is attached, otherwise I would have maked a top-function for that :p
The only exception would be, if you want every/any hero to have more than one attack-ability each with a custom level. Buuut, there would be the trouble with same basic-abilities (beserk in the fall), so no you don't have to change the name for different attacks.
 
Level 2
Joined
Sep 16, 2007
Messages
19
Hey guys,

I need a simple spell for a hero in my map: Freeze Armor.
You can turn the spell on and off (like the armor of the spellbreakers in wc3). When the spell is activated it drains 5 mana every 2 seconds from the caster. Whenever the caster attacks a target, it will lose 1 armor for 10 seconds, stacking up to -5 armor on lvl 1, -10 armor on lvl 2 and -30 armor on lvl 3.
When you turn the spell off, the hero will no longer decrease the armor of the enemy but the debuff stays for 10 seconds on the target.
After the 10 seconds the debuff will be removed and the target has full armor again.
The spell has no cooldown and can be turned on and off so often you wants.
Icon: http://www.hiveworkshop.com/resources_new/icons/1609/
(BTN for activating and DISBTN for deactivating)

Tanks in advance!

---Derbs

umm, what about my spell?
 
Level 20
Joined
Apr 22, 2007
Messages
1,960
This one might be hard... i need a realistic grenade spell, similar to the one in Elimination.

Detail: The marine throws the grenade <distance(Varies per level)> which bounces, and explodes after 2 seconds. Each level increases damage and range. Level 1 - 500 range, 150 damage. Level 2- 650 range, 225 damage. Level 3- 700 range 300 damage.

I need it to like, bounce off of cliffs, and the ground, like Elimination tournament. I understand if it might be hard (i heard). So if it gets rejected i understand. Thanks in advanced!
You might aswell use this system, which can do things like realistic bouncing and stuff.

Derbs, I'd like to make it but I'm really busy, and your spell can take a while to make.
 
Level 7
Joined
Oct 5, 2007
Messages
118
[jass=Have you adjusted the function]//== Items
//=== Upgrade
constant function Attack_ItemId takes nothing returns integer
return 'I000' // The item's rawcode.
endfunction[/code]to whatever your tome's raw code is?
 
Level 7
Joined
Oct 5, 2007
Messages
118
omg, I should have knew it... the UNIT_USE_ITEM event doesn't work with tomes ^^[jass=so, here's the correct event] local trigger t = CreateTrigger()
loop
// You have only to adjust the following line
call TriggerRegisterPlayerUnitEvent(t, Player(i), EVENT_PLAYER_UNIT_PICKUP_ITEM, Condition(function ReturnTrue))
set i = i + 1
exitwhen i == 16
endloop
call TriggerAddCondition( t, Condition( function Attack_Upgrade_Conditions ) )
call TriggerAddAction( t, function Attack_Upgrade_Actions )[/code]
 
I knew something was wrong, ill check it.


EDIT: niice, it works. so about the 'Attacklvl' if the unit has more than 2 of these attacks, both diff base abilities so u can cast each one individually, i change the name of it to the trigger? (e.g 'Attack1lvl') cause each hero will have 2 of these "Attack" abilities, the one u helped me on here was for Air attack, this next one will be easier,

so this will be called Ground Attack, and basically, because each Hero is flying, their flying height is 350, so this Attack ability should be the same as the one u just made however u dont need it to hit anything in its path, its supposed to be like, where it lands do the damage. the missile of it should come from the hero "so 350 height" and be adjustable to where it lands (so range and gravity to the ground)

Name: Ground Attack
Tooltip: dont need,(just put 'Attack Ground') already on Hero
lvls: 1
and adjustable in the trigger. It will use the same damage as the first attack trigger u have already made for me

thanks.
 
Last edited:
Status
Not open for further replies.
Top