a simple combination of a server and client, communicating over tcp 4004
this is designed to run on a server, where users ssh in to use the client
design: each room has a json with info about it host on server, connect using ssh, client.pl runs in screen/tmux
perl -MCPAN -e shell
install Term::ANSIColor File::Util Digest::SHA Switch::Plain Data::Dumper JSON IO::Async::Stream IO::Async::Loop IO::Async::Timer::Periodic
sudo aptitude install libtermkey-dev
In the utility
folder you can find image_motd.pl
which combines an image and a textual motd file
usage: image_motd.pl image.png ../motd.txt > new_motd.txt
For the base image you have to use this palette:
red: #cc6666
, green: #b5bd68
, yellow: #f0c674
, blue: #81a2be
, magenta: #b294bb
, cyan: #8abeb7
.
black, transparent and any other color will turn into your terminals background color.
there will be a list ( .. ) of directions you can go. to move, enter .direction (tab completion works)
current commands are:
/list
gives a list of all users in the same room as you
/look
looks around and shows all objects in your room
/info
displays the same info as when you enter a room
/tp id
teleports you to a room by it's id
/dig
digs out a new room, and returns it's id
/edit
edits the properties of the room you're in
/new
creates a new object
/edit_o
edits the properties of an object
/me
action irc style /me
/who
(user) displays info about yourself or a user
/desc
change your own description
You can list a property by not giving any further arguments:
/edit {name, objects, desc, map}
Or change them:
name: /edit name New Room Name
desc: /edit desc New Room Description
add an object from the room: /edit objects add id shortname
del an object from the room: /edit objects del shortname
add a movement direction: /edit map add direction roomid
del a movement direction: /edit map del direction
Basically the same as for Rooms, but you can only set name
and desc
, and you use /edit_o
For object interaction you use !action object (extra parameters)
when you /look all objects display their actions, and their short name with [brackets]
For example:
/look
Mushroom Pillows [cushion] #1
nice and soft
actions: sit
you can then !sit cushion
!read whiteboard
returns it's contents
!write whiteboard
line text writes text at line of the whiteboard
!erase whiteboard
line erases that line from the whiteboard
You can /who user
to get information about them
You can view yourself with /who
, and change your own description with /desc