8sync based live hackable MUD

Christopher Allan Webber 31d4d0fb22 Switch inject-special! to do-inject-special! 8 年之前
build-aux 7b28863815 Basic automake build stuff 8 年之前
mudsync 31d4d0fb22 Switch inject-special! to do-inject-special! 8 年之前
worlds b6d1624629 clerk dismissing, and a "special guest" 8 年之前
.gitignore 7b28863815 Basic automake build stuff 8 年之前
COPYING 5d54195e24 Add GPL 8 年之前
Makefile.am 8555a9f0cd add bricabrac and goblin-hq 8 年之前
README.org f930602775 Moving README to right place 8 年之前
bootstrap.sh 7b28863815 Basic automake build stuff 8 年之前
configure.ac ad04d8b9ef technically we're 0.1.0-pre 8 年之前
env.in 7b28863815 Basic automake build stuff 8 年之前
mudsync.scm 7e11c67b59 basic things, with the ability to pick them up (but not put them down, heh) 8 年之前
pre-inst-env.in 7b28863815 Basic automake build stuff 8 年之前

README.org

Mudsync

Mudsync! What a game. Or is it?

Well it's not really a game, more of a MUD framework. It does contain a couple of small demo worlds. The more interesting of them is the "bricabrac" world. I assume you want to play with it, but I guess we're getting ahead of ourselves.

Installing Mudsync

First of all, you need 8sync from git master (or 8sync 0.2.0, which isn't out yet). Yikes! That's pretty new. Luckily, you can get a tarball here:

http://dustycloud.org/misc/8sync-0.2.0-pre.tar.gz

Do the usual "./configure && make && sudo make install" there.

Next, in mudsync's directory:

source pre-install-env guile -l worlds/bricabrac.scm -e run-game

You can then connect:

telnet 127.0.0.1 8889

Playing

Well, try some things! Assuming you're starting with the bricabrac world, try "ring the bell", and that should give you some information to get started.

Hacking

When you start up the bricabrac demo, it'll by default start up a port you can connect over localhost to if you're using emacs + geiser. Then you can live hack away!

If you change something in bricabrac (or whatever) and want to update the object you changed, you can "live" put in the new and updated version from the game-spec at the REPL with:

(insert! game-spec 'room:lobby) ; to replace the lobby, but of course ; do what's appropriate for your ; object

That's it for now!