Object Program Commands
This page lists every command available in object programs. All object program commands use the obj prefix. Most commands are shared across all entity types — for those, a brief description and a link to the Shared Commands Reference are provided. Commands that are unique to objects or that behave differently in object context receive full documentation here.
Table of Contents
- How to Use This Reference
- Output Commands
- Entity Modification Commands
- Affects and Auras
- Combat Commands
- Movement and Transfer
- Entity Creation and Destruction
- Skills, Spells, and Traits
- Character Resources
- Variable Commands
- Script Control
- Script Entity Management
- Force Commands
- Quest Commands
- Dungeon and Instance Commands
- Event and Reckoning Commands
- Lock Commands
- Exit and Link Commands
- Appearance and Social
- Player Management
- Religion and Organization
- Catalyst and Alchemy
- Wilderness
- Command Quick Reference
How to Use This Reference
Every command follows this pattern:
obj <command> [arguments...]
$nrefers to the character who triggered the script.$irefers to the object itself (the script owner).lastreturnis set by many commands (1 = success, 0 = failure). Check it withif lastreturn == 1.
For the full explanation of variables, quick codes, and color codes, see Variables and Tokens and Scripting Basics.
Output Commands
Commands that send messages to characters.
echo
Send a message to everyone in the object’s room. → Shared Reference
obj echo The sword hums with power.
echoat
Send a message to one specific target. → Shared Reference
obj echoat $n You feel the ring tighten around your finger.
echoaround
Send a message to everyone in the room except the target. → Shared Reference
obj echoaround $n $N's ring begins to glow.
echoroom
Send a message to a specific room (not necessarily the object’s room). → Shared Reference
obj echoroom 3001 A distant rumble echoes from the cavern.
gecho
Broadcast a message to all players in the game. → Shared Reference
obj gecho {RThe sky darkens as an ancient artifact awakens!{x
zecho
Send a message to all players in the same area. → Shared Reference
obj zecho {YA bell tolls three times from the temple.{x
echonotvict
Send a message to everyone in the room except the victim. → Shared Reference
obj echonotvict $(victim) $N is struck by the artifact's power!
echobattlespam
Send a combat-flagged message (respects player battlespam settings). → Shared Reference
obj echobattlespam {RSparks fly from the enchanted blade!{x
echochurch
Send a message to all online members of a church. → Shared Reference
obj echochurch $i {YThe relic speaks to the faithful.{x
echogroupat
Send a message to all members of the target’s group. → Shared Reference
obj echogroupat $n {CThe banner rallies your group!{x
echogrouparound
Send a message to the room except the target’s group. → Shared Reference
obj echogrouparound $n The enemy group's banner pulses with light.
echoleadat
Send a message to the group leader. → Shared Reference
obj echoleadat $n {YYour commander's insignia glows with authority.{x
echoleadaround
Send a message to everyone except the group leader. → Shared Reference
obj echoleadaround $n The leader's insignia flares with power.
asound
Send a message to all adjacent rooms (not the current room). → Shared Reference
obj asound A deep horn blast echoes from nearby.
crier
Make a town crier announce a message. → Shared Reference
obj crier Hear ye! The ancient artifact has been found!
Send in-game mail to a player. → Shared Reference
obj mail $n The artifact whispers a message into your mailbox.
pageat
Send a paginated message to a target. → Shared Reference
obj pageat $n {CLong inscription text from the ancient tablet...{x
prompt
Display a custom prompt to a target. → Shared Reference
obj prompt $n {Y[Artifact Charge: 75%%]{x
wiznet
Send a message to the immortal wiznet channel. → Shared Reference
obj wiznet Debug: artifact triggered by $n in room $R
Entity Modification Commands
Commands that change properties of mobiles, objects, rooms, and exits.
alterobj
Modify object properties (values, flags, weight, etc.). → Shared Reference
obj alterobj $i v0 5
obj alterobj $i addname glowing
altermob
Modify mobile/NPC properties. → Shared Reference
obj altermob $n maxhp 500
alterroom
Modify room properties. → Shared Reference
obj alterroom $(here) addflag dark
alterexit
Modify exit properties. → Shared Reference
obj alterexit north flags remove closed
condition
Set or modify object condition/durability. → Shared Reference
obj condition $i 100
ed
Add or modify extra descriptions on an entity. → Shared Reference
obj ed $i runes Ancient runes cover the blade's surface.
resetdice
Reset dice or random values on an object. → Shared Reference
obj resetdice $i
stringmob
Modify mobile name, short, or long descriptions. → Shared Reference
obj stringmob $n short a battle-scarred warrior
stringobj
Modify object name, short, or long descriptions. → Shared Reference
obj stringobj $i short a {Rbloodstained{x dagger
setclass
Set a character’s class. → Shared Reference
obj setclass $n warrior
setclasslevel
Set a character’s level in a specific class. → Shared Reference
obj setclasslevel $n warrior 10
setposition
Set a character’s position (standing, sitting, sleeping, etc.). → Shared Reference
obj setposition $n sleeping
setrace
Set a character’s race. → Shared Reference
obj setrace $n elf
setrecall
Set a player’s recall (home) room. → Shared Reference
obj setrecall $n 3001
Affects and Auras
Commands that add, modify, or remove spell-like effects.
addaffect
Add a spell-like affect by skill number. → Shared Reference
obj addaffect $n 1 200 -2 17 0
addaffectname
Add a named affect (by string name). → Shared Reference
obj addaffectname $n fire_shield 100
addaura
Add a magical aura effect. → Shared Reference
obj addaura $n holy_aura 200
alteraffect
Modify an existing affect on a character. → Shared Reference
obj alteraffect $n fire_shield duration 300
applytoxin
Apply a poison or toxin effect. → Shared Reference
obj applytoxin $n venom 50
fixaffects
Recalculate all affects on a character. → Shared Reference
obj fixaffects $n
remaura
Remove a magical aura from a character. → Shared Reference
obj remaura $n holy_aura
stripaffect
Remove an affect by skill number. → Shared Reference
obj stripaffect $n 1
stripaffectname
Remove a named affect by string name. → Shared Reference
obj stripaffectname $n fire_shield
Combat Commands
Commands related to fighting, damage, and combat state.
damage
Inflict HP damage on a character. → Shared Reference
obj damage $n 50
obj damage $(victim) 100
gdamage
Inflict damage on an entire group. → Shared Reference
obj gdamage $n 25
entercombat
Force a character into combat. → Shared Reference
obj entercombat $n $(victim)
startcombat
Initiate combat between two characters. → Shared Reference
obj startcombat $n $(victim)
stopcombat
Force a character to stop fighting. → Shared Reference
obj stopcombat $n
peace
Stop all combat in the current room. → Shared Reference
obj peace
rawkill
Instantly kill a character (bypasses death processing). → Shared Reference
obj rawkill $n
interrupt
Interrupt a character’s current action (casting, etc.). → Shared Reference
obj interrupt $n
breathe
Force an entity to perform a breath attack. → Shared Reference
obj breathe $n fire
cast
Force the object’s context to cast a spell. This is one of the few commands that behaves specially for objects — the object itself can be the caster.
obj cast 'fireball' $(victim)
obj cast 'cure light' $n
zot
Smite a character with divine punishment. → Shared Reference
obj zot $n 500
flee
Force the holder to flee from combat. → Shared Reference
obj flee
Movement and Transfer
Commands that move characters and objects between locations.
goto
Teleport the object to a specified room. In object programs, this moves the object itself.
obj goto 3001
at
Execute a command at a different location without moving the object.
obj at 3001 obj echo A distant rumble is heard.
transfer
Teleport a character to a destination room. → Shared Reference
obj transfer $n 3001
gtransfer
Transfer an entire group to a destination. → Shared Reference
obj gtransfer $n 3001
otransfer
Transfer an object to a different location or character. → Shared Reference
obj otransfer $i $n
obj otransfer 3050 3001
Entity Creation and Destruction
Commands that create or remove entities.
oload
Load (create) an object by vnum. → Shared Reference
obj oload 3050
obj oload 3050 $n
mload
Load (create) a mobile by vnum. → Shared Reference
obj mload 3001
purge
Remove entities from the room. → Shared Reference
obj purge
obj purge 3050
junk
Silently destroy an object. In object programs, commonly used to destroy other objects or the object itself.
obj junk $i
obj junk $(obj1)
selfdestruct
Cause the object to destroy itself. This is the standard way for one-use items to clean themselves up after activation.
** Potion is consumed after use
obj echoat $n {GYou feel the healing energy flow through you.{x
obj restore $n
obj selfdestruct
Notes:
- The script stops executing after
selfdestruct— any commands after it will not run. - Use this for consumables, one-time quest items, and objects that should disappear after triggering.
remove
Remove/unequip an object from a character. → Shared Reference
obj remove $n
cloneroom
Create a dynamic copy of a room. → Shared Reference
obj cloneroom 3001 9001
destroyroom
Destroy a dynamically created room. → Shared Reference
obj destroyroom 9001
resetroom
Reset a room to its default state. → Shared Reference
obj resetroom 3001
loadinstanced
Load an entity into a dungeon instance context. → Shared Reference
obj loadinstanced 3001
makeinstanced
Convert an entity to instance-specific scope. → Shared Reference
obj makeinstanced $i
Skills, Spells, and Traits
Commands that modify character abilities.
addspell
Add a spell to a character’s spell list. → Shared Reference
obj addspell $n fireball
remspell
Remove a spell from a character’s spell list. → Shared Reference
obj remspell $n fireball
grantskill
Grant a character knowledge of a skill. → Shared Reference
obj grantskill $n dodge
revokeskill
Revoke a character’s knowledge of a skill. → Shared Reference
obj revokeskill $n dodge
grantsong
Grant a character knowledge of a bard song. → Shared Reference
obj grantsong $n lullaby
revokesong
Revoke a character’s knowledge of a bard song. → Shared Reference
obj revokesong $n lullaby
grantclass
Grant a character access to a class. → Shared Reference
obj grantclass $n ranger
revokeclass
Revoke a character’s access to a class. → Shared Reference
obj revokeclass $n ranger
skimprove
Trigger a skill improvement check. → Shared Reference
obj skimprove $n swordsmanship
addtrait
Add a trait (racial/class feature) to a character.
obj addtrait $n night_vision
adjusttrait
Adjust a trait’s value on a character.
obj adjusttrait $n strength_bonus 2
removetrait
Remove a trait from a character.
obj removetrait $n night_vision
settrait
Set a specific trait value on a character. → Shared Reference
obj settrait $n fire_resist 50
Character Resources
Commands that modify currency, experience, and vitals.
award
Award experience points or quest credit. → Shared Reference
obj award $n 500
deduct
Deduct currency, XP, or other resources. → Shared Reference
obj deduct $n gold 100
chargebank
Deduct money from a player’s bank account. → Shared Reference
obj chargebank $n 500
restore
Fully restore a character’s HP, mana, and movement. → Shared Reference
obj restore $n
wiretransfer
Transfer money between player bank accounts. → Shared Reference
obj wiretransfer $n merchant 1000
remort
Remort a character (rebirth at higher tier). → Shared Reference
obj remort $n
Variable Commands
Commands for storing and retrieving data. Variables are how objects remember state across trigger firings.
varset
Set a variable on the object. → Shared Reference
obj varset kill_count 0
obj varset last_user $n
varclear
Delete a variable from the object. → Shared Reference
obj varclear kill_count
varseton
Set a variable on a different entity. → Shared Reference
obj varseton $n has_artifact 1
varclearon
Clear a variable on a different entity. → Shared Reference
obj varclearon $n has_artifact
varcopy
Copy a variable value to a new variable name. → Shared Reference
obj varcopy old_count new_count
persist
Mark a variable for persistent storage (survives reboots). → Shared Reference
obj persist kill_count
varsave
Mark a variable for persistent save. → Shared Reference
obj varsave kill_count
varsaveon
Mark a variable on a different entity for persistent save. → Shared Reference
obj varsaveon $n quest_progress
Script Control
Commands that control script execution flow.
call
Call another script as a subroutine. → Shared Reference
obj call 3001 argument1 argument2
xcall
Execute a cross-entity script call. → Shared Reference
obj xcall $(victim) 3005
delay
Set a delay timer (in pulses). When the delay expires, the delay trigger fires. → Shared Reference
obj delay 10
cancel
Cancel a previously set delay timer. → Shared Reference
obj cancel
queue
Schedule a command for delayed execution. → Shared Reference
obj queue 5 obj echo {RBoom!{x
dequeue
Remove all queued events owned by this entity. → Shared Reference
obj dequeue
input
Queue a command as if the entity typed it. → Shared Reference
obj input drop all
inputstring
Send raw input as if typed. → Shared Reference
obj inputstring say Hello there!
scriptwait
Pause script execution for a duration. In object programs, this pauses the current script and resumes after the specified time.
obj scriptwait 3
obj echo {xThree seconds later...{x
settimer
Set a countdown timer on a token or entity. → Shared Reference
obj settimer bomb_timer 30
Script Entity Management
Commands for managing script attachment and memory.
attach
Attach a script program to an entity. → Shared Reference
obj attach 3005
detach
Detach a script program from an entity. → Shared Reference
obj detach 3005
remember
Store a target in the object’s memory for later reference. → Shared Reference
obj remember $n
forget
Clear the object’s remembered target. → Shared Reference
obj forget
Force Commands
Commands that make characters perform actions.
force
Force a character to execute a command. → Shared Reference
obj force $n say I cannot resist the artifact's command!
gforce
Force all members of a group to execute a command. → Shared Reference
obj gforce $n stand
vforce
Force all instances of a mobile vnum to execute a command. → Shared Reference
obj vforce 3001 say The artifact commands us!
group
Force grouping operations. → Shared Reference
obj group $n add $(victim)
ungroup
Force a character to leave their group. → Shared Reference
obj ungroup $n
Quest Commands
Commands for the quest system.
questaccept
Accept or begin a quest for a player. → Shared Reference
obj questaccept $n 100
questcomplete
Mark a quest as completed. → Shared Reference
obj questcomplete $n 100
questcancel
Cancel an active quest. → Shared Reference
obj questcancel $n 100
questgenerate
Procedurally generate a random quest. → Shared Reference
obj questgenerate $n
questpartcustom
Add a custom quest objective. → Shared Reference
obj questpartcustom 100 Speak the ancient password
questpartgetitem
Add a “collect item” quest objective. → Shared Reference
obj questpartgetitem 100 3050 5
questpartgoto
Add a “go to location” quest objective. → Shared Reference
obj questpartgoto 100 3001
questpartrescue
Add a “rescue NPC” quest objective. → Shared Reference
obj questpartrescue 100 3010
questpartslay
Add a “kill mob” quest objective. → Shared Reference
obj questpartslay 100 3005 10
questscroll
Create a quest scroll item for a player. → Shared Reference
obj questscroll $n 100
questsetindex
Set the quest step/index. Available on objects, rooms, and tokens.
obj questsetindex 100 3
Dungeon and Instance Commands
Commands for the dungeon and instance systems.
spawndungeon
Create and initialize a new dungeon instance. → Shared Reference
obj spawndungeon 5001
dungeoncommence
Start the dungeon encounter phase. → Shared Reference
obj dungeoncommence 5001
dungeoncomplete
Mark a dungeon as successfully completed. → Shared Reference
obj dungeoncomplete 5001
dungeonfailure
Mark a dungeon as failed. → Shared Reference
obj dungeonfailure 5001
instancecomplete
Mark the current instance as completed. → Shared Reference
obj instancecomplete
instancefailure
Mark the current instance as failed. → Shared Reference
obj instancefailure
checkpoint
Set a dungeon checkpoint for respawning. → Shared Reference
obj checkpoint 5010
sendfloor
Send a dungeon floor transition. → Shared Reference
obj sendfloor 2
showroom
Display a remote room description to a player (scrying). → Shared Reference
obj showroom 3001 $n
specialkey
Create or manage a special key item. → Shared Reference
obj specialkey ancient_key
unlockarea
Unlock a locked area. → Shared Reference
obj unlockarea 50
unlockdungeon
Unlock a dungeon (make it accessible). → Shared Reference
obj unlockdungeon 5001
Event and Reckoning Commands
Commands for the world event system.
event
Interact with the event system. → Shared Reference
obj event start festival
startevent
Start a world or area event. → Shared Reference
obj startevent 200
stopevent
Stop an active event. → Shared Reference
obj stopevent 200
phaseevent
Advance an event to the next phase. → Shared Reference
obj phaseevent 200
reckoning
Trigger a reckoning world event. → Shared Reference
obj reckoning start
startreckoning
Start a reckoning event sequence. → Shared Reference
obj startreckoning 1
stopreckoning
Stop an active reckoning event. → Shared Reference
obj stopreckoning 1
Lock Commands
Commands for managing locks on doors and containers.
lockadd
Add a lock to a door or container. → Shared Reference
obj lockadd north 3050
lockremove
Remove a lock from a door or container. → Shared Reference
obj lockremove north
Exit and Link Commands
link
Create or modify an exit link between rooms. → Shared Reference
obj link north 3002
Appearance and Social
addstache
Add a cosmetic customization to a character. → Shared Reference
obj addstache $n handlebar
remstache
Remove a cosmetic customization. → Shared Reference
obj remstache $n handlebar
fade
Gradually make the object disappear (fade-out effect). → Shared Reference
obj fade 5
Player Management
mute
Prevent a character from speaking. → Shared Reference
obj mute $n
unmute
Unmute a previously muted character. → Shared Reference
obj unmute $n
saveplayer
Force-save a player character to disk. → Shared Reference
obj saveplayer $n
showcommand
Display command output to a player without executing. → Shared Reference
obj showcommand $n score
Religion and Organization
churchannouncetheft
Announce a theft to church members. → Shared Reference
obj churchannouncetheft temple The sacred relic has been stolen!
shop
Interact with the shop system. → Shared Reference
obj shop list $n
Catalyst and Alchemy
usecatalyst
Consume a catalyst and check requirements. → Shared Reference
obj usecatalyst 3080
Wilderness
Commands for the wilderness map system.
treasuremap
Create or interact with a treasure map. → Shared Reference
obj treasuremap $n 150 200
wildernessmap
Generate or modify a wilderness map overlay. → Shared Reference
obj wildernessmap generate
wildsanchor
Set an anchor point on the wilderness map. → Shared Reference
obj wildsanchor 150 200
wildsoverlay
Apply a tile overlay to the wilderness map. → Shared Reference
obj wildsoverlay add forest 150 200
wildstile
Set or modify a wilderness tile. → Shared Reference
obj wildstile 150 200 mountain
wildsvlink
Create a virtual link between wilderness and interior rooms. → Shared Reference
obj wildsvlink 150,200 3001
Command Quick Reference
Alphabetical list of all 162 object program commands:
| Command | Category | Command | Category |
|---|---|---|---|
addaffect | Affects | mload | Creation |
addaffectname | Affects | mute | Player Mgmt |
addaura | Affects | oload | Creation |
addspell | Skills | otransfer | Movement |
addstache | Appearance | pageat | Output |
addtrait | Skills | peace | Combat |
adjusttrait | Skills | persist | Variables |
alteraffect | Affects | phaseevent | Events |
alterexit | Modification | prompt | Output |
altermob | Modification | purge | Creation |
alterobj | Modification | questaccept | Quest |
alterroom | Modification | questcancel | Quest |
applytoxin | Affects | questcomplete | Quest |
asound | Output | questgenerate | Quest |
at | Movement | questpartcustom | Quest |
attach | Script Mgmt | questpartgetitem | Quest |
award | Resources | questpartgoto | Quest |
breathe | Combat | questpartrescue | Quest |
call | Script Control | questpartslay | Quest |
cancel | Script Control | questscroll | Quest |
cast | Combat | questsetindex | Quest |
chargebank | Resources | queue | Script Control |
checkpoint | Dungeon | rawkill | Combat |
churchannouncetheft | Religion | reckoning | Events |
cloneroom | Creation | remember | Script Mgmt |
condition | Modification | remort | Resources |
crier | Output | remove | Creation |
damage | Combat | removetrait | Skills |
deduct | Resources | remspell | Skills |
delay | Script Control | remstache | Appearance |
dequeue | Script Control | resetdice | Modification |
destroyroom | Creation | resetroom | Creation |
detach | Script Mgmt | restore | Resources |
dungeoncommence | Dungeon | revokeclass | Skills |
dungeoncomplete | Dungeon | revokeskill | Skills |
dungeonfailure | Dungeon | revokesong | Skills |
echo | Output | saveplayer | Player Mgmt |
echoaround | Output | scriptwait | Script Control |
echoat | Output | selfdestruct | Creation |
echobattlespam | Output | sendfloor | Dungeon |
echochurch | Output | setclass | Modification |
echogrouparound | Output | setclasslevel | Modification |
echogroupat | Output | setposition | Modification |
echoleadaround | Output | setrace | Modification |
echoleadat | Output | setrecall | Modification |
echonotvict | Output | settimer | Script Control |
echoroom | Output | settrait | Skills |
ed | Modification | shop | Religion |
entercombat | Combat | showcommand | Player Mgmt |
event | Events | showroom | Dungeon |
fade | Appearance | skimprove | Skills |
fixaffects | Affects | spawndungeon | Dungeon |
flee | Combat | specialkey | Dungeon |
force | Force | startcombat | Combat |
forget | Script Mgmt | startevent | Events |
gdamage | Combat | startreckoning | Events |
gecho | Output | stopcombat | Combat |
gforce | Force | stopevent | Events |
goto | Movement | stopreckoning | Events |
grantclass | Skills | stringmob | Modification |
grantskill | Skills | stringobj | Modification |
grantsong | Skills | stripaffect | Affects |
group | Force | stripaffectname | Affects |
gtransfer | Movement | transfer | Movement |
input | Script Control | treasuremap | Wilderness |
inputstring | Script Control | ungroup | Force |
instancecomplete | Dungeon | unlockarea | Dungeon |
instancefailure | Dungeon | unlockdungeon | Dungeon |
interrupt | Combat | unmute | Player Mgmt |
junk | Creation | usecatalyst | Alchemy |
link | Exits | varclear | Variables |
loadinstanced | Creation | varclearon | Variables |
lockadd | Locks | varcopy | Variables |
lockremove | Locks | varsave | Variables |
mail | Output | varsaveon | Variables |
makeinstanced | Creation | varset | Variables |
wildernessmap | Wilderness | varseton | Variables |
wildsanchor | Wilderness | vforce | Force |
wildsoverlay | Wilderness | wiretransfer | Resources |
wildstile | Wilderness | wiznet | Output |
wildsvlink | Wilderness | xcall | Script Control |
zecho | Output | zot | Combat |