• 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.

[Trigger] More questions

Status
Not open for further replies.
Level 6
Joined
Sep 13, 2013
Messages
155
1- Any idea about how to make DotA's Medusa Split Arrows ?
2- What is the trigger for making a wall of trees or maybe something else to block the way ?
3- About Rubick's Fade Bolt, is it based of Chain Lightning ? (if yes, how to reduce damage on each bounce)
4- Is there any other ways to block incoming damage than to set life value of the unit to a current life + % that must be blocked from the damage ?

Many Thanks
Santa be with you =]
 
Level 37
Joined
Mar 6, 2006
Messages
9,243
4- Is there any other ways to block incoming damage than to set life value of the unit to a current life + % that must be blocked from the damage ?

Use physical damage detection system, set damage = 0. Though the system basically does what you said.

You could use Hardened skin to block basic attack damage and spell resistance ability to block magic damage.
 
Level 7
Joined
Mar 6, 2006
Messages
282
1.) never played dota
2.) if it was a wall, then you would need to get a perpendicular angle to your hero's facing angle, then just create whatever dummy wall you want to, like a unit.
3.) never played dota, but chain lightning has a field "Damage Reduction per Target"
4.) i dont understand this one, do you mean: unit damages hero, hero gains life based on the damage?


a lot of people ask for things based on what they've seen in maps, but a lot of people also don't know these maps. hell, a lot of ppl here don't even play warcraft 3, they just play world editor. anywho, it would just take 2 extra seconds to explain what the example spell does, and then more people could assist you!
 
Level 19
Joined
Mar 18, 2012
Messages
1,716
3.) never played dota, but chain lightning has a field "Damage Reduction per Target"
That reduces the chainlightning damage per target not the attackdamage of targets beeing hit.

3- About Rubick's Fade Bolt, is it based of Chain Lightning ? (if yes, how to reduce damage on each bounce)

Noone knows that, unless you have coded spells for icefrog, but you can add/remove bonus damage by using an ability which adds/removes damage.

Afaik we have no Bonus library at the moment, so you have to do it own your own.

2- What is the trigger for making a wall of trees or maybe something else to block the way ?

You can create destructables with pathing or pathing blockers via function. It takes (destructableId, x-coordinate, y-coordinate, facing)
 
most of Bonus mods that I saw are in vJASS... also, be it LUA or GUI or JASS or vJASS, the fact is that we have them, yet you told him we don't... :)

anyway, the sure thing is that DotA doesn't seem to use any of those, mostly because all bonusmods I've seen are in vJASS, and according to another thread, DotA clearly uses pure JASS... though of course, they could have just made one for themselves using plain JASS, it's not really that hard anyway, and most of the vJASS or LUA only code used for Bonus mods are just for object generation...

anyway, why are people so much into how DotA works???
 
Level 19
Joined
Mar 18, 2012
Messages
1,716
anyway, why are people so much into how DotA works???
It is the most successful mod of wc3. In the past many people bought wc3 just to play Dota. Maybe it has more followers than wc3 itself.
Thinking back to the dota-league times, there were around 10 games per minute with 10 players playing oO. + Garena + other hosting platforms

DotA clearly uses pure JASS
Maybe, we'll never know.

Afaik LUA is broken, that's why I told him we have no Bonus lib.
 
Actually that statement is based from the other thread where people got a hold of a deprotected/unprotected DotA map... and from them studying the scripts, there are no traces of vJASS... so it is pure jass

AFAIK, at least one of those few bonus mods doesn't use LUA... It uses vJASS and macros for generating the objects
 
Level 4
Joined
Jan 27, 2009
Messages
57
1- Any idea about how to make DotA's Medusa Split Arrows ?
2- What is the trigger for making a wall of trees or maybe something else to block the way ?
3- About Rubick's Fade Bolt, is it based of Chain Lightning ? (if yes, how to reduce damage on each bounce)
4- Is there any other ways to block incoming damage than to set life value of the unit to a current life + % that must be blocked from the damage ?

