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

1.24 Released!

Status
Not open for further replies.
Level 23
Joined
Nov 29, 2006
Messages
2,482
They haven't said anything yet. I well, hope it's soon anyway.

Update - 8/5

The Warcraft III patch has been released but in order to resolve some persistent issues work is not yet moving to the Diablo II patch. Again this involves some very high priority issues that need to be resolved before work can continue on D2 1.13

We'll keep you updated as work progresses.
 
Level 19
Joined
Oct 15, 2008
Messages
3,231
Diablo has only a hundred players total? Wow... Anyway, once Warcraft III comes out, I wish all of you a very good luck to your maps once again!
 
Level 19
Joined
Oct 15, 2008
Messages
3,231
On Topic: Blizzard is still working on the new patch guys, you should see Westfall, I heard it's gonna be awesome, and anyways many maps have already been modified to be compatible with the bug patch, and so from here, I wish all a happy mapping time!

Off Topic: If you get banned in Battle.net, how long does it take to get unbanned? Sorry no reason for asking, just curious...

PS: Please explain further what this 'Return Bug' is...

PPS: How do you fix maps which are affected by the patch?
 
Level 12
Joined
Aug 31, 2008
Messages
1,121
return bug is:
JASS:
function H2I takes handle h returns integer
     return h
     return 0
endfunction
fixing it:
JASS:
function H2I takes handle h returns integer
     return GetHandleId(h)
endfunction
They finally banned the return bug on b.net?
I guess they did, but I can't be sure until 1.24b.
this is one way of fixing it. There are others.
 
Level 8
Joined
Aug 6, 2008
Messages
451
Return bug means that editor only checks that the last thing returned in function is correct type. Since returning ends the function, you can do stuff like this and return value that is wrong type:

JASS:
function H2I takes handle h returns integer // function is supposed to return integer
     return h     // it returns handle type variable
     return 0 // since return ends the function this line is never executed,
    // which is kinda silly, since it is the only return that editor checks to be correct type.
endfunction

This function for example, is used to get handles handle index ( converts handle to integer ). There are other uses for return bug too, but this is the most common one.
 
What does the return bug do anyway?

