Docs Releases Log in

Dashboard guide

Rooms

Rooms let your game's clients send messages to each other as they happen: a lobby, a chat, positions in a small multiplayer game. A client joins one room at a time, and whatever it sends there reaches everyone else in it.

Rooms are served by Scoreboat's socket server, a separate process from the rest of Scoreboat. If the server you use has none configured, the Rooms page says so and rooms are off for every game.

This is an extremely simple service adapted from a previous project of mine. All it does is relay messages between clients. Eventually it'll be replaced by a properly competent socket service.

Settings

Setting What it does
Rooms on Clients holding a key with the game's realtime permission may connect. Off by default.
Players only A client must have a player signed in (a guest counts) to connect.
Searching Clients may list and search the rooms that are listed.
Making rooms Clients may make rooms of their own. They last until the last person leaves.

And the limits, each within a fixed range:

Setting Sent to clients as Default Allowed
People in a room a client makes max_room_size 8 2 to 256
Rooms clients may make at once, for the whole game max_rooms 50 1 to 1000
Largest message (bytes) max_message_bytes 4096 16 to 65536
Messages one client may send per second messages_per_second 10 1 to 60

Clients read the settings when they connect, so a change reaches a client the next time it connects.

Fixed rooms

Fixed rooms are always there, whether or not anyone is in them. They can be thus act as hard coded rooms known to your game. Give each a name and a size, and choose whether it is listed. A client joins a room by its id; a listed room can also be found by searching for its name, which gives its id. Each fixed room's id is shown in the list.

What a game needs

A key with the game client role may get into the rooms. The game asks Scoreboat for a ticket, then connects to the socket server with it. See the rooms API, or use sb_rt_connect in the GameMaker library.