What is JASS?

Status
Not open for further replies.
What is JASS? JASS is a scripting language for the WorldEdit
I mean.. there is no much answer to the question "what is?"
Is GUI, but, not friendly for the noobie, is really no superpower to the WorldEdit (except for the Memory library xD )
 
Last edited:
I'm currently trying to learn JASS, after years of GUI usage.
It's giving me a hard time, mainly because i have to be very careful with syntax and finding the right function for the job.

Also: JASS - Wikipedia
 
No I dont use newgen nor WEX I just use the normal editor

Coding JASS is hard in the normal editor. Syntax errors can make the editor crash, and the JASS editor is essentially a notepad.

I would suggest using WEX or JNGP and you will instantly see the improvements it makes to the JASS editor (with TESH).
 
JASS is the scripting language Blizzard invented for StarCraft 1. They kept the same scripting engine for Warcraft III and upgraded it into JASS2.

JASS is technically a programming language of sorts, however people usually call it a scripting language due to its high level nature. JASS scripts are compiled into JASS bytecode on map load which is then executed by a JASS virtual machine for improved execution speed. The language syntax seems to take ideas from BASIC, in that it uses keyword block terminators (eg endfunction, endif, endloop) rather than indentation (eg Python) or bracers (JAVA/C). JASS was not reused in StarCraft II, with Blizzard making a new C like language called Galaxy for its scripting purposes. The GUI of StarCraft I and Warcraft III compiles into JASS on map save.

JASS has a few major pitfalls. The language allows the declaration of only 1 globals block per script, making declaration of global variables cumbersome. Although the code is compiled to JASS bytecode, it still has to resolve every named element at execution time greatly limiting performance. The on load JASS compiler lacks optimization features resulting in extremely verbose and inefficient JASS bytecode. The JASS virtual machine lacks JIT compilation to native code also reducing performance. JASS lacks many basic operators that are often taken for granted in other programing languages such as all bitwise operators.
 
Status
Not open for further replies.
Back
Top