Command Line Commands

May 3, 2025 ยท View on GitHub

Table of Contents

Command Line Commands

This is a list of the standard command line / commands that are included with BeipMU. Scripts and plug-ins can extend and even replace the built in commands.

To see a short summary of the commands, simply type /help in the BeipMU input window. To jump to online help on a specific command, type '/help '

If a parameter has spaces it must be put in quotes (', " or ` work). Parameters in ( ) are optional. Some commands like /@ and /receive don't need quoted parameters as they just take everything after the command itself.

/@

Usage:

/@ <multiline script>

Runs a script immediately

Examples:

/@window.output.writeHTML("<icon exclamation>This is <b>bold!</b>");

/ansireset

Usage:

/ansireset

Reset ansi state to default (useful if the server misbehaves and leaves a style set)

Works by pretending the server sent this ansi code: "[0;37;40m"

/autolog

Usage:

/autolog

If there is an autolog setup for the puppet/character that was stopped, this will start the autolog again.

/capturecancel

Usage:

/capturecancel

Cancel any spawn capture in the current window. Useful if your spawn gets stuck capturing and your 'stop capture' trigger isn't working properly yet.

/chars

Usage:

/chars

When connected to a server from the world list, this will list all of the characters in that server that you can use the /chars command on.

/clear

Usage:

/clear 

Clears the output window.

/close

Usage:

/close 

Closes the current window

/connect

Usage:

/connect <hostname:port>
/connect <server name> <optional character name>

Examples:

/connect fluffmuck.org:8888
/connect 12.23.34.45:8890
/connect fluff
/connect fluff bennet

This connects to the given server, in the form of hostname:port, or server name. The name is the name shown in the tree view of the edit worlds/connect dialog. Hostnames can be a standard DNS name or just an IP address.

/connectioninfo

Shows the socket connection information, like the TLS/SSL security information.

/delay

Usage:

/delay <option> <time> <command>

Current option is only 'every' to make it a repeating timer (be familiar with how to kill timers before using this!)

  • To list current pending commands: /delay list

  • To kill all upcoming commands /delay killall

  • To kill a pending command /delay kill <id>

Examples:

/delay 3.5m "WHO"
(sends WHO after 3 & 1/2 minutes)

/delay 1-5s "attack"
(sends attack after a random time between 1 and 5 seconds)

/delay every 30s "status"
(sends status every 30 seconds)

This is used to delay a send to the server by a given amount of time. Multiple delayed commands can be queued up. For the time, the format is: number(optional end range)(h,m,s). 3m = 3 minutes, 10s = 10 seconds, etc. Fractional values also work, like 1.5s, 0.5h etc..

The optional end range is just a '-' then a number. The end range number must be after the start range. Example: 1-5m 0-0.5s 0.5-1h

/disconnect

Usage:

/disconnect (all)

Disconnects from the current server. If 'all' is specified, disconnects all tabs in all windows.

/echo

Usage:

/echo <on/off> 

Examples:

/echo on
/echo off 

Turns the local echo to the output window on/off. This feature is far less useful due to the history window, but is still available if you do not use the history window or prefer the inline echo in the output window.

/exit

Usage:

/exit

Will close all main windows and exit the app. Same as File->Exit.

/gag

Usage:

/gag <string> 

Examples:

/gag "Enemy"
/gag "it is now nighttime" 

Adds a global trigger whose match string is the gag text and it's action is to gag that line of text. If a trigger already exists with this string, gag is enabled on it if it wasn't already set to gag. Added as a quick and simple way to gag something easily, for more power see the trigger dialog.

/gmcp

Usage:

/gmcp <options>

Options:

  • dump_on / dump_off - Will dump any incoming GMCP messages to the debug console for easier debugging of what's going on with GMCP

GMCP protocol options

/grab

Usage:

/grab <object>/<property>

Examples:

/grab me/desc
/grab frank/name

On servers that support the @pemit command, it will send a command to the server so that the input window will be filled in with a command that lets you edit and update the existing value. It works by sending '@pemit me=<prefix> &<property> <object>=[get(<object>/<property>)]' to the server. The server will then respond with '<prefix> &<property> <object>=<existing value>'. BeipMU will look for a line starting with <prefix> and then place the rest of the line into the input window. Prefix is an 8-digit hex value generated each time the command is used, only one line starting with is looked for.

/help

Usage:

/help 

Displays the built in help list showing the commands and a simple description of each (see the top of this page for the same list)

/idle

Usage:

/idle <# idle time in minutes> <text to send> 

Examples:

/idle 15 "w me=Idling"
/idle 60 '"I am idling!' 

Sets an idle timer that after the specified amount of idle time will send the given text to the server you're currently connected to. The minimum idle time is 1 minute, a value of 0 is still 1 minute. Idle timers and messages are not saved, and only apply to the current window you are in.

/log

Usage:

/log <filename> 

Example:

/log "world1.txt" 

Starts logging to the given text file. Creates a new file if it does not exist and appends to a file if it already exists.

/logall

Usage:

/logall <filename> 

Identical to the /log command except that it also logs all of the existing text in the output window. Useful if you forget to start logging when you first connect and don't want to miss what was already said.

/map_addroom

Usage:

/map_addroom <room name> <exit to get there> <exit to get back>

Creates a new room the same size as the current room and links it with the given exit commands. If the exit direction is a known direction (like north, south, n, s, northwest, nw, etc..) it will place the room physically in that direction on the map.

/map_addexit

Usage:

/map_addexit  <exit to get there> <exit to get back>

Using the exit direction logic as /map_addroom, it will look for a room in the given direction and create this exit to it.

/naws

Usage:

/naws auto
/naws {width} {height}

Examples

/naws 80 25

Sends a telnet NAWS command to the server with an auto calculated size (based on font & output window size), or the user specified size.

/new

Usage:

/new 

Opens a new window.

/newedit

Usage:

/newedit title='string' capture='#' capture_skip='#' spellcheck='t/f' prepend='string' append='string'

Opens a new editor window. All attributes are optional, and are in XML style syntax (so ' or " works to surround one). When you click 'Send' there is no alias or command processing done to what is sent. The content is sent directly.

The capture attribute is useful to populate the editor window with the last # of lines in the output window. The capture_skip lets you skip over a certain # of lines before capturing.

All parameters are optional and can be in any order.

Parameters:

  • title = Title of the edit window
  • capture = Number of lines of the output window to capture into the edit box
  • capture_skip = Number of lines of the output window to skip before beginning capture (used to ignore some lines)
  • spellcheck = Turn on spell checking, defaults to 't'
  • prepend = String to prepend to start of captured text, to have newlines, use XML entities for special chars, like &#10; for newlines
  • append = String to append to end of captured text

/newinput

Usage:

/newinput (/unique) (<prefix>)

Opens a new input pane. If a prefix is specified, this will be sent on every line sent by the input box. Note that input panes can be docked anywhere.

/unique - This will not create the input window if one with the given prefix already exists for this window.

/opendialog

Usage:

/opendialog (aliases/triggers/macros/worlds) (parameters...)

Open a built in dialog box

/ping

Usage:

/ping <text to send>

Examples:

/ping w me=Latency test

Sends the given text to the server and times how long it takes for the server to send a reply. Useful in benchmarking or testing network latency. Note that if lots of data is being received that a /ping won't know which data is from the text being sent, so it will give incorrect results in this case.

/printenv

Usage:

/printenv

Shows the list of variabes in the output window.

/puppet

Usage:

/puppet <puppet name> 

Examples:

/puppet zombo
/puppet dog 

Opens a new window and connects it to the given puppet from the currently connected character in the window you type this command in.

/puppets

Usage:

/puppets 

Shows a list of all of the available puppets for the current character.

/quit

Same as /close

/debugnetwork

Usage:

/debugnetwork

Opens up a window to show raw network traffic for the current window. Useful to figure out what's going on with prompts/telnet codes/etc!

/debugtriggers

Usage:

/debugtriggers

Opens up a window to show what triggers are being applied and what their results are. Useful to debug each step when multiple triggers are active.

/recall

Usage:

/recall <number of lines to go back> <string to search for> 

Examples:

/recall 50 "Frank"
/recall 100 Joe* 

Searches the output buffer for the given string and displays it in a list in the output window. Wildcards are allowed, but only at the beginning or end of the search string. For example, Joe* would indicate that the line starts with "Joe", *Joe would mean the line ends with "Joe". No stars just means the line contains the given string.

/reconnect

Usage:

/reconnect (all)

Reconnects to the last connection in the current tab. If 'all' is specified it applies to all disconnected tabs in every window. Useful to reconnect to everything after restarting the app.

/receive

Usage:

/receive <text>

Acts like whatever text after "/receive " was received from the server (plus a cr-lf after). Useful for testing triggers or even initializing spawn windows on connect.

/resetscript

Usage:

/resetscript 

Will reset the current scripting engine, removing all currently running scripts and hooks. This will also switch the scripting language to what is currently set in the preferences dialog, so the language can change after this.

/roll

Usage:

/roll #d#[+#]

Examples:

/roll 2d6
/roll 1d20

Dice roll, uses standard syntax of (number of dice)d(number of sides) with an optional +extra number. Outputs every die rolled, the totals, and the average.

/script

Usage:

/script <script to run>

Example:

/script window.output.write("Hello!");

Run a one line script (no newlines allowed). Useful for putting a script in a send trigger along with other commands

/set

Usage:

/set <variable name>=<value>

Sets a value into a per window variable list. If the variable doesn't exist, it is created. Variables can have spaces and any other characters in them, except for the '=' char as it's used to separate the sides. Variables can be set/used in send trigger actions and aliases.

Variables are case sensitive.

/setinput

Usage:

/setinput <text>

Sets into the active input window. Seems pointless but it can be used in a trigger's send action to fill in the input window with parts of the received text.

/silence

Usage:

/silence

Stops all currently playing sounds. Useful to stop a long sound that's playing

/slist

Usage:

/slist 

Lists all of the server shortcuts, showing the shortcut, host name, and port as a list in the output window

/switchtab

Usage:

/switchtab <tab group> <tab name>

Makes the 'tab name' in the spawn tab window 'tab group' visible. Useful to see activity just by using the keyboard.

/tabcolor

Usage:

/tabcolor <optional HTML style color>

Examples:

/tabcolor #80FF80
/tabcolor

Sets the current tab color to the given color. You can also right click a tab to choose a color in the GUI. This command makes it possible to change tab colors through a trigger (using a send action).

/ttype

Usage:

/ttype <type>

Set telnet terminal type (Default = "Beip"). With this you can pretend to be any other terminal type.

/unset

Usage:

/unset <variable name>

Deletes a variable. See /set for more info

/wall

Usage:

/wall <string>

Sends the given string to every connection.

/webview

Usage:

/webview url="url" position="x,y,width,height" state="maximized"
/webview url="https://beipdev.github.io/BeipMU/WebViews/samples.html"

Opens up a webview pane.

Attributes:

  • url - The link to the webview, just a regular URL. For local files, remember to use file://
  • position(optional) - Optional position, if you always want the webview to appear in a certain screen position/size
  • state(optional) - Window state, current value is only 'maximized'