| 05-27-2004, 11:16 AM | #1 |
Ok, I'm trying to make a spell which is channeled, and then sprays mini-shockwaves around in a circle. Ignoring the immense lag that is caused by creating and casting with anything other than a .1 second wait in between each repetition, all my shockwaves seem to be going in the same direction, does warcraft think there are more than 360 degrees in a circle or something? Here's the trigger, pretty simple: Angel of death Events Unit - A unit Begins channeling an ability Conditions (Ability being cast) Equal to Angel of Death Actions For each (Integer A) from 1 to 45, do (Actions) Loop - Actions Unit - Create 1 caster for (Owner of (Triggering unit)) at (Position of (Triggering unit)) facing Default building facing degrees Unit - Add Angel wave to (Last created unit) Unit - Order (Last created unit) to Orc Tauren Chieftain - Shockwave ((Position of (Triggering unit)) offset by 1.00 towards (Real(((Integer A) x 8))) degrees) Unit - Add a 1.00 second Generic expiration timer to (Last created unit) Wait 0.10 seconds yet all it does is spray the shockwaves 45 times in exactly the same direction. Any ideas? |
| 05-27-2004, 09:15 PM | #2 |
Try this:
|
| 05-27-2004, 09:17 PM | #3 |
I think the problem is that you are ordering him to cast the spell. Instead of doing that, why dont you make a special effect and simulate the shockwave? Now that I think about it that might be hard to do, but it seems like this trigger is getting nowhere. I can't think of much more then that. Edit: Shimmra, I'm curious why that would work any different; you are just changing how you modify the real. The triggering unit to casting unit is something I didnt catch, but he said they were casting, so I dont see why it matters. Edit again: Did you edit your post? I'm curious again, because he said his units were casting, so I dont see why editing the spell would have any difference, but thats just me. |
| 05-28-2004, 06:37 PM | #4 |
Dear lord, I just edited the offest to 300 and it works fine, how queer. ah well, whatever, I have a nice spraying effectthat goes around in circles, now I just need to make the time interval small enough that it looks good, but not so small that it lags everything up. Yeay :) Edit: Okay, having gotten the damn thing to work, I decided I wanted it to spray around in an x formation. each arm turning and spraying, fairly simple I thought - merely create a unit array for four casters, order each of the casters to do the same thing, offest by a changing amout. Yet it seems to have decided that I just want one shot of the "wave" and then ending, despite there being another 44 Integer A that it should run through. Yeesh. again, here's the trigger, I used unit arrays, real arrays, it should work fine, *cries* I'm starting to think that I should give up making any interesting spells. Angel of death Events Unit - A unit Begins casting an ability Conditions (Ability being cast) Equal to Angel of Death Actions Unit - Create 1 caster for (Owner of (Triggering unit)) at (Position of (Triggering unit)) facing Default building facing degrees Set Angelcaster[1] = (Last created unit) Set Angel_spin[1] = -2.00 Unit - Add Angel wave to (Last created unit) Unit - Create 1 caster for (Owner of (Triggering unit)) at (Position of (Triggering unit)) facing Default building facing degrees Set Angelcaster[2] = (Last created unit) Set Angel_spin[2] = 88.00 Unit - Add Angel wave to (Last created unit) Unit - Create 1 caster for (Owner of (Triggering unit)) at (Position of (Triggering unit)) facing Default building facing degrees Set Angelcaster[3] = (Last created unit) Set Angel_spin[3] = 178.00 Unit - Add Angel wave to (Last created unit) Unit - Create 1 caster for (Owner of (Triggering unit)) at (Position of (Triggering unit)) facing Default building facing degrees Set Angelcaster[4] = (Last created unit) Set Angel_spin[4] = 268.00 Unit - Add Angel wave to (Last created unit) For each (Integer A) from 1 to 45, do (Actions) Loop - Actions Set Angel_spin[1] = (Angel_spin[1] + 2.00) Set Angel_spin[2] = (Angel_spin[2] + 2.00) Set Angel_spin[3] = (Angel_spin[3] + 2.00) Set Angel_spin[4] = (Angel_spin[4] + 2.00) Unit - Order Angelcaster[1] to Orc Tauren Chieftain - Shockwave ((Position of (Casting unit)) offset by 256.00 towards Angel_spin[1] degrees) Unit - Order Angelcaster[2] to Orc Tauren Chieftain - Shockwave ((Position of (Casting unit)) offset by 256.00 towards Angel_spin[2] degrees) Unit - Order Angelcaster[3] to Orc Tauren Chieftain - Shockwave ((Position of (Casting unit)) offset by 256.00 towards Angel_spin[3] degrees) Unit - Order Angelcaster[4] to Orc Tauren Chieftain - Shockwave ((Position of (Casting unit)) offset by 256.00 towards Angel_spin[4] degrees) Wait 0.01 seconds |
| 05-28-2004, 07:10 PM | #5 | |
As a suggestion, before I go and work on the 2nd part of my spell tutorial, I would suggest using timers. It will take an extra trigger, but it will diminish any heavy lag attempts. Also, your trigger leaks 90 points in 4.5 seconds. :) Here's a little fixer upper for ya. Quote:
Welcome! |
| 05-28-2004, 07:15 PM | #6 |
I was aware that virtually every trigger I make will leak what with me not knowing jack heh. Thanks link - but what do you mean by timers? Sorry for being a pain in the nuts, my spells are just irritating me. Thanks again for the fixer. |
| 05-28-2004, 07:15 PM | #7 |
[double post] Cuz of the edit button[] Send me the map, post it whatever. Somethings wrong. |
| 05-28-2004, 07:18 PM | #8 |
[]reply[] Timers, just make a timer variable. Then, start it as a REPEATING timer, using a trigger. When the unit casts the move. Then, detect that disperse of the timer in another trigger, and run your actions. Using timer expired. I'm going to see why the edit button isn't loading on my web page so I might not reply instantly. |
| 05-28-2004, 07:22 PM | #9 |
Right, I think I understand that, but you say that there's a problem or something? I'll just post up the map, it's a little large due to custom models and skins and so on (all mine are lame, but meh, I'm learning) cheers linkmaster. Edit: Uhm, something seems to be messed up, I can't upload anything, you said I could send you the file? What method of sending? Edit again in response to the next post by link: righty ho then, thanks a bunch. |
| 05-28-2004, 07:23 PM | #10 |
Hrmm... I know, I'll just fix up that 6 way shockwave map I made for you. So you can compare the two. []edit[] I fixed my edit button!!! |
| 05-28-2004, 07:35 PM | #11 |
wait...does a - degree even work?! |
| 05-28-2004, 09:06 PM | #12 |
This is just a rough sketch of what it should look like. The reason yours wasn't working was because you can't have a .01 wait. The casters don't have enough time to cast the spell 2 times in .02 seconds. |
| 05-31-2004, 09:53 PM | #13 |
I tried lowering the cooldown, but it still didn't work properly, I don't mind, I've compromised by making it a unit attacking spell, attacking a random unit around the hero, ah well. |
| 06-01-2004, 07:47 PM | #14 |
I don't think using Timers are going to help against lagging. How would it? The trigger fires just as often. |
