Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags
(1 edit) (+1)

If you are using GMS 2.3+, GMRoomPack stores instance-struct references (the ones you’d get by doing var a = self;). You can pull the ID out of them via list[|i].id if desired.

Thanks, I have managed to get it working with that :)

But is there any way for me to change GMRoomPack to just return IDs? I imagine it uses quite a bit more ram to save all that data, which I don't need. Perhaps it's negligible, but the game has thousands of instances loading in, so it might still make a meaningful difference.

(+1)

It does not use more RAM, these are references to structs that already exist inside instances. That’s how GML works now.

You can find these two lines in GMRoomPack’s GML file

var l_list = room_pack_raw_store_instances;
if (l_list != undefined) ds_list_add(l_list, self);

and change the second line to use id instead of self, but I do not think you’ll win anything whatsoever in doing so.