• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

[FINISHED] Spells&Systems Mini-Contest #13

Status
Not open for further replies.
Level 12
Joined
Aug 20, 2007
Messages
866
Offtopic

I hate those little bugs you gotta deal with when your using NewGen

I dislike the little thing it does when it deletes all of the code for setting the start units... thats annoying, and you gotta run it via normal warcraft, but you also need to save it with your regular WE :hohum:
 
Level 12
Joined
Apr 27, 2008
Messages
1,228
Yes it's like that :D
Anyway this is a great way to learn this part of map making. In the process of making my spell I learned so much(I almost started doing triggers(GUI or Jass) with it). Found out so much things that leak(by myself or from this forum) and ways to fix them. And even after optimizing my map there are so many leeks left :D
 
Level 12
Joined
Aug 20, 2007
Messages
866
Yeah, I remember my old maps, I went to go optimize one of them that was done totally in GUI

I was like ... ... ... :eekani: ... ... ... ... fuck that...
 
Level 12
Joined
Aug 20, 2007
Messages
866
JASS:
function X takes integer i, integer j returns boolean
    return i==j
endfunction
Is better than the one below ._.
JASS:
function X takes integer i, integer j returns boolean
    if (i==j) then return true
    else return false
    endif

I noticed your signature

Thats a bit of a newbie mistake, the "==" operator actually returns a boolean all in its own, sort of like a function

and the syntax for return is...

JASS:
return <boolean>

And the if-thens...

JASS:
if <boolean> then
    <actions>
endif

Which is nice to know if you'd like to optimize your code (not putting <some boolean> == true and such)
 
Level 12
Joined
Aug 20, 2007
Messages
866
His signature is okay, you know. i==j is a boolean and returning it directly is lovely and useful. Checking a boolean opetarion in order to return a boolean operation, that is idiotic. What he has in his sig is completely correct. Btw, can't wait to see the results.

/whisper< I was explaining why his post was correct>
 
lol i took this picture yesterday, but i forgot to submit it (1337 views)
lol 1337.jpg
 
Level 40
Joined
Dec 14, 2005
Messages
10,532
Eh, this S&S marking ended up being delayed quite a bit due to a mixture of procrastination, business with other things (such as a big Philosophy paper), and the fact that there was such a huge turnout compared to normal.

Anyways, I hereby grant you the right to e-slap me if I don't get them finished by Wednesday, 12:00 AM, EST, because I really have nothing to do tomorrow.

I'm rather too braindead to finish them at the moment, which is the same reason I did not do so yesterday night (It would've majorly skewed the marking).
 
Level 12
Joined
Aug 20, 2007
Messages
866
Yeah I often have that problem, fearing my own brain's weakness at the moment to skew anything I may need it for
 
Level 6
Joined
Jan 17, 2007
Messages
177
-while sitting in his cozy couch, he reached back on his seat to get a giant wooden plank which is intendedly used for slapping. Spark of Insanity emits from his eyes-

Just kidding... :p
 
Level 40
Joined
Dec 14, 2005
Messages
10,532
Umm you haven't gotten the spells you wanted at the time of closing :D
Actually, I deleted them when I was trying to get donut's spell to load, to get rid of the majority of 'Just Another Warcraft III Map's, and also so that when I re-downloaded them to look at the code I would actually know whose spell was whose easily.

I didn't count on the site dying.
 
Level 12
Joined
Apr 27, 2008
Messages
1,228
:D
Yeah, it's just great to have a lot of maps with the same name in wc3 :D
Glad mine was not one of them :p
And what I meant was that this way someone actually could have edited his entry after the closing, but I doubt someone did ;)
 
Level 40
Joined
Dec 14, 2005
Messages
10,532
And what I meant was that this way someone actually could have edited his entry after the closing, but I doubt someone did ;)
It would say "This post was last edited on XXX date".

Results almost done, only two more spells to mark as of now!

EDIT: Here we are


DiscipleOfLife - Torturing Frenzy
  • Idea: 5/5 points
    A good, original idea​
  • Triggering: 10/10 points
    A great job with the script, as usual.​
  • Overall Aspect: 5/5 points
    I can't think of a game type that uses heroes in which this would not be a practical spell. Additionally, It has an easily understood and informative tooltip, a fitting icon, and is simple enough to not confuse new users.​
  • Visual Effects: 5/5 points
    The visual effects were not fancy, but stood out and clearly indicated the spell's presence. The Cripple buff art fit the spell's idea well.​
  • Theme: 3/3 points
    The spell matched the theme as best as any could hope to.​
  • Total: 28/28 points
    Definitely one of your best pieces of work. This spell is a great example of how to make a spell that isn't boringly simple on the inside, isn't horrifically overcomplicated on the outside, is original, and fits well no matter where it is put. This spell definitely deserved a perfect score.​

