• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

What coding language to use

Status
Not open for further replies.
Level 5
Joined
Aug 9, 2019
Messages
51
Hi everyone!
I am currently working on creating my own ORPG map and as I am slowly finishing terrain and planning other things, I would soon need to decide whether I use GUI or something else. I have some minor experience with GUI (still practising), but I saw on the forums that people recommend to JASS,vJass, LUA, Wurst for example. I do not have a lot of experience in coding, and my map would involve lots of bosses and characters with different mechanics. What would be your recommendation as to which language to use for beginner like me and for that type of map?
 

Uncle

Warcraft Moderator
Level 63
Joined
Aug 10, 2018
Messages
6,456
For starters Jass and vJass are basically the same thing. Jass has been around since day 1 and is the default programming language for Warcraft 3.

Lua was introduced in patch 1.31 and is the most recent programming language made available to us by Blizzard. It's a much better alternative to Jass, aside from maybe some annoying desync issues (which can be avoided).

I don't know much about Wurst but I know it's been around for a while. It's definitely a better alternative to Jass and seems to have some great documentation which would help get you started.

Then there's TypeScript and C#, which are both made available due to the introduction of Lua:

My personal favorite is C#. I think this programming language is the most beginner friendly of them all BUT keep in mind I've never tried TypeScript or Wurst. One reason I like it so much is that the free game engine Unity uses C# as well. This means that your code could be transferred over to an incredibly popular game engine. For example, the Steam game Legion TD 2 was created in Unity.

The issue with C#/TypeScript/Lua is that they haven't been around in the Warcraft scene as long as the others so resources and documentation for these can be scarce. Lua has received some love from creators like Bribe and Tasyen so that's a big plus.

I suppose a good strategy would be to start out with Lua and learn Jass alongside it (that sort of happened naturally for me). Then maybe make the jump to either TypeScript or C# if you want to work with languages that I think are easier to digest/use than Lua.
 
Last edited:
Level 7
Joined
Dec 9, 2014
Messages
89
As someone that learned how to code through Warcraft 3, I think simply learning jass is the best starting point. If C#/TypeScript/Lua had been around for a long time then it would be a different story, but they haven't and there isn't enough documentation especially for people totally new to coding. Reading threads about these languages for Warcraft 3 will confuse the hell out of you as they will assume some level of general language knowledge. On the other hand there is a lot more for noobs about getting started with Jass so the syntax will be easier to learn and your code will be easier to debug by searching up questions on Hive.

Once you got the basics of Jass down you could consider switching to one of the other languages as they will make your code more flexible and easier in the long run. But you can't even really unlock the potential of these languages if you don't know basic coding principles anyway.
 
Level 5
Joined
Aug 9, 2019
Messages
51
For starters Jass and vJass are basically the same thing. Jass has been around since day 1 and is the default programming language for Warcraft 3.

Lua was introduced in patch 1.31 and is the most recent programming language made available to us by Blizzard. It's a much better alternative to Jass, aside from maybe some annoying desync issues (which can be avoided).

I don't know much about Wurst but I know it's been around for a while. It's definitely a better alternative to Jass and seems to have some great documentation which would help get you started.

Then there's TypeScript and C#, which are both made available due to the introduction of Lua:

My personal favorite is C#. I think this programming language is the most beginner friendly of them all BUT keep in mind I've never tried TypeScript or Wurst. One reason I like it so much is that the free game engine Unity uses C# as well. This means that your code could be transferred over to an incredibly popular game engine. For example, the Steam game Legion TD 2 was created in Unity.

The issue with C#/TypeScript/Lua is that they haven't been around in the Warcraft scene as long as the others so resources and documentation for these can be scarce. Lua has received some love from creators like Bribe and Tasyen so that's a big plus.

I suppose a good strategy would be to start out with Lua and learn Jass alongside it (that sort of happened naturally for me). Then maybe make the jump to either TypeScript or C# if you want to work with languages that I think are easier to digest/use than Lua.
Thank you so much for your reply,Uncle. I will definetly look into resources you provided and you did echoed some sentiments that I was worried about picking up Lua for example,since it hasn't been around that long. I was looking at resources and tutorials on JASS and Lua, and Jass wins overwhelmingly in that department, so I guess I will start with Jass and research other options.
 
Level 5
Joined
Aug 9, 2019
Messages
51
As someone that learned how to code through Warcraft 3, I think simply learning jass is the best starting point. If C#/TypeScript/Lua had been around for a long time then it would be a different story, but they haven't and there isn't enough documentation especially for people totally new to coding. Reading threads about these languages for Warcraft 3 will confuse the hell out of you as they will assume some level of general language knowledge. On the other hand there is a lot more for noobs about getting started with Jass so the syntax will be easier to learn and your code will be easier to debug by searching up questions on Hive.

Once you got the basics of Jass down you could consider switching to one of the other languages as they will make your code more flexible and easier in the long run. But you can't even really unlock the potential of these languages if you don't know basic coding principles anyway.
Thanks for sharing your experience, it seems to me based on your and Uncle's reply in this tread, and based on my research, starting from Jass seems like the most optimal way to start.
 
Status
Not open for further replies.
Top