Login
Register
Menu
Home
Forum
JassDoc
Types
Functions
Variables
Help
Chat
Media
Search
Search posts
WC3 Modding Information Center
For your WC3 needs...
WC3 Modding Information Center
Forum
Warcraft (WC3) Modding
Warcraft III Resources
WC3 Editing Tools
vrJASS
Warcraft III:
Maps
Models
Skins
Icons
Spells / Systems
Tools
Tutorials
Snippets
JASS vJASS Spells and Systems
Tutorials
Chat @Discord
vJASS & Zinc Documentation
For the latest documentation about how it works vJASS and Zinc language layers for Warcraft III, please follow these links:
Jasshelper documentation
-
Zinc documentation
-
WC3 Optimizer documentation
vrJASS
WC3 Editing Tools
Started by
Ruke
Views
7697
Replies
2
Users
2
2
1
Pages:
1
Go Down
0 Members and 1 Guest are viewing this topic.
Rating
Average Score
- 5 / 5
«
Created: July 06, 2018, 04:09:19 AM by yxq1122
»
Show previous
Average Score
- 5 / 5
«
Created: June 02, 2016, 11:01:38 PM by moyack
»
Ruke
Lurker - level 2
Posts:
2
WC3 Models: 0
WC3 Tutorials: 0
WC3 Tools: 1
WC3 Maps: 0
WC3 Skins: 0
WC3 Icons: 0
WC3 Spells: 0
Reputation:
0
User
vrJASS
on:
June 02, 2016, 11:00:57 PM
Version:
1.8.0
Keywords:
jass,vrjass,vjass,compiler,language
Operating System (OS):
Linux
Windows XP
Windows Vista
Windows 7
Windows 8
Windows 10
Mac OS X Leopard
Mac OS X Tiger
Tool Category:
Jass Scripting, Specific WE Module as a Standalone App
Rating:
5
DOWNLOAD
«
Created: June 02, 2016, 11:00:57 PM by Ruke
»
«
Last Edit: September 03, 2018, 05:35:21 AM by moyack
»
What is vrJASS?
A just-for-fun programming language which compiles down to JASS (Warcraft 3). It aims to improve and replace the beloved vJASS.
What? x2
An update to vJASS which tries to solve its flaws.
I want to try it! - I need a manual
https://github.com/Ruk33/vrJASS/wiki
Last version
https://github.com/Ruk33/vrJASS/releases
Like SublimeText?
Here, a linter:
https://github.com/Ruk33/SublimeLinter-contrib-vrjasslint
TODOs
80%-100% (I'm planning not to implement a few features, like function interfaces, but if anyone can/want-to code it, will be welcome) compatibility with vJASS
Improve debug messages
Fix (module) initializations
(implemented as abstract classes)
Improve OOP (type-safety, attributes initialization, etc.)
Anonymous functions
Free variable definition
Add operators +=, -=, *=, /=
Improve/add loops
Null/Empty string/0 Conditional (null->false, "" -> false, 0 -> false)
Auto-null local handle variables
Optimizers do this already
Return array
Simply use structs
Allow
end
as alternative to
endfunction
,
endmethod
,
endloop
, etc.
Hooks (before/after)?
Delegated to cJASS
Alternative C-like syntax
Delegated to cJASS
Green
-> Done
When is it gonna be ready?
It already is on an
stable
version!
Where can I see the progress/code?
https://github.com/Ruk33/vrJASS
How can I help you?
If you know Java or Antlr4 you can check the repository and send me pull requests (don't worry if you don't know too much about them, I'm new too!). If you don't know these languages, let me know your suggestions, I'm open to them :)
So there will be no changes for the final-user (you), it will be like coding with the actual vJASS in my current setup in Newgen without any weird stuff, right?
Kinda. Yes, it is gonna be the same syntax, same features (excepting just a few that no one uses) but with a few and hopefully useful new features like better error messages, free variable definition (not only at the beginning), new loops, etc..
Few examples
Anonymous functions
Code: jass
call
TimerStart
(...,
function
local
timer
expiredTimer =
GetExpiredTimer
()
// ...
endfunction
)
Free variable definition
Code: jass
function
foo
takes
nothing
returns
nothing
call
TimerStart
(...)
if
(...)
then
// ...
endif
local
unit
bar =
CreateUnit
(...)
endfunction
Operators +=, -=, *=, /=
Code: jass
local
integer
i = 5
set
i += 5
// same as set i = i + 5
set
i -= 5
// same as set i = i - 5
set
i *= 5
// same as set i = i * 5
set
i /= 5
// same as set i = i / 5
Improved loops
Code: jass
while
(
true
)
if
(shouldSkipThisIteration)
then
continue
endif
// ...
if
(isOver)
then
break
// same as exitwhen true
endif
endwhile
Null/0 conditional
Code: jass
local
unit
u =
null
if
(u)
then
// unit isn't null
else
// unit is null
endif
local
MyCustomStruct instance = ...
if
(instance)
then
// instance exists (allocated)
else
// instance does not exists (not-allocated)
endif
What does vr mean?
Pick the one you like the most:
Beer (default), because everyone loves beer
Vexorian r$~%d-newbetterversionftw
Vexorian Ruke
Greetings.
«
Last Edit: September 03, 2018, 05:35:21 AM by moyack
»
moyack
Site Owner
Administrator
Posts:
971
WC3 Models: 20
WC3 Tutorials: 17
WC3 Tools: 19
WC3 Maps: 12
WC3 Skins: 0
WC3 Icons: 1
WC3 Spells: 16
Reputation:
1153
Site Admin - I love fix things
Re: vrJASS
Reply #1 on:
June 02, 2016, 11:04:41 PM
Hi Ruke, Welcome to Blizzmod!!
Awesome project you're proposing here
Definitely, a good addition for JNGP in the upcoming version.
WC3 Modding Information Center
Ruke
Lurker - level 2
Posts:
2
WC3 Models: 0
WC3 Tutorials: 0
WC3 Tools: 1
WC3 Maps: 0
WC3 Skins: 0
WC3 Icons: 0
WC3 Spells: 0
Reputation:
0
User
Re: vrJASS
Reply #2 on:
June 02, 2016, 11:16:36 PM
Hi moyack. Thanks for considering adding this project to JNGP !.
Print
Pages:
1
Go Up
« previous
next »
WC3 Modding Information Center
Forum
Warcraft (WC3) Modding
Warcraft III Resources
WC3 Editing Tools
vrJASS
Random Tools
Warcraft 3 Launcher
Views: 7386
Replies: 2
Posted by
moyack
March 06, 2019, 08:05:53 PM
PJass updates
Views: 3686
Replies: 2
Posted by
LeP
December 05, 2014, 02:27:07 PM
Magos' War3 Model Editor
Views: 31851
Replies: 4
Posted by
magos
August 28, 2011, 11:16:11 PM
MDLVis
Views: 21850
Replies: 4
Posted by
WC3Mod
February 19, 2011, 10:41:41 PM
BLPaletterGUI
Views: 1804
Replies: 1
Posted by
Deaod
November 30, 2010, 06:48:58 PM
PortaMx-SEF 1.54
|
PortaMx © 2008-2015
,
PortaMx corp.
Search
Username
Password
Always stay logged in
Forgot your password?