OFFICIAL GMS2 Version 2.2.4 (BETA RELEASE)

Discussion in 'GameMaker Studio 2 Community Tech Support' started by rmanthorp, Sep 11, 2019.

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

    rmanthorp YoYo Games Staff Admin YYG Staff

    Joined:
    Apr 15, 2016
    Posts:
    297
    Beta IDE Release Notes
    Beta Runtime Release Notes
    Beta Opt-In FAQ(How to get on the Beta Channel)

    This topic is for the discussion of issues relating to the update of GameMaker Studio 2. However, this does not replace our normal bug reporting system and you should report all bugs as normal using https://accounts.yoyogames.com/contact-us#studio2

    2.2.4 introduces a big update of the build toolchain to match the requirements of Android 10 and also macOS/iOS/tvOS following Apple's recent announcements - please update to this version if you're using macOS Catalina. IAP support has been greatly updated - including subscriptions support and receipt verification functionality! Plus, there has been another big push on making HTML5 games work more closely to how they do on other platforms. There have also been some changes to how and when files are created and a clean-up of some redundant game options, which should result in less confusion when working on your projects.
    We have a few threads for feedback on specific parts of the 2.2.4 update:

    Google Update: https://forum.yoyogames.com/index.php?threads/gms2-google-updates-2-2-4-feedback.67329/
    Apple Updates: https://forum.yoyogames.com/index.php?threads/gms2-apple-updates-2-2-4-feedback.67328/
    IAP Updates: https://forum.yoyogames.com/index.php?threads/gms2-iaps-updates-2-2-4-feedback.67330/


    Please note that the release notes mention several new or updated extensions are required for use with 2.2.4 - these are downloadable HERE until the Marketplace has been updated. The Marketplace will not be updated with these new extension versions until 2.2.4 is out fully!


    Current Release: IDE v2.2.4.456 with Runtime v2.2.4.362
    • Build Mac: Mac IDE "elevated permissions project cleaning" support, matches the Windows IDE changes in beta 2
    • General: Changed GPU memory allocation for editor windows, which should result in better performance when moving between workspaces and/or running GMS2 for a while
    • General: Fixed Help > Release Notes / Runtime Release notes link to be https versions, not http, to avoid issues where some users could not see the contents of the notes
    • General: Fixed those above two links to send you to the correct versions of the notes if you're currently using a beta release without actually having opted-in
    • Extension Editor: Fixed an issue with newline characters in Gradle injection text boxes could cause Android builds to fail in the Mac IDE
    • Game Options: Re-enabled Google Cloud Saving checkbox, as this is still required by the asset compiler
    • Game Options: Fixed enabling the Google Play Services extension to work off if your Google Services ID is filled-in, fixes issues with "NULL" sign-ins in beta 2
    • Game Options: UWP now has a "Description" field which is passed into the game binary, stops a submission error from Microsoft
    • Code Editor: Custom code snippets will now override the defaults if you re-use a keybinding, rather than append the duplicate
    • Fixed various issues with HTML5 variables not working properly in beta 2
    • Fixed macOS gamepad support being broken in 2.2.4 betas - note that macOS/Apple still only supports a small number of pads natively. You will need to install third-party drivers if a pad is not being detected (this includes Xbox One pads if connected via USB rather than Bluetooth!)
    • Fixed landscape games launching in a broken portrait view on iOS 13 devices.
    • Fixed persistent rooms not firing layer scripts when you returned to the room later on.
    • Fixed room_assign() not triggering the Create events for instances in that room when you enter it.


    Second Beta Release: IDE v2.2.4.451 with Runtime v2.2.4.357 - PLEASE UPDATE!


    macOS Catalina Support
    • Changed the "clean" button to confirm if you need elevated permissions in order to clean files in your build folder (e.g., Apple Sign-In information) and then prompt you on the Mac if required (Windows IDE only just now - Mac IDE will be changed in 452.)
    Extra Name Verification For Included Files
    • Changed the new behaviour to be that you are only warned about the invalid filename when you're building on the affected platform AND that included file is also enabled for that platform...
    Other Notable HTML5 Changes
    • Fixed a number of functions not working and/or causing debug builds to fail to start because the code was missing a semicolon



    Initial Beta Release: IDE 2.2.4.449 with Runtime 2.2.4.356 - PLEASE UPDATE!

    Everything else in the release notes which is not mentioned above...
     
    Last edited by a moderator: Sep 30, 2019
  2. Amon

    Amon Member

    Joined:
    Sep 13, 2016
    Posts:
    272
    Woah! Thank you.
     
  3. chmod777

    chmod777 Member

    Joined:
    Aug 26, 2016
    Posts:
    209
    Hmm, HTML5 is crashing on startup:
    Code:
    SyntaxError: unexpected token: keyword 'if'
    ReferenceError: GameMaker_Init is not defined
    ... obviously because there is a missing semicolon at the top of the function "audio_emitter_pitch" (even if I don't use it):
    Code:
    index = yyGetInt32(index) if(_PW[index] == undefined) return;
     
  4. Dan

    Dan YoYo Games Staff YYG Staff

    Joined:
    Apr 15, 2016
    Posts:
    339
    Whoops - fixing that just now, will get a new runtime out asap. Sorry!

    EDIT: We will continue with releasing an updated runtime, but see my update two below...
     
    Last edited: Sep 11, 2019
    chmod777 likes this.
  5. Amon

    Amon Member

    Joined:
    Sep 13, 2016
    Posts:
    272
    Did you let it install the 2.2.4 runtime also with the new 2.2.4 IDE. I ask because I get no crashes on startup with my games or with the IDE.

    edit - Dan said there's a fix so my post is defunked. :)
     
  6. Dan

    Dan YoYo Games Staff YYG Staff

    Joined:
    Apr 15, 2016
    Posts:
    339
    No, it isn't defunct at all... There is definitely an issue with a missing semicolon there and we will definitely fix it. However, I can run projects fine in HTML5 also, so your question is entirely valid.

    You need to have that function in your game in order to hit the issue.

    We in the office read the original comment "(even if I don't use it)" and for a moment took it to mean "all projects crash because of this, even if the function isn't called in your project", which is why I said we would rush out a runtime. Seeing your comment and doing some testing here, we won't rush one out today, but we have now fixed this for the next beta runtime release.

    We have confirmed that no projects run in debug mode.

    The updated runtime will be tomorrow/Friday, after we have allowed a little more time for feedback and gotten the extensions out, in case there are other issues found, rather than right now at the very end of the working day to fix one issue.
     
    Last edited: Sep 11, 2019
    rIKmAN and Amon like this.
  7. chmod777

    chmod777 Member

    Joined:
    Aug 26, 2016
    Posts:
    209
    Ah yes, the game actually crashes if the function is used OR if you run it in debug mode (whether you use the function does not matter in this case).
     
  8. Mert

    Mert Member

    Joined:
    Jul 20, 2016
    Posts:
    382
    No separate inject boxes for build.gradle in ProjectFiles & RootFiles for Android.
    Deeply heartbroken :(

    (Yeah, sent ticket and got a response that they'll consider this)
     
  9. Amon

    Amon Member

    Joined:
    Sep 13, 2016
    Posts:
    272
    Yep, confirmed that in debug mode it crashes. None of my projects work when debugging is activated.
     
    chmod777 likes this.
  10. rIKmAN

    rIKmAN Member

    Joined:
    Sep 6, 2016
    Posts:
    4,510
    Thanks for the update!

    Looks like you might need to push that fix ASAP again @Dan if all projects crash in debug mode.
     
  11. Ricardo

    Ricardo Member

    Joined:
    Jun 20, 2016
    Posts:
    189
    @Dan About "Included File names now cannot start with a number" (bug 31277). Is it possible to disable this check or make it a warning that doesn't stop compilation? I have several pay projects which I need to update frequently that has hundreds of included files that start with a number and they run just fine in the platforms I need. Now I can't run them in 2.2.4 anymore. This is an HUGE breaking change for me, and update all the projects and included files will cost me a lot of work hours (and therefore money). If files starting with numbers doesn't work on Android, iOS and Mac, then the warning/error should only appear when compiling to these platforms. Block all the other exporters from using these files is unnecessarily disruptive.
     
    Last edited: Sep 12, 2019
  12. Dan

    Dan YoYo Games Staff YYG Staff

    Joined:
    Apr 15, 2016
    Posts:
    339
    We'll discuss internally what we can do here.
     
    rIKmAN likes this.
  13. Nettub

    Nettub Member

    Joined:
    May 11, 2017
    Posts:
    10
    Same here, I've several projects with included files started with numbers in their names.

    Updated:I finally mass renamed the files with Rename Master, and renamed all the references to those files inside .yy files and project file with sublime text, and everything is working fine :)
     
    Last edited: Sep 12, 2019
  14. Ricardo

    Ricardo Member

    Joined:
    Jun 20, 2016
    Posts:
    189
    @Nettub according the bug page, they'll change it so the warning will only happen on the affected platforms (the ones that doesn't support included files starting with numbers). Perfect solution IMO.
    Thanks a lot for bring up my concern to the devs, @Dan. That new rule was going to screw me over by a lot.
     
    rIKmAN likes this.
  15. Andrey

    Andrey Member

    Joined:
    Jun 21, 2016
    Posts:
    281
  16. Dan

    Dan YoYo Games Staff YYG Staff

    Joined:
    Apr 15, 2016
    Posts:
    339
    That is an issue with your browser allowing redirects and scripts on http:// links - change the address to be https://... and you should find it all works fine again.
     
    Andrey likes this.
  17. Dan

    Dan YoYo Games Staff YYG Staff

    Joined:
    Apr 15, 2016
    Posts:
    339
    No problem - that's my job ;)

    And yes, I was waiting for the final confirmation before I responded, but it has now been changed so the resource tree doesn't enforce anything, and instead if you have made an included file which starts with a number AND you're building for Android/Amazon or any Apple platforms AND that included file is set to be exported on that target, then you will get a compiler error telling you that file won't work in-game and you need to fix the filename. Your build will fail and you will have to fix the name in order to compile on those platforms (or disable that included file from exporting).
     
    Ricardo and rIKmAN like this.
  18. Dan

    Dan YoYo Games Staff YYG Staff

    Joined:
    Apr 15, 2016
    Posts:
    339
    A download link for all the IAP extensions and the wider Google Play Services extension has now been added to the first post in this thread ("HERE").

    The Play APK Expansion extension is not ready yet - that will be fixed asap and then will be added into the Google Play Services asset alongside IAPs, Licensing, and Google Play Services itself, as the APK Expansion extension relies on the Licensing extension being in your project anyway....

    A couple of other extensions will be added to that downloads page on Monday also.


    EDIT: That's Apple Sign-In, an updated Apple IAPs which now contains the mini-manual, and an updated Google Play Services all uploaded. The Google Play Services asset now contains the fixed APK Expansion extension also (all we changed here is fixed it to build using AndroidX rather than Support Library v4 - no in-game changes).

    Google Push Notifications is still to be fixed so it builds using AndroidX (again, no in-game changes) - will upload when it's ready.

    EDIT2: Google Push Notifications is now uploaded also...
     
    Last edited: Sep 16, 2019
  19. Dan

    Dan YoYo Games Staff YYG Staff

    Joined:
    Apr 15, 2016
    Posts:
    339
    You should also see IDE v2.2.4.451 and Runtime v2.2.4.357 available for download soon - this update is rolling out now. That fixes the HTML5 debug issue with missing semi-colons and also has the changed behaviour for included files starting with a number.

    All sorted ready for you all to play with over the weekend!
     
    Last edited: Sep 13, 2019
    rIKmAN, Ricardo and chmod777 like this.
  20. chmod777

    chmod777 Member

    Joined:
    Aug 26, 2016
    Posts:
    209
    Thanks for the release. ;)

    layer_background_create() is broken in HTML5. Bug has been reported (ticket #162150)
    EDIT: And also some troubles with rectangle_in_rectangle (https://bugs.yoyogames.com/view.php?id=31259 - even the sample has issues: if you move the square up or down, the game will crash).
    EDIT2: With some bitwise operators too (ticket #162217).
     
    Last edited: Sep 15, 2019
  21. chorrus

    chorrus Member

    Joined:
    Jun 21, 2016
    Posts:
    110
    Hi!

    I'll try to create a bug report as soon as i have some time to create a sample project, but the system event isn't triggering or something, at least when trying to connect gamepads.
    Code:
    switch(async_load[? "event_type"])
    {
        case "gamepad discovered":
        pad = async_load[? "pad_index"]
        global.gamepad = true
        break;
     
        case "gamepad lost":
        global.gamepad = false
        pad = -1
        break;
    }
    This code has always worked. I've been using it to detect gamepads but isn't working in 2.2.4 I have downgraded and it is working again, so it is definitely related to the new release.
     
  22. TheSnidr

    TheSnidr Heavy metal viking dentist GMC Elder

    Joined:
    Jun 21, 2016
    Posts:
    469
    Having trouble drawing vertex buffers that use custom vertex formats in HTML5. The game crashes as soon as I use vertex_submit. Submitted a helpdesk ticket. Here's a demonstration, in case somebody would like to test it on HTML5:
    https://www.dropbox.com/s/1oigh92otuepfea/HTML5 Vertex Format bug.yyz?dl=0
    This works in HTML5 in 2.2.3.345 but not in 2.2.4.357
    Also, another problem is that matrix_build_projection_perspective creates a projection matrix that's flipped vertically in HTML5 compared to Windows.

    EDIT:
    These errors have been filed in the following bug reports:
    https://bugs.yoyogames.com/view.php?id=31362
    https://bugs.yoyogames.com/view.php?id=31363
     
    Last edited: Sep 19, 2019
    Ali Al - Mosawi likes this.
  23. Dan

    Dan YoYo Games Staff YYG Staff

    Joined:
    Apr 15, 2016
    Posts:
    339
    Is that the only gamepad functionality in your game? There is a change in 2.2.4 that the gamepad stuff won't be there unless you actually call a gamepad_...() function. We have found some people have the async events for pads being lost/found, but don't actually do anything with the pad thereafter - if this is the case for your project also, then this is why your project no longer gets those events. This would not be a bug - either use the pad functions to do something with the pad, or remove the redundant event code and don't worry about it ;)

    Gamepads definitely do still work in 2.2.4 (I have just confirmed again right now, using a PS4 pad).
     
    chorrus likes this.
  24. FrostyCat

    FrostyCat Member

    Joined:
    Jun 26, 2016
    Posts:
    4,538
    The release notes for 2.2.4.451 seems to be blank, there's a "Release Notes" header and that's it. Can someone fill it in?
     
  25. TheSpydog

    TheSpydog Member

    Joined:
    Jun 20, 2016
    Posts:
    67
    It shows up fine on my browser. Try clearing your browser's cache. The release notes pages tend to be aggressively cached for some reason.
     
    ParodyKnaveBob likes this.
  26. FrostyCat

    FrostyCat Member

    Joined:
    Jun 26, 2016
    Posts:
    4,538
    I've finally brought myself to report 2 long-standing IDE bugs that can cause crashes on my work environment. I've filed them at the helpdesk already, but I'll post here as well for posterity.

    The first is a severe memory leak when switching between code tabs. It's about 1-2MB per switch, and it just goes up and up during routine use. It's the reason why I can't keep the IDE on for more than about an hour. Once it gets beyond that and the RAM usage grows to 2-3GB, the IDE crashes silently and loses all unsaved data. I have to give the IDE "restart breaks" so that it doesn't lose my data.

    The second is a silent crash when sleeping. I do my work on public transit a lot, and when it's my stop I have to quickly close up the lid and run. Starting with 2.2.3 or so, the IDE started disappearing without a trace after I wake my laptop. I've lost some work this way, but now that I know of the issue, I'm doing quick saves one stop in advance.

    Please chime in and help bring awareness to these issues if you experience them yourself as well.

    Ctrl+Shift+R did it, but only after half a dozen tries. It's probably cached aggressively due to its frequent traffic, but I'm unsure why the copy with just the header and no content got to be cached in the first place.
     
    Biosyn likes this.
  27. HW.

    HW. Member

    Joined:
    May 21, 2017
    Posts:
    204
    If refreshing the page can't. Just change https:// to http:// or vice versa will bypass the cache instantly in my case it will then reload the page correctly.
     
  28. Pineapple Lake

    Pineapple Lake Member

    Joined:
    Aug 25, 2016
    Posts:
    96
    I had the same problem but I noticed this was related to windows 10 silently installing updates and restarting the laptop when it's sleeping without any notice.
     
  29. Bruchpilot

    Bruchpilot Member

    Joined:
    Dec 15, 2017
    Posts:
    51
    I suspect this is a trap many people will fall in when starting to use gamepads. First thing you do is implement the async event, just to check if it does anything. If the compiler strips this when no other gamepad functions are used, people will assume there is something wrong with their setup or their code. I would consider returning to the old behaviour.
     
    JeffJ likes this.
  30. JasonGames

    JasonGames Member

    Joined:
    Dec 28, 2017
    Posts:
    12
    I'm having the same issue and am using plenty of other gamepad...() functions elsewhere in the game. I can see that the gamepad is connected but none of my gamepad_button_check_pressed(x,x) etc events are doing anything. Is there something else I'm missing?
     
  31. Ricardo

    Ricardo Member

    Joined:
    Jun 20, 2016
    Posts:
    189
    Hey @Dan! Any though on this issue? It'd be lovely to see it fixed for 2.2.4. I've reported it already (#162299) but no answer yet.
     
  32. Dan

    Dan YoYo Games Staff YYG Staff

    Joined:
    Apr 15, 2016
    Posts:
    339
    Send us a sample project / make your own thread on here, and give a small sample which shows just your gamepad code. As I say, pads (and those two events being mentioned above) definitely work in 2.2.4, so at the moment, yes, I would assume a coding issue in your project.

    We saw your ticket and were looking into this a bit yesterday, some more this morning already also, and we have now confirmed we are using the function Samuel suspected. We're looking into how big a change this would be in order to see if it makes it into 2.2.4 or not - no decision on that yet. Your ticket will be responded to shortly.
     
    Ricardo likes this.
  33. chorrus

    chorrus Member

    Joined:
    Jun 21, 2016
    Posts:
    110
    I’m using many other gamepad functions and are for sure correctly coded(unless something has changed in 2.2.4 on how gamepads should be managed).

    I have tested with a Nimbus, a Gamevice and a PS4 controller. If it is working for you maybe something has changed and I am missing it, should I add any other gamepad functions in the gamepad detection code for it to be triggered? Because I have many other functions, but in different events.

    Thanks!
     
  34. JasonGames

    JasonGames Member

    Joined:
    Dec 28, 2017
    Posts:
    12
    Same thing on my end. When I revert back to the stable runtime release my gamepads work correctly. If I get time today I’ll make a separate demo project but my code works 100% on the stable runtime.
     
    chorrus likes this.
  35. Biosyn

    Biosyn Member

    Joined:
    Oct 17, 2017
    Posts:
    39
    Something similar happens on my end, in that overtime the IDE starts lagging substantially unless I restart it. Could be related.
     
  36. FrostyCat

    FrostyCat Member

    Joined:
    Jun 26, 2016
    Posts:
    4,538
    The lags come from thrashing once the memory usage approaches or exceeds RAM capacity and goes into paged memory.
     
  37. Dan

    Dan YoYo Games Staff YYG Staff

    Joined:
    Apr 15, 2016
    Posts:
    339
    Can see a couple more comments about gamepads not working - please do file a sample project asap, so we can see what you're doing. As I say, I am not replicating any issue here just now.

    Are you customising the pad mapping at all?
     
  38. JasonGames

    JasonGames Member

    Joined:
    Dec 28, 2017
    Posts:
    12
    No custom mapping on my end. I've created a very simple demo project that can be downloaded here: https://www.dropbox.com/s/4p1denbotu7jrgb/Gamepads_test_runtime.yyz?dl=0

    - The gamepad variables respond 100% correctly on the stable runtime but don't on the current beta.
    - Both runtimes show that the gamepad is connected.
    - This was tested with a PS4 and an 8bitdo SN30 controller on macOS.
    - One potential outlier is that I'm running the stable IDE release while using the beta runtime...could that make any difference?

    Let me know if you'd like me to make an official bug report for this. Thanks!
     
  39. Pineapple Lake

    Pineapple Lake Member

    Joined:
    Aug 25, 2016
    Posts:
    96
    My gamepad functions work same as before, with detecting, input switching, mapping etc.
    What happens after you update the IDE? Also, the bug might be limited to macOS.

    IDE 2.2.4.451
    Runtime 2.2.4.357

    Gamecube controller on Windows 10
     
    Last edited: Sep 23, 2019
    chorrus likes this.
  40. Dan

    Dan YoYo Games Staff YYG Staff

    Joined:
    Apr 15, 2016
    Posts:
    339
    Your sample was "fluking" working with your specific gamepad, as it's hardcoded to look for input on pad index 0 only. Your code would not have worked with a wide variety of gamepads - and indeed, using a PS4 pad, your sample does not work for me on Windows in runtime 2.2.3, despite what you mentioned earlier.

    You can download a fixed version of your sample here. This project works just fine with a selection of pads I have tried here (Windows), but I don't have the "bitdo SN30" pad you mention, so I can't guarantee that one - if that one definitely did work in 2.2.3, then I don't know why that one happened to stop working between 2.2.3 and 2.2.4, but I suspect that's due to the Steam pad mappings library being an updated version now.

    However, macOS VM does seem to have an issue in 2.2.4, so I will get that fixed asap - when I have modified your sample to detect the pad properly, I can see that my PS4 pad is now being detected as a "iOS Standard Controller" and the face buttons are not being read correctly. My sample works properly in 2.2.3 and detects the pad as a PS4 Controller. macOS YYC works correctly, btw.


    @chorrus Please review your code against my fixed sample linked above, see if you're doing the same thing. If so, please update your code accordingly.
     
    Last edited: Sep 24, 2019
    chorrus likes this.
  41. chorrus

    chorrus Member

    Joined:
    Jun 21, 2016
    Posts:
    110
    @Dan Yes, I am doing the same thing, my issue is Mac related. Thanks for taking a look at it :)
     
  42. Dan

    Dan YoYo Games Staff YYG Staff

    Joined:
    Apr 15, 2016
    Posts:
    339
  43. Dan

    Dan YoYo Games Staff YYG Staff

    Joined:
    Apr 15, 2016
    Posts:
    339
    For those of you with macOS gamepad issues in the last 2.2.4 betas, all okay now?

    We are aware that without third-party drivers, many popular pads aren't detected by the native gamepad support in the OS (e.g., an Xbox One pad only works via bluetooth, it doesn't work over USB unless you install extra drivers), so just a heads-up that if you previously had to install drivers to make your pads work, then you very likely still need to do this even on Catalina.
     
    chorrus likes this.
  44. JasonGames

    JasonGames Member

    Joined:
    Dec 28, 2017
    Posts:
    12
    Thank you for following up. Yes! Gamepads are working 100% for me now.
     
  45. Dan

    Dan YoYo Games Staff YYG Staff

    Joined:
    Apr 15, 2016
    Posts:
    339
    2.2.4 is now out (you should see the update notifications sometime today) and the Marketplace asset pages have been updated.
     
Thread Status:
Not open for further replies.

Share This Page

  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice