mirror of
https://github.com/evennia/evennia.git
synced 2026-03-19 14:26:30 +01:00
227 lines
10 KiB
HTML
227 lines
10 KiB
HTML
<!doctype html>
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta http-equiv="X-UA-Compatible" content="chrome=1">
|
|
<title>Evennia Python MUD/MU creation system</title>
|
|
|
|
<link rel="shortcut icon" type="image/x-icon" href="images/favicon.ico">
|
|
<link rel="stylesheet" href="stylesheets/styles.css">
|
|
<link rel="stylesheet" href="stylesheets/pygment_trac.css">
|
|
<link href='https://fonts.googleapis.com/css?family=Open Sans' rel='stylesheet'>
|
|
<link href='https://fonts.googleapis.com/css?family=Arvo' rel='stylesheet'>
|
|
<script src="javascripts/scale.fix.js"></script>
|
|
<script src="javascripts/newsfeed.js"></script>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
|
|
<meta name="description" content="Evennia is a modern Python library and server for creating text-based
|
|
multi-player games and virtual worlds (also known as MUD, MUSH, MU, MUX, MUCK, etc).
|
|
While Evennia handles all the necessary things every online game needs, like database and
|
|
networking, you create the game of your dreams by writing normal Python modules.">
|
|
<!--[if lt IE 9]>
|
|
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
|
<![endif]-->
|
|
</head>
|
|
<body>
|
|
<div class="wrapper">
|
|
<header>
|
|
<p>
|
|
<img class="logo" src="images/evennia_logo.png" alt="Evennia logo">
|
|
</p>
|
|
<h1 class="header">Evennia</h1>
|
|
<p class="header header-text">The Python MU* Development Library</p>
|
|
|
|
<div class="linksection">
|
|
<ul>
|
|
<li><a class="buttons github" href="https://github.com/evennia/evennia">View On GitHub</a></li>
|
|
<li class="documentation"><a class="buttons" href="docs/latest/index.html">Documentation</a></li>
|
|
<li><a class="buttons" href="http://webchat.freenode.net/?channels=evennia&uio=MT1mYWxzZSY5PXRydWUmMTE9MTk1JjEyPXRydWUbb">IRC channel</a></li>
|
|
<li><a class="buttons" href="https://discord.gg/NecFePw">Discord channel</a></li>
|
|
<li><a class="buttons" href="https://groups.google.com/forum/#%21forum/evennia">Forum</a></li>
|
|
<li><a class="buttons" href="http://evennia.blogspot.com/">Dev Blog</a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="newsfeed">
|
|
<h3>Latest events</h3>
|
|
<div id="latest-events" class="eventslist">
|
|
<div class="events-fetch">
|
|
Fetching events ...
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
</header>
|
|
<section>
|
|
<h1>
|
|
<a name="evennia-mudmu-creation-system" class="anchor" href="#evennia-mudmu-creation-system"><span class="octicon octicon-link"></span></a>Evennia MUD/MU* Creation System</h1>
|
|
|
|
<p><em>Evennia</em> is an open-source Python-based framework, codebase and
|
|
server for creating text-based multiplayer online games (a MUD/MU* etc) using modern
|
|
technologies and tools.</p>
|
|
|
|
<h2>
|
|
<a name="installation" class="anchor"
|
|
href="#installation"><span class="octicon
|
|
octicon-link"></span></a>Live demo</h2>
|
|
|
|
<img class="img floatright" src="images/book.png" alt="Book">
|
|
<p>
|
|
<a href="https://demo.evennia.com">https://demo.evennia.com</a> sports an
|
|
almost vanilla install of a default Evennia server. It has the tutorial world
|
|
and a few extra thing to experience and try out. Use it to get a taste for
|
|
what's possible. You can also ask questions in our support channel directly
|
|
from inside the demo!</p>
|
|
|
|
<h2>
|
|
<a name="installation" class="anchor"
|
|
href="#installation"><span class="octicon
|
|
octicon-link"></span></a>Installation</h2>
|
|
|
|
Evennia is installed by cloning and installing its repo from
|
|
<a href="https://github.com/evennia/evennia">github</a>. The
|
|
<a href="docs/latest/Getting-Started.html">Getting Started</a> instructions will
|
|
help you get things set up. Once installed, creating your new game is quick:
|
|
|
|
<div class="codeblock">
|
|
<code>
|
|
evennia --init mygame<br>
|
|
cd mygame<br>
|
|
evennia start
|
|
</code>
|
|
</div>
|
|
|
|
You can now browse your new game's website and play locally in your browser at
|
|
<a href="http://127.0.0.1:4001">http://localhost:4001</a>. You can also
|
|
connect to it with a traditional third-party MUD client on <code>localhost, port 4000</code>.
|
|
|
|
<img class="img screenshot" src="images/evennia_screenshot.jpg" alt="Screenshot">
|
|
<div class="screenshot-caption">
|
|
An example of a default Evennia install (hover to enlarge). Top left:
|
|
Running server just started. Top right: Default website served by
|
|
Evennia. Bottom left: Game open in included HTML5 webclient. Bottom right:
|
|
Game open in traditional telnet client
|
|
(<a href="https://tintin.mudhalla.net/">tintin++</a>).
|
|
</div>
|
|
|
|
<h2><a name="overview" class="anchor"
|
|
href="#overview"><span class="octicon
|
|
octicon-link"></span></a>Overview</h2>
|
|
|
|
<img class="img floatleft" src="images/inkwell.png" alt="Inkwell">
|
|
|
|
<p>Evennia aims to take care of all the gritty networking, database-handling
|
|
and other boring details that all MU*s games need. The idea is to allow you,
|
|
the game developer, to concentrate solely on designing the game systems. We try
|
|
to get out of your way as much as possible.</p>
|
|
|
|
<p>Evennia is game-agnostic. So we have no opinions on what style of play or
|
|
genre of game you should make. We don't prescribe any skills, classes, races or
|
|
other things that will be specific for your game anyway. Indeed, people have
|
|
used Evennia for non-MU*s as well - it's very suitable for wild experimenting
|
|
and fast prototyping!</p>
|
|
|
|
<p>Some game concepts and systems are more common than others though. For these
|
|
we offer a growing library of optional code-snippets and bigger game systems
|
|
you can build from, copy or be inspired by. These are mostly contributed by our
|
|
very friendly developer community.</p>
|
|
|
|
<p>Finally, we have tried to make Evennia's code as readable and
|
|
well-documented as possible, should you need to dive in. We have also
|
|
spent a lot of time on our <a href="docs/latest/index.html">extensive documentation</a>,
|
|
all in order to to help you get productive in Evennia with less fuss.</p>
|
|
|
|
|
|
<h2><a name="default-content" class="anchor"
|
|
href="#default-content"><span class="octicon
|
|
octicon-link"></span></a>Default Content</h2>
|
|
|
|
<p>Whereas your Evennia game starts out with no game-specific content, it's not
|
|
empty! Out of the box you get a 'talker'-style game: You can create rooms and
|
|
items, pick up stuff, talk to people, walk around, do light roleplay with
|
|
emotes ... all the base things you expect.</p>
|
|
|
|
<p>Here are some of the default resources and tools available out of the box:</p>
|
|
|
|
<ul>
|
|
<li>Classes for persistent objects, exits, rooms and characters.</li>
|
|
<li>Separation between character and their accounts (multi-character play, if desired)</li>
|
|
<li>In-game channels and chats (including linking to external chat channels)
|
|
<li>About 90 commands for administration, building, chatting, basic roleplay etc</li>
|
|
<li>Available commands and even their function can vary with circumstance and game state</li>
|
|
<li>Delays, tickers, timers (fully asynchronous, no threading so no risk of race conditions)</li>
|
|
<li>In-game menu-creation system</li>
|
|
<li>Prototype system, for making variations of objects (like monsters or items) without new classes</li>
|
|
<li>Lock and access mini-language for very flexible access control</li>
|
|
<li>Tutorial-world with examples</li>
|
|
<li>Easy storage of custom data on all game objects</li>
|
|
<li>Search, creation, and a large number of coding utilities</li>
|
|
<li>A <code>contrib/</code> folder with optional full systems and shorter snippets</li>
|
|
</ul>
|
|
|
|
<img class="img floatright" src="images/dice.png" alt="Dice">
|
|
|
|
<p>Coding in Evennia is primarily done by normal Python modules, making the
|
|
codebase extremely flexible - you don't tweak the library itself, you just
|
|
override the defaults and tell Evennia where to find your changes.</p>
|
|
|
|
<p>You use Python classes to represent your objects,
|
|
scripts and players. The database layer is mostly abstracted away but if you
|
|
want you can also leverage the full power of Django's mature ORM.</p>
|
|
|
|
<h2><a name="some server features" class="anchor"
|
|
href="#some-server-features"><span class="octicon
|
|
octicon-link"></span></a>Some server features</h2>
|
|
|
|
<ul>
|
|
<li>HTML5 webclient (websocket with ajax/comet fallback)</li>
|
|
<li>Telnet, Telnet+SSL, SSH</li>
|
|
<li>Website via own webserver (HTTP, HTTPS with external proxy)</li>
|
|
<li>Game channels links to IRC, Grapevine</li>
|
|
<li>RSS feed, Twitter feed (with snippet from docs)</li>
|
|
<li>Different databases supported via Django: Sqlite3, PostgreSQL, MySQL ...</li>
|
|
<li>MUD-specific telnet protocols supported:</li>
|
|
<ul>
|
|
<li>GMCP and MSDP out-of-band protocols</li>
|
|
<li>MXP (inline links only)</li>
|
|
<li>ANSI and XTerm256 color support</li>
|
|
<li>MSSP status for websites tracking MUDs</li>
|
|
<li>NAWS, TTYPE, MCCP etc ...</li>
|
|
</ul>
|
|
<li>Based on Django and Twisted, both well-supported and hardened Python projects</i>
|
|
<li>Asynchronous, event-driven architecture without risk of race-conditions</i>
|
|
<li>Reload server without disconnecting players</li>
|
|
<li>Extendable protocols for adding custom integrations</li>
|
|
</ul>
|
|
|
|
|
|
<img class="img floatleft" src="images/ships.png" alt="Ships">
|
|
|
|
<h2>
|
|
<a name="more-information" class="anchor" href="#more-information"><span
|
|
class="octicon octicon-link"></span></a>More Information</h2>
|
|
|
|
<p>If this piqued your interest, there is a <a
|
|
href="docs/latest/Evennia-Introduction.html">lengthier
|
|
introduction</a> to Evennia to read.</p>
|
|
|
|
|
|
<p>To learn how to get your hands on the code base, the <a
|
|
href="docs/latest/Getting-Started.html">Getting Started</a> page is the way to go. Otherwise you could browse the <a
|
|
href="docs/latest/index.html">Documentation</a> or why
|
|
not come join the <a href="http://www.evennia.com">Evennia Community</a>.
|
|
Welcome! </p>
|
|
<footer>
|
|
<p><small>
|
|
(Images ©<a href="https://www.deviantart.com/griatch-art">Griatch</a>)
|
|
</small></p>
|
|
|
|
</footer>
|
|
</section>
|
|
</div>
|
|
<!--[if !IE]><script>fixScale(document);</script><![endif]-->
|
|
<script type="text/javascript">
|
|
fetchGithubData();
|
|
</script>
|
|
</body>
|
|
</html>
|