• 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.

WurstScript

Status
Not open for further replies.
Level 23
Joined
Jan 1, 2009
Messages
1,615
WurstScript Released!




WurstScript is a new Scripting language, which can, similar to vJass, cJass and zinc, be translated to Jass.
It’s goal is to provide a development environment where code can be written faster and errors in your code are detected as early as possible.


Small Feature Overview:


  • Less verbose, indentation-based syntax (a mix of python and jass)
  • Better code editor via the eclipse plugin

    • context aware code completion
    • syntax checking while you type
    • easy code navigation
    • interpreter and REPL to test some functions without running the game
    • integrated documentation with hotdoc
  • More safety, less hacks

    • no “struct extends array”
    • no implicit casting
    • forced conventions
    • modules that are more than textmacros
    • tuple types
  • Built-in optimizer (name compression, inlining, ...)
  • Open Source and on github, contributions are welcome
Project Thread: http://www.hiveworkshop.com/forums/...se-wurstscript-wurst-jass-compile-ide-238522/

Homepage: http://peq.github.io/WurstScript/

 
Last edited:

peq

peq

Level 6
Joined
May 13, 2007
Messages
171
uhh, does this support some native implementation? like implementing IsUnitAlive native in the code.

No, but it would not be too hard to add it if someone needs it.

how is struct extends array hacking?


  • It is a hack in the sense that you have to take care of some low level details yourself. Just to get some tiny optimizations people sacrifice readability, maintainability and safety.
  • It is is a hack in the sense that you declare your struct to extend array but it will not be a subtype of array as one might think. ("array" is not even a type in vJass)
  • It is a tool people use to implement hacks like ARGB. Wurst has tuple types for those cases which are much nicer in my opinion, see for example Colors.wurst).
  • If you see "struct extends array" in someone’s code you don't know if he did it just for the tiny optimizations, or if he really has an allocation mechanism with some different behaviour, or if he wanted to have a type alias for integers, or if the struct is just used as a namespace, or ....
 
Meh, the only reason vJass was a success was because it is extremely easy to implement and start using right away. This however requires a lot of work from the user to install and use. It took me a good 5 minutes to find the download link to Eclipse.

My Eclipse also had issues due to the fact that it would try to rewrite my previous workspace destination.

Not to mention "http://site.sunayama.de/" is forbidden. Now I don't know if this site is region locked or if it is down for maintenance.
Forbidden.jpg


So quite obviously I was unable to get WurtScript to work. However I feel that you should continue your work on it, and try to make it more readily accessible.
 
Level 23
Joined
Jan 1, 2009
Messages
1,615
Sigh...why do you think I posted 2 video tutorials?
It is not hard and doesn't take long to install. If you would have followed the links, you can find a written version here: http://peq.github.io/WurstScript/installation.html (I just fixed the WurstPack part)

Here is the installation video:
Took me 4:45 with explaining (without downloadtime)

The site is forbidden because it's an eclipse update site, as described in all the installation notes.

I mean, not to be offending, but read the damn manual/installation notes so you know how to install it?

All links to the downloads are provided in thread and in the video description.

This is the _news_ thread.

vJass wasn't easy to use in the beginning, did you even use the early versions with war3city or how it was called.
This little bit of extra effort comes with the benefit of automatic updates for the pack as for the plugin and of course eclipse.
 

peq

peq

Level 6
Joined
May 13, 2007
Messages
171
Meh, the only reason vJass was a success was because it is extremely easy to implement and start using right away. This however requires a lot of work from the user to install and use. It took me a good 5 minutes to find the download link to Eclipse.

My Eclipse also had issues due to the fact that it would try to rewrite my previous workspace destination.

Not to mention "http://site.sunayama.de/" is forbidden. Now I don't know if this site is region locked or if it is down for maintenance.
Forbidden.jpg


So quite obviously I was unable to get WurtScript to work. However I feel that you should continue your work on it, and try to make it more readily accessible.

Thank you for the feedback. We have put the installation guidelines for the eclipse plugin on that url now, in case anyone accidentally opens that page in his browser.

