Skip to content

whitehorse-io/encarnia

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

encarnia_mud_code_base

A "code base" for the Python MUD engine Encarnia.

  1. Aside from this readme, I am unlikely to provide any help/support with the code base. You can ask people in the Evennia IRC/Discord chats for help but they will be unable to help you with anything Encarnia specific.

  2. Encarnia was a learning experience for me so things are often coded in a variety of ways, usually following along various publicly available Evennia tutorials. This is both good and bad for anyone who wants to use my code base. It's good because you can read the existing Evennia tutorials and basically see what I did to follow along with them, so it's a form of documentation. It's bad because you cannot change everything in the code base by following a single method, something that I've found non-professional coders like to do when possible because it reduces the number of things they have to learn. With these things said, a patient person could likely learn a lot about Evennia by reading my code and the tutorials together. If you actually decide that running a MUD is the sort of long-term commitment you're interested in (I don't seem to be very interested in it!) then figuring these things out is something you would need to do sooner or later on anyway. To help you get started, character generation uses Evennia's chargen room type and the commands can be found in Encarnia/commands/command.py. There is an Evennia tutorial on the chargen room type. Melee.py and Fae_Magic.py use things from various command tutorials. The “game rules system” tutorial was also heavily used (stuff in the world folder) and the menu system for the shops was also used, also found in the encarnia/world folder.

  3. Since this was a learning experience for me, lots of hard #dbref numbers are used in the code and since Encarnia's source code available here on github leaves out the database (so that people can't find passwords etc. from the example MUD) this also means that you will get a lot of errors referring to unfound rooms when things like character death happen, or your character generation won't quite work because the room numbers are different. The answers to these issues include changing the code to either point to your correct rooms that you built yourself or writing code that will search for the appropriate room type, which is harder to program and requires more system resources but also might avoid database issues.

  4. To get the game up and running, do a normal Evennia install, then replace your /mygame folder with /Encarnia and replace /evennia with the /evennia from Encarnia if you want. Make sure your database file is not deleted when you do this or problems will arise; it's also possible to flush and make new databases without migrating I think. Note that replacing Evennia's core files is not recommended by the creators of Evennia because it prevents you from being able to take advantage of updates to the core game engine, however if you want things available in the Encarnia base game such as auto-formatted channels and other features I've lost track of, you will need to either use Encarnia's version of the core evennia files or you will need to learn how to override the core evennia files and then copy that functionality from Encarnia's existing evennia files into your overrides, something that I never learned how to do since it was far easier to just change the core game engine files once I figured out which code was changing which things. You could also rewrite Evennia's core files yourself like I did, which is a risky business that will annoy people in the Evennia chat if you later on find yourself having to ask them for help regarding files they told people not to change.

About

A MUD code base for the Python game engine Evennia.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published