|
UsingMUXAsAStandard
Using MUX as a StandardEvennia closely resembles MUX2, and its cousins PennMUSH, TinyMUSH, and RhostMUSH to some extent. The idea behind the codebase is to emulate these Tiny derivatives (MUX2, Penn, etc) as much as possible in the user interface and building commands. It is one of our founding beliefs that these codebases have found a great way to do things in terms of building and administration. However, we have taken a completely different stance on how wizards extend and improve their games. We do not have (or want) SoftCode. Evennia largely exists out of dissatisfaction of softcode, which makes an otherwise awesome codebase unsuitable for extremely complex systems and games. All extension is done through Python modules, like the rest of Evennia. See the later Areas Where MUX Differs section for more details. WWMD - What Would MUX Do?When possible, we look at MUX2's implementation before contriving one of our own. There are some cases where this is impossible without sacrificing the usability and utility of the codebase. If you must deviate from MUX2's implementation of something, please make it known on the mailing list. Areas Where MUX DiffersSince we have taken a completely different approach to scripting (ours is external to the game), we can't go with MUX's interpretation of certain in-game things like SoftCode, which also changes a lot of other things. You will find that our equivalent to SoftCode is Python modules beneath evennia/game/gamesrc, which objects are @parent'd to (like MUX). Summarily, there are some things that Evennia does differently than MUX. This is OK, but whenever possible, we want to preserve backwards compatibility when it does not mean sacrificing utility or usability. |