| 02-13-2006, 05:05 PM | #1 |
A hero a recently did for a hero contest, I felt they were worthy of being uploaded here, and that they are my best JASS spells to date, especially Elemental Armament! emjlr3 presents: Jocelyn, The Elemental Mage A microcosmic manifestation of all that lives, Jocelyn is a direct descendant of the emperor across the sea and has spent many a century under direct tutelage from the God's them selves. Through her years of careful study, she has mastered the arts of all the elements, water, fire, earth and air, and brings this divine knowledge to the battlefield in aid of your cause. With equal proportions of the four elements at her command, she has become more intelligent, has the most exact perceptions, and is an ever handy ally to have in times of conflict. Frost Beam Summons a devastating wave of ice in a line, which deals initial damage to each unit in it's path and splash damage to the units around it, as well as damage over time for 5 seconds. Units are slowed by 25% for the duration. Level 1 - Sends a wave of ice that ripples outward, dealing 75 damage to enemies in it's path and 10 splash damage per unit around it, freezing and slowing these unit's, which deals 10 damage a second for 5 seconds. Level 2 - Sends a wave of ice that ripples outward, dealing 150 damage to enemies in it's path and 20 splash damage per unit around it, freezing and slowing these unit's, which deals 20 damage a second for 5 seconds. Level 3 - Sends a wave of ice that ripples outward, dealing 225 damage to enemies in it's path and 30 splash damage per unit around it, freezing and slowing these unit's, which deals 30 damage a second for 5 seconds. Unearthed Prison 2 Materializes chunks of earth around the target location, trapping any unit in the area inside for a short duration. Level 1 - 4 seconds, 200 AOE. Level 2 - 8 seconds, 250 AOE. Level 3 - 12 seconds, 300 AOE. Elemental Armament Creates a swirling mesh of all the elements, which incircles the friendly target in a bright blue ball, raising armor for 30 seconds. If self cast, there is a % chance the armor will becomed enraged when damaged and lash out at the target with a power of the elements. Level 1 - Creates a swirling shield of the elements which raises armor by 2 and has a 2% chance to retaliate on attacking enemies with a random power of the elements if self casted. Lasts 30 seconds. Level 2 - Creates a swirling shield of the elements which raises armor by 4 and has a 4% chance to retaliate on attacking enemies with a random power of the elements if self casted. Lasts 30 seconds. Level 3 - Creates a swirling shield of the elements which raises armor by 6 and has a 6% chance to retaliate on attacking enemies with a random power of the elements if self casted. Lasts 30 seconds. There are a possibility of three different spells to be cast. Cyclone - Sends a fearce tornado out from the shield towards the enemy, slowing enemy units in it's path by 10/20/30%. When the tornado reaches the target enemy unit, it throws the unit in a violent cyclone for 3/4/5 seconds, keeping it disabled for the duration. Frost Bolt - Launches a devastating frost bolt at the enemy. When it strikes it deals 25/50/75 damage, stuns for .5/1/1.5 seconds and knocks back the unit for the stun duration. Flaming Earth - Sends forth a flaming chunk of earth, which strikes the target enemy, dealing 5/8/11 damage over 6 seconds. The explosion catches nearby enemy units on fire, who take 3/4/5 damage over 6 seconds. It also lowers all affected enemies speed by 5/10/15% for the duration Ecliptic Flames Invokes the power of the netherworld by conjuring a succesion of flaming rings in a 350 AOE. Once they reach the center, they explode outward, dealing 200 damage per ring, and leave the ground inflamed, dealing 25 damage per second for 7 seconds. |
| 02-13-2006, 05:17 PM | #2 |
Need to know if you had permission from those models/skins/icons' authors to redistribute their resources like that |
| 02-13-2006, 05:41 PM | #3 |
well they were uploaded onto WC3 resource sharing sites by them for the world to use as wanted, some asked for credit, some did not, I gave credit to everyone, regardless, because I felt obilgated to I could go and email each of these people, though I doubt I would get repsonses from half of them, I will replace all of the skins/models/icons if need be, but for some of it I feel it would retract from the overall appeal of the hero |
| 02-13-2006, 05:47 PM | #4 |
Better Replace them or get explicit permission. Guys upload stuff and ask credits but that is only for allowing people to use in their maps / mods / whatever . They often don't feel the same about resubmitting their resources in open source maps in other downloads section. You are submitting a spell map and it would be better if you just submit the spells. You can keep blizzard made stuff though. |
| 02-13-2006, 06:27 PM | #5 |
Or you can make the icons yourself |
| 02-13-2006, 06:29 PM | #6 |
lol, i no good at that, updated to comply with Vexorians demands :) |
| 02-14-2006, 12:13 AM | #7 |
Now that you have that in order ,thanks btw, it is time to review the code... you have an issue: JASS:call SetHandleReal(t,"r",AngleBetweenPoints(l,GetSpellTargetLoc())) /// some lines and waits later: call RemoveLocation(GetSpellTargetLoc()) That's a location leak. I can't approve spell maps with location leaks unless they go to sample area. And well it leaks because you are not removing the first location returned by GetSpellTargetLoc() , the call you made to remove the location later is just creating a new, different location object and then removing it, but the first one is never cleaned. I also found leaks here: JASS:local real angle = AngleBetweenPoints(GetUnitLoc(u), GetUnitLoc(w)) local location l = PolarProjectionBJ(GetUnitLoc(v), -10, angle) 3 leaks there |
| 02-14-2006, 03:23 AM | #8 |
I could have set them all to locations, but I could have swore I saw Daelin do this once, so I figured it worked, Ill go back through and fix that |
| 02-14-2006, 11:15 AM | #9 |
Nice spells overall, but a few things i think you could do to make your spells look nicer and save some time for people who wants to import. Not an offensive post, just stating opinion. So no offense Firstly, Change the effects of the ultimate a little, cause when alot of neutral explosions happen together, it does not look too good, make it to smaller effects. Just a suggestion Secondly, the Elemental armament could just have been based on Frost Armour to save a spell inner fire. Cause in the end, you still have to change object editor fields. Lastly, i am not too sure about this, but there may be a possile bug happening when you set timers to null, i am not too sure, so correct me if i am wrong. Overall i think they are good spells, only for non jassers, it would be quite difficult to implement. |
| 02-14-2006, 11:27 AM | #10 |
The not setting a timer to null bug happens only in very weird situations, most spells that use timers and gamecache are invulnerable to it. In Fact I think that bug was actually caused by the "DestroyTimer doesn't pause the timer" bug |
| 02-14-2006, 10:42 PM | #11 |
so by pausing the timer, then destroying it, i remove those possiblities, because I was having long talks with Vile about this, and trying to fix it in his map also, would this by any chance work? JASS:call SetHandleReal(t,"r",AngleBetweenPoints(l,RemoveLocation(GetSpellTargetLoc()))) also the reason i did not use frost armor is because I did not want it auto castable |
| 02-14-2006, 10:48 PM | #12 |
That would not work. You need to use the location, there you just remove it. You need to store the location in a variable, then use it and then use call RemoveLocation on it. |
| 02-15-2006, 12:18 AM | #13 |
fixed, also removed all bjs sept for plaor projection, i dont feel like fixing those yet |
| 02-15-2006, 12:55 AM | #14 |
Actually, I know this isnt the place to discuss it, but when pausing timers and then destroying them, my map still kept having weird glitches/bugs/crashes. These spells may work fine for the first 30 times, OR SO.. but when used many times, if the vars that are attached to timers are nulled, including the timers themselves, they will cause those weird glitches and bugs. I know this because my map stopped having bugs and glitches and all the code works perfectly 100% after removing the setting to null lines. It's a true fact, wether you believe it or not.. just my 2c. |
| 02-15-2006, 02:08 AM | #15 |
All right emjlr aproving the map -- well then vile, thing is that I didn't experience that bug in a long time, may be it is because I use tables and they don't over use H2I as much as handle vars but oh well. Or maybe it is because I started using CollisionMissiles so most of the operations that required 0.04 periodic timers are now using a global timer instead. For now the conclusion would be : set timers to null only if you experience problems. Something that could help is waiting some 5 seconds after the destruction of the timer before setting it to null |
