GMS 2.3+ 5 undocumented GMS 2.3+ built-in functions and their short description


By playing a little with GMS 2.3+, I found some undocumented functions:

asset_has_any_tag(asset, tags [, asset type]); - returns if at least one tag exists in asset.
Currently manual says, that asset_has_tags() does this, but in fact asset_has_tags() returns true only if asset have ALL tags provided as argument, so there's a typo in docs (I believe it will be fixed in 2.3.1).

ds_map_keys_to_array(ds); and ds_map_values_to_array(ds); - their names are their documentation ;)

network_connect_async(socket, url, port); and network_connect_raw_async(socket, url, port); - should generate "Asynchronous Networking" event, with network_type_non_blocking_connect key - but I didn't tested it. Those does same as non-async versions, except game is not hanging and you can add "matching" or "loading" screen.

instanceof(struct) - return name of constructor as string (without parents) already in docs under "instance_of".
Last edited:

Coded Games

Ooo those ds_map functions look pretty nice. I am a big fan of maps, best data structure. Kinda not as super special anymore now that we have structs.


network_connect_raw_async is also there, in case if you're having trouble connecting to a server on HTML5 platform 👆