Since I think you don't know what type-casting can be used for.
There are many systems outside to store values, like HSAS, PUI or the (good) old HandleVars. All of them need some sort of index, to get their value (I think you know arrays from GUI, the index is an integer). Now, when you type-cast a unit into an integer, you get an individual number that is completly unique (unless you destroyed the handle stack, don't think of this problem ;) ). You can use this unique number as an index and attach values in this systems, so you can easily access them with the index later. There are many other uses, like transforming an integer (or something else) into codes and plant viruses on computers. This got fixed :) by the way, wouldn't banning code-returns do the job? And let us use H2I and co again?
 
Level 12
Joined
Aug 31, 2008
Messages
1,121
The return bug is VERY useful in knockbacking, since you can get handle Id's of anything with a Handle.
Every thing with a handle (everything besides boolean, real, integer, and string) has and integer Id, which is unique to that handle. No other unit may have that integer.
By getting the handle Id of a handle, you can store other objects under that Id in a hashtable. By passing the object that the items are named under (which is mostly as I have seen a timer) to another function, you may get the Handle Id of the passed handle, and easily restore any data stored under that handle. Then you can simply flush all the ChildHashtable (A hashtable has 2 values. Parent, and Child. You usually name the Parent under the handle Id when used in this way.) By telling it to flush all handles under the handle in which you attached everything. You only need to flush it, if you want to kill leaks. (Which is a VERY good idea in every situation.)


Did I lose anyone?
 
Level 6
Joined
May 1, 2009
Messages
215
Can anyone point me in the right direction? I'm using JASS newgen and I've replaced common/blizzard .j and when I try to save a BLANK map it gives me compile errors. RTC, JassHelper, UMSWE are all disabled, only Grimoire's limitation removers are enabled.

It doesn't help that the Mac WE is completely broken by 1.24 (Blizzard never updated it). Can anyone tell me what to do about my newgen? :(
 
Level 7
Joined
Mar 8, 2009
Messages
360
  • First, ensure you have JassNewGenPack5d.
  • Next, open <your JNGP folder>\jasshelper\
  • Next, replace the common.j file and Blizzard.j file with the ones included in this post.

If you get a bunch of "unregistered native function" errors, make sure to select "Disable WE Syntax Checking" in the Grimoire menu.

--------

For people who can't successfully use the test map feature in JassNewGenPack, uncheck "Enable Reinventing the Craft" in the Reinventing the Craft menu.

--------

For those of you who are complaining that your map does not run after a successful compile, this is because it did not actually succeed in compiling; rather, pJass is still compatible with the return bug and thus will not report it as an error.

To fix this, try getting the raw JASS behind your vJASS code (if applicable) and then compiling it in a test map in the vanilla World Editor.

try this
 
Level 19
Joined
Oct 15, 2008
Messages
3,231
By return bug, what do you mean...? Please explain in erm... Very very simple terms, I don't understand JASS talk... Sorry...
 
Okay Foxy.
Lets say, every person on earth has a piece of paper in his brain with an individual code.
This code/number, is complelty unique. Every person, every tree, every place and everything else has such a code. You can't access this number without the return bug.
The return bug "wanted" the unit/location/... and gave you access to this number.
I think from GUI you know I2S (Integer to String) and all the other conversions? That's the same way the return bug works.
The problem is, that there was an I2C (was it integer? still don't know it :D) that allowed you to create "code". Codes are functions and stuff that get evaluated on your computer. When you click your mouse, your computer recognizes this and does some stuff in your core. However, when the code (created with this integers) gets "done" (evaluated) you had a virus on your computer. Easy enough?^^''

EDIT: Example^^
Paladin + Return Bug = Long Number (32957863295 or something else, no, this one doesn't exist^^)
Self written long number + Return Bug = Virus :O
 
Level 19
Joined
Oct 15, 2008
Messages
3,231
Oh... I get it... But what's with GUI, I don't understand GUI either lol... Could you explain that to me too please...? =) +Reputation if you do!
 
Level 6
Joined
May 1, 2009
Messages
215
Just follow purplepoot's instructions in the first post.

Please don't insult my intelligence :(

RTC is OFF, the map is BLANK (not even default melee triggers), I have replaced the Blizzard/Common .j and when I save or test map it gives me compile errors.

Now, if I save, I can test map and it will run (but if I make any changes I will have to save again to test), however, I'm very concerned that if I make any triggers or change any in my existing maps, the triggers will not work and I'll be screwed. I can open the map in the normal editor and it will compile fine (so far, but I haven't tested compiling in WE with some GUI triggers from newgen), but the fact I'm getting an error in newgen is concerning to me.
 
Level 6
Joined
May 1, 2009
Messages
215
I'm pretty sure more than half of b.net has no idea what GUI is, let alone what it might even stand for. I mean, look at some of the public maps: the other day I was playing map that had 'repsawn' spelled as 'rispwon' - you can't expect a person like that to understand how to trigger. I remember what it was like to be 12, I probably couldn't have understood it then either.
 
Level 7
Joined
Mar 8, 2009
Messages
360
I'm pretty sure more than half of b.net has no idea what GUI is, let alone what it might even stand for. I mean, look at some of the public maps: the other day I was playing map that had 'repsawn' spelled as 'rispwon' - you can't expect a person like that to understand how to trigger. I remember what it was like to be 12, I probably couldn't have understood it then either.

You are still 12?
 
Level 21
Joined
Aug 21, 2005
Messages
3,699
I'm pretty sure more than half of b.net has no idea what GUI is, let alone what it might even stand for. I mean, look at some of the public maps: the other day I was playing map that had 'repsawn' spelled as 'rispwon' - you can't expect a person like that to understand how to trigger. I remember what it was like to be 12, I probably couldn't have understood it then either.

The term "GUI" is a very general term. I wonder how it comes people have never heard of it before, since you find it everywhere, even in this thread.
 
Status
Not open for further replies.
Top