|
|
#1 |
Member
Join Date: Jun 2009
Posts: 5
|
|
|
|
|
#2 | |
Member
Join Date: Oct 2009
Location: Where all life began, inside of and all around you.
Posts: 41
|
Quote:
![]() Second, if you are looking to find out about JASS it is the pseudo - programming language that powers all warcraftIII maps and campaigns. It only slightly resembles Java.In fact , it is Easier. Anyway, if you want to learn the basics (and some more advanced issues) of JASS then this site will help you(go to the tutorials' page):Hiveworkshop
__________________
I am reborn from the ashes...of the past.
|
|
|
|
|
#3 |
Member
Join Date: Jan 2010
Location: Germany
Posts: 5,142
|
Again, i doubt JASS is easier than Java. If for you "easier" means "fewer features" then probably yes, but JASS is pretty horrible to code in (unless you know what you're doing).
Anyways, the first thing you should do to get into JASS is to get JNGP running. You'll find lots of tutorials on Hiveworkshop (as WaremDarkslayer already mentioned), and you'll surely find more help if you search for specific questions. Also, you can always ask for help in this forum.
__________________
I might edit my p0sts frequently and rapidly after posting.
DotA code of the week:
Jass:
if loc_real01>650 then
else
call GroupAddUnit(group002,GetEnumUnit())
endif
|
|
|
|
#4 |
Member
Join Date: Jan 2012
Location: Australia
Posts: 17
|
JASS is very similar to Visual Basic.
There are many different JASS code types. eg. vJass, cJass, Zinc.
__________________
Fake
![]() ![]() Real Ninjas can't be seen. Heres one.
|
|
|
|
#5 | |
Member
Join Date: Oct 2009
Location: Where all life began, inside of and all around you.
Posts: 41
|
Quote:
Yes JASS is horrible as a language but it is a necessary evil if you want to create warcraftIII games that are worth a damn(no offence). And besides before getting JASS New Gen Pack you should know what JASS is and how it works.Otherwise , you'll never learn how to efficiently code in JASS.
__________________
I am reborn from the ashes...of the past.
|
|
|
|
|
#6 |
Member
Join Date: Jan 2010
Location: Germany
Posts: 5,142
|
I can agree to that. Input-wise, JASS is defenitely easier, but as a language it sucks.
__________________
I might edit my p0sts frequently and rapidly after posting.
DotA code of the week:
Jass:
if loc_real01>650 then
else
call GroupAddUnit(group002,GetEnumUnit())
endif
|
|
|
|
#7 | ||
Member
Join Date: Aug 2010
Location: Serbia, Belgrade
Posts: 52
|
Quote:
Visual Basic is far more powerful "tool". Quote:
You can't compare it to languages like C or java. |
||
|
|
|
#8 |
Member
Join Date: Jul 2009
Location: Everywhere
Posts: 998
|
AFAIK Icefrog uses Jass, not vJass. Mb i am not right, but he creates spells via storing dates in game cache
|
|
|
|
#9 | |
Member
Join Date: Aug 2010
Location: Serbia, Belgrade
Posts: 52
|
Quote:
He use Table and libraries like AIDS or Damage Engine etc etc, and they are vjass coded. |
|
|
|
|
#10 | |||
Member
Join Date: Jan 2010
Location: Germany
Posts: 5,142
|
Quote:
The spells that need to store data use hashtables to do so. Quote:
Quote:
Also, it's one of the bigger flaws of DotA that it does not have a damage detection engine. What does this tell us?
__________________
I might edit my p0sts frequently and rapidly after posting.
DotA code of the week:
Jass:
if loc_real01>650 then
else
call GroupAddUnit(group002,GetEnumUnit())
endif
|
|||
|
|
|
#11 |
Member
Join Date: Aug 2010
Location: Serbia, Belgrade
Posts: 52
|
True, but you you will need to care about keys in that case.
That's why I mentioned table. He use, I will now list you few spells that can't be created otherwise: Abandon Shield and ultimate. Dazzle - Shadow Grave... |
|
|
|
#12 | ||
Member
Join Date: Jan 2010
Location: Germany
Posts: 5,142
|
Quote:
Quote:
Please, tell me where you need a damage detection engine for coding abba's shield or shallow grave. You just need the EVENT_UNIT_DAMAGED event. I can show you the code he uses if you want to. I understand that you are probably baffled by the functionality of the map without any library, but then again keep in mind that most likely nobody wanted to recode the entire map to include a new library.
__________________
I might edit my p0sts frequently and rapidly after posting.
DotA code of the week:
Jass:
if loc_real01>650 then
else
call GroupAddUnit(group002,GetEnumUnit())
endif
|
||
|
|
|
#13 |
Member
Join Date: Jul 2009
Location: Everywhere
Posts: 998
|
Icefrog is very smart, I shocked when I saw how Shallow Grave works. Setting hp to 1, whenever damage is higher than life, will not help. It works another way,because if damage is higher than life, target will die. It's add some abilities to a target, that adds life, something like this.
I am not sure that Icefrog uses any libaries, I think he doesn't even use vJass. He uses hastables, sorry I right wrong above, writing storing dates in a gamecache. My fault. And look at Phoenix's Sunray, Icefrog did a huge job, making this spell, spellmakers will understand me |
|
|
|
#14 | |
Member
Join Date: Jan 2010
Location: Germany
Posts: 5,142
|
Quote:
If you are shallow graved and take more damage than your max hp, you'll die. This is because shallow grave is a simple triggered heal (pre-heal to be more precise).
__________________
I might edit my p0sts frequently and rapidly after posting.
DotA code of the week:
Jass:
if loc_real01>650 then
else
call GroupAddUnit(group002,GetEnumUnit())
endif
|
|
|
|
|
#15 |
Member
Join Date: Jul 2009
Location: Everywhere
Posts: 998
|
Where did u saw that in my post? I said that it doesn't work that way. Read again
|
|
|
|
#16 | |
Member
Join Date: Jan 2010
Location: Germany
Posts: 5,142
|
I'm not sure we get each other right.
This is how the spell currently works: Quote:
Or in other words: I didn't mean to rephrase your statement, but to correct you.
__________________
I might edit my p0sts frequently and rapidly after posting.
DotA code of the week:
Jass:
if loc_real01>650 then
else
call GroupAddUnit(group002,GetEnumUnit())
endif
|
|
|
||
| Last edited by MauranKilom; 04-25-2012 at 04:18 PM. | ||
|
|
#17 |
Member
Join Date: Jul 2009
Location: Everywhere
Posts: 998
|
I didn't include it ^. I said that it doesn't work like that way
|
|
|
|
#18 | |
Member
Join Date: Jan 2010
Location: Germany
Posts: 5,142
|
Then you are wrong.
I'll reiterate this for the third time now, this is how Shallow Grave works: Quote:
__________________
I might edit my p0sts frequently and rapidly after posting.
DotA code of the week:
Jass:
if loc_real01>650 then
else
call GroupAddUnit(group002,GetEnumUnit())
endif
|
|
|
|
|
#19 |
Member
Join Date: Aug 2010
Location: Serbia, Belgrade
Posts: 52
|
OMFG I just checked latest dota script.
You are right he code in vanila jass. I'm horrible disappointed. Not because of vanila jass but because of bad codding, I saw 2 many same functions and conditions that could be merged into one. |
|
|
|
#20 |
Member
Join Date: Jan 2010
Location: Germany
Posts: 5,142
|
Well, apparently the biggest and most famous wc3 map doesn't need "good" code.
__________________
I might edit my p0sts frequently and rapidly after posting.
DotA code of the week:
Jass:
if loc_real01>650 then
else
call GroupAddUnit(group002,GetEnumUnit())
endif
|
|