How a private room works

15 September 2026, the Stigmera games team.

A private room is the part of Inktide we have rebuilt most often. It is where the game meets a group of people who already know each other, so every mistake in it is found by somebody's friend within a day. This post follows a room from the button that opens it to its second round, and explains why each piece works the way it does.

A code a person can read out loud

When you open a room, the server picks its code: six characters drawn from an alphabet of thirty-one letters and digits. Zero, one and the letters I, L and O are left out on purpose, so a code copied off a screenshot or shouted across a living room survives the trip. Upper or lower case makes no difference when it is typed back in.

Six characters from thirty-one give 887,503,681 possible codes, and we checked whether that is safe without a password. Suppose a thousand rooms are open at once, which is far more than the game has ever had. A random guess then finds one of them about once in 887,000 attempts. The server allows ten failed joins a minute from one internet address, so a script guessing without a pause would need roughly two months to stumble into any room at all, and it would land in a stranger's room chosen by chance rather than in yours.

Only a failed attempt counts against that limit. It matters for a school class: thirty pupils behind one connection, all typing the same correct code, used to run into a limit that was meant for scripts. A right code now costs nothing, however many people type it.

The link, and the picture in the chat

The link you send is inktide.io/g/ followed by the code. That address is answered by the game server itself rather than by the game page, because the program a messenger uses to build a link preview runs no JavaScript and would otherwise see an empty loading screen. It gets a small page with a title, a line of description and a picture drawn for that one room with the code printed on it, which is why the preview in your group chat is recognisably your room. A person who taps the same link is passed straight on into the game, which reads the code and walks them into your lobby.

Rounds, and the door between them

Nothing starts until the host presses Start, and a room needs at least two people to do it. The moment the match begins, the room locks itself, so a link forwarded halfway through cannot drop a stranger into a game that is four minutes from its finish. When the match is over that lock lifts on its own, and the room is ready for another round under the code everybody already has.

A friend who opens the link during a round is no longer turned away to a public match. They stay, follow the game as a watcher when the host permits it, and take a seat once the following round begins, provided there is room at the table and the host has not shut them out. A player whose connection drops and returns keeps their place in the room and in their group, in every kind of room we have.

Why there is no password by default

Guessing is not how a stranger really gets into a room. Forwarding is: somebody in the group passes the link on. No amount of randomness in a code can stop that, because nobody guessed anything; the code was handed over. So instead of a password every guest has to type, the host gets controls aimed at that problem:

An optional passphrase does exist, as part of the paid Host Pack, and it targets forwarding as well. Changing the code breaks the link for the whole group; a word leaves the link working for the people who were also told the word. A room never reveals that it expects one before it has checked, so a script scanning codes cannot tell a real room from an empty code.

What a room is not

A room pays no experience. That keeps rooms a place for playing with people you know, not a place for levelling up against friends who agreed to lose. And a room that nobody uses is cleared away after half an hour; with the Host Pack, the link survives thirty days of silence.

To try one, Playing with friends lists what a host can set up, and Controls covers everything you do once the round is under way.