Initial commit
This commit is contained in:
commit
545df77b62
61
README.md
Normal file
61
README.md
Normal file
@ -0,0 +1,61 @@
|
||||
# Town MOO
|
||||
|
||||
COME JOIN!
|
||||
|
||||
rlwrap -pYellow -S '> ' nc localhost 7777
|
||||
|
||||
Quickstart:
|
||||
|
||||
- `"` to speak, `:` to act.
|
||||
- `look` to look at things
|
||||
- `@describe me as "a funny little fellow"`
|
||||
- `@gender MYGENDER`
|
||||
- `@create $thing named "bowl of spaghetti"`
|
||||
- Check `news` and `help` for LOADS MORE.
|
||||
|
||||
(Note: You'll need to be registered as a programmer in order to create things. I'd like for this to be automatic, but I don't know how to do that, so unfortunately it's manual.)
|
||||
|
||||
## What is this?
|
||||
|
||||
It's a MOO, which is a kind of text-based virtual reality. Part chatroom, part programming, part creative writing. You can create, describe and program your own objects and rooms.
|
||||
|
||||
Specifically, this is ToastStunt, which is a fork of the venerable LambdaMOO. It runs a ToastCore database.
|
||||
|
||||
## What is the future of MOO on tilde.town?
|
||||
|
||||
Who knows?
|
||||
|
||||
- This is an experiment/proof of concept.
|
||||
- I make no promises about the durability of the database. **If you make something and want to keep it, `@dump` it!**
|
||||
- I had to patch the code to get it running, so it might be crashy.
|
||||
|
||||
See <./compiling.md> for tilde.town-specific building steps.
|
||||
|
||||
See <./db_setup.md> for basic database setup.
|
||||
|
||||
## I want to learn more!
|
||||
|
||||
MOOs and MUDs were very popular in the early days of the internet, and thus have a rich history. Many are still alive today.
|
||||
|
||||
Recommended resources:
|
||||
|
||||
- [Yib's Guide to MOOing](http://www.yibco.com/) (2003).
|
||||
- Excellent resource for beginners, originally written about LambdaMOO (of which ToastStunt is a derivative). Most of the commands discussed still work in ToastStunt.
|
||||
- [The New Wizards FAQ](https://jkira.github.io/moo-cows/docs/faqs/new-archwiz-faq.html) (Date unknown, but old).
|
||||
- More technical in nature. Focused on people running their own MOO.
|
||||
- [ToastStunt Programmer's Manual](https://github.com/lisdude/toaststunt-documentation/blob/master/manual/toaststunt-programmers-manual.md) (2023).
|
||||
- Very technical. Useful only if you want to know how things work under the hood.
|
||||
- [A Rape in Cyberspace](http://www.juliandibbell.com/articles/a-rape-in-cyberspace/) (1998).
|
||||
- Chapter one of a book called "My Tiny Life," which is contentious in some circles, but I enjoyed it for its view into MOOing in its heyday. Interesting to see how the early internet responded to trolling.
|
||||
|
||||
See also:
|
||||
|
||||
- [timbran/moor](https://codeberg.org/timbran/moor).
|
||||
- Needs a little more time in the oven, imo, but this is the most promising modern MOO engine I've seen.
|
||||
|
||||
Further information:
|
||||
|
||||
- <https://lisdude.com/moo/>
|
||||
- <https://jkira.github.io/moo-cows/>
|
||||
- [YouTube: SevenEcks](https://www.youtube.com/@SevenEcks/videos). About the only MOO resource on YT.
|
||||
- [Reddit: MUD](https://old.reddit.com/r/MUD/).
|
11
compiling.md
Normal file
11
compiling.md
Normal file
@ -0,0 +1,11 @@
|
||||
# Compiling ToastStunt on tilde.town
|
||||
|
||||
This was done quite haphazardly, please excuse my vague documentation.
|
||||
|
||||
The process mostly followed the build instructions in the toaststunt readme. Tilde-specific tweaks below:
|
||||
|
||||
- Had to patch the code due to trixie not shipping pcre3 - See git diff
|
||||
- Requires `gperf` binary to calculate hashes.
|
||||
- To avoid having to install stuff on tilde.town, I took this out of the trixie docker container and scp'd it up, lol
|
||||
- After running `cmake ../`, it failed to find `gperf`. I am too st00pid to fix it properly so I just edited the generated `CMakeCache.txt` to have `gperf_EXECUTABLE:FILEPATH=/home/rbiv/toast/gperf`
|
||||
- Toastcore grabbed from https://github.com/lisdude/toastcore/blob/master/toastcore.db at 8742cab8fa73af78250d83c9265262a6be0e8584
|
29
db_setup.md
Normal file
29
db_setup.md
Normal file
@ -0,0 +1,29 @@
|
||||
# Database setup
|
||||
|
||||
## Initial commands
|
||||
|
||||
```
|
||||
@password "INSERTFREAKYPASSWORDHERE"
|
||||
@set $login.welcome_message to {"Welcome to tilde.town toaststunt.", "To connect, use one of:", " create YOURUSERNAME YOURPASSWORD", " connect YOURUSERNAME YOURPASSWORD", " connect guest", "Remember not to reuse passwords from other things!","IRC channel: #moo"}
|
||||
|
||||
# Make objects 127-130
|
||||
@make-guest Red
|
||||
@make-guest Blue
|
||||
@make-guest Green
|
||||
@make-guest Yellow
|
||||
# At least one guest needs an alias "Guest"
|
||||
@addalias "Guest" to #127
|
||||
```
|
||||
|
||||
## Other notes
|
||||
|
||||
- I have not set `$network.active = 1`, since we don't want to actually send mail.
|
||||
- $login.create_enabled is left as true
|
||||
- No other wizards are created
|
||||
|
||||
New users:
|
||||
|
||||
```
|
||||
@make-player USERNAME
|
||||
@programmer USERNAME
|
||||
```
|
10
run.sh
Executable file
10
run.sh
Executable file
@ -0,0 +1,10 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
|
||||
|
||||
MOO_EXECUTABLE="/home/rbiv/toast/toaststunt/build/moo"
|
||||
|
||||
IN_DB="${1?Supply an input database}"
|
||||
OUT_DB="$SCRIPT_DIR/out-$(date +%FT%H-%M-%S).db"
|
||||
|
||||
"$MOO_EXECUTABLE" "$IN_DB" "$OUT_DB" -4 localhost -6 localhost
|
Loading…
x
Reference in New Issue
Block a user