OFFICIAL GMS2 Version 2.2.4 (BETA RELEASE)

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

  1. rmanthorp

    rmanthorp YoYo Games Staff Admin YYG Staff

    Joined:
    Apr 15, 2016
    Posts:
    291
    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/


    Updated Licensing to Remove GPU Checks
    • Some customers had issues where dual-GPUs in their machines meant moving the IDE between displays or toggling power-saving modes could cause their licence to be invalidated
    • This GPU check has been removed, but now everyone needs to refresh their licence the first time they run 2.2.4 - please remember you will need an internet connection to achieve this
    • Note, if you're using 2.2.4 on the same machine as 2.2.3 or older (e.g., you have a Steam install and a standalone), then be aware you will be asked to log-in again each time you start the IDE
    Changed behaviour around saving empty code files
    • Code files are now only created on disk if there is actually something to save when the editor is closed the first time after creating the resource
    • Now, if you create a new Script/Event/Shader/Instance Creation Code/Room Creation Code/Timeline moment/Note and then close the Code Editor without typing anything, no empty file will be created
    • Stops redundant file watcher notifications that your project has changed on disk
    Extra Name Verification For Included Files
    • Building for Apple platforms and Android/Amazon, you will now get an error if you try to export an Included File which has a name starting with a number
    • These device OSes do not allow filenames starting with a number, so this stops you wondering why the file can't be found in-game later on
    • Until you fix the incorrect filename or disable the Included File from being exported into your package, you will see this error each time
    Extended HTML5 Browser Launch Settings
    • Added Preferences for you to specify the default webserver URLs and port
    • Added Device Manager support to pass command line arguments to the browser (e.g., start with the dev tools open)
    Misc
    • Build Windows: Fixed Windows VM Steam builds to use the correct Steamworks dll version from your Steamworks install folder (YYC was fine)
    • Compiling: Fixed on some platforms the build timer didn't stop at the end of the build, instead it kept going until the game was also closed
    • Compiling: Fixed an issue where changing the creation order of instances in the Room Editor could make double-clicking compiler errors open the wrong instance's code
    • Compiling: Added a Compiler Error for the "Missing or corrupt build tools" message to better highlight this installation issue - some users were missing this in their compiler log because they only read the last line
    • Device Manager: iOS/tvOS "Detect Devices" now returns all physical devices of that type currently connected to the Mac, rather than just the first one found
    • Game Options: Added support for specifying an Amazon TV banner image and have this packaged correctly in-game
    • Game Options: Added support for injecting text into the Android "application tag" during builds (this allows you to set android:usesCleartextTraffic="true", which some extensions need for allowing http traffic in Android API 28+)
    • Game Options: Removed checkboxes to enable Google Play Services, Google Play Licensing and Google Cloud Saving on Android. These have worked for a few releases simply via the extension being in the project or not, and so the checkbox was misleading
    • Importing Projects (1.x): Fixed an issue where the "type" of instance creation code wasn't being set automatically, leading code to be missing in the IDE unless you fixed the .yy manually
    • Room Editor: Fixed an issue where two room's Layer Properties windows could be drawn at the same time if both rooms were open and had layers of the same name selected
    • Room Editor: Fixed a couple of issues where the visibility of layers in a group was not being passed correctly to the game if the group folder/parent was set as invisible
    • Note: In the room editor you need the parent/folder set as visible in order to have any child set as visible, and you then turn off visibility for any child layers you don't want to show
    • Source Control: Double clicking on a file will now start the diff tool defined in Preferences
    • UI: Fixed a 2.2.3 issue with Mac IDE keybindings when there were multiple bindings for the one action, so all keybindings now work again (e.g., Cmd+Y and Cmd+Shift+Z to redo actions)
    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.451 with Runtime v2.2.4.357

    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 behaviour to be as written above
    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!
     
    Last edited: Sep 18, 2019 at 10:44 AM
  2. Amon

    Amon Member

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

    chmod777 Member

    Joined:
    Aug 26, 2016
    Posts:
    202
    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:
    311
    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:
    253
    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:
    311
    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:
    202
    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:
    373
    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:
    253
    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,450
    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:
    176
    @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:
    311
    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:
    176
    @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:
    278
  16. Dan

    Dan YoYo Games Staff YYG Staff

    Joined:
    Apr 15, 2016
    Posts:
    311
    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:
    311
    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:
    311
    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 at 4:29 PM
  19. Dan

    Dan YoYo Games Staff YYG Staff

    Joined:
    Apr 15, 2016
    Posts:
    311
    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:
    202
    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 at 10:15 PM
  21. chorrus

    chorrus Member

    Joined:
    Jun 21, 2016
    Posts:
    95
    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:
    465
    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 at 3:00 PM
  23. Dan

    Dan YoYo Games Staff YYG Staff

    Joined:
    Apr 15, 2016
    Posts:
    311
    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,451
    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,451
    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.
     
  27. HW.

    HW. Member

    Joined:
    May 21, 2017
    Posts:
    203
    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:
    90
    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.
     
  30. JasonGames

    JasonGames Member

    Joined:
    Dec 28, 2017
    Posts:
    9
    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:
    176
    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:
    311
    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:
    95
    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:
    9
    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.
     

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