Skip to main content

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

[Fixed in 1.0.47+] global variable name 'mt_gml_program' index not set before reading it.

A topic by gnysek created Mar 11, 2021 Views: 979 Replies: 13
Viewing posts 1 to 5
(2 edits) (+1)

I’m getting error when trying to run latest version:

 at gml_GlobalScript_GMLive_program (line 263) - if(live_enabled)mt_gml_program.h_constructor=gml_program;
############################################################################################
gml_GlobalScript_GMLive_program (line 263)

Seems that issue happens cause GMLIVE scripts aren’t executed by order in which they are in resource tree, but by the order they are in Project.yyp, which is… random. So, in fact error messages will also be random, depending on how GM will put those files among YYP. Deleting extension and importing it agan caused totally different order in my case.

https://i.imgur.com/FaVmFc7.png

(5 edits)

I also have problem with GMLiveAPI::live_preinit_funcs() , line 17, var l_m={name:l_name,func:method(undefined, l_scr),used:false}. Error message is: Variable struct.l_scr(100633, -2147483648) not set before reading it..

Changing it to

var m = method(undefined, l_scr);
var l_m={name:l_name,func:m,used:false}

seems to fix the issue (it might be a bug that method()+var can’t be used when creating struct).

For problem with wrong order of script execution, as for now I’ve manually deleted all entries in YYP which were starting on "GMLive and were about scripts, and I’ve manually copied the same order that was in your package.

Edit: seems that these are caused by using runner other than from public beta channel, so it’s worth to wait for next official beta.

Developer

Ah, that’s a problem.

If it’s only the h_constructor, I can fix that (it’s not used at the moment), but more broadly I guess I have no control over script init order despite them being in correct order in the package.

Yep, we need to wait for next beta which should be soon, and if that still happens, YYG need to solve it then.

So yes, it’s a bug in latest beta runner, that using “vars” as arguments in functions when creating a struct causes errors.

Also, seems that actually 2.3 causes a random order for scripts (especially on import) no matter what is their order in resource tree, so there’s a high probability that divided version of GMLIVE need to be put in some functions, so only one script will define order in which they are created. But that’s to check after they fix first bug, cause there’s no way to check GMLIVE latest version at all now in latest beta.

Deleted 3 years ago

Having same error.

Developer(+1)

If you need a quick fix, all of these lines l_constructor lines can be safely removed.

I’m currently figuring out why the extension is loaded as intended for some people and in arbitrary order for others

(1 edit)

Thanks mate! I've got the game running now but the exe server isn't picking up any clients and nothing appears in the output window. Basically nothing is working. Windows 10, GMS2.3.1.542 Runtime 2.3.1.409.

I've tried different version of GMS2.3 with no luck. Installed/Imported GMLive multiple times. I thought a macro might be the issue but that's all fine (set to 1). I was able to get it working on GMS1 way back but now, nothing. Any ideas on what could be the issue or things I could test to figure it out?

Developer(+1)

Try adding show_debug_message(current_time) to obj_gmlive’s Step event to verify that it is placed and continues to exist as the game goes on

Yeah looks like it's deleting itself. or something else is interfering with debug msgs. There's only one in the init room and it is persistent.

Developer(+1)

The object cannot delete itself, but check that you aren’t accidentally deactivating it or anything. You can add a show_error(“”, 0) to CleanUp event to see where you are deleting it from if you do.

If nothing else works, send me the project over email and I’ll take a look.

I managed to crack it. It works now! Thanks mate ^^

(+1)

Hey Dyno!

How did you manage to fix this issue? I'm struggling here -_- If you remember, could you fill me in on how you initially got it running after your initial post in this thread, and then what you did to "crack it" after that? I can't even get it running after fiddling with the "l_constructor" line (there's only 1 line referencing it and it's inside a function) or the h_constructor line as was mentioned elsewhere.

Given that GMS2 just had an update 6 days ago, I wouldn't be surprised if whatever you did no longer works for me, but I thought I'd ask.  Are you able to get GMLive working on the current IDE and runtime? IDE 2.3.2.556 and runtime 2.3.2.420.

Can't remember but I'd be happy to help via discord! I have decided not to update to the latest version of GMS2 for the exact reason that this might break again so yeah, no guarantees. Tricky business this is!