mirror of
https://github.com/evennia/evennia.git
synced 2026-03-18 05:46:31 +01:00
780 lines
No EOL
69 KiB
HTML
780 lines
No EOL
69 KiB
HTML
<!doctype html>
|
||
<html>
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<meta http-equiv="X-UA-Compatible" content="chrome=1">
|
||
<title>Evennia Devblog</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>
|
||
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
|
||
<!--[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>
|
||
<div class="buttonsection">
|
||
<li>
|
||
<a class="buttons" href="../index.html">Back to Evennia</a>
|
||
</li>
|
||
<li>
|
||
<a class="buttons devblog-calendar-tooltip"
|
||
href="https://github.com/evennia/evennia/discussions">Discuss (GitHub)</a>
|
||
</li>
|
||
</div>
|
||
</ul>
|
||
</div>
|
||
<div class="devblog-calendar">
|
||
<ul>
|
||
|
||
<li>
|
||
<a href="2023.html"> 2023 (1)
|
||
|
||
<ul class="devblog-calendar-closed">
|
||
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text"> Evennia 2.0.0 released today</span>
|
||
<a href="2023.html#2023-06-10-evennia-2.0.0-released-today"> Evennia 2.0.0 rel...
|
||
</a>
|
||
</li>
|
||
|
||
</ul>
|
||
</a>
|
||
</li>
|
||
|
||
<li>
|
||
<a href="2022.html"> 2022 (4)
|
||
|
||
<ul class="devblog-calendar-closed">
|
||
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text"> Evennia 1.0 released!</span>
|
||
<a href="2022.html#2022-12-03-evennia-1.0-released!"> Evennia 1.0 relea...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text"> Project plans and Splitting a Setting in two</span>
|
||
<a href="2022.html#2022-09-17-project-plans-and-splitting-a-setting-in-two"> Project plans and...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text"> Tutorial-writing and Attributes galore</span>
|
||
<a href="2022.html#2022-07-05-tutorial-writing-and-attributes-galore"> Tutorial-writing ...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text"> Into 2022 with thanks and plans</span>
|
||
<a href="2022.html#2022-01-06-into-2022-with-thanks-and-plans"> Into 2022 with th...
|
||
</a>
|
||
</li>
|
||
|
||
</ul>
|
||
</a>
|
||
</li>
|
||
|
||
<li>
|
||
<a href="2021.html"> 2021 (3)
|
||
|
||
<ul class="devblog-calendar-closed">
|
||
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text"> The blog moved!</span>
|
||
<a href="2021.html#2021-11-18-the-blog-moved!"> The blog moved!
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text"> Where do I begin?</span>
|
||
<a href="2021.html#2021-03-21-where-do-i-begin?"> Where do I begin?
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text"> Happy New Years 2021!</span>
|
||
<a href="2021.html#2021-01-01-happy-new-years-2021!"> Happy New Years 2...
|
||
</a>
|
||
</li>
|
||
|
||
</ul>
|
||
</a>
|
||
</li>
|
||
|
||
<li>
|
||
<a href="2020.html"> 2020 (3)
|
||
|
||
<ul class="devblog-calendar-closed">
|
||
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Evennia 0.9.5 released</span>
|
||
<a href="2020.html#2020-11-14-evennia-0.9.5-released">Evennia 0.9.5 rele...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">On using Markdown with Sphinx</span>
|
||
<a href="2020.html#2020-10-20-on-using-markdown-with-sphinx">On using Markdown ...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Spring updates while trying to stay healthy</span>
|
||
<a href="2020.html#2020-04-14-spring-updates-while-trying-to-stay-healthy">Spring updates whi...
|
||
</a>
|
||
</li>
|
||
|
||
</ul>
|
||
</a>
|
||
</li>
|
||
|
||
<li>
|
||
<a href="2019.html"> 2019 (7)
|
||
|
||
<ul class="devblog-calendar-closed">
|
||
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Blackifying and fixing bugs</span>
|
||
<a href="2019.html#2019-09-30-blackifying-and-fixing-bugs">Blackifying and fi...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Evennia 0.9 released</span>
|
||
<a href="2019.html#2019-07-04-evennia-0.9-released">Evennia 0.9 released
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Creating Evscaperoom Part 2</span>
|
||
<a href="2019.html#2019-05-26-creating-evscaperoom-part-2">Creating Evscapero...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Creating Evscaperoom Part 1</span>
|
||
<a href="2019.html#2019-05-18-creating-evscaperoom-part-1">Creating Evscapero...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Podcast about Evennia</span>
|
||
<a href="2019.html#2019-05-09-podcast-about-evennia">Podcast about Even...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Steaming on Eating Jam</span>
|
||
<a href="2019.html#2019-04-25-steaming-on-eating-jam">Steaming on Eating...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Into 2019</span>
|
||
<a href="2019.html#2019-01-02-into-2019">Into 2019
|
||
</a>
|
||
</li>
|
||
|
||
</ul>
|
||
</a>
|
||
</li>
|
||
|
||
<li>
|
||
<a href="2018.html"> 2018 (4)
|
||
|
||
<ul class="devblog-calendar-closed">
|
||
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Evennia 0.8 released</span>
|
||
<a href="2018.html#2018-09-30-evennia-0.8-released">Evennia 0.8 released
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Inline building in upcoming Evennia 0.8</span>
|
||
<a href="2018.html#2018-08-18-inline-building-in-upcoming-evennia-0.8">Inline building in...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Kicking into gear from a distance</span>
|
||
<a href="2018.html#2018-01-27-kicking-into-gear-from-a-distance">Kicking into gear ...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text"> New year, new stuff</span>
|
||
<a href="2018.html#2018-01-05-new-year,-new-stuff"> New year, new stuff
|
||
</a>
|
||
</li>
|
||
|
||
</ul>
|
||
</a>
|
||
</li>
|
||
|
||
<li>
|
||
<a href="2017.html"> 2017 (6)
|
||
|
||
<ul class="devblog-calendar-closed">
|
||
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Getting a MUD RP scene going</span>
|
||
<a href="2017.html#2017-10-29-getting-a-mud-rp-scene-going">Getting a MUD RP s...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Evennia in Hacktobergest 2017</span>
|
||
<a href="2017.html#2017-10-01-evennia-in-hacktobergest-2017">Evennia in Hacktob...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Evennia 0.7 released</span>
|
||
<a href="2017.html#2017-09-20-evennia-0.7-released">Evennia 0.7 released
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text"> Renaming Django's Auth User and App</span>
|
||
<a href="2017.html#2017-08-25-renaming-django's-auth-user-and-app"> Renaming Django's...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">The luxury of a creative community</span>
|
||
<a href="2017.html#2017-04-23-the-luxury-of-a-creative-community">The luxury of a cr...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">News items from the new year</span>
|
||
<a href="2017.html#2017-02-05-news-items-from-the-new-year">News items from th...
|
||
</a>
|
||
</li>
|
||
|
||
</ul>
|
||
</a>
|
||
</li>
|
||
|
||
<li>
|
||
<a href="2016.html"> 2016 (7)
|
||
|
||
<ul class="devblog-calendar-closed">
|
||
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Birthday retrospective</span>
|
||
<a href="2016.html#2016-11-30-birthday-retrospective">Birthday retrospec...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Season of fixes</span>
|
||
<a href="2016.html#2016-10-13-season-of-fixes">Season of fixes
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">The art of sharing nicks and descriptions</span>
|
||
<a href="2016.html#2016-07-01-the-art-of-sharing-nicks-and-descriptions">The art of sharing...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Evennia in Pictures</span>
|
||
<a href="2016.html#2016-05-31-evennia-in-pictures">Evennia in Pictures
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text"> Evennia 0.6!</span>
|
||
<a href="2016.html#2016-05-22-evennia-0.6!"> Evennia 0.6!
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Technical stuff happening</span>
|
||
<a href="2016.html#2016-03-24-technical-stuff-happening">Technical stuff ha...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Climbing up Branches</span>
|
||
<a href="2016.html#2016-02-14-climbing-up-branches">Climbing up Branches
|
||
</a>
|
||
</li>
|
||
|
||
</ul>
|
||
</a>
|
||
</li>
|
||
|
||
<li>
|
||
<a href="2015.html"> 2015 (13)
|
||
|
||
<ul class="devblog-calendar-closed">
|
||
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">A summary of a year</span>
|
||
<a href="2015.html#2015-12-17-a-summary-of-a-year">A summary of a year
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text"> MIT uses Evennia!</span>
|
||
<a href="2015.html#2015-11-12-mit-uses-evennia!"> MIT uses Evennia!
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Illustrations and soaps</span>
|
||
<a href="2015.html#2015-10-11-illustrations-and-soaps">Illustrations and ...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Emoting System</span>
|
||
<a href="2015.html#2015-10-02-emoting-system">Emoting System
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text"> Evennia on `podcast.__init__`</span>
|
||
<a href="2015.html#2015-09-29-evennia-on-`podcast.__init__`"> Evennia on `podca...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Pushing through a straw</span>
|
||
<a href="2015.html#2015-09-24-pushing-through-a-straw">Pushing through a ...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">A wagon load of post summer updates</span>
|
||
<a href="2015.html#2015-08-27-a-wagon-load-of-post-summer-updates">A wagon load of po...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text"> Announcing the Evennia example-game project "Ainneve"</span>
|
||
<a href="2015.html#2015-06-22-announcing-the-evennia-example-game-project-"ainneve""> Announcing the Ev...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text"> Need your help!</span>
|
||
<a href="2015.html#2015-06-15-need-your-help!"> Need your help!
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text"> Dreaming big?</span>
|
||
<a href="2015.html#2015-05-30-dreaming-big?"> Dreaming big?
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Things goin on</span>
|
||
<a href="2015.html#2015-05-11-things-goin-on">Things goin on
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Documenting Python without Sphinx</span>
|
||
<a href="2015.html#2015-05-09-documenting-python-without-sphinx">Documenting Python...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Building Django proxies and MUD libraries</span>
|
||
<a href="2015.html#2015-01-19-building-django-proxies-and-mud-libraries">Building Django pr...
|
||
</a>
|
||
</li>
|
||
|
||
</ul>
|
||
</a>
|
||
</li>
|
||
|
||
<li>
|
||
<a href="2014.html"> 2014 (7)
|
||
|
||
<ul class="devblog-calendar-closed">
|
||
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Slowly moving through town</span>
|
||
<a href="2014.html#2014-10-02-slowly-moving-through-town">Slowly moving thro...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Dance my puppets</span>
|
||
<a href="2014.html#2014-08-04-dance-my-puppets">Dance my puppets
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Webby stuff</span>
|
||
<a href="2014.html#2014-06-30-webby-stuff">Webby stuff
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Bringing back Python memory</span>
|
||
<a href="2014.html#2014-06-15-bringing-back-python-memory">Bringing back Pyth...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text"> Imaginary Realities volume 6, issue 1</span>
|
||
<a href="2014.html#2014-05-16-imaginary-realities-volume-6,-issue-1"> Imaginary Realiti...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Moving from Google Code to Github</span>
|
||
<a href="2014.html#2014-02-08-moving-from-google-code-to-github">Moving from Google...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Looking forwards and backwards</span>
|
||
<a href="2014.html#2014-01-24-looking-forwards-and-backwards">Looking forwards a...
|
||
</a>
|
||
</li>
|
||
|
||
</ul>
|
||
</a>
|
||
</li>
|
||
|
||
<li>
|
||
<a href="2013.html"> 2013 (5)
|
||
|
||
<ul class="devblog-calendar-open">
|
||
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Imaginary Realities is back</span>
|
||
<a href="2013.html#2013-12-16-imaginary-realities-is-back">Imaginary Realitie...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Out of band mergings</span>
|
||
<a href="2013.html#2013-11-28-out-of-band-mergings">Out of band mergings
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">A list of Evennia topics</span>
|
||
<a href="2013.html#2013-10-22-a-list-of-evennia-topics">A list of Evennia ...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">One to Many</span>
|
||
<a href="2013.html#2013-05-13-one-to-many">One to Many
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Churning behind the scenes</span>
|
||
<a href="2013.html#2013-01-29-churning-behind-the-scenes">Churning behind th...
|
||
</a>
|
||
</li>
|
||
|
||
</ul>
|
||
</a>
|
||
</li>
|
||
|
||
<li>
|
||
<a href="2012.html"> 2012 (13)
|
||
|
||
<ul class="devblog-calendar-closed">
|
||
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Evennia changes to BSD license</span>
|
||
<a href="2012.html#2012-10-28-evennia-changes-to-bsd-license">Evennia changes to...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Community interest</span>
|
||
<a href="2012.html#2012-10-05-community-interest">Community interest
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Combining Twisted and Django</span>
|
||
<a href="2012.html#2012-08-31-combining-twisted-and-django">Combining Twisted ...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Taking command</span>
|
||
<a href="2012.html#2012-08-16-taking-command">Taking command
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Extending time and details</span>
|
||
<a href="2012.html#2012-06-26-extending-time-and-details">Extending time and...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Coding from the inside</span>
|
||
<a href="2012.html#2012-06-11-coding-from-the-inside">Coding from the in...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text"> Dummies doing (even more) dummy things</span>
|
||
<a href="2012.html#2012-05-30-dummies-doing-(even-more)-dummy-things"> Dummies doing (ev...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Shortcuts to goodness</span>
|
||
<a href="2012.html#2012-03-26-shortcuts-to-goodness">Shortcuts to goodn...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Dummies doing dummy things</span>
|
||
<a href="2012.html#2012-02-22-dummies-doing-dummy-things">Dummies doing dumm...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">Commands and you</span>
|
||
<a href="2012.html#2012-02-17-commands-and-you">Commands and you
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text"> Such a small thing ...</span>
|
||
<a href="2012.html#2012-02-15-such-a-small-thing-..."> Such a small thin...
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text">About this dev blog</span>
|
||
<a href="2012.html#2012-02-05-about-this-dev-blog">About this dev blog
|
||
</a>
|
||
</li>
|
||
|
||
<li class="devblog-calendar-post devblog-calendar-tooltip">
|
||
<span class="devblog-calendar-tooltip-text"> Evennia's open bottlenecks</span>
|
||
<a href="2012.html#2012-02-05-evennia's-open-bottlenecks"> Evennia's open bo...
|
||
</a>
|
||
</li>
|
||
|
||
</ul>
|
||
</a>
|
||
</li>
|
||
|
||
</ul>
|
||
</div>
|
||
</header>
|
||
<section>
|
||
<div class="devblog-rss">
|
||
<a href="feed.rss">
|
||
<img src="images/rss-icon.png" alt="RSS feed">
|
||
</a>
|
||
</div>
|
||
<h1>
|
||
<a name="evennia-mudmu-creation-system" class="anchor" href="#evennia-mudmu-creation-system">
|
||
<span class="octicon octicon-link">
|
||
</span>
|
||
</a>Evennia Dev Blog<div class="sponsor">
|
||
<div class="sponsor-column">
|
||
<a href="https://www.patreon.com/griatch">
|
||
<img class="patreon" src="../images/evennia_patreon_100x100.png" alt="Patreon">
|
||
</a>
|
||
<form action="https://www.paypal.com/donate" method="post" target="_top">
|
||
<input type="hidden" name="hosted_button_id" value="YQDKB8JT2GXLS" />
|
||
<input type="image" src="https://www.paypalobjects.com/en_US/SE/i/btn/btn_donateCC_LG.gif" border="0" name="submit" title="PayPal - The safer, easier way to pay online!" alt="Donate with PayPal button" />
|
||
<img alt="" border="0" src="https://www.paypal.com/en_SE/i/scr/pixel.gif" width="1" height="1" />
|
||
</form>
|
||
</div>
|
||
</h1>
|
||
|
||
<em>Various Evennia- and MUD-related musings by Griatch, the Evennia lead developer.</em>
|
||
|
||
|
||
|
||
<div class="blog_post">
|
||
<h1 id=2013-12-16-imaginary-realities-is-back>
|
||
Imaginary Realities is back
|
||
<a class="devblog-headerlink" href="2013.html#2013-12-16-imaginary-realities-is-back" title="Permalink to this blog post">¶</a>
|
||
<div class="devblog-title-date">- December 16, 2013</div>
|
||
</h1>
|
||
<p><a href="http://imaginary-realities.disinterest.org/pics/logo_new.gif"><img src="https://lh4.googleusercontent.com/proxy/CEw97RBnw7FiR_z7fqlj9ELtwgDU-knwkyiW8Ybjg9tjTUAerwxQ0-omUEwpZAz4jKP1ozmnCLHPBh1A4QxrGZzYD3DEFfIdTReu0TTPJwo=s0-d" alt="" /></a>The <em><a href="http://imaginary-realities.disinterest.org/">Imaginariy Realities</a></em> webzine was the place to go to for MUD game design articles in the late 90's. Last released in 2001, its articles are still worth the read for any game designers today.</p>
|
||
<p>But guess what - this venerable ezine has now returned! You can find the new issue <a href="http://journal.imaginary-realities.com/volume-05/issue-01/index.html">here</a>.</p>
|
||
<p>I think this is a good community initiative worthy of support. I contibuted two articles myself (one of which is about Evennia) and would like to thank the staff/editors who took their work very seriously and did sterling work on getting everything in shape.</p>
|
||
<p>Thanks also to the other authors who penned some very interesting articles. Great job guys!</p>
|
||
<p>My impressions:</p>
|
||
<ul>
|
||
<li>KaVir elaborates in <em>A modern interface for a modern MUD</em> on the advantages of not sticking with an outdated UI just for the sake of it. Adding a more accessible presentation is not that hard and won't ruin your game but rather help it. Whereas I have read his argument about this before, this is a good summary to take to heart. Evennia's javascript web client is currently mainly a telnet clone; there's a lot of things we could offer to make it easier for users to offer a more graphical presentation.</li>
|
||
<li>Molly O’Hara, in her <em>A well built zone is a work of art,</em> outlines a list of useful things to keep in mind when designing a zone. While some of these vary with game type, others do not. I like the suggestion that scripting bugs need not be the most important aspect - syntactic errors can be handled by automated means as long as the design aspect of the zone is solid.</li>
|
||
<li><em>A journey through Paradice</em> [sic] is Matthew Chaplain's entry on designing a dice-roller using the telnet protocol. Some interesting things here, including making creative use of the telnet character-mode and VT100 control sequences. This ties a bit into KaVir's article, in that the interface used for "modern" MUDs are often voefully missing out on a lot of possibilities.</li>
|
||
<li><em>Blind accessibility: challenges and opportunities</em> by Matthew “Chaos” Sheahan, is based on interviews with a blind mudder and a game admin having implemented lots of support for seeing-impaired players. This was a really interesting article since I've been pondering myself what could be done from Evennia's core side to help players support players using screen readers. Most seem to be down to configuration options though, and avoiding making colour or ascii art the only sources of information. These are all things Evennia devs implement depend on their game. We may offer some good contribs to build from though.</li>
|
||
<li><em>Evennia: an introduction -</em> this is mine. It not-so-briefly sums up stuff about Evennia and the more important systems it relies on.</li>
|
||
<li><em>Getting a roleplaying scene going</em> - another article of mine. This is a light-hearted list of tropes for getting a RP scene going on an RP-mud. It's based on things I've tried or seen myself in play.</li>
|
||
<li>Darcie “Natilena” Laur laments on the often opaque newbie guides in <em>Introducing new players and redesigning MUD School.</em> It describes how she tested (and improved) her own MUD's starter area while testing it on her kids. It made me think more on having Evennia offering easier ways to dump text logs in all sorts of situations. And we find out that kids have the attention span of zombie squirrels - something new learned every day!</li>
|
||
<li>Finally, <em>The Hunger Game, or how I learned to break the ship from the bottle</em> is Michael “Drakkos” Heron's epic about his journey developing and releasing his zombie-survival MUD <em>Epitaph.</em> Drakkos is a frequent blogger on the MUD-planet feed, so I knew some of this already, but it's a good read and contains some useful warnings and things-to-think-of for those thinking of starting their own MUD project. We already give some of the same advice (albeit with fewer words) in our wiki but I'm seriously considering linking to Drakkos post from there as well - it gives a more comprehensive treatment and offers a real-world example of the long road to a released game.</li>
|
||
</ul>
|
||
<p>The issue also contains a call to help recover old MUDing resources that has gone offline since their heyday. Having browsed through the classic MUD-dev mailing list archives I can agree they are not quite as easily searchable as could be hoped. It would also be great to see the old comment posts tied to the articles of the old <em>Imaginary Realities</em> articles, if those could be found somehow.</p>
|
||
<p>This is actually one thing which I do miss with this first Imaginary Realities issue - a way for readers to comment on the articles. This would likely mean a much higher level of complexity and work though, so I can certainly see why it's not there - using the existing MUD forums is probably enough for now.</p>
|
||
<p>Anyway, I'm happy to see this thing getting off on a good start. I'm already looking forward to the next issue!</p>
|
||
|
||
<footer class="devblog-footer">
|
||
<span class="devblog-copyrights">
|
||
|
||
</span>
|
||
<a class="devblog-to-toplink" href="2013.html#2013-12-16-imaginary-realities-is-back" title="Link to top of post">⇬(top)</a>
|
||
</footer>
|
||
</div>
|
||
|
||
<hr>
|
||
<div class="blog_post">
|
||
<h1 id=2013-11-28-out-of-band-mergings>
|
||
Out of band mergings
|
||
<a class="devblog-headerlink" href="2013.html#2013-11-28-out-of-band-mergings" title="Permalink to this blog post">¶</a>
|
||
<div class="devblog-title-date">- November 28, 2013</div>
|
||
</h1>
|
||
<p><a href="https://4.bp.blogspot.com/-RcZi6McnLtc/Upd90AEpnTI/AAAAAAAACHA/ALGE2Ompi6k/s1600/FS-0609-Merger-1.jpg"><img src="https://4.bp.blogspot.com/-RcZi6McnLtc/Upd90AEpnTI/AAAAAAAACHA/ALGE2Ompi6k/s200/FS-0609-Merger-1.jpg" alt="" /></a></p>
|
||
<p>As of today the development repository of Evennia, which has been brewing for a few months now, merged into the main repository. This update grew from one experimental feature to a relatively big update in the end. Together with the "many-character-per-player" feature released earlier, this update covers all the stuff I talked about in my <a href="http://evennia.blogspot.se/2013/01/churning-behind-scenes.html">Behind the Scenes</a> blog post.</p>
|
||
<ul>
|
||
<li>Evennia's webserver was moved from <em>Portal</em> to <em>Server</em>. This moves all database-modifying operations into the same process and neatly avoids race conditions when modifying a game world from various interfaces.</li>
|
||
<li>The OOB (Out Of Band) handler was implemented. This goes together with a protocol for telnet sub-negotiations according to the <a href="http://tintin.sourceforge.net/msdp/">MSDP</a> specification. The handler allows on-demand reporting whenever database fields update. It also offers regular polling of properties if needed. A user can customize which oob commands are available to the client and write whatever handlers are needed for their particular game. In the future we'll also add support for GMCP, but the lack of a central, official specification is off-putting (if there is a central document besides accounts of how individual games chose to implement GMCP, please let me know). For our own included web client, we'll likely just use JSON straight off.</li>
|
||
<li>Our channel system is now <em>typeclassed</em>. If you are not familiar with Evennia this won't mean much to you - In short it means developers will be able to customize their channel system much easier than in the past since a channel can be treated pretty much like any Python class (thanks go to user Kelketek who actually did the implementation).</li>
|
||
<li>We added the concept of <em>Tagging</em>, as a more generalized version of our old <em>Alias</em> system. Tagging is just what it sounds like - it allows you to tag all your objects in order to group them and easily (and efficiently) find them later. Tagging offers a powerful way to create what other code bases refer to as "zones". There are many other possible uses though, such as having effects appear only in certainly tagged rooms, indicate which Characters have joined a particular guild and so on.</li>
|
||
<li>Behind the scenes there were a lot of cleanups, along with minor API changes mentioned on the mailing list. A slew of older Issues were also fixed with this merge.</li>
|
||
</ul>
|
||
<p>Now, in the immediate future we'll be working on updating the documentation. Evennia prides itself with having a large body of documentation and this update comes with small changes to various existing systems. There are also a few bigger new features (such as OOB). No doubt the near future will also see other issues popping up as more people try things out.</p>
|
||
<h4>Imaginary Realities update</h4>
|
||
<p>Apparently the reboot of <em>Imaginary Realities</em> (to which I contribute two articles) has been <a href="http://posted-stuff.blogspot.se/2013/11/imaginary-realities-update_15.html">pushed forward a week or two</a>. Reason being, apparently, to finalize the actual presentation of the content. I already signed off on the last editorial fixes way before deadline, so I guess it's just to wait and see what comes of it!</p>
|
||
|
||
<footer class="devblog-footer">
|
||
<span class="devblog-copyrights">
|
||
|
||
</span>
|
||
<a class="devblog-to-toplink" href="2013.html#2013-11-28-out-of-band-mergings" title="Link to top of post">⇬(top)</a>
|
||
</footer>
|
||
</div>
|
||
|
||
<hr>
|
||
<div class="blog_post">
|
||
<h1 id=2013-10-22-a-list-of-evennia-topics>
|
||
A list of Evennia topics
|
||
<a class="devblog-headerlink" href="2013.html#2013-10-22-a-list-of-evennia-topics" title="Permalink to this blog post">¶</a>
|
||
<div class="devblog-title-date">- October 22, 2013</div>
|
||
</h1>
|
||
<p><a href="https://4.bp.blogspot.com/-WXVxxb06XBA/UmZ_5TSzmrI/AAAAAAAACE4/NbBAjohOi6E/s1600/building-blocks.jpg"><img src="https://4.bp.blogspot.com/-WXVxxb06XBA/UmZ_5TSzmrI/AAAAAAAACE4/NbBAjohOi6E/s1600/building-blocks.jpg" alt="" /></a></p>
|
||
<p>Some Evennia updates.</p>
|
||
<h2>Development</h2>
|
||
<p>Lots of work has been happening in the <a href="http://code.google.com/r/griatch-evennia-dev/source/list">dev-clone</a> of Evennia over the last few months.<br />
|
||
As alluded to in the last blog, the main work has been to move Evennia's webserver component into the <em>Server</em>-half of Evennia for various reasons, the most obvious one to make sure that all database writes happen in the same process, avoiding race conditions. But this move lead to a rework of the cache system, which in turn lead to me having to finalize the plans for how Out-of-Band protocols should be implemented server-side. And once that was finalized, OOB was pretty much implemented anyway. As part of making sure OOB trackers were updated correctly at all times meant reworking some of the ways data is stored ... So one thing led to another making this a bigger update than originally planned.</p>
|
||
<p>I plan to make a more detailed post to the <a href="https://groups.google.com/forum/#%21forum/evennia">mailing list</a> soon with more technical details of the (relatively minor) API changes existing users should expect. The merging of the clone into the main repo is still a little way off, but adventurous users have already started testing things.</p>
|
||
<h2>Google Code</h2>
|
||
<p>I like Google Code. It's easy to manage and maintain, it has a good wiki and Issue system, not to mention that it allows the use of Mercurial. But in the beginning of September, suddenly all links to our user's clone repositories were <em>gone</em> from the front of the project page_._ Not only that, creating new clones just didn't work anymore.<br />
|
||
Now any site can have bugs, and we made an <a href="http://code.google.com/p/support/issues/detail?id=30989">issue</a> for it (other projects were similarly affected). But nothing happened for the longest time - at least two months given that we didn't report it right away. Just recently the functionality came back but there is no confirmation or comments from Google (our issue is not even closed).<br />
|
||
That such a fundamental feature can go unheeded for so long is disturbing to me, driving home the fact that Google is certainly not putting much priority in their code hosting.</p>
|
||
<h2>Community</h2>
|
||
<p>Some furious activity in the <a href="http://webchat.freenode.net/?channels=evennia&uio=MT1mYWxzZSY5PXRydWUmMTE9MTk1JjEyPXRydWUbb">IRC chat</a> lately, with new people dropping in to chat and ask about Evennia. For example, an enthusiastic new user learned not only about Evennia but also Python for the first time. It was a lot of fun to see him go from having <em>no programming experience except</em> <em>mush softcode</em> to doing advanced Evennia system implementations in the course of a week and offering good feedback on new features in two. Good show! The freedom you get upgrading from something like softcode to Evennia's use of a full modern programming language was seemingly quite eye-opening.</p>
|
||
<p>Other discussions have concerned the policies around using clones/branches for development as well as the benefits of some other hosting solution. Nothing has been decided on this. There is however now also an official GitHub mirror of Evennia's main repo to be found <a href="https://github.com/Evennia/evennia">here</a>.</p>
|
||
<h2>Imaginary Realities</h2>
|
||
<p>The deadline for entering articles for the <em>Imaginary Realities</em> web zine <a href="http://posted-stuff.blogspot.se/2013/10/imaginary-realities-update.html">reboot</a> has passed. It's a good initiative to bring this back - the <a href="http://en.wikipedia.org/wiki/Imaginary_Realities">original (archived) webzine</a> remains a useful mud-creation resource to this day. I entered two articles, one about Evennia and another about general mud-roleplaying. It will be fun to see how it comes out, apparently the first issue will appear Nov 13</p>
|
||
|
||
<footer class="devblog-footer">
|
||
<span class="devblog-copyrights">
|
||
|
||
</span>
|
||
<a class="devblog-to-toplink" href="2013.html#2013-10-22-a-list-of-evennia-topics" title="Link to top of post">⇬(top)</a>
|
||
</footer>
|
||
</div>
|
||
|
||
<hr>
|
||
<div class="blog_post">
|
||
<h1 id=2013-05-13-one-to-many>
|
||
One to Many
|
||
<a class="devblog-headerlink" href="2013.html#2013-05-13-one-to-many" title="Permalink to this blog post">¶</a>
|
||
<div class="devblog-title-date">- May 13, 2013</div>
|
||
</h1>
|
||
<p><a href="https://4.bp.blogspot.com/-M_YNUYvWuiw/UZCNa-U24lI/AAAAAAAAB2o/6wZzFjpCSvk/s1600/one-in-many.jpg"><img src="https://4.bp.blogspot.com/-M_YNUYvWuiw/UZCNa-U24lI/AAAAAAAAB2o/6wZzFjpCSvk/s320/one-in-many.jpg" alt="" /></a></p>
|
||
<p>As of yesterday, I completed and merged the first of the three upcoming Evennia features I mentioned in my <a href="http://evennia.blogspot.se/2013/01/churning-behind-scenes.html">Churning Behind the Scenes</a> blog post: the "Multiple Characters per Player" feature.</p>
|
||
<p>Evennia makes a strict division between <em>Player</em> (this is an object storing login-info and represents the person connecting to the game) and their <em>Character</em> (their representation in-game; Characters are just Objects with some nice defaults). When you log into the game with a client, a <em>Session</em> tracks that particular connection.</p>
|
||
<p>Previously the Player class would normally only handle one Session at a time. This made for an easy implementation and this behavior is quite familiar to users of many other mud code bases. There was an option to allow more than one Session, but each were then treated equally: all Sessions would see the same returns and the same in-game entities were controlled by all (and giving the quit command from one would kick all out).</p>
|
||
<p>What changed now is that the Player class will manage each Session separately, without interfering with other Sessions connected to the same Player. Each Session can be connected, through the Player, to an individual Character. So multiple Characters could in principle be controlled simultaneously by the same real-world player using different open mud clients. This gives a lot of flexibility for games supporting multi-play but also as a nice way to transparently puppet temporary extras in heavy roleplaying games.</p>
|
||
<p>It is still possible to force Evennia to accept only one Session per Player just like before, but this is now an option, not a limitation. And even in hardcore one-character-at-a-time roleplaying games it is nice for builders and admins to be able to have separate staff or npc characters without needing a separate account for each.</p>
|
||
<p>This feature took a lot more work than I anticipated - it consitutes a lot of under-the-hood changes. But it also gave me ample opportunity to fix and clean up older systems and fix bugs. The outcome is more consistency and standardization in several places. There are plenty of other noteworthy changes that were made along the way in the dev branch along with some API changes users should be aware of.<br />
|
||
So if you are an Evennia game developer you should peek at the more detailed mailing list <a href="https://groups.google.com/forum/#%21topic/evennia/EjAW8S2N86I">announcement</a> on what has changed. The wiki is not updated yet, that will come soon.</p>
|
||
<p>Now onward to the next feature!</p>
|
||
|
||
<footer class="devblog-footer">
|
||
<span class="devblog-copyrights">
|
||
|
||
</span>
|
||
<a class="devblog-to-toplink" href="2013.html#2013-05-13-one-to-many" title="Link to top of post">⇬(top)</a>
|
||
</footer>
|
||
</div>
|
||
|
||
<hr>
|
||
<div class="blog_post">
|
||
<h1 id=2013-01-29-churning-behind-the-scenes>
|
||
Churning behind the scenes
|
||
<a class="devblog-headerlink" href="2013.html#2013-01-29-churning-behind-the-scenes" title="Permalink to this blog post">¶</a>
|
||
<div class="devblog-title-date">- January 29, 2013</div>
|
||
</h1>
|
||
<p><a href="https://1.bp.blogspot.com/-kMcLTjgmpa0/UQfBh7FsD7I/AAAAAAAABys/uGhAhtwG22s/s1600/red_curtain_hand3crop_category.jpg"><img src="https://1.bp.blogspot.com/-kMcLTjgmpa0/UQfBh7FsD7I/AAAAAAAABys/uGhAhtwG22s/s200/red_curtain_hand3crop_category.jpg" alt="" /></a></p>
|
||
<p>At the moment there are several Evennia projects churning along behind the scenes, none of which I've yet gotten to the point of pushing into a finished state. Apart from bug fixes and other minor things happening, these are the main updates in the pipeline at the moment.</p>
|
||
<h3>Multiple Characters per Player/Session</h3>
|
||
<p>Evennia has for a long time enforced a clean separation between the <em>Player</em> and the <em>Character.</em> It's a much appreciated feature among our users. The <em>Player</em> is "you", the human playing the game. It knows your password, eventual user profile etc. The <em>Character</em> is your avatar in-game. This setup makes it easy for a Player to have many characters, and to "puppet" characters - all you need to do is "disconnect" the Player object from the Character object, then connect to another Character object (assuming you are allowed to puppet that object, obviously). So far so good.</p>
|
||
<p>What Evennia currently <em>doesn't</em> support is being logged in with <em>different</em> client sessions to the <em>same</em> Player/account while puppeting <em>multiple</em> characters <em>at the same time.</em> Currently multiple client sessions may log into the same Player account, but they will then all just act as separate views of the same action (all will see the same output, you can send commands from each but they will end up with the same Character).</p>
|
||
<p>Allowing each session to control a separate Character suggests changing the way the session is tracked by the player and Character. This turns out to be more work than I originally envisioned when seeing the feature request in the issue tracker. But if my plan works out it will indeed become quite easy to use Evennia to both allow multi-play or not as you please, without having to remember separate passwords for each Character/account.</p>
|
||
<h3>Webserver change to Server level</h3>
|
||
<p>Evennia consists of two main processes, the <em>Portal</em> and the <em>Server.</em> The details of those were covered in an earlier blog post <a href="http://evennia.blogspot.se/2012/08/combining-twisted-and-django.html">here</a>. Evennia comes with a Twisted-based webserver which is currently operating on the <em>Portal</em> level. This has the advantage of not being affected by Server-reboots. The drawback is however that being in a different process from the main Server, accessing the database and notably its server-side caches becomes a problem - changing the database from the Portal side does not automatically update the caches on the Server side, telling them that the database has changed. Also writing to the database from two processes may introduce race conditions.</p>
|
||
<p>For our simple default setup (like a website just listing some database statistics) this is not a terrible problem, but as more users start to use Evennia, there is a growing interest in more advanced uses of the webserver. Several developers want to use the webserver to build game-related rich website experiences for their games - online character generation, tie-in forums and things like that. Out-of-sync caches then becomes a real concern.</p>
|
||
<p>One way around this could be to implement a framework (such as memcached) for homogenizing caches across all Evennia processes. After lots of IRC discussions I'm going with what seems to be the more elegant and clean solution though - moving the webserver into the <em>Server</em> process altogether. The <em>Portal</em> side will thus only hold a web proxy and the webclient protocol. This way all database access will happen from the same process simplifying things a lot. It will make it much easier for users to use django to create rich web experiences without having to worry about pesky behind the scenes things like caches and the like.</p>
|
||
<h3>Out-of-band communication</h3>
|
||
<p>This has been "brewing" for quite some time, I've been strangely unmotivated to finalize it. Out of band communication means the MUD client can send and receive data to/from the server directly, without the player having to necessesarily enter an active command or see any immediate effect. This could be things like updating a health bar in a client-side GUI, redirect text to a specific client window but also potentially more advanced stuff. I created the Evennia-side oob-handler over Christmas; it allows for client sessions to "sign up" for "listening" to attribute updates, do scheduled checks and so on. It's already in the codebase but is not activated nor tested yet.</p>
|
||
<p>On the protocol side (for serializing data to the client) I have a MSDP implementation ready for telnet subnegotiation, it should be simple to add also GMCP once everything is tested. A JSON-based side channel for the webclient is already in place since a long time if I remember correctly, it just need to be connected to the server-side oob-handler once that's finished.</p>
|
||
|
||
<footer class="devblog-footer">
|
||
<span class="devblog-copyrights">
|
||
|
||
</span>
|
||
<a class="devblog-to-toplink" href="2013.html#2013-01-29-churning-behind-the-scenes" title="Link to top of post">⇬(top)</a>
|
||
</footer>
|
||
</div>
|
||
|
||
</section>
|
||
</body>
|
||
</html> |