1. Updated Resource Submission Rules: All model & skin resource submissions must now include an in-game screenshot. This is to help speed up the moderation process and to show how the model and/or texture looks like from the in-game camera.
    Dismiss Notice
  2. DID YOU KNOW - That you can unlock new rank icons by posting on the forums or winning contests? Click here to customize your rank or read our User Rank Policy to see a list of ranks that you can unlock. Have you won a contest and still havn't received your rank award? Then please contact the administration.
    Dismiss Notice
  3. The Lich King demands your service! We've reached the 19th edition of the Icon Contest. Come along and make some chilling servants for the one true king.
    Dismiss Notice
  4. The 4th SFX Contest has started. Be sure to participate and have a fun factor in it.
    Dismiss Notice
  5. The poll for the 21st Terraining Contest is LIVE. Be sure to check out the entries and vote for one.
    Dismiss Notice
  6. The results are out! Check them out.
    Dismiss Notice
  7. Don’t forget to sign up for the Hive Cup. There’s a 555 EUR prize pool. Sign up now!
    Dismiss Notice
  8. The Hive Workshop Cup contest results have been announced! See the maps that'll be featured in the Hive Workshop Cup tournament!
    Dismiss Notice
  9. Check out the Staff job openings thread.
    Dismiss Notice
Dismiss Notice
60,000 passwords have been reset on July 8, 2019. If you cannot login, read this.

[FINISHED] Spells&Systems Mini-Contest #13

