Campus Manual: Text Chat & Messaging

Manual index·← AI Agents & Characters (NPCs)·Classes, Lectures & Learning →

Multiverse Campus has a full text chat system built on the Matrix protocol — the same open standard used by apps like Element. Chat is woven into the world itself: you get a channel for every building you walk into, direct messages with other students, class channels, and a "Local Chat" that only reaches people standing near you. This chapter covers opening chat, navigating channels and DMs, sending and managing messages, and connecting your account to the Matrix network.

Opening chat

Where: right edge of the screen, always visible while you're in the world.

Chat lives in two docked panels around the main campus view:

Both panels can be collapsed to a thin strip using the arrow button in their header, and the left sidebar can be resized by dragging its right edge. The right sidebar remembers its width between sessions, and the left sidebar remembers its collapsed sections.

You can also pop chat out into its own floating window (a Multiverse Chat window) using the pop-out control near the chat area — useful if you want to keep chat visible while doing something else, or move it to a second monitor. The floating window shows a compact combined view: a room list on top and the active channel's messages below.

If you haven't connected a Matrix identity yet, the sidebar shows "Connecting to chat..." or "Not dialed in" instead of your handle — see Matrix account setup below.

The channel sidebar

Where: left sidebar, header reads Channels.

The sidebar groups every channel you belong to into sections:

Section Contents
Direct Messages Your 1-on-1 conversations with other students
Classes Channels tied to a class you're enrolled in
Channels Channels tied to a building on the map
Other Channels Channels not tied to any building (server-wide topic channels)

Click a section's title to collapse or expand it — your collapsed/expanded state is remembered. Channels with unread messages float to the top of their section (sorted by unread count), then the rest are sorted alphabetically. A small badge shows the unread count (capped at "99+"); a muted channel shows a bell-slash icon instead of a badge.

Every account is auto-joined to the same set of campus-wide Other Channels: #multiverse-announcements, #faq, #job-search, #learn-to-code, #multiverse-cool-ai-tools, #ai-papers, and #neurodivergent-life. (Ops can override this list via the MATRIX_DEFAULT_ROOMS env var.)

Local Chat (proximity mode)

At the top of the channel list is a Local button. Clicking it (or simply not having any channel selected) switches you into Local Chat — a proximity-based feed that only shows messages from people standing physically near your character on the map, plus system messages like NPC dialogue picked up nearby. Anything you type while in Local Chat is broadcast to nearby players only (up to 280 characters) — it does not go through Matrix and does not appear in any channel history. This is the default mode when you haven't explicitly opened a channel.

Online users list

The left sidebar also shows who's currently online in your area, with quick actions next to each name:

On Duty agents

Below the online users list, an On Duty section lists AI agents currently working on campus. Each entry shows the agent's name and job title, with an envelope icon to start a conversation and a pin icon to navigate to wherever they're stationed. See AI Agents & Characters for how agent conversations work.

Joining and using channels

Opening a channel is as simple as clicking it in the sidebar — this loads its recent message history and marks it as read. Channels are joined for you automatically as you move around campus:

Channel context menu

Where: click the "⋯" icon on the left edge of any channel row in the sidebar.

Each channel has a small options menu:

Option What it does
Navigate to room Sets a guide path across the map to the building this channel belongs to (only enabled if the channel has a known map location)
Mark as read Clears the unread badge without opening the channel
Mute channel / Unmute channel Toggles muting — muted channels stop showing an unread badge (shown as a bell-slash icon instead). Muting is stored locally in your browser.
Leave channel Leaves the channel on Matrix and removes it from your list. Asks for confirmation before it takes effect.

Manually browsing and joining channels

Where: floating chat window (pop-out) → + Browse button under the room list.

Opening Browse lists public channels on the campus Matrix server that you haven't joined yet. Click a channel to join it immediately — it's added to your Other Channels section and automatically selected.

Direct messages (DMs)

To message another student directly:

  1. Find them in the online users list (left sidebar) or wherever their name appears elsewhere in the game.
  2. Click the envelope icon next to their name (or use "Message" if offered from a context menu), or click their existing entry under Direct Messages if you've messaged them before.

The system reuses an existing DM if one already exists between you and that person (checked both by matching their username and by inspecting shared room membership) — you won't end up with duplicate DM threads with the same person. If no DM exists yet, one is created on the fly and both of you are dropped into it.