spiwn - Shadow Rip
  • Idea: 5/5 points
    A good, original idea​
  • Triggering: 5/10 points
    BJs were excessively used, when they can be easily avoided in Jass. The spell was not MUI, and many leaks were present. While there were configuration options, they were not public or private in a scope/library, nor (alternatively) were they prefixed with the spell's name, and thus they could conflict with other implemented spells with the same problems. Waits were used in cases where timers would serve the situation far better, due to the inaccuracy of the former.​
  • Overall Aspect: 4/5 points
    The spell was applicable in a variety of situations. However, the tooltip was somewhat hard to follow, due to its somewhat disconnected nature as well as the amount of information attempted to give.​
  • Visual Effects: 5/5 points
    The visual effects fit the spell rather well.​
  • Theme: 3/3 points
    The spell matched the theme well.​
  • Total: 22/28 points
    The spell in general was done fairly well, but the coding could really use a lot of work.​

-BerZeKer- - Taste of Death
  • Idea: 4/5 points
    The nova idea was rather cliché, but the rest was original.​
  • Triggering: 6/10 points
    There were many uncleaned leaks in the spell. A unit group (GroupVar) only executed for one unit, since you cleared it inside the loop. The A Unit Is Attacked event was used in an easily abusable situation, which should also be fixed.​
  • Overall Aspect: 4/5 points
    The spell was applicable in a variety of situations. However, the tooltip was somewhat hard to follow, due to its somewhat disconnected nature as well as the rather broken grammar, and lack of provision of several statistics (The damage, for example).​
  • Visual Effects: 5/5 points
    The visual effects fit the spell well.​
  • Theme: 2/3 points
    The spell matched the theme well, except for the healing effect - in many cases, it made the spell lack a double edge.​
  • Total: 21/28 points
    The spell in general was done moderately well, with some room to improve in almost every category. However, that which needs the most work is the Triggering.​

Eccho - Soul Exhaustion
  • Idea: 3/5 points
    The spell was rather like a souped-up locust swarm.​
  • Triggering: 5/10 points
    'Global locals' were used in unneeded cases, which should be avoided since they can be unstable under various circumstances. Additionally, some of the capitalisation between the globals and locals did not match, thus defeating the purpose. Also, only one 'Global Local' can work stably per trigger. The use of Custom Value can cause this spell to conflict with many maps. Also, while most leaks were cleaned, (Entire Map) leaks to my knowledge (It appears to create a new rect). The spell was not MUI.​
  • Overall Aspect: 5/5 points
    The spell was applicable in a variety of situations.​
  • Visual Effects: 5/5 points
    The visual effects fit the spell well.​
  • Theme: 3/3 points
    The spell matched the theme well.​
  • Total: 21/28 points
    The spell in general was done decently, but the triggering mainly could use improvement.​

raft_pl - Dark Explosion
  • Idea: 5/5 points
    The spell was rather original.​
  • Triggering: 8/10 points
    A ridiculous number of array indexes were allocated to achieve MPI, which wastes memory. Additionally, the spell was not MUI. Otherwise, the coding was decent.​
  • Overall Aspect: 5/5 points
    The spell was applicable in a variety of situations.​
  • Visual Effects: 5/5 points
    The visual effects fit the spell well.​
  • Theme: 3/3 points
    The spell matched the theme well.​
  • Total: 26/28 points
    The spell was generally well done. I suggest you look into making things totally MUI in the future.​

marven15 - Mirage
  • Idea: 5/5 points
    The spell was fairly original.​
  • Triggering: 7/10 points
    Way more locals were used than necessary. Locations were used where they were rather unnecessary, and coordinates should have been used instead. Structs are far safer than Handle Vars, and should be used when available. There were a few leaks present. ==true was used in redundant situations. Some functions (like SetUnitState) could be replaced by more efficient ones (in this example, for the life, SetWidgetLife). Finally, some BJs were used.​
  • Overall Aspect: 4/5 points
    The spell was applicable in a variety of situations. The tooltip was rather long-winded, however, and could get the reader lost fairly easily.​
  • Visual Effects: 5/5 points
    The visual effects fit the spell well.​
  • Theme: 3/3 points
    The spell fit the theme well.​
  • Total: 24/28 points
    The spell was fairly well done. When using Jass, be sure to exploit all its advantages, and the same with vJass!​