Discussion in 'Triggers & Scripts' started by PurplePoot, May 5, 2008.

  1. PurplePoot

    PurplePoot

    Joined:
    Dec 14, 2005
    Messages:
    11,161
    Resources:
    3
    Maps:
    1
    Spells:
    1
    Tutorials:
    1
    Resources:
    3
    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.
     
  2. spiwn

    spiwn

    Joined:
    Apr 27, 2008
    Messages:
    1,228
    Resources:
    0
    Resources:
    0
    :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 ;)
     
  3. PurplePoot

    PurplePoot

    Joined:
    Dec 14, 2005
    Messages:
    11,161
    Resources:
    3
    Maps:
    1
    Spells:
    1
    Tutorials:
    1
    Resources:
    3
    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!​
     
  4. Eccho

    Eccho

    Joined:
    Nov 29, 2006
    Messages:
    2,297
    Resources:
    2
    Spells:
    2
    Resources:
    2
    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
     
  5. PurplePoot

    PurplePoot

    Joined:
    Dec 14, 2005
    Messages:
    11,161
    Resources:
    3
    Maps:
    1
    Spells:
    1
    Tutorials:
    1
    Resources:
    3
    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
     
  6. Just_Spectating

    Just_Spectating

    Joined:
    May 16, 2007
    Messages:
    7,023
    Resources:
    46
    Models:
    11
    Icons:
    9
    Skins:
    26
    Resources:
    46
  7. PurplePoot

    PurplePoot

    Joined:
    Dec 14, 2005
    Messages:
    11,161
    Resources:
    3
    Maps:
    1
    Spells:
    1
    Tutorials:
    1
    Resources:
    3
    On a sidenote, Disciple becomes the first person to have won more than once! Congrats to him!
     
  8. Eccho

    Eccho

    Joined:
    Nov 29, 2006
    Messages:
    2,297
    Resources:
    2
    Spells:
    2
    Resources:
    2
    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 ^
     
  9. Just_Spectating

    Just_Spectating

    Joined:
    May 16, 2007
    Messages:
    7,023
    Resources:
    46
    Models:
    11
    Icons:
    9
    Skins:
    26
    Resources:
    46
    lets go to the Spells&Systems Mini-Contest Thread everyone and decide the next theme!
     
  10. GhostWolf

    GhostWolf

    Joined:
    Jul 29, 2007
    Messages:
    4,836
    Resources:
    2
    Tools:
    1
    Tutorials:
    1
    Resources:
    2
    Congratulations DiscipleOfLife.
    You all stop using GUI and expect to make MUI abilities, FOOLS !
    Now go learn Jass and vJass and make awesome spells. This is an order !
     
  11. donut3.5

    donut3.5

    Joined:
    Feb 22, 2006
    Messages:
    3,392
    Resources:
    31
    Models:
    20
    Icons:
    9
    Maps:
    1
    Tutorials:
    1
    Resources:
    31
    Congrats to our multi-time winner DoL!

    Question on leaks:
    1.) By leak do you mean I forgot to set the variable to null, or I didn't remove the unit from the game?
    2.) Does an exploded unit get removed from the game since it technically doesn't have to decay?
    --donut3.5--
     
  12. PurplePoot

    PurplePoot

    Joined:
    Dec 14, 2005
    Messages:
    11,161
    Resources:
    3
    Maps:
    1
    Spells:
    1
    Tutorials:
    1
    Resources:
    3
    1. You didn't remove or kill or explode or etc the units
    2. Any method of killing them eventually does. In fact, RemoveUnit is frowned upon due to the conflicts it causes with about everything in existence.
     
  13. -Berz-

    -Berz-

    Joined:
    Mar 5, 2008
    Messages:
    3,203
    Resources:
    123
    Icons:
    111
    Packs:
    1
    Skins:
    1
    Spells:
    10
    Resources:
    123
    No comment............................................................................................................................................................................................................................................... about 150 letters.................................................
     
  14. Herman

    Herman

    Joined:
    Aug 20, 2007
    Messages:
    877
    Resources:
    0
    Resources:
    0
    Not gonna pretend here, but I think DiscipleOfLife's ridiculous triggering skills makes this challenge hard as hell ><

    I got really good at triggering (or better at least) for JASS, but I don't like vJASS because I think I figured out how structs work, and it could be re-created in regular JASS easily, without using HandleVars (which I also hate using)

    I'm probably gonna switch to vJASS when I get good at it, but for the moment, would it be bad if I used global arrays + a data system for my spells? or would that count as using unnecessary space, or is this the wrong place to ask altogether? (or perhaps that was a dumb question...)
     
  15. donut3.5

    donut3.5

    Joined:
    Feb 22, 2006
    Messages:
    3,392
    Resources:
    31
    Models:
    20
    Icons:
    9
    Maps:
    1
    Tutorials:
    1
    Resources:
    31
    Pooticus, check their HP regen. I've found setting it to a negative number is more preferable to adding in code with expiration timers.
    --donut3.5--
     
  16. Herman

    Herman

    Joined:
    Aug 20, 2007
    Messages:
    877
    Resources:
    0
    Resources:
    0
    Yeah, but what about a heros regen... like +11HP per second, would be a little conflicting if you changed it...
     
  17. donut3.5

    donut3.5

    Joined:
    Feb 22, 2006
    Messages:
    3,392
    Resources:
    31
    Models:
    20
    Icons:
    9
    Maps:
    1
    Tutorials:
    1
    Resources:
    31
    For dummy units I meant.. If you set it to -100 and they have 100 life, its the equivalent to giving them a 1 second expiration timer.
    --donut3.5--
     
  18. Just_Spectating

    Just_Spectating

    Joined:
    May 16, 2007
    Messages:
    7,023
    Resources:
    46
    Models:
    11
    Icons:
    9
    Skins:
    26
    Resources:
    46
    i always use 10 HP with a variable -regen, so we can have easy time checking,(BTW decimals work!)
     
  19. Herman

    Herman

    Joined:
    Aug 20, 2007
    Messages:
    877
    Resources:
    0
    Resources:
    0
    Oh that is very good, far far better than using expire timers

    I'm gonna start using that method henceforth

    I'm thinking I'm gonna stop making spells for the most part, because I started to understand data, data systems, hash tables, etc. and for the kinds of upper-scale spells I wanna make, it would require me to do an extensive amount of code and data

    Reveal Ramblings
    like things for adding FX to attacks, I'd probably use a data system + an enters map event, then set global arrays based off some kind of data system that coordinates between the units ID [I have a fairly crappy one atm that works, but leaks strings like nuts, which I was thinking I could fix with a small VB outside program] then all kinds of code to use the data, like the Degree_Arc function I made recently, I simply do not trust vJASS and their pre-made DD + PUI systems
     
  20. spiwn

    spiwn

    Joined:
    Apr 27, 2008
    Messages:
    1,228
    Resources:
    0
    Resources:
    0
    Congratulations DiscipleOfLife :)

    Not surprised at all with my poor triggering, am just new, but learning.