# Welcome to the World of Moss and Puddles This contains the code, based on the [Evennia game engine][1] for running a Multiuser Shared Story Experiment (MUSSE). The details in this document are technical and assume proficiency with a Terminal emulator, e.g. `Terminal` app on MacOS and `PowerShell` on Windows. ## Running Locally These instructions assume that you have [Git][2] installed, and you can `clone`this repository. git clone https://howardabrams.com/git/howard/moss-n-puddles This may be a slight chicken/egg scenario, since I store this file in the repository. To get a local copy running on your system, follow these steps. ### Install Python Follow the [online instructions][3] if you don't have the Python language engine installed. ### Create Virtual Environment (Optional) While optional, you may not want to pollute your global Python environment, so create a "virtual environments" to insure that module libraries don't compete. python -m venv .venv For further details on this, follow these instructions: https://www.geeksforgeeks.org/python/create-virtual-environment-using-venv-python/ ### Activate the Virtual Environment (Optional) Each time you enter this directory folder, `activate` the virtual environment with the command: source .venv/bin/activate To make this easier, you can install [direnv][4]. ### Install Support Modules Install [Evennia][1] and other needed modules with the command: pip install -r requirements.txt ### Configure Database Before you can start this program, you need to initialize the database using the command: evennia migrate Any time you want to re-initialize the database from scratch, type: rm server/evennia.db To make my life easier, I issue: cp server/evennia-reset.db3 server/evennia.db3 ### Start the Server Start the server with the command: evennia start When you first do this, you will need to create a account for the superuser account, we call **The Avatar**. The question about email is optional. You can stop the server using the command: `evennia stop` ### Load the World Log into the system. The easiest way is to use a browser and this URL: http://localhost:4001 You can also use a MUD client connecting to the `localhost` on port 4000. You will need to connect with the user and password you created in the Terminal (described above). At this point, you won't see anything because the database is empty. To populate the world, type the following command in the game (not in your Terminal window): batchcommand version1.ev A lot of text will fly by and it [recreates the world][9] described in [Org-formatted document](moss-n-puddles.org). Those are my *notes* for the game, which I should probably clean up for public consumption. You will probably want to use [Emacs][5] get the most out of that text document. Check out [my map](moss-n-puddles-map.svg) I made (shame this isn't dynamically generated). ## Technical Details Peruse the [directory structure overview][6]. Read the logs in the file: `server/logs/server.log` You might want to look at Evennia's [beginner tutorials][7], or the complete [documentation][8]. [1]: evennia.com [2]: git-scm.com [3]: https://www.python.org/downloads/windows/ [4]: direnv.net [5]: https://www.gnu.org/software/emacs [6]: https://github.com/evennia/evennia/wiki/Directory-Overview#the-game-directory [7]: http://github.com/evennia/evennia/wiki/Tutorials. [8]: https://github.com/evennia/evennia/wiki [9]: moss-n-puddles.html