This section contains instructions on how to add content to your world, mostly using in-game admin commands.
Not everything is possible via admin commands, and more advanced building may require editing the .yaml
datafiles for a given room, item, mob, etc.
Zones are essentially a collection of rooms and will help to organize your room creation process.
Use the build zone
command to create a new zone:
build zone "My Custom Zone"
This will automatically create an empty room within the zone.
- Retrieve the zone configuration information using:
zone info
- Set auto-scaling for MOBs (optional): MOBs, or "mobile objects," are characters or creatures in the game world that can interact with players. Auto-scaling adjusts their difficulty based on the specified range, making gameplay more balanced and engaging.
Example:
zone set autoscale [lowend] [highend]
zone set autoscale 5 10
- Move to the desired zone using the
room [room #]
command (e.g.,room 1
). - Set properties for the room:
- To set a title:
room set title "A Castle Drawbridge"
- To set a description:
room set description "You see a drawbridge."
- To set idle messages:
room set idlemessages "The wind blows.;The sand falls."
- To set a title:
- Verify or retrieve room information using:
room info
Make sure to note down the room number, as it will help you navigate back to it quickly later.
- Create an exit linking rooms:
Example:
room exit [exit_name] [room_id]
room exit west 159
- Rename an existing exit (non-numeric names only):
Example:
room exit edit [exit_name] [new_exit_name]
room exit edit climb jump
- Toggle the secrecy of an exit:
Example:
room secretexit [exit_name]
room secretexit south
To add more detail to your environment, you may choose to give certain nouns their own description.
- Add or overwrite nouns in the room:
Example:
room noun [name] [description]
room noun chair "A wooden chair with intricate carvings."
- List all nouns in the room using:
room nouns
- Use the
mob create
command to start the interactive tutorial for creating a new MOB. Follow the prompts to define the name, description, and other properties. - Once created, spawn the NPC into a room with
Replace
mob spawn [name]
[name]
with the name of your NPC to place it in the current room. - Once you've tested your mob, be sure to add the mob to the room's YAML configuration file; otherwise, the NPC will be lost during server cleanup processes. For example, in your room YAML file, you can add the following:
spawninfo:
- mobid: 2
message: A town guard emerges from a nearby building.
idlecommands:
- say did you know there's a sign in the Townsquare with a map of the area?
1. To stop the running server for maintenance or to restart it, press Ctrl + C
in the terminal where the server is running. This will safely terminate the process.
2. Type ''go run .'' again to restart the server.
Now that you've got the basics down, it's time to start a fresh world and begin your creation journey.
The _datafiles/world
folder has a folder called empty
inside of it. Make a copy of that folder and give it your own name (i.e. sudo cp -r empty/ myworld/
).
Then edit your _datafiles/config.yaml
FolderDataFiles:
field to point to your new world folder.
To update your local GoMUD installation when new updates are available on the master branch of the GitHub repository:
cd GoMud
git pull origin master
go build
This will fetch the latest updates and rebuild the application.