Many Thanks
Santa be with you =]

Split arrows has a whole explanation topic, search for it.

Trees blocking the way is quite simple. Save a point in a variable and then save the points you need need trees spawning using any formula you want. Create the trees and save them in a variable. Start a countdown timer.
When the timer expires, remove all the trees saved in a variable (array). use a loop or something. Whatever.

For Rubick's fade bolt, you cant detect all the targets it hits with trigger. Just the first one. So you'll have to create chain lightning, doing 0 damage, with 1 target. Then, via trigger, you pick 1 unit in the range of the previous target and make a dummy chain lightning him. Do this for a number of times equal to your spell's target count. Use an integer counter to count targets before stopping the trigger. Then, via trigger, make another dummy cast a spell like Inner Fire (with modified damage bonus value). To put negative values on skills, you have to enable them on the editor preferences and then SHIFT CLICK the field to edit with negative values.
And voilá, you got fadebolt.

For the damage reduction, we have many topics explaining that, search on the forums.
 
Whole dota is coded in pure jass.
I could try to deprotect latest dota version and give you answers.

1. Medusa split shoot isn't just simple multiple shot (it deals reduced damage)
2. You create group of destructibles in circle around spell target point.
3. It is not based on that, damage reduction to each hero is coded.
4. What Maker said.

EDIT:

92596 lines of optimized code. Oh my. This could take a while...
 
Level 11
Joined
Nov 15, 2007
Messages
800
For Rubick's fade bolt, you cant detect all the targets it hits with trigger. Just the first one. So you'll have to create chain lightning, doing 0 damage, with 1 target. Then, via trigger, you pick 1 unit in the range of the previous target and make a dummy chain lightning him. Do this for a number of times equal to your spell's target count. Use an integer counter to count targets before stopping the trigger. Then, via trigger, make another dummy cast a spell like Inner Fire (with modified damage bonus value). To put negative values on skills, you have to enable them on the editor preferences and then SHIFT CLICK the field to edit with negative values.
And voilá, you got fadebolt.

You can detect all the units hit by anything by having a dummy unit cast the spell, i.e. the chain lightning spell cast by the hero does nothing, instead it creates a dummy to cast the actual lightning and any time a unit is damaged by the dummy they receive the damage debuff. It may be done a different way in DotA, but that's how I'd do it.


Re: OP - Split Shot probably uses Defend to reduce outgoing damage.

If you just need a way to make a unit immune to damage without becoming invulnerable/untargetable, you can achieve it with Berserk by setting the damage taken increase to a negative number (any negative number will do). Otherwise there are a couple of good damage detection systems that will make any kind of damage reduction easy.
 
Level 4
Joined
Jan 27, 2009
Messages
57
Whole dota is coded in pure jass.
I could try to deprotect latest dota version and give you answers.

1. Medusa split shoot isn't just simple multiple shot (it deals reduced damage)
2. You create group of destructibles in circle around spell target point.
3. It is not based on that, damage reduction to each hero is coded.
4. What Maker said.

EDIT:

92596 lines of optimized code. Oh my. This could take a while...

I'm not saying this is the way Dota is made. But is a way to mimic it without bigger trouble.

You can detect all the units hit by anything by having a dummy unit cast the spell, i.e. the chain lightning spell cast by the hero does nothing, instead it creates a dummy to cast the actual lightning and any time a unit is damaged by the dummy they receive the damage debuff. It may be done a different way in DotA, but that's how I'd do it.


Re: OP - Split Shot probably uses Defend to reduce outgoing damage.

If you just need a way to make a unit immune to damage without becoming invulnerable/untargetable, you can achieve it with Berserk by setting the damage taken increase to a negative number (any negative number will do). Otherwise there are a couple of good damage detection systems that will make any kind of damage reduction easy.

You're right. But you also need to dot damage by trigger, since it reduces for each bounce and you still need to reduce damage for each unit.
 
Last edited by a moderator:
Status
Not open for further replies.
Top