From dba9a314c0a61d7fcfedced1a96030d37063dfd8 Mon Sep 17 00:00:00 2001 From: Griatch Date: Tue, 5 Jul 2022 20:52:08 +0200 Subject: [PATCH] Final devblog fix --- devblog/2022.html | 18 ++++++++++++------ ...5-Tutorial-writing-and-attributes galore.md | 8 ++++---- devblog/feed.rss | 2 +- 3 files changed, 17 insertions(+), 11 deletions(-) diff --git a/devblog/2022.html b/devblog/2022.html index 4e026ed4c1..19fe2a37dc 100644 --- a/devblog/2022.html +++ b/devblog/2022.html @@ -639,19 +639,25 @@
  • Turn-based combat system (menu based)

    +
  • +
  • -

    Stunts to give you advantages for later turns or give enemies disadvantage for later turns

    +
  • -

    Using items for healing or other effects

    +
  • -

    Fleeing and chasing

    -
  • +
  • diff --git a/devblog/_src/markdown/2022-07-05-Tutorial-writing-and-attributes galore.md b/devblog/_src/markdown/2022-07-05-Tutorial-writing-and-attributes galore.md index 5b65e21236..0460dc16ae 100644 --- a/devblog/_src/markdown/2022-07-05-Tutorial-writing-and-attributes galore.md +++ b/devblog/_src/markdown/2022-07-05-Tutorial-writing-and-attributes galore.md @@ -29,10 +29,10 @@ The tutorial game itself is based on [Knave](https://www.gmbinder.com/share/-LZG - Character generation (Knave chargen is mostly random, but it still showcases Evennia's menu system EvMenu). - Inventory management and equipment (including limited storage as well as items worn or wielded). - Turn-based combat system (menu based) - - Attacking with wielded weapons (or spell rune) - - Stunts to give you advantages for later turns or give enemies disadvantage for later turns - - Using items for healing or other effects - - Fleeing and chasing +- - Attacking with wielded weapons (or spell rune) +- - Stunts to give you advantages for later turns or give enemies disadvantage for later turns +- - Using items for healing or other effects +- - Fleeing and chasing - Alternative Twitch-based combat system (might be a stretch goal) - NPCs with very simple AI, Death and respawn - Simple Questing system with NPC quest givers and quest states diff --git a/devblog/feed.rss b/devblog/feed.rss index e564557290..20fbd84d5b 100644 --- a/devblog/feed.rss +++ b/devblog/feed.rss @@ -3,4 +3,4 @@ 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.en-USTue, 05 Jul 2022 18:48:48 GMTrfeed v1.1.1https://github.com/svpino/rfeed/blob/master/README.md Tutorial-writing and Attributes galore2022.html#2022-07-05-tutorial-writing-and-attributes-galoreIt has been a while since I wrote anything for the dev blog of Evennia, the MU creation system - so it's about time!GriatchTue, 05 Jul 2022 00:00:00 GMT2022.html#2022-07-05-tutorial-writing-and-attributes-galore Into 2022 with thanks and plans2022.html#2022-01-06-into-2022-with-thanks-and-plans<br>I didn't write an end-of-the year summary for 2021, so this first devblog of 2022 will also look back a bit at the past year. It also helps me get used to using this new blog platform I wrote about in the previous post.GriatchThu, 06 Jan 2022 00:00:00 GMT2022.html#2022-01-06-into-2022-with-thanks-and-plans The blog moved!2021.html#2021-11-18-the-blog-moved!If you are reading this, you may notice that this blog has moved from its old home over on blogspot. I had no issues with blogspot except for the fact that writing the blog itself was done in a rather clunky editor with limited support for code.GriatchThu, 18 Nov 2021 00:00:00 GMT2021.html#2021-11-18-the-blog-moved! Where do I begin?2021.html#2021-03-21-where-do-i-begin?This is a repost of an article I originally wrote for the Imaginary Realities e-zine, Volume 7, issue 3 back in 2015. It's not Evennia-specific but meant for a wider audience interested in making a text-based multiplayer game (MUD/MU*). Since IR is no longer active, I repost it here with only some minor cleanup.GriatchSun, 21 Mar 2021 00:00:00 GMT2021.html#2021-03-21-where-do-i-begin? Happy New Years 2021!2021.html#2021-01-01-happy-new-years-2021!GriatchFri, 01 Jan 2021 00:00:00 GMT2021.html#2021-01-01-happy-new-years-2021!Evennia 0.9.5 released2020.html#2020-11-14-evennia-0.9.5-releasedGriatchSat, 14 Nov 2020 00:00:00 GMT2020.html#2020-11-14-evennia-0.9.5-releasedOn using Markdown with Sphinx2020.html#2020-10-20-on-using-markdown-with-sphinxLast post I wrote about the upcoming v1.0 of Evennia, the Python MU* creation engine. We are not getting to that 1.0 version quite yet though: The next release will be 0.9.5, hopefully out relatively soon (TM).GriatchTue, 20 Oct 2020 00:00:00 GMT2020.html#2020-10-20-on-using-markdown-with-sphinxSpring updates while trying to stay healthy2020.html#2020-04-14-spring-updates-while-trying-to-stay-healthyGriatchTue, 14 Apr 2020 00:00:00 GMT2020.html#2020-04-14-spring-updates-while-trying-to-stay-healthyBlackifying and fixing bugs2019.html#2019-09-30-blackifying-and-fixing-bugsGriatchMon, 30 Sep 2019 00:00:00 GMT2019.html#2019-09-30-blackifying-and-fixing-bugsEvennia 0.9 released2019.html#2019-07-04-evennia-0.9-releasedLast week we released Evennia 0.9, the next version of the open source Python MU* creation system.GriatchThu, 04 Jul 2019 00:00:00 GMT2019.html#2019-07-04-evennia-0.9-releasedCreating Evscaperoom Part 22019.html#2019-05-26-creating-evscaperoom-part-2Jester smiling oh so sweetlyThe Jester, your 'adversary'GriatchSun, 26 May 2019 00:00:00 GMT2019.html#2019-05-26-creating-evscaperoom-part-2Creating Evscaperoom Part 12019.html#2019-05-18-creating-evscaperoom-part-1Over the last month (April-May 2019) I have taken part in the Mud Coder's Guild Game Jam "Enter the (Multi-User) Dungeon". This year the theme for the jam was One Room.GriatchSat, 18 May 2019 00:00:00 GMT2019.html#2019-05-18-creating-evscaperoom-part-1Podcast about Evennia2019.html#2019-05-09-podcast-about-evenniaI was interviewed on the (pretty grandiosely named) podcast Titans of Text the other day.GriatchThu, 09 May 2019 00:00:00 GMT2019.html#2019-05-09-podcast-about-evenniaSteaming on Eating Jam2019.html#2019-04-25-steaming-on-eating-jamGriatchThu, 25 Apr 2019 00:00:00 GMT2019.html#2019-04-25-steaming-on-eating-jamInto 20192019.html#2019-01-02-into-2019A new year has come around and it's time to both look back at the old and onward to the future of Evennia, the Python MUD creation system!GriatchWed, 02 Jan 2019 00:00:00 GMT2019.html#2019-01-02-into-2019Evennia 0.8 released2018.html#2018-09-30-evennia-0.8-releasedAfter about a year of work and almost 540 commits from close to 20 contributors, Evennia 0.8 is out! Evennia is a Python game server for creating text-based multiplayer games (MUDs, Mushes, etc) using Django and Twisted.Some of the upcoming improvements have been covered by previous dev blogs, such as the completely reworked server infrastructure:GriatchSun, 30 Sep 2018 00:00:00 GMT2018.html#2018-09-30-evennia-0.8-releasedInline building in upcoming Evennia 0.82018.html#2018-08-18-inline-building-in-upcoming-evennia-0.8GriatchSat, 18 Aug 2018 00:00:00 GMT2018.html#2018-08-18-inline-building-in-upcoming-evennia-0.8Kicking into gear from a distance2018.html#2018-01-27-kicking-into-gear-from-a-distanceThe last few weeks I have reworked the way Evennia's startup procedure works. This is now finished in the develop branch so I thought I'd mention a little what's going on.GriatchSat, 27 Jan 2018 00:00:00 GMT2018.html#2018-01-27-kicking-into-gear-from-a-distance New year, new stuff2018.html#2018-01-05-new-year,-new-stuffGriatchFri, 05 Jan 2018 00:00:00 GMT2018.html#2018-01-05-new-year,-new-stuffGetting a MUD RP scene going2017.html#2017-10-29-getting-a-mud-rp-scene-goingThis article is a little different from the normal more technical Evennia-specific content of this blog. It was originally published as a light-hearted addition to the Imaginary Realities e-zine many years ago. While IR is still online it has since dozed off. So I'm reposting it here to bring it to a new audience.GriatchSun, 29 Oct 2017 00:00:00 GMT2017.html#2017-10-29-getting-a-mud-rp-scene-goingEvennia in Hacktobergest 20172017.html#2017-10-01-evennia-in-hacktobergest-2017Evennia, the Python MUD/MUSH/MU* creation library participates in the Hacktoberfest 2017 (sign up on that page)! Hacktoberfest is open for all open-source projects like ours. After registering, if you make at least four Pull Requests to a public repo on Github during October (need not just be to Evennia), you win a limited-edition T-shirt!GriatchSun, 01 Oct 2017 00:00:00 GMT2017.html#2017-10-01-evennia-in-hacktobergest-2017Evennia 0.7 released2017.html#2017-09-20-evennia-0.7-releasedEvennia 0.7 releasedGriatchWed, 20 Sep 2017 00:00:00 GMT2017.html#2017-09-20-evennia-0.7-released Renaming Django's Auth User and App2017.html#2017-08-25-renaming-django's-auth-user-and-appGriatchFri, 25 Aug 2017 00:00:00 GMT2017.html#2017-08-25-renaming-django's-auth-user-and-appThe luxury of a creative community2017.html#2017-04-23-the-luxury-of-a-creative-communityGriatchSun, 23 Apr 2017 00:00:00 GMT2017.html#2017-04-23-the-luxury-of-a-creative-communityNews items from the new year2017.html#2017-02-05-news-items-from-the-new-yearThe last few months have been mostly occupied with fixing bugs and straightening out usage quirks as more and more people take Evennia through its paces.GriatchSun, 05 Feb 2017 00:00:00 GMT2017.html#2017-02-05-news-items-from-the-new-yearBirthday retrospective2016.html#2016-11-30-birthday-retrospectiveSo, recently Evennia celebrated its ten-year anniversary. That is, it was on Nov 20, 2006, Greg Taylor made the first repo commit to what would eventually become the Evennia of today. Greg has said that Evennia started out as a "weird experiment" of building a MUD/MUX using Django. The strange name he got from a cheesy NPC in the Guild Wars MMORPG and Greg's first post to the mailing list also echoes the experimental intention of the codebase. The merger with Twisted came pretty early too, replacing the early asyncore hack he used and immediately seeing a massive speedup. Evennia got attention from the MUD community - clearly a Python-based MUD system sounded attractive.GriatchWed, 30 Nov 2016 00:00:00 GMT2016.html#2016-11-30-birthday-retrospectiveSeason of fixes2016.html#2016-10-13-season-of-fixesGriatchThu, 13 Oct 2016 00:00:00 GMT2016.html#2016-10-13-season-of-fixesThe art of sharing nicks and descriptions2016.html#2016-07-01-the-art-of-sharing-nicks-and-descriptionsGriatchFri, 01 Jul 2016 00:00:00 GMT2016.html#2016-07-01-the-art-of-sharing-nicks-and-descriptionsEvennia in Pictures2016.html#2016-05-31-evennia-in-picturesThis article describes the MU* development system Evennia using pictures!GriatchTue, 31 May 2016 00:00:00 GMT2016.html#2016-05-31-evennia-in-pictures Evennia 0.6!2016.html#2016-05-22-evennia-0.6!GriatchSun, 22 May 2016 00:00:00 GMT2016.html#2016-05-22-evennia-0.6!Technical stuff happening2016.html#2016-03-24-technical-stuff-happeningHi folks, a bit more technical entry this time. These usually go onto the Evennia mailing list but I thought it would be interesting to put it in the dev-blog for once.GriatchThu, 24 Mar 2016 00:00:00 GMT2016.html#2016-03-24-technical-stuff-happeningClimbing up Branches2016.html#2016-02-14-climbing-up-branchesToday I pushed the latest Evennia development branch "wclient". This has a bunch of updates to how Evennia's webclient infrastructure works, by making all exchanged data be treated equal (instead of treating text separately from other types of client instructions).GriatchSun, 14 Feb 2016 00:00:00 GMT2016.html#2016-02-14-climbing-up-branchesA summary of a year2015.html#2015-12-17-a-summary-of-a-yearA summary of a yearGriatchThu, 17 Dec 2015 00:00:00 GMT2015.html#2015-12-17-a-summary-of-a-year MIT uses Evennia!2015.html#2015-11-12-mit-uses-evennia!GriatchThu, 12 Nov 2015 00:00:00 GMT2015.html#2015-11-12-mit-uses-evennia!Illustrations and soaps2015.html#2015-10-11-illustrations-and-soapsI recently made an article presenting the infrastructure and main coding features of Evennia using a series of nifty diagrams.GriatchSun, 11 Oct 2015 00:00:00 GMT2015.html#2015-10-11-illustrations-and-soapsEmoting System2015.html#2015-10-02-emoting-systemtitle: Emoting Systems, or how to chat up a girlcopyrights: Image: ©Griatch deviantartGriatchFri, 02 Oct 2015 00:00:00 GMT2015.html#2015-10-02-emoting-system Evennia on `podcast.__init__`2015.html#2015-09-29-evennia-on-`podcast.__init__`GriatchTue, 29 Sep 2015 00:00:00 GMT2015.html#2015-09-29-evennia-on-`podcast.__init__`Pushing through a straw2015.html#2015-09-24-pushing-through-a-strawRecently, a user reported a noticeable delay between sending a command in-game to multiple users and the result of that command appearing to everyone. You didn't notice this when testing alone but I could confirm there was almost a second delay sometimes between entering the command and some users seeing the result. A second is very long for stuff like this. Processing time for a single command is usually in the milliseconds. What was going on?GriatchThu, 24 Sep 2015 00:00:00 GMT2015.html#2015-09-24-pushing-through-a-strawA wagon load of post summer updates2015.html#2015-08-27-a-wagon-load-of-post-summer-updatesGriatchThu, 27 Aug 2015 00:00:00 GMT2015.html#2015-08-27-a-wagon-load-of-post-summer-updates Announcing the Evennia example-game project "Ainneve"2015.html#2015-06-22-announcing-the-evennia-example-game-project-"ainneve"GriatchMon, 22 Jun 2015 00:00:00 GMT2015.html#2015-06-22-announcing-the-evennia-example-game-project-"ainneve" Need your help!2015.html#2015-06-15-need-your-help!This for all you developers out there who want to make a game with Evennia but are not sure about what game to make or where to start off.GriatchMon, 15 Jun 2015 00:00:00 GMT2015.html#2015-06-15-need-your-help! Dreaming big?2015.html#2015-05-30-dreaming-big?GriatchSat, 30 May 2015 00:00:00 GMT2015.html#2015-05-30-dreaming-big?Things goin on2015.html#2015-05-11-things-goin-onGriatchMon, 11 May 2015 00:00:00 GMT2015.html#2015-05-11-things-goin-onDocumenting Python without Sphinx2015.html#2015-05-09-documenting-python-without-sphinxGriatchSat, 09 May 2015 00:00:00 GMT2015.html#2015-05-09-documenting-python-without-sphinxBuilding Django proxies and MUD libraries2015.html#2015-01-19-building-django-proxies-and-mud-librariesGriatchMon, 19 Jan 2015 00:00:00 GMT2015.html#2015-01-19-building-django-proxies-and-mud-librariesSlowly moving through town2014.html#2014-10-02-slowly-moving-through-townAfter getting questions about it I recently added the Slow Exit contribution to the main repository as an example.GriatchThu, 02 Oct 2014 00:00:00 GMT2014.html#2014-10-02-slowly-moving-through-townDance my puppets2014.html#2014-08-04-dance-my-puppetsIn many traditional multiplayer text engines for MUD/MUSH/MU*, the player connects to the game with an account name that also becomes their character's in-game name. When they log into the game they immediately "become" that character. If they want to play with another character, they need to create a new account.GriatchMon, 04 Aug 2014 00:00:00 GMT2014.html#2014-08-04-dance-my-puppetsWebby stuff2014.html#2014-06-30-webby-stuffLatest Evennia come with a range of improvements, mainly related to its integration with the web.GriatchMon, 30 Jun 2014 00:00:00 GMT2014.html#2014-06-30-webby-stuffBringing back Python memory2014.html#2014-06-15-bringing-back-python-memoryLately I've done work on the memory management of Evennia. Analyzing the memory footprint of a python program is a rather educational thing in general.GriatchSun, 15 Jun 2014 00:00:00 GMT2014.html#2014-06-15-bringing-back-python-memory Imaginary Realities volume 6, issue 12014.html#2014-05-16-imaginary-realities-volume-6,-issue-1GriatchFri, 16 May 2014 00:00:00 GMT2014.html#2014-05-16-imaginary-realities-volume-6,-issue-1Moving from Google Code to Github2014.html#2014-02-08-moving-from-google-code-to-githubA few weeks back, the Evennia project made the leap from Google Code to GitHub (here). Things have been calming down so it's time to give a summary of how the process went.GriatchSat, 08 Feb 2014 00:00:00 GMT2014.html#2014-02-08-moving-from-google-code-to-githubLooking forwards and backwards2014.html#2014-01-24-looking-forwards-and-backwardsWe are almost a month into the new year, time to look forward.GriatchFri, 24 Jan 2014 00:00:00 GMT2014.html#2014-01-24-looking-forwards-and-backwardsImaginary Realities is back2013.html#2013-12-16-imaginary-realities-is-backThe Imaginariy Realities 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.But guess what - this venerable ezine has now returned! You can find the new issue here.GriatchMon, 16 Dec 2013 00:00:00 GMT2013.html#2013-12-16-imaginary-realities-is-backOut of band mergings2013.html#2013-11-28-out-of-band-mergingsAs 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 Behind the Scenes blog post.GriatchThu, 28 Nov 2013 00:00:00 GMT2013.html#2013-11-28-out-of-band-mergingsA list of Evennia topics2013.html#2013-10-22-a-list-of-evennia-topicsSome Evennia updates.GriatchTue, 22 Oct 2013 00:00:00 GMT2013.html#2013-10-22-a-list-of-evennia-topicsOne to Many2013.html#2013-05-13-one-to-manyAs of yesterday, I completed and merged the first of the three upcoming Evennia features I mentioned in my Churning Behind the Scenes blog post: the "Multiple Characters per Player" feature.GriatchMon, 13 May 2013 00:00:00 GMT2013.html#2013-05-13-one-to-manyChurning behind the scenes2013.html#2013-01-29-churning-behind-the-scenesAt 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.GriatchTue, 29 Jan 2013 00:00:00 GMT2013.html#2013-01-29-churning-behind-the-scenesEvennia changes to BSD license2012.html#2012-10-28-evennia-changes-to-bsd-licenseAs of today, Evennia changes to use the very permissive BSD license.Now, our previous "Artistic License" was also very friendly. One main feature was that it made sure that changes people made to the core Evennia library (i.e. not the game-specific files) were also made available for possible inclusion upstream. A good notion perhaps, but the licensing text was also quite long and it was clear some newcomers parsed it as more restrictive than it actually was.GriatchSun, 28 Oct 2012 00:00:00 GMT2012.html#2012-10-28-evennia-changes-to-bsd-licenseCommunity interest2012.html#2012-10-05-community-interestIt's fun to see a growing level of activity in the Evennia community. The last few months have seen an increase in the number of people showing up in our IRC channel and mailing list. With this has come a slew of interesting ideas, projects and MUD-related discussion (as well as a few inevitable excursions into interesting but very non-mud-related territory - sorry to those reading our chat logs).GriatchFri, 05 Oct 2012 00:00:00 GMT2012.html#2012-10-05-community-interestCombining Twisted and Django2012.html#2012-08-31-combining-twisted-and-djangoCombining Twisted and DjangoGriatchFri, 31 Aug 2012 00:00:00 GMT2012.html#2012-08-31-combining-twisted-and-djangoTaking command2012.html#2012-08-16-taking-commandCommands are the bread and butter of any game. Commands are the instructions coming in from the player telling the game (or their avatar in the game) to do stuff. This post will outline the reasoning leading up to Evennia's somewhat (I think) non-standard way of handling commands.In the case of MUDs and other text games commands usually come in the form of entered text. But clicking on a graphical button or using a joystick is also at some level issuing a command - one way or another the Player instructs the game in a way it understands. In this post I will stick to text commands though. So open door with red key is a potential command.GriatchThu, 16 Aug 2012 00:00:00 GMT2012.html#2012-08-16-taking-commandExtending time and details2012.html#2012-06-26-extending-time-and-detailsFor the fun of it I added an "Extended Room" contrib to Evennia the other night.("Contribs" are optional code snippets and systems that are not part of the actual codebase. They are intended for you to use or dissect as you like in your game development efforts).GriatchTue, 26 Jun 2012 00:00:00 GMT2012.html#2012-06-26-extending-time-and-detailsCoding from the inside2012.html#2012-06-11-coding-from-the-insideSome time ago, a message on the Evennia mailing list asked about "softcode" support in Evennia. Softcode, a defacto standard in the MUX/MUCK/MUSH/MOO world, is conceptually a "safe" in-game scripting language that allows Players to extend the functionality of things without having access to the server source.GriatchMon, 11 Jun 2012 00:00:00 GMT2012.html#2012-06-11-coding-from-the-inside Dummies doing (even more) dummy things2012.html#2012-05-30-dummies-doing-(even-more)-dummy-thingsGriatchWed, 30 May 2012 00:00:00 GMT2012.html#2012-05-30-dummies-doing-(even-more)-dummy-thingsShortcuts to goodness2012.html#2012-03-26-shortcuts-to-goodnessEvennia, being a MUD-design system, needs to take some special considerations with its source code - its sole purpose is after all to be read, understood and extended.Python is of course very readable by default and we have worked hard to give extensive comments and documentation. But for a new user looking into the code for the first time, it's still a lot of stuff to take in. Evennia consists of a set of Django-style "applications" interacting and in some cases inheriting from each other so as to avoid code duplication. For a new user to get an overview could therefore mean diving into more layers of code than one would like.GriatchMon, 26 Mar 2012 00:00:00 GMT2012.html#2012-03-26-shortcuts-to-goodnessDummies doing dummy things2012.html#2012-02-22-dummies-doing-dummy-thingsIt can often be interesting to test hypothetical situations. So the other day I did a little stress test to see how Evennia handles many players. This is a follow-up to the open bottlenecks post.Evennia, being based on Twisted, is an asynchronous mud server. This means that the program is not multi-threaded but instead it tries to divide up the code it runs into smaller parts. It then quickly switches between executing these parts in turn, giving the impression of doing many things at the same time. There is nothing magical about this - each little piece of code blocks the queue as it runs. So if a particular part takes too long, everyone else will have to wait for their turn. Likewise, if Twisted cannot flip through the queue as fast or faster than new things get added to it, it will start to fall behind.GriatchWed, 22 Feb 2012 00:00:00 GMT2012.html#2012-02-22-dummies-doing-dummy-thingsCommands and you2012.html#2012-02-17-commands-and-youCommands define how a Player interacts with a given game. In a text-based game it's not amiss to say that the available commands are paramount to the user experience. In principle commands could represent mouse clicks and other modernistic GUI sugar - but for this blog I'll stick with the traditional entered text.Like most things in Evennia, Commands are Python classes. If you read the documentation about them you'll find that the command classes are clumped together and tacked onto all objects in-game. Commands hanging onto a Character object will be available all the time, whereas commands tacked onto a grandfather's clock will only be available to you when you stand in front of said clock.GriatchFri, 17 Feb 2012 00:00:00 GMT2012.html#2012-02-17-commands-and-you Such a small thing ...2012.html#2012-02-15-such-a-small-thing-...Lately I went back to clean up and optimize the workings of Evennia's Attributes. I had a nice idea for making the code easier to read and also faster by caching more aggressively. The end result was of course that I managed to break things. In the end it took me two weeks to get my new scheme to a state where it did what it already did before (although faster).GriatchWed, 15 Feb 2012 00:00:00 GMT2012.html#2012-02-15-such-a-small-thing-... Evennia's open bottlenecks2012.html#2012-02-05-evennia's-open-bottlenecksSince Evennia hit beta I have been mostly looking behind the scenes to see what can be cleaned up and not in the core server. One way to do that is to check where the bottlenecks are. Since a few commits, Evennia's runner has additions for launching the Python cProfiler at startup. This can be done for both the Portal and the Server separately.GriatchSun, 05 Feb 2012 00:00:00 GMT2012.html#2012-02-05-evennia's-open-bottlenecksAbout this dev blog2012.html#2012-02-05-about-this-dev-blogThis is to be my Evennia dev blog, but it will also cover various other musings concerning programming in general and mud designing in particular. Whereas the Evennia mailing list remains the main venue for discussion, I will probably use this blog for announcing features too.Some background:GriatchSun, 05 Feb 2012 00:00:00 GMT2012.html#2012-02-05-about-this-dev-blog \ No newline at end of file + your dreams by writing normal Python modules.en-USTue, 05 Jul 2022 18:51:44 GMTrfeed v1.1.1https://github.com/svpino/rfeed/blob/master/README.md Tutorial-writing and Attributes galore2022.html#2022-07-05-tutorial-writing-and-attributes-galoreIt has been a while since I wrote anything for the dev blog of Evennia, the MU creation system - so it's about time!GriatchTue, 05 Jul 2022 00:00:00 GMT2022.html#2022-07-05-tutorial-writing-and-attributes-galore Into 2022 with thanks and plans2022.html#2022-01-06-into-2022-with-thanks-and-plans<br>I didn't write an end-of-the year summary for 2021, so this first devblog of 2022 will also look back a bit at the past year. It also helps me get used to using this new blog platform I wrote about in the previous post.GriatchThu, 06 Jan 2022 00:00:00 GMT2022.html#2022-01-06-into-2022-with-thanks-and-plans The blog moved!2021.html#2021-11-18-the-blog-moved!If you are reading this, you may notice that this blog has moved from its old home over on blogspot. I had no issues with blogspot except for the fact that writing the blog itself was done in a rather clunky editor with limited support for code.GriatchThu, 18 Nov 2021 00:00:00 GMT2021.html#2021-11-18-the-blog-moved! Where do I begin?2021.html#2021-03-21-where-do-i-begin?This is a repost of an article I originally wrote for the Imaginary Realities e-zine, Volume 7, issue 3 back in 2015. It's not Evennia-specific but meant for a wider audience interested in making a text-based multiplayer game (MUD/MU*). Since IR is no longer active, I repost it here with only some minor cleanup.GriatchSun, 21 Mar 2021 00:00:00 GMT2021.html#2021-03-21-where-do-i-begin? Happy New Years 2021!2021.html#2021-01-01-happy-new-years-2021!GriatchFri, 01 Jan 2021 00:00:00 GMT2021.html#2021-01-01-happy-new-years-2021!Evennia 0.9.5 released2020.html#2020-11-14-evennia-0.9.5-releasedGriatchSat, 14 Nov 2020 00:00:00 GMT2020.html#2020-11-14-evennia-0.9.5-releasedOn using Markdown with Sphinx2020.html#2020-10-20-on-using-markdown-with-sphinxLast post I wrote about the upcoming v1.0 of Evennia, the Python MU* creation engine. We are not getting to that 1.0 version quite yet though: The next release will be 0.9.5, hopefully out relatively soon (TM).GriatchTue, 20 Oct 2020 00:00:00 GMT2020.html#2020-10-20-on-using-markdown-with-sphinxSpring updates while trying to stay healthy2020.html#2020-04-14-spring-updates-while-trying-to-stay-healthyGriatchTue, 14 Apr 2020 00:00:00 GMT2020.html#2020-04-14-spring-updates-while-trying-to-stay-healthyBlackifying and fixing bugs2019.html#2019-09-30-blackifying-and-fixing-bugsGriatchMon, 30 Sep 2019 00:00:00 GMT2019.html#2019-09-30-blackifying-and-fixing-bugsEvennia 0.9 released2019.html#2019-07-04-evennia-0.9-releasedLast week we released Evennia 0.9, the next version of the open source Python MU* creation system.GriatchThu, 04 Jul 2019 00:00:00 GMT2019.html#2019-07-04-evennia-0.9-releasedCreating Evscaperoom Part 22019.html#2019-05-26-creating-evscaperoom-part-2Jester smiling oh so sweetlyThe Jester, your 'adversary'GriatchSun, 26 May 2019 00:00:00 GMT2019.html#2019-05-26-creating-evscaperoom-part-2Creating Evscaperoom Part 12019.html#2019-05-18-creating-evscaperoom-part-1Over the last month (April-May 2019) I have taken part in the Mud Coder's Guild Game Jam "Enter the (Multi-User) Dungeon". This year the theme for the jam was One Room.GriatchSat, 18 May 2019 00:00:00 GMT2019.html#2019-05-18-creating-evscaperoom-part-1Podcast about Evennia2019.html#2019-05-09-podcast-about-evenniaI was interviewed on the (pretty grandiosely named) podcast Titans of Text the other day.GriatchThu, 09 May 2019 00:00:00 GMT2019.html#2019-05-09-podcast-about-evenniaSteaming on Eating Jam2019.html#2019-04-25-steaming-on-eating-jamGriatchThu, 25 Apr 2019 00:00:00 GMT2019.html#2019-04-25-steaming-on-eating-jamInto 20192019.html#2019-01-02-into-2019A new year has come around and it's time to both look back at the old and onward to the future of Evennia, the Python MUD creation system!GriatchWed, 02 Jan 2019 00:00:00 GMT2019.html#2019-01-02-into-2019Evennia 0.8 released2018.html#2018-09-30-evennia-0.8-releasedAfter about a year of work and almost 540 commits from close to 20 contributors, Evennia 0.8 is out! Evennia is a Python game server for creating text-based multiplayer games (MUDs, Mushes, etc) using Django and Twisted.Some of the upcoming improvements have been covered by previous dev blogs, such as the completely reworked server infrastructure:GriatchSun, 30 Sep 2018 00:00:00 GMT2018.html#2018-09-30-evennia-0.8-releasedInline building in upcoming Evennia 0.82018.html#2018-08-18-inline-building-in-upcoming-evennia-0.8GriatchSat, 18 Aug 2018 00:00:00 GMT2018.html#2018-08-18-inline-building-in-upcoming-evennia-0.8Kicking into gear from a distance2018.html#2018-01-27-kicking-into-gear-from-a-distanceThe last few weeks I have reworked the way Evennia's startup procedure works. This is now finished in the develop branch so I thought I'd mention a little what's going on.GriatchSat, 27 Jan 2018 00:00:00 GMT2018.html#2018-01-27-kicking-into-gear-from-a-distance New year, new stuff2018.html#2018-01-05-new-year,-new-stuffGriatchFri, 05 Jan 2018 00:00:00 GMT2018.html#2018-01-05-new-year,-new-stuffGetting a MUD RP scene going2017.html#2017-10-29-getting-a-mud-rp-scene-goingThis article is a little different from the normal more technical Evennia-specific content of this blog. It was originally published as a light-hearted addition to the Imaginary Realities e-zine many years ago. While IR is still online it has since dozed off. So I'm reposting it here to bring it to a new audience.GriatchSun, 29 Oct 2017 00:00:00 GMT2017.html#2017-10-29-getting-a-mud-rp-scene-goingEvennia in Hacktobergest 20172017.html#2017-10-01-evennia-in-hacktobergest-2017Evennia, the Python MUD/MUSH/MU* creation library participates in the Hacktoberfest 2017 (sign up on that page)! Hacktoberfest is open for all open-source projects like ours. After registering, if you make at least four Pull Requests to a public repo on Github during October (need not just be to Evennia), you win a limited-edition T-shirt!GriatchSun, 01 Oct 2017 00:00:00 GMT2017.html#2017-10-01-evennia-in-hacktobergest-2017Evennia 0.7 released2017.html#2017-09-20-evennia-0.7-releasedEvennia 0.7 releasedGriatchWed, 20 Sep 2017 00:00:00 GMT2017.html#2017-09-20-evennia-0.7-released Renaming Django's Auth User and App2017.html#2017-08-25-renaming-django's-auth-user-and-appGriatchFri, 25 Aug 2017 00:00:00 GMT2017.html#2017-08-25-renaming-django's-auth-user-and-appThe luxury of a creative community2017.html#2017-04-23-the-luxury-of-a-creative-communityGriatchSun, 23 Apr 2017 00:00:00 GMT2017.html#2017-04-23-the-luxury-of-a-creative-communityNews items from the new year2017.html#2017-02-05-news-items-from-the-new-yearThe last few months have been mostly occupied with fixing bugs and straightening out usage quirks as more and more people take Evennia through its paces.GriatchSun, 05 Feb 2017 00:00:00 GMT2017.html#2017-02-05-news-items-from-the-new-yearBirthday retrospective2016.html#2016-11-30-birthday-retrospectiveSo, recently Evennia celebrated its ten-year anniversary. That is, it was on Nov 20, 2006, Greg Taylor made the first repo commit to what would eventually become the Evennia of today. Greg has said that Evennia started out as a "weird experiment" of building a MUD/MUX using Django. The strange name he got from a cheesy NPC in the Guild Wars MMORPG and Greg's first post to the mailing list also echoes the experimental intention of the codebase. The merger with Twisted came pretty early too, replacing the early asyncore hack he used and immediately seeing a massive speedup. Evennia got attention from the MUD community - clearly a Python-based MUD system sounded attractive.GriatchWed, 30 Nov 2016 00:00:00 GMT2016.html#2016-11-30-birthday-retrospectiveSeason of fixes2016.html#2016-10-13-season-of-fixesGriatchThu, 13 Oct 2016 00:00:00 GMT2016.html#2016-10-13-season-of-fixesThe art of sharing nicks and descriptions2016.html#2016-07-01-the-art-of-sharing-nicks-and-descriptionsGriatchFri, 01 Jul 2016 00:00:00 GMT2016.html#2016-07-01-the-art-of-sharing-nicks-and-descriptionsEvennia in Pictures2016.html#2016-05-31-evennia-in-picturesThis article describes the MU* development system Evennia using pictures!GriatchTue, 31 May 2016 00:00:00 GMT2016.html#2016-05-31-evennia-in-pictures Evennia 0.6!2016.html#2016-05-22-evennia-0.6!GriatchSun, 22 May 2016 00:00:00 GMT2016.html#2016-05-22-evennia-0.6!Technical stuff happening2016.html#2016-03-24-technical-stuff-happeningHi folks, a bit more technical entry this time. These usually go onto the Evennia mailing list but I thought it would be interesting to put it in the dev-blog for once.GriatchThu, 24 Mar 2016 00:00:00 GMT2016.html#2016-03-24-technical-stuff-happeningClimbing up Branches2016.html#2016-02-14-climbing-up-branchesToday I pushed the latest Evennia development branch "wclient". This has a bunch of updates to how Evennia's webclient infrastructure works, by making all exchanged data be treated equal (instead of treating text separately from other types of client instructions).GriatchSun, 14 Feb 2016 00:00:00 GMT2016.html#2016-02-14-climbing-up-branchesA summary of a year2015.html#2015-12-17-a-summary-of-a-yearA summary of a yearGriatchThu, 17 Dec 2015 00:00:00 GMT2015.html#2015-12-17-a-summary-of-a-year MIT uses Evennia!2015.html#2015-11-12-mit-uses-evennia!GriatchThu, 12 Nov 2015 00:00:00 GMT2015.html#2015-11-12-mit-uses-evennia!Illustrations and soaps2015.html#2015-10-11-illustrations-and-soapsI recently made an article presenting the infrastructure and main coding features of Evennia using a series of nifty diagrams.GriatchSun, 11 Oct 2015 00:00:00 GMT2015.html#2015-10-11-illustrations-and-soapsEmoting System2015.html#2015-10-02-emoting-systemtitle: Emoting Systems, or how to chat up a girlcopyrights: Image: ©Griatch deviantartGriatchFri, 02 Oct 2015 00:00:00 GMT2015.html#2015-10-02-emoting-system Evennia on `podcast.__init__`2015.html#2015-09-29-evennia-on-`podcast.__init__`GriatchTue, 29 Sep 2015 00:00:00 GMT2015.html#2015-09-29-evennia-on-`podcast.__init__`Pushing through a straw2015.html#2015-09-24-pushing-through-a-strawRecently, a user reported a noticeable delay between sending a command in-game to multiple users and the result of that command appearing to everyone. You didn't notice this when testing alone but I could confirm there was almost a second delay sometimes between entering the command and some users seeing the result. A second is very long for stuff like this. Processing time for a single command is usually in the milliseconds. What was going on?GriatchThu, 24 Sep 2015 00:00:00 GMT2015.html#2015-09-24-pushing-through-a-strawA wagon load of post summer updates2015.html#2015-08-27-a-wagon-load-of-post-summer-updatesGriatchThu, 27 Aug 2015 00:00:00 GMT2015.html#2015-08-27-a-wagon-load-of-post-summer-updates Announcing the Evennia example-game project "Ainneve"2015.html#2015-06-22-announcing-the-evennia-example-game-project-"ainneve"GriatchMon, 22 Jun 2015 00:00:00 GMT2015.html#2015-06-22-announcing-the-evennia-example-game-project-"ainneve" Need your help!2015.html#2015-06-15-need-your-help!This for all you developers out there who want to make a game with Evennia but are not sure about what game to make or where to start off.GriatchMon, 15 Jun 2015 00:00:00 GMT2015.html#2015-06-15-need-your-help! Dreaming big?2015.html#2015-05-30-dreaming-big?GriatchSat, 30 May 2015 00:00:00 GMT2015.html#2015-05-30-dreaming-big?Things goin on2015.html#2015-05-11-things-goin-onGriatchMon, 11 May 2015 00:00:00 GMT2015.html#2015-05-11-things-goin-onDocumenting Python without Sphinx2015.html#2015-05-09-documenting-python-without-sphinxGriatchSat, 09 May 2015 00:00:00 GMT2015.html#2015-05-09-documenting-python-without-sphinxBuilding Django proxies and MUD libraries2015.html#2015-01-19-building-django-proxies-and-mud-librariesGriatchMon, 19 Jan 2015 00:00:00 GMT2015.html#2015-01-19-building-django-proxies-and-mud-librariesSlowly moving through town2014.html#2014-10-02-slowly-moving-through-townAfter getting questions about it I recently added the Slow Exit contribution to the main repository as an example.GriatchThu, 02 Oct 2014 00:00:00 GMT2014.html#2014-10-02-slowly-moving-through-townDance my puppets2014.html#2014-08-04-dance-my-puppetsIn many traditional multiplayer text engines for MUD/MUSH/MU*, the player connects to the game with an account name that also becomes their character's in-game name. When they log into the game they immediately "become" that character. If they want to play with another character, they need to create a new account.GriatchMon, 04 Aug 2014 00:00:00 GMT2014.html#2014-08-04-dance-my-puppetsWebby stuff2014.html#2014-06-30-webby-stuffLatest Evennia come with a range of improvements, mainly related to its integration with the web.GriatchMon, 30 Jun 2014 00:00:00 GMT2014.html#2014-06-30-webby-stuffBringing back Python memory2014.html#2014-06-15-bringing-back-python-memoryLately I've done work on the memory management of Evennia. Analyzing the memory footprint of a python program is a rather educational thing in general.GriatchSun, 15 Jun 2014 00:00:00 GMT2014.html#2014-06-15-bringing-back-python-memory Imaginary Realities volume 6, issue 12014.html#2014-05-16-imaginary-realities-volume-6,-issue-1GriatchFri, 16 May 2014 00:00:00 GMT2014.html#2014-05-16-imaginary-realities-volume-6,-issue-1Moving from Google Code to Github2014.html#2014-02-08-moving-from-google-code-to-githubA few weeks back, the Evennia project made the leap from Google Code to GitHub (here). Things have been calming down so it's time to give a summary of how the process went.GriatchSat, 08 Feb 2014 00:00:00 GMT2014.html#2014-02-08-moving-from-google-code-to-githubLooking forwards and backwards2014.html#2014-01-24-looking-forwards-and-backwardsWe are almost a month into the new year, time to look forward.GriatchFri, 24 Jan 2014 00:00:00 GMT2014.html#2014-01-24-looking-forwards-and-backwardsImaginary Realities is back2013.html#2013-12-16-imaginary-realities-is-backThe Imaginariy Realities 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.But guess what - this venerable ezine has now returned! You can find the new issue here.GriatchMon, 16 Dec 2013 00:00:00 GMT2013.html#2013-12-16-imaginary-realities-is-backOut of band mergings2013.html#2013-11-28-out-of-band-mergingsAs 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 Behind the Scenes blog post.GriatchThu, 28 Nov 2013 00:00:00 GMT2013.html#2013-11-28-out-of-band-mergingsA list of Evennia topics2013.html#2013-10-22-a-list-of-evennia-topicsSome Evennia updates.GriatchTue, 22 Oct 2013 00:00:00 GMT2013.html#2013-10-22-a-list-of-evennia-topicsOne to Many2013.html#2013-05-13-one-to-manyAs of yesterday, I completed and merged the first of the three upcoming Evennia features I mentioned in my Churning Behind the Scenes blog post: the "Multiple Characters per Player" feature.GriatchMon, 13 May 2013 00:00:00 GMT2013.html#2013-05-13-one-to-manyChurning behind the scenes2013.html#2013-01-29-churning-behind-the-scenesAt 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.GriatchTue, 29 Jan 2013 00:00:00 GMT2013.html#2013-01-29-churning-behind-the-scenesEvennia changes to BSD license2012.html#2012-10-28-evennia-changes-to-bsd-licenseAs of today, Evennia changes to use the very permissive BSD license.Now, our previous "Artistic License" was also very friendly. One main feature was that it made sure that changes people made to the core Evennia library (i.e. not the game-specific files) were also made available for possible inclusion upstream. A good notion perhaps, but the licensing text was also quite long and it was clear some newcomers parsed it as more restrictive than it actually was.GriatchSun, 28 Oct 2012 00:00:00 GMT2012.html#2012-10-28-evennia-changes-to-bsd-licenseCommunity interest2012.html#2012-10-05-community-interestIt's fun to see a growing level of activity in the Evennia community. The last few months have seen an increase in the number of people showing up in our IRC channel and mailing list. With this has come a slew of interesting ideas, projects and MUD-related discussion (as well as a few inevitable excursions into interesting but very non-mud-related territory - sorry to those reading our chat logs).GriatchFri, 05 Oct 2012 00:00:00 GMT2012.html#2012-10-05-community-interestCombining Twisted and Django2012.html#2012-08-31-combining-twisted-and-djangoCombining Twisted and DjangoGriatchFri, 31 Aug 2012 00:00:00 GMT2012.html#2012-08-31-combining-twisted-and-djangoTaking command2012.html#2012-08-16-taking-commandCommands are the bread and butter of any game. Commands are the instructions coming in from the player telling the game (or their avatar in the game) to do stuff. This post will outline the reasoning leading up to Evennia's somewhat (I think) non-standard way of handling commands.In the case of MUDs and other text games commands usually come in the form of entered text. But clicking on a graphical button or using a joystick is also at some level issuing a command - one way or another the Player instructs the game in a way it understands. In this post I will stick to text commands though. So open door with red key is a potential command.GriatchThu, 16 Aug 2012 00:00:00 GMT2012.html#2012-08-16-taking-commandExtending time and details2012.html#2012-06-26-extending-time-and-detailsFor the fun of it I added an "Extended Room" contrib to Evennia the other night.("Contribs" are optional code snippets and systems that are not part of the actual codebase. They are intended for you to use or dissect as you like in your game development efforts).GriatchTue, 26 Jun 2012 00:00:00 GMT2012.html#2012-06-26-extending-time-and-detailsCoding from the inside2012.html#2012-06-11-coding-from-the-insideSome time ago, a message on the Evennia mailing list asked about "softcode" support in Evennia. Softcode, a defacto standard in the MUX/MUCK/MUSH/MOO world, is conceptually a "safe" in-game scripting language that allows Players to extend the functionality of things without having access to the server source.GriatchMon, 11 Jun 2012 00:00:00 GMT2012.html#2012-06-11-coding-from-the-inside Dummies doing (even more) dummy things2012.html#2012-05-30-dummies-doing-(even-more)-dummy-thingsGriatchWed, 30 May 2012 00:00:00 GMT2012.html#2012-05-30-dummies-doing-(even-more)-dummy-thingsShortcuts to goodness2012.html#2012-03-26-shortcuts-to-goodnessEvennia, being a MUD-design system, needs to take some special considerations with its source code - its sole purpose is after all to be read, understood and extended.Python is of course very readable by default and we have worked hard to give extensive comments and documentation. But for a new user looking into the code for the first time, it's still a lot of stuff to take in. Evennia consists of a set of Django-style "applications" interacting and in some cases inheriting from each other so as to avoid code duplication. For a new user to get an overview could therefore mean diving into more layers of code than one would like.GriatchMon, 26 Mar 2012 00:00:00 GMT2012.html#2012-03-26-shortcuts-to-goodnessDummies doing dummy things2012.html#2012-02-22-dummies-doing-dummy-thingsIt can often be interesting to test hypothetical situations. So the other day I did a little stress test to see how Evennia handles many players. This is a follow-up to the open bottlenecks post.Evennia, being based on Twisted, is an asynchronous mud server. This means that the program is not multi-threaded but instead it tries to divide up the code it runs into smaller parts. It then quickly switches between executing these parts in turn, giving the impression of doing many things at the same time. There is nothing magical about this - each little piece of code blocks the queue as it runs. So if a particular part takes too long, everyone else will have to wait for their turn. Likewise, if Twisted cannot flip through the queue as fast or faster than new things get added to it, it will start to fall behind.GriatchWed, 22 Feb 2012 00:00:00 GMT2012.html#2012-02-22-dummies-doing-dummy-thingsCommands and you2012.html#2012-02-17-commands-and-youCommands define how a Player interacts with a given game. In a text-based game it's not amiss to say that the available commands are paramount to the user experience. In principle commands could represent mouse clicks and other modernistic GUI sugar - but for this blog I'll stick with the traditional entered text.Like most things in Evennia, Commands are Python classes. If you read the documentation about them you'll find that the command classes are clumped together and tacked onto all objects in-game. Commands hanging onto a Character object will be available all the time, whereas commands tacked onto a grandfather's clock will only be available to you when you stand in front of said clock.GriatchFri, 17 Feb 2012 00:00:00 GMT2012.html#2012-02-17-commands-and-you Such a small thing ...2012.html#2012-02-15-such-a-small-thing-...Lately I went back to clean up and optimize the workings of Evennia's Attributes. I had a nice idea for making the code easier to read and also faster by caching more aggressively. The end result was of course that I managed to break things. In the end it took me two weeks to get my new scheme to a state where it did what it already did before (although faster).GriatchWed, 15 Feb 2012 00:00:00 GMT2012.html#2012-02-15-such-a-small-thing-... Evennia's open bottlenecks2012.html#2012-02-05-evennia's-open-bottlenecksSince Evennia hit beta I have been mostly looking behind the scenes to see what can be cleaned up and not in the core server. One way to do that is to check where the bottlenecks are. Since a few commits, Evennia's runner has additions for launching the Python cProfiler at startup. This can be done for both the Portal and the Server separately.GriatchSun, 05 Feb 2012 00:00:00 GMT2012.html#2012-02-05-evennia's-open-bottlenecksAbout this dev blog2012.html#2012-02-05-about-this-dev-blogThis is to be my Evennia dev blog, but it will also cover various other musings concerning programming in general and mud designing in particular. Whereas the Evennia mailing list remains the main venue for discussion, I will probably use this blog for announcing features too.Some background:GriatchSun, 05 Feb 2012 00:00:00 GMT2012.html#2012-02-05-about-this-dev-blog \ No newline at end of file