JASS NewGen Pack 1.5d

Here's an upate for you. I hope it fixes most of the problems with 1.22. War3err and japi are still not up to date, but I've included details on how to get them work with a dual install of War3.

Here's the changelog anyway:
$ works for 1.22 (except war3err/japi)
$ most recent JassHelper included (0.9.E.0)
$ included Risc's Colorizer plugin that adds a colorizer to the object editor (if .NET 2.0 is installed)
$ fixed the broken japi testmap and instructions and added a japi menu item
$ added umswe's missing game interface strings
$ included info on antivirus trouble and dual installs for war3err/japi in troubleshooting section

PS: if you're using UMSWE, disabe and re-enable UMSWE after the update to get it up to date.
 
I notice that 'compatible with 1.22' really just means it creates a 1.21b automatically in the warcraft 3 directory and runs off that...
 
[OFFTOPIC]
Automatic updowngrade

E-Lation (Enhanced Elation)

XD
[/OFFTOPIC]

[ONTOPIC]
Gj Pitzermike.
[/ONTOPIC]
 
Well, it's technically not a downgrade since they didn't add anything nor change anything in the 1.22 editor.
Only thing they did is recompile it with a different compiler.
 
i have a question, can tesh be updated to include events? /stuff that are all caps and some other default stuff

ex. UNIT_STATE_LIFE, bj_mapInitialPlayableArea
 
i have a question, can tesh be updated to include events? /stuff that are all caps and some other default stuff

ex. UNIT_STATE_LIFE, bj_mapInitialPlayableArea

Constants. I would second this, since I have to use JASSCraft just for this purpose. It's a bother to have to do that. :eek:
 
i have a question, can tesh be updated to include events? /stuff that are all caps and some other default stuff

ex. UNIT_STATE_LIFE, bj_mapInitialPlayableArea
It already does that? If yours doesn't, go to Options -> Style Options -> Constant and make sure it has some nice styling.
Or if you meant the function list to include them, that's also possible. Just select the radio button 'constants' instead of 'functions' below the search box.
 

Attachments

  • Constants.jpg
    Constants.jpg
    4.3 KB · Views: 348
  • Constants2.jpg
    Constants2.jpg
    28.6 KB · Views: 390
I my Kaspersky Internet Security does'nt detect any viruses in JNGP 1.4b nor its japi.dll.
But it reports 1.5a's japi.dll as a Backdoor.
Why the difference?
At the moment i am using JNGP 1.5a with the japi.dll of 1.4b.
Is that ok? what problems can i face?
Btw I think somethings fishy.....
 
I my Kaspersky Internet Security does'nt detect any viruses in JNGP 1.4b nor its japi.dll.
But it reports 1.5a's japi.dll as a Backdoor.
Why the difference?
At the moment i am using JNGP 1.5a with the japi.dll of 1.4b.
Is that ok? what problems can i face?
Btw I think somethings fishy.....

We've changed how the dll injection works from 1.4 to 1.5 because for many people the old method didn't work after the 1.21 warcraft III patch.
If 1.4 works for you then that should be ok.

PS: If you're worried about viruses, you can check the source code at http://w3grimoire.svn.sourceforge.net/svnroot/w3grimoire for backdoors and compile it for your own.
But don't use the latest version because war3err is broken there, I suggest revision 237, at least that's what I used.
 
So...you mean both the japi.dll do the same stuff but in different ways. Thus if i am using warcraft 1.20e with JNGP 1.5a with the old 1.4b japi.dll, i shouldnt face any problems or reduced functionality.
BTW: Thx for the fast reply.
 
There's a few things I'ld pretty much like to see in JassHelper:
  • An overwrite / inject for functions, constant globals and structs in other libraries ( in order to change something / extend functionality without having to code wrappers )
    As in
    JASS:
    function Test takes integer a, integer b returns integer
      set b = b + 5 
      return a + b
    endfunction
    
    //! extend function Test
     set a = a + b*6
     //! code
    //! endextend
    compiles to:
    JASS:
    function Test takes integer a, integer b, integer c returns nothing
      set a = a + b*6
      set b = b + 5 
      return a + b
    endfunction
  • An automatical handle-leak fixer ( before any return or the end of the function, set all local handle variables to null );
    an easy debug message system as in
    JASS:
    debug "40" // prints 40 when debug mode is activated
  • An easy string formatting system,
    as in
    JASS:
    call BJDebugMSG( "%p: Kills: %d; Deaths: %d" % ( Player( trigId ), Kills[ trigId ], Deaths[ trigId ] ) )

    Compiles to:
    JASS:
    call BJDebugMSG( GetPlayerName( Player( trigId ) ) + "Kills: " + I2S( Kills[ trigId ] ) +  "; Deaths: " 
    + I2S( Deaths[ trigId ] ) )
  • An automatical local variable declarer:
    Whenever a variable is used within the function, yet has not been declared yet, the preprocessor declares the function for us:
    JASS:
    function Test2 takes nothing returns nothing
      set a = 5
      set b = GetTriggerUnit()
    endfunction

    becomes
    JASS:
    function Test2 takes nothing returns nothing
      local integer a = 0 // Initialised with the "null" type!
      local unit b = null
      set a = 5
    endfunction
  • Perhaps ( not thaat important, but useful ) an easier way of writing functions:
    JASS:
    function TestA( integer a, integer b): nothing
     //...
    endfunction
    becomes:
    JASS:
    function TestA takes integer a, integer b returns nothing
     //...
    endfunction

    also +=, -=, *= and /= would be appreciated.
