mirror of
https://github.com/evennia/evennia.git
synced 2026-03-31 21:17:17 +02:00
Python MUD/MUX/MUSH/MU* development system
http://www.evennia.com
baseddjangoenginegame-developmentgame-enginegamedevhacktoberfestmoomudmultiplayermushmuxpythontexttext-basedtext-based-adventuretwistedwebclientwebserver
The main command to use is @lock, which accept three types of locks at the moment, and three types of keys: Locks: DefaultLock, UseLock, EnterLock Keys: ObjectIDs, Groups, Permissions This offers the most useful functionality - stopping people from picking up things, blocking exits and stopping anyone from using an object. If the attributes lock_msg, use_lock_msg and enter_lock_msg are defined on the locked object, these will be used as error messages instead of a standard one (so "the door is locked" instead of "you cannot traverse that exit"). Behind the scenes, there is a new module, src/locks.py that defines Keys and Locks. A Locks object is a collection of Lock types. This is stored in the LOCKS attribute on objects. Each Lock contains a set of Keys that might be of mixed type and which the player must match in order to pass the lock. /Griatch |
||
|---|---|---|
| docs | ||
| game | ||
| src | ||
| tools | ||
| __init__.py | ||
| ABOUT | ||
| CODING_STYLE | ||
| INSTALL | ||
| LICENSE | ||
| README | ||
| TODO | ||
About Evennia ------------- Evennia is a proof-of-concept MU* server that aims to provide a functional base for developers. While there are quite a few codebases that do the same (and very well in many cases), we are taking a unique spin on the problem. Some of our flagship features include (or will one day include): * Extensive web integration. * The ability to build/administer through a web browser. * Shared accounts between the website and the game. * Optional web-based character creation. * Extremely easy-to-manipulate SQL database back-end via Django (djangoproject.com) * Simple and easily extensible design. * Very granular permissions. Individual and group based. The essential points here are the web integration and the SQL backing via Django. The Django framework has database abstraction abilities that give us many features free, such as: * The codebase will run transparently on MySQL, SQLite, or Postgres * At the time of this document's writing, our SQL-backed application here contains 0 lines of SQL. Django's database abstraction layer is absolutely simple yet very powerful. * For any model we outline for the server's use, we have the ability to more or less automatically generate a web-based admin interface for it with two lines of code. This lets you Create, Update, or Delete entries. * On the web-based side of things, features such as automatic form validation, abstraction of sessions and cookies, and access to whatever game data you desire are all attractive. Support and Development ----------------------- Since we're so early in development, we really can't hope to offer much support. However, if you'd like to report bugs, make suggestions, or help with the code work, visit either or both of the following links: * Evennia Webpage http://evennia.com * Evennia Code Page http://code.evennia.com