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. Travel to distant realms and encounter scenes unknown to the common folk. The Greatest of Adventures is upon us with the 8th Cinematic Contest. Join in on a fun ride.
    Dismiss Notice
  4. The 18th Icon Contest is ON! Choose any ingame unit and give him/her Hero abilities. Good luck to all.
    Dismiss Notice
  5. The Secrets of Warcraft 3 have revealed interesting works. The RESULTS for Abelhawk's Mini-Mapping Contest #15 have come out!
    Dismiss Notice
  6. Contestants are to create a scene set in the Stone Age. Come and see what you can come up with. We wish you the best of luck!
    Dismiss Notice
  7. Colour outside the lines! Techtree Contest #13 is a go. The contest is optionally paired.
    Dismiss Notice
  8. Night Rider gained several songs for his journey. The poll for the 12th Music Contest has started. Check it out!
    Dismiss Notice
  9. Greetings cerebrates, our Swarm needs new spawners that will have numerous children. Join the HIVE's 31st Modeling Contest - Spawners and Spawned! The contest is optionally paired.
    Dismiss Notice
  10. 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.

JASS Submission Rules

Discussion in 'Submissions' started by Bribe, Dec 12, 2011.

Thread Status:
Not open for further replies.
  1. Bribe

    Bribe

    Joined:
    Sep 26, 2009
    Messages:
    8,000
    Resources:
    25
    Maps:
    3
    Spells:
    10
    Tutorials:
    3
    JASS:
    9
    Resources:
    25


    JASS Submissions Forum

    Description
    The Submissions forum is a great place to share your custom script for WarCraft III. Any submitted script must be written in either plain JASS, vJass, Zinc, Lua or Wurst resources that you would like to share with the community.


    Where to Submit
    Spells or systems which require a demo map or would make the most sense to have a demo map should be submitted to the Spells section. If the code is simple or straightforward enough to be more or less copy & paste, you should submit it here.

    If your resource is unfinished or you are unsure whether or not it even works, has bugs or may have already been done before (ie. a Timer system), you should submit it to The Lab for feedback before making your official submission.


    Rules
    • All threads should contain the script's code in the original post itself, unless more text space is needed and each script-inclusive reply is linked to in the original post.

    • An already approved resource may be deprecated if a replacement is obviously superior in many aspects.

    • Submissions must be as free of memory leaks as possible.

    • JassHelper resources must adhere to the correct encapsulation syntax introduced by JassHelper.


      • All submissions here should be included in a library, not a scope.
      • Contents of a library should be prefixed with “private” when not intended to be used by the user. For structs, there is also the “readonly” keyword which allows a variable to be read publicly but not written to publicly. Use that at your own discretion.
      • To make something “internal” (can be accessed anywhere in the library, but would otherwise need to be listed as “public” in order to compile), use “keyword” (documented in the JassHelper manual).

      Vanilla JASS resources are not able to apply any of those keywords. They must, however, include unique prefixes for “private” variables/functions and, optionally (for readability), be "quarantined” with documentation stating that such code block is only for use with the system and not by the user.

    • New threads represent new submissions. Do not make a post here unless it is a submission. 1 thread must contain 1 submission. No more, no less. 2 submissions can only be in the same thread if the purpose of one is to add an extra field to the other without making any radical changes to the core. (Add-ons)

    • Proper documentation must be included with all scripts. This includes, but is not limited to:


      • Library requirements. (This includes but is not limited to the name of the library, the author, and a link to the library's thread.)
      • A listing of the public API. (This includes functions, structs, modules, globals, struct members, function interfaces, and so on.)
      • Instructions on how to import the script into a map should it not be simply copy and paste.
      • A clear description on how the script should be used and, if possible, explain why the resource is useful.

      Scripts that are not properly documented will not be approved until such documentation is added. Spend a few minutes listing the API and what each function/variable can do for the user. An undocumented script has no potential if no one is able to take advantage of your hard work.

    • Any submitted script must be written in either plain JASS, vJass, Zinc, LUA or Wurst. cJass is invalid as it has too many bugs to be acceptable.

    • Resources’ public API should strive to follow the JASS convention set by JPAG. If you would like to do something different if you think your change improves readability or clarity, feel free to inquire about it with a moderator or collaborate with other users. The important thing is that we are all on the same page, so we know what to expect when we are working with public API.

    • A good resource is a resource that has a clear purpose, performs it efficiently and does not require an extensive learning curve. The less it does, the easier it is to debug, improve, learn and implement.

    • If your resource was moved to the Graveyard, check if the resource followed the above rules. If you would like to update it, feel free to resubmit it or PM a moderator about the situation if you feel that the graveyarding is no longer needed.

    • If you do not yet have JNGP installed, you can acquire it here.
      JNGP does not work with newest patch! WEX is an alternative.
     
    Last edited by a moderator: Nov 6, 2017
Thread Status:
Not open for further replies.