- Joined
- Nov 6, 2008
- Messages
- 8,316
Illusion
Additional Info:
• 70% of the winner was determined by the contest's appointed judge.
• 30% of the winner was determined by the results of the public poll.
- Huge lag throughout the test map, even more lag when I cast the ability manually.
- The test map is really open-ended. The first time I ran the map I didn't understand anything that was going on. A bunch of swirling pixies.
- The code is extremely robust for something that really has no effect. It requires 5 different dummy units, four different abilities. And it did no damage to the enemy. Have you tried using this with a cooldown? The way you remove the abilities does not remember cooldown when you re-add them, so this effect could easily be spammed.
- It creates tons of dummy units which creates tons of lag.
- Hashtables are used an insanely large amount many times during the fast timer. This would have been much more efficient running on Hanky's Dynamic Indexing and probably could have helped against the massive lag.
- The images really did not appear very often and it was really unpredictable when/if they would appear. I could not force anything to happen, I just was left scratching my head.
- As a player I also was confused that the tooltip changed for the on/off functionality.
+ Extra points for configurability and for the time invested in creating the code
+ I liked the effects.
Concept: 7/10
Coding: 15/20
Visual: 9/10
Overall: 31/40
+ Nice, well-documented tooltip that doesn't leave users guessing.
- Sometimes the dummy units would kill the enemies but then be swirling around doing nothing for a long time which looked weird.
- I didn't like that it de-selected my hero and didn't at least try to re-select it after the duration.
- You could add 'Aloc' instead of 'Avul' to the dummies which would also make more sense so the user can't click on them.
- For a timeout like this you should loop through a list of data instead of hashing everything to an individual timer.
+ The spell was very overpowered which is perfect for a test map.
- The dummy death time should be set to 0 so they are removed right after the expiration timer.
- It is not random enough to always target the FirstOfGroup unit. And your filter should be merged into the FirstOfGroup loop because there's no reason to have both.
Concept: 8/10
Coding: 18/20
Visual: 8/10
Overall: 34/40
- Mixing TimerUtils with a period of 0.025 is pretty overkill, this should be using just one timer with a loop that goes through the instances.
- "onLoop" needs to be above the method that calls it. Same with onDestroy which needs to be replaced by the normal "destroy" method. Currently both compile the code into horribleness.
- "==true" does not need to be there at all.
- What is the point of the "ShuffleIllusion" method?
- You don't need to destroy boolexpr... (you could have used a FirstOfGroup loop anyway). This is patch 1.26 a lot has changed since the dark ages of wc3 modding.
? What's with the public functions? Is someone going to extend your library just to use them? I'm confused why they aren't private.
+ I really liked the spell and I think the illusion factor is is really strong here.
+ The bouncing missiles before the "create illusions" part was good fun.
/ It has a lot of requirements but those are very common libraries so it's not so bad. But there are a lot of things you could have inlined yourself.
Concept: 10/10
Coding: 16/20
Visual: 10/10
Overall: 37/40
- Huge event leaks. Instead of creating a damage event and a death event per dummy, use a Damage Detection System and a "Any unit dies" trigger, then check if the dummy meets the right conditions.
- This is not MUI:
- Set EffectB[0] = (Last created special effect)
- Wait 1.20 seconds
- Special Effect - Destroy EffectB[0]
+ The spell was original and fun, and the test map helped to show it off.
+ The idea to create a new dummy per attack worked pretty nicely.
- It could have been more obvious that the units were illusions. The flames were not really the ideal way to show it off.
- There are no configurables in the code.
- The illusion just "exists", it does not have any kind of an entrance.
Concept: 9.5/10
Coding: 4/10
Visual: 5/10
Overall: 18.5/40
- Lots of group leaks and location leaks.
- You have to destroy the group outside of the "pick all units" loop, because even if the group is empty it still created the leak.
- The demo map did not allow you to refresh the cooldown. It made the spell quite annoying to test.
! "Custom script: set bj_wantDestroyGroup = true" would have been a lot better for you here than set/pick/destroy because then it's assured the group will be destroyed. The exception to the rule is "units of type" or "units owned by player of type" which leak no matter what you do.
+ It reminds me of the Protoss arbiter's "hide all units" from SC and I like that.
- It is just a starfall effect with some invisibility.
Concept: 6/10
Coding: 2/20
Visual: 3/10
Overall: 11/40
- No attempt at removing any leaks.
- No attempt at making it multiple-instanciable.
+ There are configurables.
- The effects look glitchy especially when the unit gets unexpectedly shifted from his position right at the start.
- Because it uses waits instead of timers it also makes really random results which make it unreliable for timing. Waits last a really long time on battle.net.
- The illusion factor is good but the execution doesn't really make sense, a lot of ninjas moving like they have the "critter wander" ability.
Concept: 7/10
Coding: 1/20
Visual: 3/10
Overall: 11/40
+ Code is great, very little room for improvement. If you were to improve it I'd recommend a spell-indexing system, like SpellEffectEvent or GTrigger.
! Some might say to inline the create/destroy methods but I think that is a complete waste of time. (don't tell them I said that)
- The movement sometimes looks a little choppy when the units run to the target point (maybe this had to do with BoundSentinel).
- The effect could be a little more powerful when the vengeances transform into the warden, perhaps saving the "animate dead" effect for that moment would be better.
Concept: 9/10
Coding: 20/20
Visual: 8/10
Overall: 37/40
1st Place has two entries tied at 37/40:
Water Image by Scorpion182
&
ShadowDistraction by watermelon_1234
2nd and 3rd, respectively, go to:
Spirit Rage by Mckill2009
&
Ghost Field by -Derp-
-Congrats! Nice work! I wonder who will break the tie when it comes to voting?
Water Image by Scorpion182
&
ShadowDistraction by watermelon_1234
2nd and 3rd, respectively, go to:
Spirit Rage by Mckill2009
&
Ghost Field by -Derp-
-Congrats! Nice work! I wonder who will break the tie when it comes to voting?
((Votes / Total Votes) * 30) + ((Judge's Results) * (70 / 40)))
Results
• -Derp-: ((2 / 15) * 30) + (31 * (70 / 40)) = 58,25
• Creed Angelus: ((0 / 15) * 30) + (11 * (70 / 40)) = 19,25
• drkninja: ((0 / 15) * 30) + (11 * (70 / 40)) = 19,25
• mckill2009: ((4 / 15) * 30) + (34 * (70 / 40)) = 67,5
• scorpion182: ((7 / 15) * 30) + (37 * (70 / 40)) = 78,75
• watermelon_1234: ((2 / 15) * 30) + (37 * (70 / 40)) = 68,75
• wolfman: ((0 / 15) * 30) + (18.5 * (70/ 40)) = 32,375
1) scorpion182
2) watermelon_1234
3) mckill2009
4) -Derp-
5) wolfman
6) Creed Angelus & drkninja
2) watermelon_1234
3) mckill2009
4) -Derp-
5) wolfman
6) Creed Angelus & drkninja
Contest | Poll