to check the syntax
In fact its most common usage have to pass common.j and blizzard.j before a script file. It also works with common.ai , blizzard.ai and an ai file.
PJASS download page
May 6, 2005
An update to the JASS documentation, new Type Casting Document, and some other additions to the API browser.
May 4, 2005
Jeff Pang has given me (Vexorian) control over the site, expect updates to the JASS manual and some additions to the web content soon.
Jul 2, 2003
Maintenance and minor bug fix release of Demo JASS Syntax Checker.
Now uses data files from 1.10 (ROC or TFT).
Download.
View changes.
Jun 14, 2003
Bug fix release of the Demo JASS Syntax Checker.
Download.
The last update accidently used the data files from the TFT beta. This
release fixes it to use the data files from ROC 1.06. The API Browser in
the Manual was also fixed.
Jun 9, 2003
Rudi Cilibrasi has joined Jeff's team this week. He has contributed
a new JASS parser called pjass. pjass is small, fast, and command-line
driven. pjass is ideally suited for use in Cygwin .sh or MSDOS .BAT files
as part of your map release validation system.
A precompiled binary for Win32 is available.
Download.
Jun 3, 2003
Maintenance release. Download.
The data files have been updated to correspond to ROC 1.06 (and
subsequently, the latest TFT beta). The API Browser in the
manual has also been updated.
Mar 19, 2003
New minor bug fix release. Download.
View changes here.
Mar 14, 2003
New minor bug fix release. Download.
This release just updates the library scripts to those used by
Warcraft III 1.05. If you don't want to redownload the program, you can
extract the shared scripts yourself from the patch MPQ file and place them
in the Scripts/ directory.
Mar 7, 2003
New minor bug fix release. Download.
Changes can be viewed here.
Update: On the off chance you downloaded version
0.1.1 before 7:30PM PST (Mar 7), you will probably want to download it again. I
accidently uploaded a version that reintroduced an old bug; it is now fixed.
Feb 9, 2003
Thanks to Bob Fitch from Blizzard, I was able to knock out a couple more
minor bugs in the syntax checker. I've moved the versioning to major/minor
numbers now to indicate alpha/beta status.
Download.
There is still one known outstanding bug that I did not have time to fix:
the syntax checker will allow you to have identical function names and
variable names, but this should not be allowed. The bugs that were fixed
can be viewed here.
For Developers:
I realize I said I would eventually put all this stuff in a DLL or other
shared library so it could be used in other people's programs, but I don't
believe I will have time in the near future to do so. Keep in mind that this
project is open source, so the
source code is
available to anyone who wants to take a hack at it. The major stumbling block
is that this was just a prototype so it was written in Java. If you're program
is in Java also, great, then you can just link to it. :) Otherwise, you'll
have to either rewrite the code in C/C++ (using Lex/Yacc or one of their
variants instead of JLex/CUP), or compile Java into native code using
something like GCJ or
Excelsior JET. I have
used Excelsior JET myself, and know that my code compiles just fine in it;
you just have to spend some time with JNI to figure out how to make some
external hooks to the code.
Jan 15, 2003
Minor new Pre-Alpha release is available. One error fixed and a text box was
added to the GUI so you can enter code fragments directly to check. I found
this was useful when making custom text triggers (just copy, paste, then
check) since World Edit's syntax checker's error messages are terrible.
Some other neglible features were also added to the GUI to make it "nicer".
Download.
If you want notification of new releases, you can join the
announcement mailing list.
Jan 10, 2003
New Pre-Alpha release is available. Some errors which weren't being caught
before are now flagged; the GUI can now be used to check AI scripts,
map trigger scripts, and custom common.ai/Blizzard.j files.
Download.
Update 1/12/02: I forgot to compile in some dependencies in
the windows version, so the program may have started up with an error that
some DLL was missing. It should be fixed if you re-download the program.
Jan 8, 2003
Finished short manual for JASS (see side-bar). New layout too. :)
Dec 28, 2002
A complete pre-alpha demo is now available. The demo checker should
catch all the bugs in AI scripts (barring bugs of course :).
Download.
How to report bugs:
- If the checker crashes or otherwise behaves badly, try to tell me how to
reproduce it.
- If the checker finds no errors in your script, but it does not work in
Warcraft III, first make sure it is being loaded (e.g., put a known good
script in its place and make sure that works), second try to narrow down where
the problem is in your script (i.e., remove as much as you can from your
script so that it still passes the checker but does not work in Warcraft III),
or better yet, figure the problem the checker isn't catching yourself. :)
Send me the narrowed down script or code fragment and an explanation of what
you think the problem might be.
- If the checker finds errors in your script but it works fine in
Warcraft III, then send me the script (or a narrowed down version of it that
still exibits the error). NOTE: there is a known error in
Scripts/Blizzard.j which involves a function which returns
a widget but is declared to return a destructable. I will
probably eventually fix this, but right now it is a good warning;
I think the only reason why it works is because Blizzard's syntax checker is
too lax (i.e., their bug, not mine :).
If people want a command-line version, email me also. It will take 5 minutes
to whip out, but I wasn't sure if anyone wanted it.
Dec 26, 2002
A pre-alpha demo is available here.