• 🏆 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!

Kawaii Spell Workshop

Status
Not open for further replies.
Level 30
Joined
Nov 29, 2012
Messages
6,637
My first request at this great workshop (please do this through sending a map with my requested spells and thank you):

Deep Wounds

DDS: No
Code Type: GUI
Spell Type: Unit
Target Type: Passive
Area of Effect: No
Number of Levels: 1
Range: None
Duration: Armor Reduction for 4 seconds
Mana Cost: None
Cooldown: None
In-game Description: Gives an x% chance on its attack to deal 2x of his attack damage and reducing the enemies' armor by 50% for 4 seconds.
How the spell works: It gives the attacker an x% chance (Make the chance be modifiable by me) on its attack to deal 2x of its attack damage and reducing the enemy unit's armor by 25% that lasts for 4 seconds.
Would be adding more here for my request. They are actually many but I forgot most of them. Keep looking at this post of mine!
 
Last edited:
Hell_Master
Honestly, the main issue in the request is to trace the base armor, I'm currently hunting for an already existing spell that allows one to reduce armor by % if I wish to make it in GUI, I recall such libraries which can estimates unit's armor value, but can't be accurate tho.
EDIT : I remember now, Devotion Aura with little trick should do, I'll consider your request shortly!
EDIT2 : Oh yeah, it needs a Damage Detection System, did you have one used in your map? If not, I'll give you a list to choose.
 
Level 18
Joined
Sep 14, 2012
Messages
3,413
@Daffa : why don't you ask me :)
The script is coming.

JASS:
    function GetArmor takes unit u returns real
        local real life = GetWidgetLife(u)
        local real life2
        local real x = GetUnitX(u)
        local real y = GetUnitY(u)
        local unit v = CreateUnit(Player(15), DUMMY_ID, x, y, 0)
        local real test = 10
        if life > 200 then
            set test = 100
        endif
        call UnitDamageTarget(v, u, test, true, false, ATTACK_TYPE_CHAOS, DAMAGE_TYPE_NORMAL, null )
        set life2 = life - GetWidgetLife(u)
        call RemoveUnit(v)
        set v = null
        call SetWidgetLife(u, GetWidgetLife( u ) + life2)
        if (life2 > test) then
            return (-1*(test - life2 ) ) / ( life2 * ARMOR_CONSTANT) 
        else
            return ( test - life2 ) / ( life2 * ARMOR_CONSTANT )
        endif
    endfunction

Just switch DUMMY_ID by the rawcode of a dummy unit with no model :)


@HellMaster : 25% or 50% XD ?
 
Level 30
Joined
Nov 29, 2012
Messages
6,637
Hell_Master
Honestly, the main issue in the request is to trace the base armor, I'm currently hunting for an already existing spell that allows one to reduce armor by % if I wish to make it in GUI, I recall such libraries which can estimates unit's armor value, but can't be accurate tho.
EDIT : I remember now, Devotion Aura with little trick should do, I'll consider your request shortly!
EDIT2 : Oh yeah, it needs a Damage Detection System, did you have one used in your map? If not, I'll give you a list to choose.

Well, I am actually to use this spell on my project but the reworked version does not have yet.

Well, you could give me a list of choice then.
 
