Ei kuvausta
Keelan Lightfoot c9c88ac5a3 Shuffled event buffer around, look after go. 8 vuotta sitten
cmd/funmow debugging stuff 8 vuotta sitten
LICENSE Initial Commit 8 vuotta sitten
README.md Bit of reformatting, debug code removal, and doc update 8 vuotta sitten
client.go Shuffled event buffer around, look after go. 8 vuotta sitten
db.go Squashed a race condition/deadlock buried in client.go 8 vuotta sitten
event_buffer.go Shuffled event buffer around, look after go. 8 vuotta sitten
event_distributor.go Shuffled event buffer around, look after go. 8 vuotta sitten
execution_context.go Shuffled event buffer around, look after go. 8 vuotta sitten
object.go Squashed a race condition/deadlock buried in client.go 8 vuotta sitten

README.md

FunMOW

A multiplayer text based game written in Go, with MU* inspired userspace. Being MU* inspired, FunMOW has support for expanding the world with a set of in-game commands.

Installing

go get github.com/naleek/funmow/...

Running

funmow

Connecting

To fully enjoy FunMOW, use a MU* client. In testing (MacOS), the bog standard telnet command doesn’t support unicode, but netcat (nc) does.

Issues

  • No configuration options with modifying source
  • Authentication and encryption are non-existent
  • Failure modes are often not reported to the player

Commands

Documentation Conventions

{command,alternate}

[optional parameter]

<required parameter>

Database References

All objects in the game have a database reference (dbref), which is a signed integer assigned when the object is created. Dbrefs are incremented sequentially.

Object References

Object references support partial matches, if you see a frog and type get f, you will acquire the frog. An object can be referred to by dbref by using the number preceeded by am octothorpe. This is handy when you end up with two objects with the same name, and only want to get one of them: get #123

Login Commands

These commands are only valid in the authentication phase of gameplay.

{con,connect} <username> <password>
quit

Basic Commands

This is the stuff that you use the most when you’re not building things.

{look,l} [object reference]
{examine,ex} <object reference>
{say,"} <something>
{pose,:} <action>
{inventory,i}
get <object reference>
drop <object reference>
enter <object reference>
leave
quit
@force <object reference>=<command>

Building Commands

A note on exits. Exits support fixed aliases, so that you have the freedom to assign hidden shortcuts to exits. For example, <K>itchen;k;kitchen will display as <K>itchen, but can be used as <K>itchen or k or kitchen. You can use as many aliases as you want on an exit.

@create <name>
@dig <name>[=<in exit>[,<out exit]]
@open <in exit>=<dbref>[,<out exit>]
@desc <object reference>=<description>
@name <object reference>=<name>
@tel <dbref>
@dump <object reference>

Credits

FunMOW was created and is maintained by Keelan Lightfoot.