Just_Spectating - Dark Sector
  • Idea: 3/5 points
    The spell was basically a variable damage Fan of Knives.​
  • Triggering: 7/10 points
    Simple formulae could replace trees of if-statements. Additionally, some actions in these if-trees could be moved outside them to reduce trigger length. Many triggers (FX21/FX22/FX23) could have been combined. An array was unneeded and wasted memory.​
  • Overall Aspect: 5/5 points
    The spell was applicable in a variety of situations. The tooltip was short and informative.​
  • Visual Effects: 3/5 points
    The visual effects were rather overkill, clogging up vision.​
  • Theme: 3/3 points
    The spell fit the theme well.​
  • Total: 21/28 points
    The spell was fairly decently done, however, the triggering, theme, and visuals could all have used some revision.​

Ciebron - Orb of Darkness
  • Idea: 1/5 points
    The spell was basically a variable damage shockwave, and was also almost exactly like DotA's such spell on Keeper of the Light.​
  • Triggering: 7/10 points
    You inlined TriggerRegisterAnyUnitEventBJ by using another BJ, this one being called 16 times instead of once! vJass should be used for passing data through timers since the Handle Vars are known to be unstable rather randomly, sometimes, which can lead to bad consequences. You leak triggeractions. Locals are overused in some cases. Ball_Move and Ball_Damage should be combined for efficiency.​
  • Overall Aspect: 4/5 points
    The spell was applicable in a variety of situations. The tooltip lacked much information.​
  • Visual Effects: 5/5 points
    The visual effects fit the spell.​
  • Theme: 3/3 points
    The spell fit the theme well.​
  • Total: 20/28 points
    The spell was fairly well done, but the idea was rather unoriginal. The Jass was fairly good but could use work.​

donut3.5 - Haunting of the Damned
  • Idea: 5/5 points
    The spell was original.​
  • Triggering: 9/10 points
    Locals were slightly overused. SetUnitX/Y should have been used instead of SetUnitPosition, for speed reasons. You leak dummies (those that cast the curses).​
  • Overall Aspect: 5/5 points
    The spell was applicable in a variety of situations. The tooltip was concise and informative.​
  • Visual Effects: 5/5 points
    The visual effects fit the spell.​
  • Theme: 3/3 points
    The spell fit the theme well.​
  • Total: 27/28 points
    The spell was quite well done, but watch out for leaks!​
 
Level 23
Joined
Nov 29, 2006
Messages
2,482
Wow dang, I sure lacking in my triggering =)
Anyway I suppose there are more spell contests coming up; then ill be back

Congratz to to DiscipleOfLife. It was indeed a very nice spell.
All other spells was ofcourse great as well._.

Hm should I protest? What do you really mean when you say the spell is not Mui?
My understanding of Mui has always been that it works for mupltiplayer with multiply players using it in the same time. Did I miss something here?
I thought my spell was mui, thus I tested it with some friends and it never occured any conflicts or bugs.

Anyway, Im glad I didnt won. Ill have better luck next time (hope it fits the theme im currently thinking of).
Ah speaking of next tme, when will that be? or am I not allowed to know that ^^?

/regards
 
Level 40
Joined
Dec 14, 2005
Messages
10,532
Wow dang, I sure lacking in my triggering =)
I probably should've given you 6, but I don't know, it was right on the edge.

Hm should I protest? What do you really mean when you say the spell is not Mui?
My understanding of Mui has always been that it works for mupltiplayer with multiply players using it in the same time. Did I miss something here?
I thought my spell was mui, thus I tested it with some friends and it never occured any conflicts or bugs.
MUI = Multi Unit Instanceable. Your spell was MPI, Multi Player Instanceable. MUI implies it is usable by an indefinite amount of units on the same player. Yours was not, due to the use of global arrays that worked by player number.

Ah speaking of next tme, when will that be? or am I not allowed to know that ^^?
You're not allowed to know that, since I don't either :p
 
Level 23
Joined
Nov 29, 2006
Messages
2,482
I probably should've given you 6, but I don't know, it was right on the edge.

MUI = Multi Unit Instanceable. Your spell was MPI, Multi Player Instanceable. MUI implies it is usable by an indefinite amount of units on the same player. Yours was not, due to the use of global arrays that worked by player number.

You're not allowed to know that, since I don't either :p

okay then everything seems fine :p
Ill think about that next time

Eccho obeys PurplePoot by jamming himself in the wall trying to inflict a such pure headache that Eccho never will use Mpi-only again, or globals, or Bj:s without thinking before he acts :eek: ...

That really hurts-.-

Edit: And yes once again congratz ^
 
Status
Not open for further replies.
Top