Level 18
Joined
Sep 14, 2012
Messages
3,413
To get the armor of a unit efficiently JASS is needed.
But this function can be done in GUI with custom script like this :
  • Untitled Trigger 002
    • Events
    • Conditions
    • Actions
      • Custom script: endfunction
      • Custom script: function GetUnitArmor takes unit u returns real
      • Custom script: local real life = GetWidgetLife(u)
      • Custom script: local real life2
      • Custom script: local real x = GetUnitX(u)
      • Custom script: local real y = GetUnitY(u)
      • Custom script: local real v = CreateUnit(Player(15), INSERT_THE_RAWCODE_OF_THE_DUMMY_UNIT, x, y, 0)
      • Custom script: local real test = 10
      • Custom script: if life > 200 then
      • Custom script: set test = 100
      • Custom script: endif
      • Custom script: call UnitDamageTarget(v, u, test, true, false, ATTACK_TYPE_CHAOS, DAMAGE_TYPE_NORMAL, null)
      • Custom script: set life2 = life - GetWidgetLife(u)
      • Custom script: call RemoveUnit(v)
      • Custom script: set v = null
      • Custom script: call SetWidgetLife(u, GetWidgetLife(u) + life2)
      • Custom script: if life2>test then
      • Custom script: return (-(test-life2)/(life2*ARMOR_CONSTANT_IN_THE_GAMEPLAY_CONSTANT_BASE_IS_0.06)
      • Custom script: else
      • Custom script: return ((test-life2)/(life2*ARMOR_CONSTANT_IN_THE_GAMEPLAY_CONSTANT_BASE_IS_0.06)
      • Custom script: endif
      • Custom script: endfunction
@Rheiko : There is LFH in Daffa's post
 
spell respond to attack event, not unit starts the effect of an ability.
Hey, anyways, for Bribe's Damage Engine, you can check abilities by add-ons to the system. Though it might be pretty hard to understand(because without the Damage Mod, you have to add it manually), as I stalled for like almost a year before using it to its best capabilities.
 
Level 7
Joined
Jun 28, 2013
Messages
395
@Daffa : why don't you ask me :)
The script is coming.

JASS:
    function GetArmor takes unit u returns real
        local real life = GetWidgetLife(u)
        local real life2
        local real x = GetUnitX(u)
        local real y = GetUnitY(u)
        local unit v = CreateUnit(Player(15), DUMMY_ID, x, y, 0)
        local real test = 10
        if life > 200 then
            set test = 100
        endif
        call UnitDamageTarget(v, u, test, true, false, ATTACK_TYPE_CHAOS, DAMAGE_TYPE_NORMAL, null )
        set life2 = life - GetWidgetLife(u)
        call RemoveUnit(v)
        set v = null
        call SetWidgetLife(u, GetWidgetLife( u ) + life2)
        if (life2 > test) then
            return (-1*(test - life2 ) ) / ( life2 * ARMOR_CONSTANT) 
        else
            return ( test - life2 ) / ( life2 * ARMOR_CONSTANT )
        endif
    endfunction

Just switch DUMMY_ID by the rawcode of a dummy unit with no model :)


@HellMaster : 25% or 50% XD ?
what is ARMOR_CONSTANT variable and what should we put it at first? :<
 
Make three devotion auras with ten levels.

Skill 1:
0.01 -> 0.1(1 -> 10)% armor bonus
Skill 2:
0.1 -> 1.0(10 -> 100)% armor bonus
Skill 3:
1.0 -> 10.(100 -> 1000)% armor bonus

I don't think you would need further reductions, because -2000% armor would be weird. O.O
(But you can still add indefinitely)

Add different buffs per ability, so each would work even when they are together. Then add some formula function that calculates how much armor % you need to reduce, etc.
 
Level 6
Joined
Dec 27, 2013
Messages
261
Ion Cannon

DDS: None
Code Type: GUI(Better)/JASS
Spell Type: Unit
Target Type: Target Point
Area of Effect: 1350
Number of Levels: 1
Range: Anywere but Disables when you go 500 range of the town hall
Duration: 2 sec. Before firing
Mana Cost: 100 mana
Cooldown: 300 sec.
In-game Description: Fires A Ion Cannon Stike On To Target location that deals 5000 Laser (Chaos) Damage
How the spell works: The Ion cannon effect will start having blue level-up slowing and deals 5000 damage to enemy units but,Dosent Target town Halls in a 500 Range
For My Map Solders of War.

Oh and this:
Unexpected Revenge Charge!

DDS: Maybe. (That depends if the unit dies)
Code Type: GUI
Spell Type: Hero
Target Type: Passive
Area of Effect: 750
Number of Levels: 2
Range: None
Duration: None
Mana Cost: None
Cooldown: 20/10
In-game Description: A Unexpected Charge Attacks For Revenge. Deals 20/35 Damage Every Time a unit dies.
How the spell works: The Unit has a 5%/15% Chance that a Frendly Dies will to Go to the enemy with max movement speed and attacks with 20/35 Damage also when a Frendly hero dies 50%/75% Chance to do this ablity unit who are far from the AOE Doesn't Affect That, buildings too.
 
Last edited by a moderator:
Make three devotion auras with ten levels.

Skill 1:
0.01 -> 0.1(1 -> 10)% armor bonus
Skill 2:
0.1 -> 1.0(10 -> 100)% armor bonus
Skill 3:
1.0 -> 10.(100 -> 1000)% armor bonus

I don't think you would need further reductions, because -2000% armor would be weird. O.O
(But you can still add indefinitely)

Add different buffs per ability, so each would work even when they are together. Then add some formula function that calculates how much armor % you need to reduce, etc.
The formula would be pretty hassling, I'll use BonusMod instead.
 
Level 10
Joined
Jun 9, 2012
Messages
826
Dude your spells are not understandable ^^
I didn't understand one :/

I think he meant that his 1st skill deals 5000 chaos damage in a 1350 AoE. The effects are blue in colour, like a huge beam of light. Has 2 seconds delay, and global cast range but cannot be casted within a 500 AoE of any existing townhall.

2nd skill: Can't understand it lol
 
Level 6
Joined
Dec 27, 2013
Messages
261
Everytime that a friendly unit dies under the aura effect may have a chance to cast this ability, In Level 1 5% Chance, Level 2 15 % Chance To let the hero to Attack the the enemy with Max Movement Speed and His Attack causes 20/35 Damage, Heroes die Under the aura effect will have 50%/75% chance to do this ability. Doesn't affect Buildings.
 
Level 24
Joined
May 15, 2013
Messages
3,782
Another one,
Mana Curse

DDS: N/A
Code Type: Depends on you
Spell Type: Item<<<<<<
Target Type: Target Point
Area of Effect: 300
Number of Levels: N/A
Range: 500(Cast Range)
Duration: 10sec (Mana taken dur.)
Mana Cost: N/A
Cooldown: N/A
In-game Description: I'll take care of that
How the spell works: Cast a mana draining curse in an area, draining enemy units mana for 10 seconds, total mana taken equal to 25% of a units mana (if has one). Tell me if i forgot something
 
Another one,
Mana Curse

DDS: N/A
Code Type: Depends on you
Spell Type: Item<<<<<<
Target Type: Target Point
Area of Effect: 300
Number of Levels: N/A
Range: 500(Cast Range)
Duration: 10sec (Mana taken dur.)
Mana Cost: N/A
Cooldown: N/A
In-game Description: I'll take care of that
How the spell works: Cast a mana draining curse in an area, draining enemy units mana for 10 seconds, total mana taken equal to 25% of a units mana (if has one). Tell me if i forgot something

Lack mana count per sec and a little information !

Requested from Edge45 done !
 

Attachments

  • Mana Curse.w3x
    20.2 KB · Views: 120
Level 8
Joined
Apr 17, 2013
Messages
381
can i ask something??

how the F*ck can i do this??

i mean to make a thunder like that?
5br5ea.jpg
 
Status
Not open for further replies.
Top