cJass

Welcome!

cJass is small, but useful preprocessor for JASS2 interpreted language, used in Warcraft III by Blizzard ent. Its main purposes are to make the process of writing the script simple and comfortable and to increase its readability.

Here is what cJass code looks like:

include "cj_types.j"

bool bIsFlag = true

timer MyGlobalTimer = new timer

void SomeFunc (int i) {
  if (i>MAX_VAL) { i = MAX_VAL }

  bool b = !bIsFlag
  float a = 2.
  int c = -2
  a *= c + 8.

  do {
    BJDebugMsg(I2S(a))
  } whilenot (a < c++)
}

The program is designed for use with Jass New Gen Pack, is compatible with vJass (0.A.2.B) parser and is run before it.

Installing:

Download the installer, run it, select preferred install type, then select the NewGen folder and press Install button. That's all!

The AutoUpdate tool is included in the install package, so you can be sure that your cJass version is always the latest one available

Downloads:

Stable version: 1.4.1.5 (09.10.2009)

The use of this version is recommended for your projects. It is stable and generally bug-free, so you shouldn't encounter any unexpected behaiour. It is updated as soon as the development version reaches some stability.

You should download full installer if you already have an older version. You cannot update from 1.3.x to 1.4.x via autoupdate.

Installer (1135K, 7z, contains Horus) (password for archive: cjass)
Tool archive (327K, .zip)
Parser only (14K, .zip)


Development version: 1.4.2.14 (19.05.2011)

This version is the most up-to-date one, but it is not tested and can contain bugs, crash or behave unexpectedly. Use it on your own risk and if you want to use all cutting edge cJass features before they get to stable version.

Download and install stable version of AdicHelper. Then download executable (19K, .zip) and unpack to your AdicHelper directory.

Changelog:

  • * Fixed bugs with "flush locals" instruction.
  • * Fixed removing unused globals.

View full version history


Project Horus: 0.4.6.T (22.09.2009)

The aim of project Horus is to commit a full rewrite of Scintilla lexer library, which is used by TESH for highlighting JASS syntax. The resulting library works better than the original one, folds and highlights cJass syntax, folds vJass better than the original one and also highlights delimited comments.
To use it, simply unzip the archive to your NewGen folder or use cJass stable installer.

Download archive (672K, zip)

Credits:

ADOLF - ideas, coding
Van Damm - ideas, coding of installer, updater and Horus, testing, public relations, english translation

We also thank our faithful testers: Dark Dragon, Toadcop, Artte

Any comments or suggestions?

Please visit the Feedback section.

Other projects hosted here: