1. Updated Resource Submission Rules: All model & skin resource submissions must now include an in-game screenshot. This is to help speed up the moderation process and to show how the model and/or texture looks like from the in-game camera.
    Dismiss Notice
  2. DID YOU KNOW - That you can unlock new rank icons by posting on the forums or winning contests? Click here to customize your rank or read our User Rank Policy to see a list of ranks that you can unlock. Have you won a contest and still havn't received your rank award? Then please contact the administration.
    Dismiss Notice
  3. The raddest synthwave tracks were chosen - Check out our Music Contest #12 - Results and congratulate the winners!
    Dismiss Notice
  4. The poll for Hive's 12th Concept Art Contest is up! Go cast your vote for your favourite genie!
    Dismiss Notice
  5. Travel to distant realms and encounter scenes unknown to the common folk. The Greatest of Adventures is upon us with the 8th Cinematic Contest. Join in on a fun ride.
    Dismiss Notice
  6. The 18th Icon Contest is ON! Choose any ingame unit and give him/her Hero abilities. Good luck to all.
    Dismiss Notice
  7. Contestants are to create a scene set in the Stone Age. Come and see what you can come up with. We wish you the best of luck!
    Dismiss Notice
  8. Colour outside the lines! Techtree Contest #13 is a go. The contest is optionally paired.
    Dismiss Notice
  9. Greetings cerebrates, our Swarm needs new spawners that will have numerous children. Join the HIVE's 31st Modeling Contest - Spawners and Spawned! The contest is optionally paired.
    Dismiss Notice
  10. Check out the Staff job openings thread.
    Dismiss Notice
Dismiss Notice
60,000 passwords have been reset on July 8, 2019. If you cannot login, read this.

[JASS] GUI is useless

Discussion in 'Triggers & Scripts' started by Bribe, Feb 24, 2010.

