- ToastStunt Programmer's Manual
- Lambda MOO Programmer's Manual [Updated]
- Learn MOO Programming Videos
- Yib's Pet Rock
- LambdaMOO Programming Tutorial (Steven Owens)
- Colin's Way Easy intro Guide to MOO Programming
- Winding Duck
- MOO Progrmaming Tips
- Hacking LambdaMOO Server Nodak
- Lambda MOO Background Information Nodak
- Lambda MOO Programming Nodak
- How to set up a LambdaMOO server on GenesisMud
- Getting Started With moo.el
The primary purpose of this repository is to aggregate and update the existing LambdaMOO Programming Resources that exist. The core of the work done here has been to convert the original MOO Programmer's Manual written by Pavel Curtis to Markdown as well as HTML5 w/ Bootstrap and to update each section of the manual with additional information.
There are a number of other files included in this repository. Many are scraped from various websites that continue to exist, somehow, to this day. Most are at least 15 years old. We have included them here for posterity, since losing them would be tragic.
git clone firstname.lastname@example.org:SevenEcks/the-new-moo-programming-guide.git
We use the html2md library to convert HTML files to markdown on the command line. It can be installed using NPM.
npm install -g to-markdown-cli
html2md -i ./foo.html -o out.md
This is an updated Programmer's Manual for ToastStunt (the most cutting edge fork of LambdaMOO). It is a fork of the updated LambdaMOO Manual (see below) which incorpoates the original manual and Todd Sundsted's Stunt updates with regular updates as new features are released for ToastStunt.
This manual now lives in its own repository.
This LambdaMOO Programmer's Manual is an updated an expanded version of the LambdaMOO Programmer's Manual originally written by Pavel Curtis. Some pretty extensive work has gone into formatting it, and updating the content.
This file is important, and thus, it is available online without having to interact with this GitHub at all: MOO Programmers Manual
To use this guide you simply need to open MOO Programmer's Manual. This version of the MOO Programmer's Manual lacks much of the formatting that the HTML5 version below has. It is great for quick perusal, but the HTML version is superior.
To access this file locally you simply need clone the repository and open /tutorials/src/moo-programmers-manual-updated.html in your web browser.
This is a series of videos on installing and learning MOO programming.
A great first introduction to Lambda MOO programming.
To use this guide you simply need to open Yib's Pet Rock.
To access this file locally you simply need clone the repository and open /tutorials/src/yibs-pet-rock-non-html5.html in your web browser.
This is an excellent guide, the most complete one I've seen aside from the original Lambda MOO Programmer's Manual. It was written, as the title states, by Steven J. Owens. This guide was updated 03/07/18 after Steven sent over a fresh link to an updated version of the guide.
To use this guide you simply need to open LambdaMOO Programming Tutorial by Steven Owens.
To access this file locally you simply need clone the repository and open /tutorials/src/dark-sleep-lambdamoo-programming-tutorial-non-html5.html in your web browser.
A good introduction to MOO programming. This guide gets you through all the basics.
To use this guide you simply need to open Colin's Way Easy Intro Guide to MOO Programming.
To access this file locally you simply need clone the repository and open /tutorials/src/way-easy-moo-programming-guide-non-html5.html in your web browser.
Winding Duck MOO Programmer's Tutorial walks you through, step by step, how to create some simple code, then make it progressively more complicated.
To use this guide you simply need to open Winding Duck.
To access this file locally you simply need clone the repository and open /tutorials/src/winding-duck-non-html5.html in your web browser.
This looks like it was a guide created for a specific MOO but it has some tips that those new to MOO might find useful.
To use this guide you simply need to open MOO Programming Tips.
To access this file locally you simply need clone the repository and open /tutorials/src/zompost-moo-help-non-html5.html in your web browser.
This document walks you through what happens when a connection is made to the Lambda MOO server.
To use this guide you simply need to open Hacking LambdaMOO Server.
To access this file locally you simply need clone the repository and open /tutorials/src/hacking-lambda-moo-server-non-html5.html in your web browser.
This document contains background information on what LambdaMOO is in relation to other servers and languages.
To use this guide you simply need to open Lambda MOO Background.
To access this file locally you simply need clone the repository and open /tutorials/src/lambda-moo-background-non-html5.html in your web browser.
This document contains information on Lambda MOO programming. It is a short and somewaht technical document without much background information.
To use this guide you simply need to open Lambda MOO Nodak Edu.
To access this file locally you simply need clone the repository and open /tutorials/src/lambda-moo-programming-tutorial-nodak-edu-non-html5.html in your web browser.
This is a step by step guide by Puff the Fractal Dragon on how get LambdaMOO running on GenesisMud. However, for anyone looking to get a general idea of how to get LambdaMOO up and running, this tutorial provides a good reference for the process.
To use this guide you simply need to open LambdaMOO on GenesisMud.
To access this file locally you simply need clone the repository and open /tutorials/src/genesismud.txt in your web browser.
This tutorial by Puff the Fractal Dragon walks you through using emacs to edit MOO code. It also includes some generalized emacs information.
To use this guide you simply need to open moo.el.
To access this file locally you simply need clone the repository and open /tutorials/src/mud_el_tutorial.txt in your web browser.
I've been worried that we might lose some server patches to time. Also they aren't really gathered anywhere on GitHub, just on LisDude MOO Resources and random source forge unmainted LambdaMOO repos. So I'm starting to collect them here. If you have any, throw them up in a pull request please!
- FileIO 1.5p3 (Todd Sundsted version)
Since I abuse virtual machines for this sort of thing and don't retain the data from them, I have created a repository, moolite, to reproduce my environment without much typing. It consists of the Stunt server and the latest LambdaCore database from Brendan's LambdaMOO repo. Right now it's a couple of shell scripts, but I will be adding more to it and the quickstart in the README. -- amnsia.
There are some code samples for enterprising developers to check out. It's limited for now, please feel free to put a pull request in for any code you'd like included.
- Local Editing (Edit in a pop up window with @edit using Dome-Client web client)
- Code Scanner (Scan your MOO code for common issues & optimizations)
- $scheduler (Schedule tasks to run in the future)
I've mentioned Dome Client in the updated MOO Programming Guide. It's a web based MOO client that uses NodeJS and web sockets. It works great, connecting to most LambdaMOO servers. You can run your own.
It works great, and if you use the Local Editing code in this repo, you can write an @edit verb which will let you edit code in a nice pop up window. It's excellent.
Please feel free to fork the repo and contribute via pull request. This is a labor of love. Give back to the community. If you want to edit one of the HTML src files, you can do so, but you should run it through html2md (npm install -g to-markdown-cli) and then move the markdown file into the tutorials directory.
Example of creating a new version of the markdown file from the HTML 5 source and moving to the appropriate folder:
html2md -i moo-programmers-manual-updated.html -o moo-programmers-manual-updated.md
mv moo-programmers-manual.md ../
Sindome has been online since 1997. I've been playing it since 2003. I've been developing in MOO since 2005, and a developer on Sindome since 2006. Ours is heavily modified, we have roughly 70-80 players online a lot of time time and dozens of people have developed the game over 20+ year run. We've got a ton of best practices and design patterns that we implement in order to keep the MOO happy and healthy. I've attempted to distill as much of that into this document while at the same time present the document in a more up to date format.
Text based gaming is an important part of our history and our future. No game is more accessible to those with handicaps, for example.
Come visit me on Sindome if you dare :)
-- Brendan / Slither / Fengshui