OFFICIAL GMS2 Version 2.3.1 (Beta Release)

Status
Not open for further replies.

clee2005

Member
Is anyone having success with local asset packages in the latest beta? I'm getting errors when trying to import assets. I also tried uploading to the marketplace and downloaded the packaged version from there to see if that worked, but no dice.
Local packages and extensions. I'm unable to import any extension packages. I can only import an existing from another project.
 

caelangm

Member
On Mac, I get a black screen when I run the game. I tested to see if it even runs the starting room with a show_debug_message and it doesn't. I checked that the rooms are in the proper order, and I tried to clean the compiler cache and that didn't work. Had no problems on previous beta versions :(
 
S

Sam (Deleted User)

Guest
I misunderstood what the problem was in my previous post, I thought you guys were having problems with uploading packages because I just skimmed initially. I'm pretty sure if I tried to import a local package it wont work for me either, that's just not a feature I use really.
 
Local packages and extensions. I'm unable to import any extension packages
Same thing for me! GMS2 just hangs (locks up and the standard Windows "problem with this program, looking for a solution" crash popups appear) as soon as I choose a file for Import Local Package. The package itself has all the files in it with the proper version number, they unzip just fine, it's purely when GMS tries to extract them that it blows up!
 

Posh Indie

That Guy
I think it's safe to assume now everyone has this problem .
Oddly enough, every extension imports just fine for me... except GMLive, which is the only one I wanted to play with today. I thought maybe it was a Marketplace issue and bought it a second time from itch.io to import it locally and the result is the same.
 

Dan

GameMaker Staff
GameMaker Dev.
Local asset importing (it's actually importing any type of package/yyz which doesn't contain at least 1 room) and the extension editor not creating source folders on disk properly are both fixed for the next beta release.
 

Dan

GameMaker Staff
GameMaker Dev.
Hey Dan, is the problem of "stalling on Project Format 2 for a long time" been solved?
There has been some work done here already to resolve a couple of general performance issues, and these fixes are already in the beta releases.

However, we do still have a couple of reports specific to projects which contain absolutely massive rooms with stacks of instances inside (e.g., one project containing multiple rooms of around 120000 x 65000, which equates to about 20MB of json data being written and a few seconds loading time for each room), and so these projects would legitimately take some time to load the projects and would appear to be stuck on this line just purely due to the amount of actually work being done. Further work to "optimise" the loading of these huge rooms is currently on hold for just now, but isn't likely to ever completely remove the "pause" on that line for these projects - in this situation we would likely just output more informative messages to the log to show that a room was taking a long time because it is very large.

I don't know if this applies to your project? If so, looking at ways to make your rooms smaller would be a better fix anyway.
 

Dan

GameMaker Staff
GameMaker Dev.
On Mac, I get a black screen when I run the game. I tested to see if it even runs the starting room with a show_debug_message and it doesn't. I checked that the rooms are in the proper order, and I tried to clean the compiler cache and that didn't work. Had no problems on previous beta versions :(
If this isn't fixed in the next beta, please send us a ticket with a full compiler log and also a System Info report for your Mac - this isn't something we have seen.
 

Dan

GameMaker Staff
GameMaker Dev.
@Dan sorry to ping you but just for clarity the PinePhone and PineBook Pro (or all pine64 products) are aarch64 architecture, I don't know why I said arm64. I'm not sure if there is any difference, I don't know much more than my pine book pro is aarch64 and it has "ARM" on the desktop background, so I assume that would imply aarch64 is some kind of arm lol
Certainly for 2.3.1 this is remaining as just ARMv7, but I did add a feature request to consider more ARM architectures when you raised this question originally, so perhaps more will be supported in future releases.
 

Dan

GameMaker Staff
GameMaker Dev.
Hey @Dan , don't know if you can comment on this at all - but I guess worth a shot!

Loving the new features (especially new export options) that are in this. @Yal earlier in the thread mentioned GM's "secret" headless mode through calling
GML:
draw_enable_drawevent(false)
. My initial thought (which turned out to be correct) is that the runner / compiled version of projects would still search for graphical dependencies / make calls that would make executables incompatible with certain platforms that might be useful in tandem with this, like Ubuntu Server.

Is there any chance that in the future, certain targets might be able to have those checks removed, or is it just too ingrained in the way that GMS2 executables are built?
Not something I can really yes/no here, so please file a Feature Request ticket via the contact form, giving a description of what you want to do / why you can't do it just now with current GMS2 functionality. A small sample to show your intentions would be appreciated.

This could then be discussed internally.
 

Dan

GameMaker Staff
GameMaker Dev.
I see the Chrome url_open bug is now fixed (https://forum.yoyogames.com/index.php?threads/url_open-function-behaving-oddly.79934/)

@Dan Since you guys found out what was causing this issue, is there any current workaround for the stable version? (except installing an extension)
It's due to a change within recent Chromium updates (Chrome, Edge, Vivaldi, Opera) as to how it sets up its registry handler and therefore how the browser is launched by external applications. We simply made 2.3.1 aware of the registry change.
 

Zhanghua

Member
Not something I can really yes/no here, so please file a Feature Request ticket via the contact form, giving a description of what you want to do / why you can't do it just now with current GMS2 functionality. A small sample to show your intentions would be appreciated.

This could then be discussed internally.
He wants the feature of compiling and running without the XDisplay library on the non-gui supported system, just a pure console interface, not yet the runtime display disable.
 

Dan

GameMaker Staff
GameMaker Dev.
He wants the feature of compiling and running without the XDisplay library on the non-gui supported system, just a pure console interface, not yet the runtime display disable.
I know exactly what he wants, but I was meaning there is a formal/standard process for submitting a feature request and I can't shortcut that here ;)
 

brian

Member
Not something I can really yes/no here, so please file a Feature Request ticket via the contact form, giving a description of what you want to do / why you can't do it just now with current GMS2 functionality. A small sample to show your intentions would be appreciated.

This could then be discussed internally.
Thanks, Dan! I just submitted that.
 

Mehdi

Member
There has been some work done here already to resolve a couple of general performance issues, and these fixes are already in the beta releases.

However, we do still have a couple of reports specific to projects which contain absolutely massive rooms with stacks of instances inside (e.g., one project containing multiple rooms of around 120000 x 65000, which equates to about 20MB of json data being written and a few seconds loading time for each room), and so these projects would legitimately take some time to load the projects and would appear to be stuck on this line just purely due to the amount of actually work being done. Further work to "optimise" the loading of these huge rooms is currently on hold for just now, but isn't likely to ever completely remove the "pause" on that line for these projects - in this situation we would likely just output more informative messages to the log to show that a room was taking a long time because it is very large.

I don't know if this applies to your project? If so, looking at ways to make your rooms smaller would be a better fix anyway.
My project has around 20 rooms of 70000*6500
Is it suffering the same issue you've just mentioned? But with GMS2.5 I had no problem and it did run in maximum 10-12 seconds. Now I have to wait for 45 second some times and it really ruins my day.
 

Peej4321

Member
I'm not sure if I'm just doing something wrong, but I can't re-order my assets in the asset browser with custom ordering. I switched "default sort order for new asset browsers" to "custom", and "default sort order first" to off, but I can't re-order them.
 

Ricoh5A22

Member
I'm not sure if I'm just doing something wrong, but I can't re-order my assets in the asset browser with custom ordering. I switched "default sort order for new asset browsers" to "custom", and "default sort order first" to off, but I can't re-order them.
The option "default sort order for new asset browsers" that you changed in Preferences (as far as know) is only to set the default behaviour for new assets browsers (e.g.: when you close it and reopen from windows menu, or when creating a new project). If you want to change the sort type of an opened asset browser, you need to click in the filter icon and change sort type there (see image below).

1605298874091.png
 

Peej4321

Member
The option "default sort order for new asset browsers" that you changed in Preferences (as far as know) is only to set the default behaviour for new assets browsers (e.g.: when you close it and reopen from windows menu, or when creating a new project). If you want to change the sort type of an opened asset browser, you need to click in the filter icon and change sort type there (see image below).

View attachment 35652
Oh, thanks. I must've done that in my project before opening a copy of it in Beta, but I forgot how to do it, so I thought it was a bug with Beta. Sorry.
 

caelangm

Member
If this isn't fixed in the next beta, please send us a ticket with a full compiler log and also a System Info report for your Mac - this isn't something we have seen.
Just found that my program is still using runtime 165, rather than 228, which would probably explain the black screen. I tried to install runtime 228 from the master runtimes menu, however, and got the error:
Couldn’t open “MonoFramework-MDK-6.10.0.104.macos10.xamarin.universal.pkg”
Can't find anything on this issue :/
 

Yal

🐧 *penguin noises*
GMC Elder
MonoFramework-MDK-6.10.0.104.macos10.xamarin.universal.pkg
GM might've assumed you're running a Mac (because of environmental factors) and tried installing the Mac version instead of the Windows version, which is incompatible...?

Oh wait you're actually on a Mac, my bad.
 

Pixel-Team

Master of Pixel-Fu
I just loaded my project after updating to the latest beta, and one of my rooms got deleted, and when I re-create the room, it won't show up in the room manager, or Room Order list.
 

Dan

GameMaker Staff
GameMaker Dev.
Was the forum to discuss the Beta release discontinued?
Yes. That was only temporary during the run-up to 2.3.0.


Just found that my program is still using runtime 165, rather than 228, which would probably explain the black screen. I tried to install runtime 228 from the master runtimes menu, however, and got the error:
Couldn’t open “MonoFramework-MDK-6.10.0.104.macos10.xamarin.universal.pkg”
Can't find anything on this issue :/
Sounds like your Mac did not install the new Mono version when installing the beta. See the Required SDKs FAQ for a link to the Mono installer, so then you can control the install, just in case it was blocked by an AV client or OS permissions.


I just loaded my project after updating to the latest beta, and one of my rooms got deleted, and when I re-create the room, it won't show up in the room manager, or Room Order list.
Did you already send us a ticket for this recently? We do have a ticket which is this issue. If it was not you, then we have found an issue with importing some projects and fixed it already for the next release.
 

Dan

GameMaker Staff
GameMaker Dev.
Would be nice if the project file didn't autosave upon opening - or if there was an option to turn that off. I'm finding that simply opening a project causes it to resave sometimes... and that is forcing me to go to a backup of the project file when it happens I'm on another machine and some files haven't sync'd from Dropbox yet. GMS2 complains and then alters the project and saves it. Before I could just close the project and reopen it without consequence.
Has now been fixed for the next release. There was an issue with sprites marking themselves as changed and causing a re-save.
 

8BitWarrior

Member
Maybe I'm not thinking a solution through properly, but I'm seeing a need to check the reference count of a struct.
I'm currently trying to make use of weak references, but it is not ideal for preventing execution when a struct has a reference count of 0 but has not yet been freed, and possibly won't be freed for a few steps.

For a tool of mine, it would be beneficial to know if a struct's reference count is equal to 1. This would allow me to know that the remaining reference is mine (not an end-user's) and immediately deal with needed cleanup. At least, if there was a way for users to force a struct to be removed right away.


I'm thinking that I am ignorant on some point. I welcome being educated on the matter! :D

Edit:
I'm suspecting the trouble I'm having might be related to a bug regarding weak references giving false positives. If I create a struct in the create event, make a weak reference to it, then delete the original struct, then ref_weak_alive() will return false. But, if I try to delete the original struct in a different event, ref_weak_alive() will always return true.
Not sure what is going on here. 🧐
 
Last edited:

FrostyCat

Redemption Seeker
json_parse() seems to be dead on the normal HTML5 export. Here's a simple example:
GML:
var data = json_parse(@'{"t": "Stack", "d": []}');
show_message(data.t);
This should show Stack, but on the normal HTML5 export alone it shows undefined. No other export does this, not even HTML5 debug, so this looks like a case of the obfuscator being too zealous.

I'm a little concerned about how much fixing this ticket might entail. It's a well-known fact that the normal HTML5 export obfuscates both resource and variable names, but for something like data.t above, how would it be done without pointing to an entirely different key that's none of json_parse's business to predict?

On an unrelated note, I have some bad news for people excited for the "stretchy" array updates: It's not ready. Case in point:
GML:
var arr = [];
array_insert(arr, 0, "foo");
array_insert(arr, 0, "bar");
array_insert(arr, 0, "baz");
show_message(arr);
This induces a wild pointer in all VM exports, as of Runtime 23.1.1.228.

I was originally trying to port Lightweight Data Structures to use this and json_parse() and json_stringify() for GMS 2.3.1, but now my plans for that are shelved.
 
Last edited:
C

CHANG UP HAN

Guest
GML:
var arr = [];
array_insert(arr, 0, "foo");
array_insert(arr, 0, "bar");
array_insert(arr, 0, "baz");
show_message(arr);
This induces a wild pointer in all VM exports, as of Runtime 23.1.1.228.

I was originally trying to port Lightweight Data Structures to use this and json_parse() and json_stringify() for GMS 2.3.1, but now my plans for that are shelved.
you're right.
I am getting this gc error on android.

11-23 14:57:17.957 12025 12025 F DEBUG : Cause: null pointer dereference
11-23 14:57:17.957 12025 12025 F DEBUG : r0 b8dbb200 r1 00000000 r2 00000009 r3 0000000f
11-23 14:57:17.957 12025 12025 F DEBUG : r4 00000000 r5 00000019 r6 0187918e r7 00000000
11-23 14:57:17.957 12025 12025 F DEBUG : r8 b8dbb200 r9 c7658b10 r10 000004e4 r11 c5c8d348
11-23 14:57:17.957 12025 12025 F DEBUG : ip c75a4f8c sp c5c8d270 lr c71964a0 pc c7283928
11-23 14:57:17.968 12025 12025 F DEBUG :
11-23 14:57:17.968 12025 12025 F DEBUG : backtrace:
11-23 14:57:17.968 12025 12025 F DEBUG : #00 pc 001f9928 /data/app/com.entropy.stickmanSurvival-nHV0Fg3Zmk_JCQLuSbA51g==/lib/arm/libyoyo.so (YYObjectBase::preFree(YYObjectBase*)+4)
11-23 14:57:17.968 12025 12025 F DEBUG : #01 pc 0010c49c /data/app/com.entropy.stickmanSurvival-nHV0Fg3Zmk_JCQLuSbA51g==/lib/arm/libyoyo.so (MarkAndSweepGen(int, int, bool)+3412)
11-23 14:57:17.969 12025 12025 F DEBUG : #02 pc 0010d77c /data/app/com.entropy.stickmanSurvival-nHV0Fg3Zmk_JCQLuSbA51g==/lib/arm/libyoyo.so (DoGenerationalGC(int)+332)
11-23 14:57:17.969 12025 12025 F DEBUG : #03 pc 0025c750 /data/app/com.entropy.stickmanSurvival-nHV0Fg3Zmk_JCQLuSbA51g==/lib/arm/libyoyo.so (DoAStep()+1236)
11-23 14:57:17.969 12025 12025 F DEBUG : #04 pc 0025cea0 /data/app/com.entropy.stickmanSurvival-nHV0Fg3Zmk_JCQLuSbA51g==/lib/arm/libyoyo.so (MainLoop_Process()+1392)
11-23 14:57:17.969 12025 12025 F DEBUG : #05 pc 0037cfdc /data/app/com.entropy.stickmanSurvival-nHV0Fg3Zmk_JCQLuSbA51g==/lib/arm/libyoyo.so (Java_com_yoyogames_runner_RunnerJNILib_Process+1016)
11-23 14:57:17.969 12025 12025 F DEBUG : #06 pc 00046043 /data/app/com.entropy.stickmanSurvival-nHV0Fg3Zmk_JCQLuSbA51g==/oat/arm/base.odex (offset 0x45000) (com.yoyogames.runner.RunnerJNILib.Process+170)
 
Status
Not open for further replies.
Top