Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Stack overflow error when trying to run GMLive on GameMaker Studio 1.4.9999

A topic by D0nutv created 30 days ago Views: 96 Replies: 7
Viewing posts 1 to 2

Hi, I recently purchased and installed GMLive to my project. I'm using GameMaker Studio 1, as stated in the title. When running the server and attempting to run the project, it quickly crashes upon making it past the title screen. I've run GMLive on a few other test projects and the same thing appears to happen, I always get a "Stack Overflow" error regarding some kind of object. I initially thought this was an error regarding my admittedly spaghetti coded project, but after testing it on smaller, more refined test projects, even using some of the GameMaker tutorial projects as tests, and still getting the same stack overflow error, I've come to the conclusion that I may have set GMLive up incorrectly, although I'm not exactly sure where I would've gone wrong, as I followed the documentation exactly as instructed. If you'd like me to share screenshots or snippets of code, I will do so! Just not exactly sure where to start regarding this initial post haha...

Developer

What version of GameMaker Studio 1? Something like 1.4.1804 should be considerably stable for GMLive and in general.

An error message would help, or email me your test project and I’ll see if that happens for me or not.

I am using GameMaker Studio version 1.4.9999. The error message I get upon crash is as follows: Stack overflow... gml_Object_objLevelTitle_Draw_0


I'll email you a link to a github page that holds my project, if that's okay with you!

Developer

Upon a brief review I think I would prefer one of those smaller projects that you’ve tried adding GMLive to (with GMLive still in there so that I can see if this pops up or not) because GM:S took quite a while to build the project, then I pressed Alt+Enter to exit full-screen and it crashed with this:

___________________________________________
############################################################################################
FATAL ERROR in
action number 1
of Key Press Event for <Enter> Key
for object objDevolver:

global variable name 'mvol' index (100221) not set before reading it.
 at gml_Script_sxeasy_play (line 10) - audio_sound_gain(global.currentsong,global.mvol,0)
############################################################################################
--------------------------------------------------------------------------------------------
stack frame is
gml_Script_sxeasy_play (line 10)
called from - gml_Object_objDevolver_KeyPressed_ENTER_1 (line 2) - sxeasy_play(working_directory+"\Edge of a Frozen Stream.ogg")

I then disabled fullscreen in Global Game Settings, ran the project again, GM:S hanged on “checking resources” for good 15 minutes, and upon starting it crashed with this:

ERROR!!! :: ############################################################################################
FATAL ERROR in
action number 1
of Alarm Event for alarm 0
for object objMusicPlay:


global variable name 'mvol' index (100221) not set before reading it.
 at gml_Script_sxeasy_play (line 10) - audio_sound_gain(global.currentsong,global.mvol,0) ############################################################################################
--------------------------------------------------------------------------------------------
stack frame is
gml_Script_sxeasy_play (line 10)
called from - gml_Object_objMusicPlay_ObjAlarm0_1 (line 2) - sxeasy_play(working_directory+"\Edge of a Frozen Stream.ogg"); 

Ah, it would appear that I forgot to add a check for whether the data file that saves the project's global volume variables exists or not. That's embarrassing. After some further investigation, it would appear that it is only that project having the issue now, which is weird as I could have sworn the day before posting this that every project I tried to implement GMLive into was having stack overflow issues... I suppose I should work on refining the code within' the initial project, where the error is still persisting, as that project does utilize the Hotline Miami source code as a base, which, along with my own limited knowledge of GameMaker and coding in general added too it, is not exactly the most optimized. Thank you for your time, and do you know if it's possible to allocate more memory or possibly increase the amount of memory that is available within' GMLive's call stack? If I could do that and have this issue handled it would be a much faster alternative to sifting through the entire project and optimizing everything lol... Not that I'm opposed to that, but I would like to be able to use GMLive on the project ASAP.

Developer

A quick test suggests that max call depth in GM:S is measured in thousands of calls, so I don’t think this is an “optimization problem” of any sort.

If the game hangs before it crashes, you can try running it in debug mode and pausing it when it hangs to see where exactly it is getting stuck.

Hello, thank you for the reply! After messing around with the extension a bit more today I discovered that using GMLiveHelper along with netlog has thankfully completely mitigated the issue! I was using both before accompanied by GMLive but failed to realize that the following line in the create event of obj_gmlive was commented out:

if (live_restart_if_necessary()) exit; // comment out if not using GMLiveHelper

Simply uncommenting this line along with the use of both extensions has since stopped the "stack overflow" error from appearing! Very simple fix that probably definitely didn't warrant this much time or even a post about it lol. Although hopefully this post will at least help anyone else who is experiencing the same or similar issue. I appreciate your help, and by the way the extension, now that I'm able to actually use it, is really great! Already saved me god knows how much time lmao... Thanks again!

Developer

I can’t see why that would have fixed it (live_restart_if_necessary is just relaunching the game to detach it from IDE), but that’s good