And maybe we should provide a ready to use download for eclipse with the plugin included.
 
I take back everything I said earlier, however not the part about it being difficult to implement. WrustScript is too external for my liking. I did get it to work, though your text tutorial is less than helpful.
This is the _news_ thread.
k?

Another reason why I am going to stick to vJass is because it is smoothly integrated into the editor. I won't go into it further. (Because this is a news thread)
 
Level 23
Joined
Jan 1, 2009
Messages
1,615
I take back everything I said earlier, however not the part about it being difficult to implement. WrustScript is too external for my liking. I did get it to work, though your text tutorial is less than helpful.

Another reason why I am going to stick to vJass is because it is smoothly integrated into the editor. I won't go into it further. (Because this is a news thread)

Please specify what you mean with less than helpful? It's just for installation, bot usage(2nd vis is there for that.

A lot of people that are now using WurstScript had the same reaction like you - the external scripteditor was a hurdle for them to take because it was unknown and outside of the editor and they didnt't know about programming outside of wc3.
If you watch the 2nd video tho you will see that the workflow is nice and easy and that the eclipse plugin is 100 times better with alot more features than the triggereditor.

My suggestion would be to at least give it a shot for maybe a small project and then decide if it's still too external for you.

OT: most other engines/frameworks with editors like wc3 rely on an external ide for scripting(like unity3d).
But errors there are not shown in the ide, but in the editor of the engine - therefore I find our solution to be even superior on it's small scale in comparison to commercial products.

To sum it up, i won't force you to do anything but we think our tools improve the scripting process of mapmaking a lot and therefore want to share it with the community.
You can also help us to make it better(it will stay external, but we would gladly take your feedback into account concerning the workflow and work-experience)
 
Level 14
Joined
Jun 27, 2008
Messages
1,325
A lot of people that are now using WurstScript had the same reaction like you - the external scripteditor was a hurdle for them to take because it was unknown and outside of the editor and they didnt't know about programming outside of wc3.
If you watch the 2nd video tho you will see that the workflow is nice and easy and that the eclipse plugin is 100 times better with alot more features than the triggereditor.

I agree on that part, most people who only coded for wc simply dont know the benefits of a good IDE. But its definitely worth a try, and Eclipse isnt some small piece of software nobody knows, its actually one of the most used ide's ever and the worlds leading software companies like Oracle, IBM, SAP etc. rely on it.
However, big functionality comes with increased complexity, so dont expect to completely understand the program after 5 minutes.

Btw, coded in WurstScript: (would have been a pain in the ass without the wurst optimizer)
 
Level 14
Joined
Jun 3, 2005
Messages
209
Congrats on the release! I wish a language like this had been available years ago when I was writing the code for most of my projects. I've seen how successful wurst has been for Escape Builder, and would recommend it to anyone who has a decent grasp of vJass or object-oriented programming (look it up!)

To anyone who has misgivings about switching; the move from GUI -> Jass and the move from Jass -> vJass/etc. are similar: there is some overhead where you need to install and get used to it, but your productivity long term is vastly increased. For smaller projects with plans to expand I definitely recommend switching asap to make life easier later on.
 
Level 23
Joined
Jan 1, 2009
Messages
1,615
It is necessary to download 300MB to launch this program?

and in pipe.dll detected a virus. antivirus AVG. Please remove the virus from pipe.dll

Most people have Java installed, so this won't be an issue.
Eclipse is the core part of WurstScript Development workflow, so yes, it is indeed needed.
pipe.dll as described above.
 
I agree on that part, most people who only coded for wc simply dont know the benefits of a good IDE. But its definitely worth a try, and Eclipse isnt some small piece of software nobody knows, its actually one of the most used ide's ever and the worlds leading software companies like Oracle, IBM, SAP etc. rely on it.
However, big functionality comes with increased complexity, so dont expect to completely understand the program after 5 minutes.

Btw, coded in WurstScript: (would have been a pain in the ass without the wurst optimizer)

Hm.. That video was made pretty long ago and WurstScript was released recently, right?
 
Status
Not open for further replies.
Top