New DM conversations appear under Direct Messages in the sidebar, tagged with a DM label in the channel header.

DMs with agents and allowance limits

Off-duty AI agents can also be DMed like any other contact (see AI Agents & Characters). Behind the scenes, each agent has a modest monthly budget (funded by the school) for the token cost of DM conversations with you; it resets automatically every month. As long as that budget isn't exhausted, your conversation costs you nothing. If an agent's monthly allowance for you runs out, further replies from that agent are paid for out of the agent's own personal funds rather than the school's — this is handled automatically and isn't something you configure; if it comes up, an agent may simply mention it's running low on budget for the month.

Sending messages and message actions

Where: the message box at the bottom of the right sidebar (or the active channel panel in the pop-out window).

Type your message and press Enter to send (Shift+Enter for a newline). While composing, other participants briefly see a "is typing..." indicator under the message list.

Message actions

Hover over any of your own messages (or any message, if you're an admin) to reveal a "more actions" (⋮) button, plus a row of quick reactions:

Action Details
React Click one of the quick emoji (👍 ❤️ 😂 😮 😢 🔥) to react to a message. Reactions appear as pill badges under the message showing the emoji and count; click a pill you've already reacted with to remove your reaction. Certain emoji reactions also trigger your character's matching emote animation in the world.
Reply (↩) Quotes the message and lets you send a threaded-looking reply; a "Replying to…" bar appears above the input with a cancel button.
Edit (your own messages only) Lets you revise text you already sent.
Delete (your own messages only) Removes the message. Asks for confirmation first; deletion cannot be undone.
Mark as Phishing (admin only) Reports another student's message, stripping links/emails from the stored text and logging it. Asks for confirmation, showing a preview of the message content, before submitting.

Emotes in chat

Typing a slash command (e.g. /wave, /dance) in the message box triggers an autocomplete list of your unlocked emotes. Selecting one — or pressing Enter on a recognized emote slug — plays the animation on your character and posts an action-style message ("Name dances") to the channel instead of literal text. Unrecognized slash commands, or emotes you haven't unlocked, are sent as plain text instead.

Group chat overlays tied to items

Some inventory items in the game (e.g. certain junk/gag items) open a group chat overlay when used — a small window styled like a busy group chat, with 247 unread messages, a muted input box, and a running joke feed of in-universe chatter. This is a scripted, self-contained novelty item, not a real messaging feature: its messages are fixed content, you cannot type into it, and nothing you do inside it is sent anywhere or persists. Treat it as flavor/comedy rather than an actual group DM or channel.

Matrix account setup

Every student needs a Matrix identity to use chat — this is set up automatically the first time you log in.

First-time setup with Byte

Where: a full-screen prompt shown right after you accept the Terms of Service, before you enter the campus for the first time.

If you don't have a Matrix identity yet, Byte (the campus robot helper) walks you through picking one:

  1. Byte asks you to choose a screen name — this becomes both your @handle in chat and your display name around campus.
  2. Type a handle: lowercase letters, numbers, dots, dashes, and underscores only (3–30 characters), no spaces, and it can't start/end with or double up a separator.
  3. As you type, the game checks in the background whether the handle is available and shows a live "available" or "taken" message.
  4. Once available, press Enter or the arrow button to confirm. Byte provisions your Matrix account behind the scenes and you're dropped into the world once it's ready.

You only see this gate once — after your handle is set, future logins skip straight to campus.

Managing your Matrix account

Where: Profile → Matrix Chat Account section.

Your profile shows your current chat identity and lets you manage it:

Linking an existing Matrix account

If you already have a Matrix account (for example, one you set up separately on matrix.themultiverse.school) and want Campus chat to use it instead of an auto-created one:

  1. In the Matrix Chat Account section, click Link Existing Matrix Account.
  2. Enter your Matrix username (either the short form like alice or the full form @alice:themultiverse.school) and click Send Code.
  3. Campus sends a verification message containing a 6-character code to that Matrix account via a direct message from "MultiverseCampus" — check your Matrix client (or the in-game chat, if you're already receiving messages) for it.
  4. Enter the 6-character code and click Verify. The code expires after 10 minutes; if it expires, start over.

Once linked, your campus identity and chat history follow your existing Matrix account going forward. You can Unlink Account at any time to disconnect it (your Campus profile keeps working, but reverts to needing a fresh identity for chat).

Manual index·← AI Agents & Characters (NPCs)·Classes, Lectures & Learning →