Audience: New and returning players
Reference: Read the Scripting Basics and Wizards guide first for core syntax, wildcards, variables, procedures, and wizard navigation.
What Managing Sessions and Tabs Means
MudBringer can run multiple characters at the same time inside a profile.
Profiles make it easy to swap between play setups, while characters keep their own independent behavior and data.
This guide covers the practical basics for opening sessions, moving between tabs, and coordinating multiple characters.
Profiles, Characters, Sessions, and Tabs
- A profile stores your workspace setup, including window placement, dashboard layout, and certain multi-session behavior.
- A character remains independent (its own scripts, variables, and connection identity).
- A session is the active runtime instance of a character.
- A tab is how that session is displayed in the interface.
You can use characters interchangeably across different profiles when you want different layouts or operating modes.
Example: one profile can be tuned for solo play while another is tuned for grouped multi-session control.
Session vs Tab Quick Model
- A session is a live character connection with its own state.
- A tab is how that session is shown in your workspace.
- You can run one or many sessions, then organize tabs for faster switching.
Sharing Data Between Sessions
Because sessions run independently, regular variables (like $target) are kept local to that specific character. When you want to share data across your characters, you can use specialized variable scopes:
- Shared Variables (
$shared.name): A variable that any open session can read and update. Great for global states like$shared.assistTarget. - Foreign Session Variables (
$SessionName.name): Read a normal variable directly from another session. For example,$Scout.currentHealthreads the local$currentHealthvariable from the “Scout” session.
You can also evaluate logic remotely using @poll(GROUP, {expr}) deferred procedures.
Opening and Naming Sessions
Use File > Characters or hotkey Ctrl+N to open Character Manager.
You can rename the current session label with:
/sessionname {Scout-Alt}
You can also update host/path metadata for the current session:
/setip {mud.example.com}
/sessionpath {Profiles/Scout}
[TIP] Character names should match (or closely resemble) the real character name. Session names are what scripts target for multi-session control. They are often the same by default, but advanced setups may use more specific session labels.
Switching Between Sessions
Use /focus to bring a session to the foreground quickly.
Example:
/focus {Billy}
/focus {Zane}
Use /hydrate for a focused, maximized view when managing many windows:
/hydrate {Billy}
Press Escape to leave hydrated mode.
[TIP] Dashboards can have separate dock settings for hydrated vs normal modes.
Sending Commands to Another Session
Use /window to run a command in a different session without changing your current focus.
Example:
/window {Crafter} {look}
/window {Scout} {score}
Use /showother to funnel heads-up information into another output target.
Notification-window pattern:
/showother {Notify} {Scout: Check north room now.}
Best practice for structured HUD messaging is targeting a dashboard TextBox directly:
/showother {Sessionname.Dashboardname.TextBoxname} {Scout: Check north room now.}
This keeps tactical alerts in a dedicated output surface instead of mixing them into main gameplay scroll.
Delegation and Group Settings
When managing a whole squad, you can configure sessions to listen to delegated group commands.
To set session groups for delegated commands:
/delegation {healers,tanks}
You can also configure this in the Delegation tab under Session > Options.
You can also trigger a script once for each group member using @CommandToEach.
@CommandToEach(GROUP, command)
This procedure sets $ListItem to each member in turn.
Example:
@CommandToEach(JGROUP, thank $ListItem)
Seeing It in Action
Try this small workflow:
/session {Crafter} {mud.example.com} {4000}
/session {Scout} {mud.example.com} {4000}
/focus {Scout}
/window {Crafter} {inventory}
/showother {Notify} {Crafter inventory check sent.}
/hydrate {Scout}
What happens:
- Two sessions are available.
- You focus Scout.
- Crafter runs
inventoryin the background. - Notify receives a local reminder message.
- Hydrated view gives a clean focus mode for Scout.
Quick Reference
Core multi-session commands:
- /session {name} {host} {port} : Open a session.
- /sessionname {name} : Rename current session label.
- /setip {host} : Set current session host value.
- /sessionpath {path} : Set current session path value.
- /focus {session} : Bring a session to the foreground.
- /hydrate {session} : Enter focused hydrated view for a session.
- /window {session} {command} : Run a command in another session.
- /showother {session|session.dashboard.textbox} {text} : Display text in another session window or dashboard TextBox output target.
Next Steps
- Trigger Fundamentals (Patterns, Actions, and Groups)
- Installing Community Script Packs Safely
- Backup and Restore Basics
Version Notes
- Scope: multi-session basics.