Thread Status:
Not open for further replies.
  1. Bribe

    Bribe

    Joined:
    Sep 26, 2009
    Messages:
    8,021
    Resources:
    25
    Maps:
    3
    Spells:
    10
    Tutorials:
    3
    JASS:
    9
    Resources:
    25
    What with all the redundancies and beaurocracies that it requires to function, not to mention the backwards handling of functions like...
    Code (vJASS):
    UnitAddAbilitySwapped(meh, ...)

    Please, someone who needs help learning JASS, I am happy to help as much as I can, just try to stop using GUI, it is obsolete and makes the map totally lag.
     
  2. Mechanical Man

    Mechanical Man

    Joined:
    Jan 18, 2005
    Messages:
    5,381
    Resources:
    39
    Models:
    30
    Icons:
    3
    Packs:
    1
    Maps:
    4
    Tutorials:
    1
    Resources:
    39
    GUI seems to make the map lag, because all newcomers use it. It's like saying a car sucks, because is driven by crappy drivers.

    I can't do anything better in jass than in GUI, I know about leaks what I know, and even using JASS I won't fix those errors if I don't know there are. If I knew there are, then I would be able to fix them in GUI too.
     
  3. Maximilianx

    Maximilianx

    Joined:
    Oct 14, 2008
    Messages:
    334
    Resources:
    0
    Resources:
    0
    I agree with Bribe. Honestly, GUI is just awful. I think I would be a lot more helpful to people if i opened their posts and didn't see a big fat GUI trigger staring me down.. so ugly and intimidating.
     
  4. JeffreyQ

    JeffreyQ

    Joined:
    Sep 28, 2004
    Messages:
    363
    Resources:
    3
    Maps:
    1
    Spells:
    2
    Resources:
    3
    I wonder what you coded in GUI to make the map lag. If someone that is good coded an ability (example) in JASS and GUI, you can't tell the lag difference by your naked eyes. So if you can make something that lags your map. You are doing it wrong.
     
  5. Anachron

    Anachron

    Joined:
    Sep 9, 2007
    Messages:
    6,167
    Resources:
    66
    Icons:
    49
    Packs:
    2
    Tools:
    1
    Maps:
    3
    Spells:
    9
    Tutorials:
    1
    JASS:
    1
    Resources:
    66
    No, you can. GUI is horrible calling one and another method, while JASS has only raw methods that mostly do only one thing.

    I once made an advanced TD system, I cleaned every leak, however, it got really laggy over 200 towers. It was basically a blood system that requires a tower to be paid with blood or else it gets paused. (In short)

    Never using GUI again.
     
  6. Teelo

    Teelo

    Joined:
    Mar 31, 2009
    Messages:
    709
    Resources:
    1
    Maps:
    1
    Resources:
    1
    Consider this:

    Function 1 takes parameter 1, parameter 2
    call Function 2 (parameter 2, parameter 1)

    Function 2 takes parameter 1, parameter 2
    does stuff

    When the map is compiled, the compiler will pick up on the redundancy and optimise them.
    The swapped methods aren't going to cause your leaks and such, poor programming will.
     
  7. Dr. Boom

    Dr. Boom

    Joined:
    May 1, 2008
    Messages:
    1,551
    Resources:
    3
    Maps:
    1
    Spells:
    1
    Tutorials:
    1
    Resources:
    3
    Seas =)

    Have to agree to - the funniest and useless thing I saw while I take jass was the GUI function to hide or show a unit.

    ShowUnitShow and ShowUnitHide ( wtf is this - jass better!! )
     
  8. lolreported

    lolreported

    Joined:
    Aug 16, 2007
    Messages:
    705
    Resources:
    12
    Tools:
    1
    Maps:
    5
    Spells:
    6
    Resources:
    12
    Well, I'm interessted in learning JASS, because I've been using GUI over three years now (lol). It would be fun to learn something new and just because I'm map making alot it would be good to know JASS. Currently I'm working on a map that almost got ONLY GUI, it works flawless, but I think it would be even better with JASS. The thing is, I can understand JASS, but not write it... Maybe it's a bonus that I can write C#-code so probably thats why I can read JASS. So well, if you got any time to help me learn the JASS-language just send me a PM, I think I'll just need a couple of days learning JASS. :)
     
  9. ap0calypse

    ap0calypse

    Joined:
    Jan 26, 2007
    Messages:
    4,780
    Resources:
    2
    Spells:
    1
    Tutorials:
    1
    Resources:
    2
    I use GUI... anything against it? Should I consider myself a horrible mapper now?
    I do know JASS though, I just don't like working with it... if I really need JASS for some functions that are just undoable in GUI, I'll use it - otherwise: no.
    I've used it for too long to just 'quit', can't help it =D

    You may think it's awful/horrible/..., but then again: if someone can code properly in GUI, I can assure you that the map will not lag at all.
    There are multiple ways to code efficiently in GUI (removing leaks, using variable loops, using variables instead of BJ's, etc...).
     
  10. Maximilianx

    Maximilianx

    Joined:
    Oct 14, 2008
    Messages:
    334
    Resources:
    0
    Resources:
    0
    But the time spent clicking through all those menus in GUI! Man I can't stand that. Having like 50 menus open for concatenating strings, or anything similar.. talk about a headache.
     
  11. ap0calypse

    ap0calypse

    Joined:
    Jan 26, 2007
    Messages:
    4,780
    Resources:
    2
    Spells:
    1
    Tutorials:
    1
    Resources:
    2
    Yup, strings and arithmetic functions take a bit longer, but you'll get used to it...
    It's not like it's THAT annoying (at least, I don't find it very annoying - not if you know what to do).
     
  12. Maximilianx

    Maximilianx

    Joined:
    Oct 14, 2008
    Messages:
    334
    Resources:
    0
    Resources:
    0
    Helluva lot more annoying than typing ("hello "+worldstring+", how are you doing today! Can you believe there's still "+I2S(bottles)+" bottles on the wall!?)
     
  13. ap0calypse

    ap0calypse

    Joined:
    Jan 26, 2007
    Messages:
    4,780
    Resources:
    2
    Spells:
    1
    Tutorials:
    1
    Resources:
    2
    Now there are only "((String((bottles - 1))) + bottles on the wall)" D:
    Yeah, it's more annoying... anyway, you can use strings and arithmetic functions in JASS (custom script) and the rest in GUI =D
    Wouldn't do much, but well...
     
  14. SlayerII

    SlayerII

    Joined:
    Aug 21, 2008
    Messages:
    526
    Resources:
    2
    Maps:
    1
    Tutorials:
    1
    Resources:
    2
    Some things are ok to code in GUI, but most things are horrible. Once i needed to read data from items and set the custom value of a unit to the read datas, but unfortenually i had to concentrade 2 integers and then, depending on how long the intger where, adding more integers. I made this in GUi and i need so freaking long. And then i had a mistake and had to remade half of it.. in jass i would just have change 2 words... Fortenually mow i know jass and never have to do such crap again:grin: Im still using GUI from time to time-when im working on a map together with my freind who cant read and write in jass:grin:
     
  15. Justify

    Justify

    Joined:
    Mar 16, 2008
    Messages:
    935
    Resources:
    5
    Models:
    1
    Icons:
    1
    Spells:
    3
    Resources:
    5
    Saying that GUI triggers lag is such an awfull lie... yes, GUI uses overcomplicated methods to create the script and all the BJ wrappers are useless, but realy, these few function calls are like nothing. My computer REALY sucks and I got no problem with well written GUI maps at all, because although everything is written in GUI, the amount of actions are just so few. I wouldn't think of writing a physic-engine in GUI because this realy are a lot of calls, but most times, it's just unimportant what you use. However, if you're able to use the better version, just do it. Sticking with GUI doesn't kill anyone.
     
  16. Bribe

    Bribe

    Joined:
    Sep 26, 2009
    Messages:
    8,021
    Resources:
    25
    Maps:
    3
    Spells:
    10
    Tutorials:
    3
    JASS:
    9
    Resources:
    25
    The lag of GUI is often equivalent to choppy gameplay, especially if you need a lot of things to happen in the same instant. I had a function called Theft that hid the caster, created a dummy caster, created two special effects to illustrate a blink, play an attack animation, add floating text and an additional text message if the player was lucky to get a rare steal, and then blink back and cause bonus damage if the player had another ability. Watching it in GUI looked like my whole screen paused for .25 seconds and then saw the animation.

    When I viewed the GUI functions in JassNewGen, almost every - if not every single - action I was calling was a BJ function (there is no way to avoid these in GUI). call PlaySoundBJ() causes a split-second lag whenever it starts, though it has no GUI alternative because it's the rawcode for Sound - Play Sound.

    I translated the BJ's to native functions and the .25 second chop was gone. Not to mention every trigger that I replaced BJ's with natives had exactly the same smooth effect. Watch one of Anitarf's beautiful cinematics and see how perfectly smooth everything is - that is one of the most important differences between GUI and JASS.
     
  17. SlayerII

    SlayerII

    Joined:
    Aug 21, 2008
    Messages:
    526
    Resources:
    2
    Maps:
    1
    Tutorials:
    1
    Resources:
    2
    Urm yes this is really a big problem while using GUI. Not every BJ will have such a big effect, but its better to not use em.
     
  18. Maker

    Maker

    Joined:
    Mar 6, 2006
    Messages:
    9,193
    Resources:
    17
    Maps:
    2
    Spells:
    14
    Tutorials:
    1
    Resources:
    17
    GUI may suck hard compared to vJASS but it's not useless.

    Lots of people couldn't create anything with JASS, GUI helps them to create maps.

    I've studied Java and C at a university but still decided to stick with (mostly) GUI. Maybe when SC2 is released, I'll probably move on to whatever the JASS equivalent is in the editor.
     
  19. Mooglefrooglian

    Mooglefrooglian

    Joined:
    Nov 28, 2008
    Messages:
    701
    Resources:
    0
    Resources:
    0
    JASS is just faster to write for me and lets me do basically everything simpler, cleaner, and prettier. Dialog boxes suck endlessly.
     
  20. Catch_ya

    Catch_ya

    Joined:
    May 21, 2009
    Messages:
    982
    Resources:
    1
    Spells:
    1
    Resources:
    1
    I heard something about some GUI functions leaks because they have local handles in it that ain't nulled. Can't remember which one though.
     
Thread Status:
Not open for further replies.