Warcraft III resources & community, 2003–2006 · archived

Needles of Pain

not rated
Submitted by Azure WrathTrigger Enhanced387 downloads136 KB
Screenshot
Screenshot
Fires a circle of spikes around the caster, pushing nearby enemies away and dealing damage to nearby enemies.
File Name
Needles of Pain.w3x
Author
Azure Wrath
Download

Comments

10
You're gonna be pissed off Bert, but i don't do JASS just yet :oops: :oops: . I downloaded a tutorial for JASS a while ago, and i'm still learning how to do it.
So, for now I'm GUI-only. But can the function 'custom script' work if i use JASS in it, because if it does, i can just copy your stuff over into it. :idea:

I tried the "Wait 0.01 in game seconds", but it's still too slow :evil: . When i'm done studying my "Basics of JASS" :lol: , then i'll try your option Bert, but are there any ways for a GUI user to do it?

And I'm still waiting for some help on creating a "real push"!

Anyway, sorry Bert, that i'm not on JASS just yet, but it's quite hard to learn. Untill then, I'd please like some support with the GUI. Thanx
The smallest amount of time to wait is:
call TriggerSleepAction(0)

And this is Blizzard's PolledWait function (Wait n Game time seconds for GUI Users):
function PolledWait takes real duration returns nothing
local timer t
local real timeRemaining

if (duration > 0) then
set t = CreateTimer()
call TimerStart(t, duration, false, null)
loop
set timeRemaining = TimerGetRemaining(t)
exitwhen timeRemaining <= 0

// If we have a bit of time left, skip past 10% of the remaining
// duration instead of checking every interval, to minimize the
// polling on long waits.
if (timeRemaining > bj_POLLED_WAIT_SKIP_THRESHOLD) then
call TriggerSleepAction(0.1 * timeRemaining)
else
call TriggerSleepAction(bj_POLLED_WAIT_INTERVAL)
endif
endloop
call DestroyTimer(t)
endif
endfunction

I hope you understand.
Tell me.
Thx.
Ok, i've worked on this now, and i did the following:

Instead of setting the life of units, i discovered the function "damage unit", so now i need to fix that with all my spells :shock: ... great.

Now, i tried to make a push like this:
For each integer 1 to 60 do:
Pick every unit within 600 of casting unit
Move picked unit instantly to (position of casting unit, offset (distance between casting unit and picked unit + 10) towards (whatever) degrees...
Wait 0.01 seconds


Now, the reason why i initially didn't do this, is also my age-old question: Why is 0.01 seconds so damn long! In this function up here, it should only last (0.01 x 60) 0.6 seconds, yet it lasts MUCH longer than that!
Why is the Wait function so inaccurate? Is it because other functions also have a duration of time? Will the wait be fixed if you do it in JASS?

The reason why i'm not using the above function is because the timing is horrible, causing units to jerk back long after the spell is done. That's why i'm just sticking with the normal "move them instantly" thing.

If someone can explain this "wait" function-problem to me, or (even better) offer a solution, i will be ever so grateful!

PS, Chuckle Bro's, i've made some triggers for making my maps easier to test, sorry about the inconveniance it's caused.
PS2, i'd like CONSTRUCTIVE criticism, i've seen many people recently just lashing out on others. If you see something's wrong or can be better, please teach me HOW to make it better.

Thanx
Azure, out. :D
Ok, then i'd like some help please. How should i do a real "push"; must it be something in the line of
for each 1 to X do :
move unit instantntly to (distance in proportion to integer A)

And how can i make the character do damage instead of just setting the life?
How can i fix the memory leaks on this spell?
And i'll improve the whole spell testing thing.

Oh, and one more thing, sorry for being a noob, but what does "static effects" mean?

Thanx, help will be appreciated.
Idea-not very good base off static 8/20
memory-poor leaks alot aka lag alot if used in huge maps8/20
effect= not bad at least still good10/20
effect casted- not good all your tirrger is set enemy life and moving them back and not a pushback5/20
eyecandy-looks cool attarctive15/20

Total-8+10+5+15=38 38/100=about 40%
1/5
Thats not a push it just instantly moves them.
Tons of leaks.
And the caster doesn't "damage" them you just set their health.
Looks and sounds interesting and I can't wait to see a supernova clone but guess what? I'm grounded. I can't go on the computer until Christmas break and that's if I get my grades up. I'm only posting this right now because no one is home and my brother left his computer on. Anyways, I'll test it asap and hope that supernova isn't as hard as I think it'll be if I try it.
your spells are AWSOME(i havent found a use for them..... yet :D) i'll use them in my map when i can (ill give u credit) continu the good work 5/5[/b][/i]
Again with the static effects. Could use a bit improved special effects to it. Also I don't dig the whole "Once you're dead you're dead' and the lack of spawning, made it a bit hard for me to really test it out.

If you want to be lazy I have a precreated template map that I use when I feel like making a spell. Get it Here.
'Scuse the screenshot, it came out quiet bad... anyway, i like this spell a lot... it looks quite cool.
Enjoy, constructive criticism would be nice, compliments would be better!