| 08-29-2008, 03:51 AM | #1 |
I have an interest in learning jass, but I would like to know if any of you "Veterans" have a bit of advice you'd be willing to give me. Such as where to start, any useful tutorials you could point me to. Seeing as members of THW just called me a noob and refused to help. I apologise if this is the wrong place to post this, feel free to move it if needed. Thank you, I greatly appreciate it. TheDefiled |
| 08-29-2008, 04:02 AM | #2 |
There are 3 ways: Easy one - tutorials and articles about jass, just read them. Hard one - work with commented systems and submissions. Bad one - hack maps\work with open source maps. |
| 08-29-2008, 04:25 AM | #3 | |
I personally would divulge into Jass and learn the syntax and as soon as you get the basics, jump directly to vJass, so there is no double learning curve, just 1 curve. I compiled a list of tutorials and what you should expect to learn from them for a guy who wanted to learn (but gave up a day later). I'll post it if I find it. Edit: found it. There is a lot to read, but take your time if you really want to learn.
|
| 08-29-2008, 04:25 AM | #4 | |
Quote:
Nothing wrong with that. Right now, I'm at the same stage. My JASS is basic at the best right now, but I'm working on it. I have a bunch of old code belonging to PurplePoot lying around (and some new stuff too), which I'm taking a look at. |
| 08-29-2008, 04:38 AM | #5 |
I've looked at tutorials and sample maps. I expanded Vuens RPG item system to allow 6 different item types instead of 2. That helped me learn some more. I'm going to read some more tutorials and expand my knowledge. I really just want to learn how to create full screen inventory systems, then go on from there. I thank you all for the advice. TheDefiled |
| 08-29-2008, 05:08 AM | #6 |
I hate to sound like the bearer of bad news, but full screen inventory systems are rather difficult and tiring to code. Sure, you make make the visuals quickly, but getting the system to handle anything you give it is another story. I'm actually in the midst of writing one and I've been working on it for a good couple weeks (excluding vacation time). With it though, I had to write a bunch of other systems to deal with item properties and stats. Unless you are determined to write one, no matter what the cost, I would wait till you completely understand Jass and vJass especially. I don't and I'm starting to feel the toll. |
| 08-29-2008, 05:16 AM | #7 |
I'm going to start out with writing some of my own systems such as a (2-d projectile and knockback) but that's just me. |
| 08-29-2008, 05:43 AM | #8 |
Hmm, JASS's syntax is very similar to Javascript, it's kind of like a mix of php and javascript. I'm pretty good at Javascript, and I'm OK at php, and that knowledge seems to be helping with the learning process. I'm pretty determined to learn how to code a fullscreen inventory system. But let me ask one thing. Do I use a trackable to detect when an item is clicked or moved, and then another trackable to detect where they're trying to move an item? TheDefiled |
| 08-29-2008, 06:48 AM | #9 |
Well, you would lay trackables out in a grid when the map loads. You can then detect when a player mouses over (display item stats) and when a player clicks (some item action). The grid is usually 1 trackable per slot, and then 1 trackable per button. Moving the item is entirely triggered since fullscreen inventories are not native to warcraft 3. You will need to code all the movement functions and any special properties and effects. |
| 08-29-2008, 06:59 AM | #10 |
im also new to jass but what i did was make simple triggers in gui convert them into jass then enhance/de-BJ/de-redundant them. then i made some stuff by crude methods (passing data by ability markers with levels, etc.) then ameliorated these crudes with vjass. |
| 08-29-2008, 01:14 PM | #11 |
Hmm, thanks Ammorth, that's how I thought it was done. |
| 08-29-2008, 02:27 PM | #12 | |
Quote:
I find JASS to be a little too verbose to be remniscient of javascript or php, and them too weak typed to be like JASS.</anal> The programming logic should be remarkably the same, so that's what I believe you find similar actually. The way I learnt jas was when I was trying to do some math, which was hell in GUI. I started converting my code, and using JASSCraft back then to get used to the api. It would be interesting that soemone creates a JS/PHP/C/etc compiler for the jass vm. Concerning the fullscreen inventory UI, what would be the general idea to write one? I heard TC used destructibles for some reason, but I would like to know what for and such. |
| 08-29-2008, 03:35 PM | #13 |
Destructables are for the graphics, since you can use Replacable textures (1 model for all the icons and graphics). When I started mine, I extracted all the images I needed from war3.mpq and stuck it in a photoshop document. I then arranged them on a screenshot until the positions and layouts were what I wanted. Then I split the inventory up into a grid and started making icons out of the different pieces. |
| 08-29-2008, 05:14 PM | #14 |
Thanks for the list Ammorth, I've been working with GUI for years, and just made it work for me, but it's probably about time I learn JASS lol. I've kind of always wanted to learn, I just never knew where to start. +rep imo. |
| 08-29-2008, 09:14 PM | #15 |
I'm surprised the mass tutorials I helped write hasn't been mentioned... You know, the "Collected JASS Lessons" which was made specifically for people starting JASS? EDIT: Sorry for the advertisement, but... yeah. They're awfully helpful tutorials for new JASSers. |
