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

[General] Should I use JASS for my grad project?

Status
Not open for further replies.
Level 3
Joined
Jun 9, 2010
Messages
31
hey, I'm taking AP computer science for my school and one of the graduation projects we can do is a curriculum extension. I was thinking of creating a WC3 map for it, however I have no experience with JASS. They recommend it being 40 hours. They've been teaching us Java, and I'm doing pretty well it in it (got about a 95% average). My question is, think I should do it for that project? I'll have the summer to work on it, but I need to know what I'm doing by next friday.

As long as it looks good it doesn't have to take a lot of work...my teacher is the one they call in to look at it; since we're on good terms, he said he'd help make me look good. Think it's worth doing, or is it harder than it looks? I figure I'd pry do a tower defense, or something that takes a decent amount of work (I'd like to take pride in it of course), however I don't want it to consume my life, or be something that I just can't grasp and have to restart.

Thanks for any response...I'd love to hear what you guys think.
 
Don't know if your instructor would be cool with that, but this should help get you started

http://www.hiveworkshop.com/forums/pastebin.php?id=bwgda7
http://www.hiveworkshop.com/forums/pastebin.php?id=4keo8o
http://www.hiveworkshop.com/forums/pastebin.php?id=l9126t

If you really want to do something impressive, do an ORPG or a creative maze.

This was a maze I did long, long, long ago in GUI to show you that not all mazes suck (about the hardest maze in the entire world)
http://www.epicwar.com/maps/7583/

If you manage to get through those chapters, I can link you to more things that'll probably be useful for you to know.

I imagine that you're familiar with data structures and memory allocation coded from scratch right? You really need to know those things for JASS =).


If you do plan on an online ORPG, you can show off encryption skills as well by using Encoder
http://www.hiveworkshop.com/forums/spells-569/encoder-2-0-2-0-a-189883/?prev=mmr=6

The steps Encoder takes and the order it takes them in is industry standard. It's encryption stuff isn't as strong as the norm since it tries to minimize code size, but that could really help make your project shine =).


If you really work at in, you could learn all of JASS in a couple of days and get your huge final project done in a month. If you work meh at it (a few hours a day), easily finish by end of summer.


Alternatively, you could get a commercial game engine with source code access and probably impress everyone a whole lot more. I really don't see wc3 as being something good for a project like what you're doing. A good engine that is also at a good price is Torque 3D, but there are plenty of free ones as well, though they won't be as great or you won't have access to source code.
 
Level 33
Joined
Mar 27, 2008
Messages
8,035
Don't worry, my brother asked me for my help to create a cinematic for his presentation about GPS :)
However, I did it in GUI (that's not the matter)
What matters is, you can use War3 Editor as our unique weapon to present in front of your instructor (either GUI or JASS, hey, both of them pwned PowerPoint Presentation because it's damn unique dude, gotta admit that)

And coincidentally, his instructor used to play DotA Game and knows the familiar background of the game engine and all went well that day :)
 
Level 3
Joined
Jun 9, 2010
Messages
31
Hm....I'm looking at some of the online stuff about JASS right now, and it doesn't seem too hard (a lot of the stuff is the same as Java...variables, if then statements, booleans, while loops, etc.) although there is some stuff that'll be tricky. I don't want to get flying colors, I just need to pass this.

The project is a high school thing, not for computer science. The people doing the actual grading almost definitely won't understand anything of what I say, and my teacher for APCS (The guy they call in to help them) said that as long as we put some effort into it (we obviously can't try and abuse the fact he's helping us) he'll make sure we pass, or he'll at least tell the graders that we did a good job.

So is there anything you guys would recommend I do? In terms of what type of map to make, how to make it. Doesn't even have to be an original idea, haha you could probably even suggest something that already exists (Mass Effect anyone??)

Nestharus, I see you suggested an ORPG or maze...does that fit in with my "Just want to pass" ideals? I'm not looking to make jaws drop, I just want to do this project and get it done aha.

What would be nice is I knew enough JASS so I would know exactly what code to use and how to use it, problem is I don't understand enough of how WC3 runs to know that. I.e. I understand loops, variables, and all that generic stuff...just not how it applies in WC3.

Thanks for all the help/replies, I'm glad to see so many of you popped in to say hello ^.^
 
Whatever you do, don't make a TD

Tower Defenses don't really have a lot of systems needed to implement other than
a spawning system

I recommend that you create a small mini-game map with artificial intelligence computer
players :D

You can really impress your teachers if you say this:
"I'm writing Artificial Intelligence scripts for a map I'm creating in Warcraft III"

The word "scripts" makes it sound good xD
 
Level 3
Joined
Jun 9, 2010
Messages
31
does this website have any very basic maps that I can look at? Just to see how it runs the Jass....like *very* simple. Just so I can get a feel for how it works.
 
JASS is pretty simple.
It works similarly to any coding language, but what makes it run is "triggers".
You just need to create initializing functions, then conditions, then actions.

EDIT:
Here's an example:
JASS:
function Actions takes nothing returns nothing
    set udg_someinteger = udg_someinteger + 1 // You'll need to create an integer variable called someinteger
endfunction

function Conditions takes nothing returns boolean
    return true //You can put anything you want here (I just put true to keep it simple)
endfunction

//In this case, you don't need a condition, so just omit the "TriggerAddCondition and delete the above function.

function Init takes nothing returns nothing
    local trigger t = CreateTrigger()
    call TriggerRegisterTimerEvent(t, 1.00, true) // This registers the event to "t". It's a one second periodic event.
    call TriggerAddCondition(t, Condition(function Conditions))
    call TriggerAddAction(t, function Actions)
endfunction
 
JASS:
local trigger t = CreateTrigger()
call TriggerRegisterXXXEvent(t, event, ...)
call TriggerAddCondition(t, Condition(function XXXX))
call TriggerAddAction(t, function XXXX)

//running
if (TriggerEvaluate(t)) then
    call TriggerExecute(t)
endif

for running, most people just do a trigger evaluation and have conditions on the trigger as just the boolean expressions run faster than actions.

there are a lot of little nuances ;p.

To see some uses of triggers and ini
http://www.hiveworkshop.com/forums/jass-functions-413/snippet-event-186555/
http://www.hiveworkshop.com/forums/jass-functions-413/system-unit-indexer-172090/
http://www.hiveworkshop.com/forums/submissions-414/combat-state-186673/

CreateUnit makes units... etc... it's all pretty straight forward ;p.
 
Level 3
Joined
Jun 9, 2010
Messages
31
Hmm, how long did it take you guys to learn? Assuming you're not prodigies (which I'm sure most of you are). If you are, take into account I'm just some average Joe with a basic/basic-intermediate history of Java.
 
Level 3
Joined
Jun 9, 2010
Messages
31
Alright, thanks! I'll post back here later. Since I'll be needing an interview, would any of you possibly be willing to do an interview? Haha not right now, just possibly sometime in the future
 
Status
Not open for further replies.
Top