• Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
  • Read Evilhog's interview with Gregory Alper, the original composer of the music for WarCraft: Orcs & Humans 🔗Click here to read the full interview.

JASS? When And How

Status
Not open for further replies.
Level 1
Joined
Apr 28, 2016
Messages
3
Hey I am a programmer working with a very talented artist. I am in a hurry about to head out here to a class. Sorry I didnt RTFM Im in a rush atm. So we are going to create a new custom game mode but I am a bit confused on the programming side? From my knowledge from a previous map I made, you couldn't write any Lua. It was all editor triggers? So now what is JASS? Is that a way I can write Lua for WC3. Also when is it necessary to use JASS over just using the editor triggers?

Thanks!
 

Dr Super Good

Spell Reviewer
Level 64
Joined
Jan 18, 2005
Messages
27,285
It was all editor triggers?
Yes, all third party pre-processors compile on map save into JASS.

So now what is JASS?
Just Another Scripting Syntax 2, JASS for short, is the scripting language used by Warcraft III. Each map uses a monolithic JASS script file which is compiled on map save.

Is that a way I can write Lua for WC3.
Any third party compiler can be made so that can convert from a language of the developer's choice to JASS. However for logical reasons the language features and capabilities are ultimately restricted by those of JASS. Additionally many operations normally considered trivial in OOP languages can be computationally expensive to emulate in JASS.

JASS1 was used by StarCraft and apparently follows a similar syntax. One can guess Blizzard exported and improved the basic system for Warcraft III.

Also when is it necessary to use JASS over just using the editor triggers?
JASS is necessary to retain your sanity. WorldEdit GUI is absolutely abysmal to use. I tried to write a system using WorldEdit the other day and eventually gave up after it started to give me a headache.

GUI in StarCraft II is much more user friendly and powerful, closely following most of the common capabilities of Galaxy.
 
Is that a way I can write Lua for WC3.

LUA can only be used at compile time with preprocessors, to do thing like create object editor data.

From my knowledge from a previous map I made, you couldn't write any Lua. It was all editor triggers? So now what is JASS?

The triggers in the editor are generally referred to as GUI. It's the way to script using dialog boxes.

JASS is the actual scripting language. You can find a lot of information about it online or in the the tutorials section.

Also when is it necessary to use JASS over just using the editor triggers?

Certain functions don't have a GUI equivalent but you can embed custom script into your GUI triggers.

  • Set PointVar = (Some Location)
  • Custom script: call RemoveLocation(udg_PointVar)
I personally would just learn the basics of GUI then go straight into vJass.

vJass is the most widely used preprocessor for JASS which implements many useful features. There's tons of information about this stuff online.

The easiest way to use it is to download a modified World Editor called JNGP. Here's a guide to get you started.

http://www.hiveworkshop.com/forums/...6/how-download-install-configure-jngp-160547/
 
Level 1
Joined
Apr 28, 2016
Messages
3
LUA can only be used at compile time with preprocessors, to do thing like create object editor data.



The triggers in the editor are generally referred to as GUI. It's the way to script using dialog boxes.

JASS is the actual scripting language. You can find a lot of information about it online or in the the tutorials section.



Certain functions don't have a GUI equivalent but you can embed custom script into your GUI triggers.

  • Set PointVar = (Some Location)
  • Custom script: call RemoveLocation(udg_PointVar)
I personally would just learn the basics of GUI then go straight into vJass.

vJass is the most widely used preprocessor for JASS which implements many useful features. There's tons of information about this stuff online.

The easiest way to use it is to download a modified World Editor called JNGP. Here's a guide to get you started.

http://www.hiveworkshop.com/forums/...6/how-download-install-configure-jngp-160547/

Thanks but yeah for some reason when I want to test the map The test button acts like its going to do something then goes back to main map editor menu. I saved my project prio to hitting test and its not working.
 
Level 26
Joined
Aug 18, 2009
Messages
4,099
It goes to the main menu in case the map is of invalid format. Probably it did not convert the vjass, so your war3map.j is improper. Check if it actually runs (displays) jasshelper when saving. You may have to enable it from the menu bar. When writing to a new file, JNGP fails to apply jasshelper on first time saving. Otherwise it should report you when a map cannot finish the compilation process.
 
Status
Not open for further replies.
Top