GameMaker Server: Update 1.8 & 1.8.1

The update can be downloaded by clicking the download button on the front page.

Release notes


New features
1. gms_show_set_allowguest(enabled) works again
2. User defined 12 event is always called after an instance synchronization has been completed.
3. gms_show_set_constant can now contain custom values
4. Custom layouts set with gms_show_replace can now contain images as background.
5. gms_draw_toggle(enabled) will toggle whether the UI & chat is drawn automatically or not
6. Binary Data Blocks
a. Allows for storage of larger binary files
b. Binary Data Blocks are downloaded on request, not on login
c. Binary Data Blocks can be locked to prevent multiple clients from writing to the same Binary Data Block at the same time
d. Fully asynchronous
7. All windows have been rebuilt from scratch, and work better.
8. A tutorial for creating custom login/achievement/etc windows has been posted on the site & the Window Inspector and source of the default windows is included in the download
9. New D&D actions
10. BREAKING CHANGE: gms_session_* functions now expect a session ID if possible instead of an index. Indexes are still accepted, but if a session with the same ID as an index exists, the session ID is preferred over the index.
11. Gms_session_type, gms_session_player_count, gms_session_id returns -1 if the session is not found
12. P2P messages can now be sent to another session, as long as the PlayerID of the recepient is known.

Bugfixes
1. Fixed a problem which caused gms_show_* windows with a scrollbox to display absolutely nothing.
2. Fixed undefined errrors in GM:Studio
3. Fixed Unknown variable __as_get when unlocking an achievement
4. Fixed an issue that caused the game to crash when trying to register an account without the login window being open.
5. Chat is drawn when calling gms_draw in GM:Studio
6. Fixed some issues that were occurring when the connection to the server wasn't optimal.
7. Fixed an issue that would cause the server to skip sending important information and would cause the game to crash.
8. Fixed an issue that would cause big numbers to be very imprecise
9. Fixed an issue that caused delays when writing to an ini that was still being saved
10. When a lot of messages are received at the same time (10 INI keys for example, the server will queue sending back updates until all the received messages are processed. This will increase the response/ping time of the server.
11. Server would never save INI keys
12. Many more bugfixes, mostly in GM:Studio.

Replies (10)

Last message on 21 Jan 2015

Moodyyaser_ on 21 Jan 2015, 00:03:36
Please could you make GameMakerServer HTML5 extension because I really want to make HTML5 game and I can't find anything better than your extension?
Also I liked the thing that any bad language turns into ***, forced me not to see them, and it'd be better if the sender sees this too not the original.
Size43 (Administrator) on 21 Jan 2015, 18:47:16
I'm not a magician. Programming takes time :)

By not showing the censored version of the swearing to the user who typed it, I'm trying to discourage finding ways around the system, since it's harder to test what's getting censored and what's not.
Moodyyaser_ on 21 Jan 2015, 19:00:27
Oh, I thought you wouldn't make it for HTML5, also what did GM:HTML5 kill functions about your extension?

You should see how many players typed things turned to ***, I really don't like seeing any bad words.
Size43 (Administrator) on 21 Jan 2015, 19:15:50
HTML does not support normal sockets, so I'm having to implement WebSockets on both the server-side and the client-side. That, together with having to wait for bugfixes in GM:Studio, is taking a lot of time.

Obviously I cannot ban everyone for swearing once. If it gets too bad, you can use "/report [message]" to report the chat to me, and I can take a look at it and ban/warn if needed. :)
smashi on 13 Jan 2015, 21:15:13
Hi, im using this update for my game, and Im having the following problem. Any idea on how could I fix it? Thanks!

############################################################################################
ERROR in
action number 1
of Draw Event
for object GMS:

Data structure with index does not exist.
at gml_Script_gms_network (line 1) - if(ds_map_find_value(async_load, "id") == global.__socket)
############################################################################################
--------------------------------------------------------------------------------------------
stack frame is
gml_Script_gms_network (line 1)
called from - gml_Object_GMS_DrawEvent_1 (line 4) - gms_network();
Size43 (Administrator) on 16 Jan 2015, 18:14:47
You should call gms_network in the Networking Event (under asynchronous). If you call gms_network in the draw-event, the extension cannot access the networking data.
Moodyyaser_ on 2 Jan 2015, 15:39:26
GameMakerServer HTML5 is still there, does it work now?
Sometimes when me and another player login, we don't see each other, why?
Player_count doesn't decrease when a player log out.
Size43 (Administrator) on 16 Jan 2015, 18:17:22
Where are you seeing this GameMaker Server HTML5? It should no longer be in the download.

If you cannot see the other player, do you still see the "xxx has logged in" and "xxx has logged out messages"? When player_count does not decrease, is player_count already 0?
Moodyyaser_ on 17 Jan 2015, 00:11:57
Try to download your new update to see by yourself.
No it's like no one has logged in while I see him logged in, I have two internets but this sometimes happens.
Also no, when I try 2 of the "no session" example on the same PC and logout at one of them, I see the player count doesn't change (stays 2)
Size43 (Administrator) on 17 Jan 2015, 10:41:10
I'm definitely not seeing it in the download. I see the all, windows, and gm8 version, and that's it.

I'll look into the other issue ;)