Best regards and thanks a lot for what you allready did,
SerraAvenger
 
... [Removed to keep post short] ...
also +=, -=, *= and /= would be appreciated.
Best regards and thanks a lot for what you already did,
SerraAvenger

Great ides, here. I would also like to see stuff like c++ and c--, since they are used so often.
 
@Serra

You should post JassHelper suggestions in the JassHelper thread over on wc3campaigns. It is much more likely that they will be read by vex then.
 
I really hope those suggestions were a joke.

Anyway, yeah, the JassHelper thread would be the best place to post your ideas, although I'm sure Vexorian won't consider any one of them.

No offense meant of course.
 
General chit-chat
Help Users
  • No one is chatting at the moment.
  • tom_mai78101 tom_mai78101:
    Currently in the middle of getting the probate process going. We're doing the informal probate process.
    +3
  • Varine Varine:
    A probate is usually done with a will, yes? If so I am sorry for your loss
    +1
  • The Helper The Helper:
    Yeah Tom, me too sorry for your loss buddy my mom told me she finds out her olds friend died from Google searching them. She had not talked to one of her old friends in a year and found out she died from Google. Also another one in the same session. RIP all of them my sincere condolences Tom
    +1
  • Varine Varine:
    We have some elderly guests that regularly come hang out at the bar at the end of the night, and every once in a while we don't see someone for a few weeks and then someone shows up with their obituary.
  • Varine Varine:
    We usually let them do their memorials there in the morning if they want to and I'll make them some snacks and drinks. There was one guy named Tom that came in like every night and would sit by himself and get a bunch of soup and a glass of wine. idk why but he LOVED our fucking soup, like he would order a fucking quart of it at a time and would always get so sad when we stop doing it for the summer.
    +1
  • Varine Varine:
    But he also loved our calamari, which is another thing I hate but it sells super well so I can't change it. There was one day he came in and was asking me how to make it, because he tried to at home once in the off season when we stop running it and he really wanted it lol
  • Varine Varine:
    I think he's one of the only people I've made recipes for for free because he really wanted a broccoli cheddar, and it was like dude I don't have a recipe, it's just whatever I have, but here, this is how you do it
  • Varine Varine:
    I don't think he ever figured out how to do the calamari in a pan though, like idk how to do that either. He was afraid of the at home deep fryers though and it's like yeah, that's fair, I am too
  • Varine Varine:
    He was just such a sweet old man, we had two servers pregnant and they held a baby shower together, he was soooooo fucking excited to get to see a baby. Unfortunately he died a month or so before they were born
  • The Helper The Helper:
    So I decided to Google some people that I had not seen or heard from in a while and sure enough one of my old best friends, we had a falling out years ago but whatever, find out he died of Pancreatic Cancer in January. I have also lost a few of my closer acquaintances from growing up the last year. Getting old - people die - I kinda thought it was going to be this way a few years ago....
    +2
  • The Helper The Helper:
    Forum running super slow again
  • Ghan Ghan:
    Not really clear from the stats as to what is causing the slowness.
  • Ghan Ghan:
    We get a lot of guest traffic so it may just be the load is getting too high and not from any particular source.
  • Ghan Ghan:
    Looks like the server is maxed out on CPU.
  • Ghan Ghan:
    Oh it looks like a lot of the traffic is Silkroad Forums. That domain isn't protected by Cloudflare.
  • Ghan Ghan:
    But the old Silkroad site is still on its own server. I just had a test site set up on this server for it.
  • Ghan Ghan:
    I just disabled that test site. Let's see if that helps the load.
  • Ghan Ghan:
    Looks much better already.
  • The Helper The Helper:
    I had actually forgot about the Silkroad site. I had asked
  • The Helper The Helper:
    SD Ryoko about it and he said the couple of people left on there really like it, that was a few years ago, maybe I should check back
  • jonas jonas:
    I guess when you're getting old, and the last day of soup season draws near, you start wondering
  • jonas jonas:
    will I make it to the start of the next season? or was this the last time I'll ever have my favorite dish?
  • The Helper The Helper:
    I am doing my first Vibe Coding project. In installed the environment and tools according to instructions but it is all chat doing this for me at my direction. It is fun really and holy shit I might finish in 2 hours what it would have taken a day to in my Access and this would be an electron app complete new
  • Ghan Ghan:
    Good stuff.
  • Ghan Ghan:
    Just make sure it is secure. :)

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials
      Top