<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0"><id>tag:blogger.com,1999:blog-27648409</id><updated>2012-05-21T22:40:08.107+12:00</updated><category term="openid" /><category term="phones" /><category term="accomodation" /><category term="movies" /><category term="books" /><category term="amiga" /><category term="Ajax3D" /><category term="opencyc" /><category term="EVE" /><category term="ecc" /><category term="nintendo ds" /><category term="firefox" /><category term="summer" /><category term="applications" /><category term="travel" /><category term="scams" /><category term="css" /><category term="basque park" /><category term="pacemaker" /><category term="mooncake" /><category term="video" /><category term="sansa" /><category term="gyp" /><category term="greasemonkey" /><category term="notes" /><category term="live coding" /><category term="soulfu" /><category term="code reloading" /><category term="engrish" /><category term="auckland" /><category term="language" /><category term="networking" /><category term="visual studio" /><category term="shanghai" /><category term="game programming" /><category term="iocp" /><category term="autumn" /><category term="html" /><category term="magazines" /><category term="notepad++" /><category term="asp.net" /><category term="china" /><category term="pudong" /><category term="pyglet" /><category term="goblin camp" /><category term="new zealand" /><category term="putuo" /><category term="calorie restriction" /><category term="itunes" /><category term="gu zheng" /><category term="windows vista" /><category term="wiki" /><category term="javascript" /><category term="people's square" /><category term="apple" /><category term="homemade" /><category term="hong kong" /><category term="AJAX" /><category term="ipad" /><category term="christmas" /><category term="skype" /><category term="dijing" /><category term="xi'an" /><category term="stack overflow" /><category term="greenlet" /><category term="excel" /><category term="python" /><category term="virtual pc" /><category term="VRML" /><category term="jing'an" /><category term="telnet" /><category term="windows" /><category term="web programming" /><category term="london" /><category term="stackless python" /><category term="learning" /><category term="linux" /><category term="roguelike" /><category term="basic" /><category term="research" /><category term="places" /><category term="sansa clip" /><category term="wikidot" /><category term="internet explorer" /><category term="limbo" /><category term="programming" /><category term="hanzi" /><category term="infinity engine" /><category term="sqlite" /><category term="pyuv" /><category term="music" /><category term="sights" /><category term="reddit" /><category term="television" /><category term="databases" /><category term="life" /><category term="computer games" /><category term="comet" /><category term="go programming language" /><category term="dwarf fortress" /><category term="mud" /><category term="ISBL" /><category term="ipod" /><category term="food" /><category term="entertainment" /><category term="darkbasic" /><category term="steam" /><category term="X3D" /><category term="foraging" /><category term="health" /><title type="text">Stuff What I Posted</title><subtitle type="html" /><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/search/label/mud" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/-/mud/-/mud?start-index=26&amp;max-results=25" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>72</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/StuffWhatIPosted-MUDDev" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="stuffwhatiposted-muddev" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry><id>tag:blogger.com,1999:blog-27648409.post-5822831116488288430</id><published>2012-05-20T08:45:00.002+12:00</published><updated>2012-05-20T08:54:33.442+12:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="linux" /><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><title type="text">Planet MUD-Dev update</title><content type="html">One new blog has been added to the aggregator:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://nagademo-webmud.blogspot.com/"&gt;NaGaDeMo Websocket MUD&lt;/a&gt;.&lt;/li&gt;&lt;/ul&gt;Two&amp;nbsp;blogs&amp;nbsp;have died and been removed from the aggregator:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://lysatordev.blogspot.com/"&gt;Lysator&lt;/a&gt;. &amp;nbsp;An extremely productive developer, inspired me to work on my own MUD. &amp;nbsp;Kicked off the one he worked on because of politics, presumably the blog has been discarded.&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.rubymud.com/"&gt;Ruby MUD&lt;/a&gt;. &amp;nbsp;This one has been dead a long time I believe. &amp;nbsp;The link was there in case it came alive.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Updates:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;This blog. &amp;nbsp;Turns out it was pointing to the awkward feedburner thing I have stopped using because it got in the way of subscribing to labels.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Frankly it is a miracle the aggregator is working. &amp;nbsp;Bluehost has changed something and python no longer works in the shell, however the cron script appears to bypass the shell configuration and uses the default Python installation.. and hence things still work.&lt;br /&gt;&lt;br /&gt;If you know of any MUD blogs which meet the criteria and are not already here, then please sing out! &amp;nbsp;Also, if you're involved in any community projects like the Imaginary Realities thing, some blog posts about the progress on a weekly basis might be a good idea.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-5822831116488288430?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/5822831116488288430/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2012/05/planet-mud-dev-update.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/5822831116488288430" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/5822831116488288430" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2012/05/planet-mud-dev-update.html" title="Planet MUD-Dev update" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27648409.post-5272768264923482196</id><published>2012-02-20T08:32:00.000+13:00</published><updated>2012-02-20T08:32:04.681+13:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><title type="text">LPMuds.net: VM to Demo LPC Muds</title><content type="html">Link: &lt;a href="http://lpmuds.net/smf/index.php?topic=761.0"&gt;VM to Demo LPC Muds&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This is more a response to Drakkos' &lt;a href="http://drakkos.co.uk/blog/blog.c?action=filter&amp;amp;blog=mud%20commentary&amp;amp;id=722?action=filter&amp;amp;blog=mud%20commentary&amp;amp;id=722"&gt;post&lt;/a&gt; on the subject, as I can't work out how you register to post comments there. &amp;nbsp;Drakkos, someone actually started a project like this back in August 2008 (see link above). &amp;nbsp;I think it would be a good idea for it to be revived and actively mantained, although how much work or what is involved.. I do not know.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-5272768264923482196?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/5272768264923482196/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2012/02/lpmudsnet-vm-to-demo-lpc-muds.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/5272768264923482196" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/5272768264923482196" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2012/02/lpmudsnet-vm-to-demo-lpc-muds.html" title="LPMuds.net: VM to Demo LPC Muds" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27648409.post-810911270127948805</id><published>2012-02-17T20:24:00.000+13:00</published><updated>2012-02-17T20:24:46.971+13:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="game programming" /><category scheme="http://www.blogger.com/atom/ns#" term="excel" /><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><title type="text">mudbytes.net: Excel World Builder</title><content type="html">Link: &lt;a href="http://www.mudbytes.net/topic-3784-60768"&gt;Excel World Builder&lt;/a&gt; An interesting thread on MUDBytes, where JohnnyStarr shows the progress of his Excel-based building tool.  I'll link directly to his image here, so he can switch it out for something obscene.  &lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://www.johnnystarr.net/img/mapper/mapper-search.PNG" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="50%" width="50%" src="http://www.johnnystarr.net/img/mapper/mapper-search.PNG" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-810911270127948805?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/810911270127948805/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2012/02/mudbytesnet-excel-world-builder.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/810911270127948805" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/810911270127948805" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2012/02/mudbytesnet-excel-world-builder.html" title="mudbytes.net: Excel World Builder" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27648409.post-578630483150166010</id><published>2012-01-23T17:08:00.000+13:00</published><updated>2012-01-23T17:08:00.076+13:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="telnet" /><category scheme="http://www.blogger.com/atom/ns#" term="game programming" /><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><title type="text">Roguelike MUD progress</title><content type="html">Starting up my MUD framework today for the first time in a long time, I forgot where I was at. &amp;nbsp;My telnet client of choice, Windows Telnet, no longer works reliably.. at least on a Chinese language Windows 7 computer.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-FH-FuyDOPn4/TxopQilgPUI/AAAAAAAAAZ4/T_vq2hV94ak/s1600/rlw7.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="161" src="http://1.bp.blogspot.com/-FH-FuyDOPn4/TxopQilgPUI/AAAAAAAAAZ4/T_vq2hV94ak/s320/rlw7.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Is there still a reason to support Windows Telnet?&lt;br /&gt;&lt;br /&gt;Wider&amp;nbsp;accessibility&amp;nbsp;is one reason, so that people with older computers who already use it for other MUDs can continue to use it. &amp;nbsp;At one point in the past, Kavir analysed the connections to his MUD and came up with a &lt;a href="http://www.mudbytes.net/index.php?a=topic&amp;amp;t=2633&amp;amp;p=44261#p44261"&gt;quick rundown&lt;/a&gt; of how many users were using which client. &amp;nbsp;The rundown is somewhat lacking and I am not convinced it is correct enough to be representative, there's no Windows Telnet, and the large number of "Unknown" needs to be dealt with.&lt;br /&gt;&lt;br /&gt;I think I'll leave it for now. &amp;nbsp;A better investment would be a web-based client.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-578630483150166010?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/578630483150166010/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2012/01/roguelike-mud-progress.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/578630483150166010" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/578630483150166010" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2012/01/roguelike-mud-progress.html" title="Roguelike MUD progress" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-FH-FuyDOPn4/TxopQilgPUI/AAAAAAAAAZ4/T_vq2hV94ak/s72-c/rlw7.png" height="72" width="72" /><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27648409.post-8355805927999897623</id><published>2012-01-22T21:49:00.002+13:00</published><updated>2012-01-22T21:49:27.539+13:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="game programming" /><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><title type="text">Mud progress</title><content type="html">It has been a long time since I've worked on my MUD code-base. &amp;nbsp;Most recently, which is to say not that recently at all, I've been concentrating on the roguelike game code. &amp;nbsp;Today however, I managed to get myself to spend a little time on the standard text-based game code.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Weight&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;I was playing around with my container code, and for some reason, that got me motivated to add a 'weight' property to objects. &amp;nbsp;This is of course pretty straightforward. &amp;nbsp;For now, a player can gauge the weight of an object by using the 'consider' command on it. &amp;nbsp;And a player can see how much weight he is carrying, and capable of carrying, but looking at himself. &amp;nbsp;Not sure if there is a standard way to expose these two pieces of information, but if there was I'd prefer to go with it. &amp;nbsp;For now, this will do, as will my use of kilograms as the unit of measurement.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Message formatting&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;My message interpolation pretty much works for the purposes I put it to, but I started to wonder why this wasn't something better documented out on the web. &amp;nbsp;Ideally there would be a MUD wiki somewhere which would define the standard approaches which everyone took. &amp;nbsp;The agreed upon rules for pluralisation, verb conjugation or whatever. &amp;nbsp;Yeah, standard libraries are available for this these days, but they come at a cost. &amp;nbsp;Most that I located are overly complicated and surprisingly arcane.&lt;br /&gt;&lt;br /&gt;In any case, looking at the text I generate when someone 'looks' at another object, I found myself expanding the message formatting.&lt;br /&gt;&lt;blockquote class="tr_bq"&gt;vo = ViewedObject(viewer=actor, object=self, verb=self.containerVerb)&lt;br /&gt;"{0.Pn} {0.v}: {1}".format(vo, "...")&lt;br /&gt;viewing self: "You carry: ..."&lt;br /&gt;viewing other male: "He carries: ..."&lt;br /&gt;viewing object: "It contains: ..."&lt;/blockquote&gt;I already handled 's' (short description) and 'v' (verb). &amp;nbsp;Now after adding a 'gender' property to objects, I also support 'pn' (pronoun). &amp;nbsp;Something resembling verb conjugation is also supported, where the viewer gets a pluralised verb if he is not viewing himself. &amp;nbsp;Good enough, and quick and straightforward is the goal.&lt;br /&gt;&lt;br /&gt;Procrastination led to some web browsing:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;mudconnect.com: &lt;a href="http://www.mudconnect.com/discuss/discuss.cgi?mode=MSG&amp;amp;area=adv_code&amp;amp;message=16373"&gt;Message Expansion&lt;/a&gt;.&lt;br /&gt;This thread has several parties discussing the approaches at use in their MUDs. &amp;nbsp;Some are prohibitively complicated, but there are some good points made.&lt;/li&gt;&lt;li&gt;gamedev.stackoverflow.com: &lt;a href="http://gamedev.stackexchange.com/questions/7174/generating-grammatically-correct-mud-style-attack-descriptions"&gt;Generating grammatically correct MUD-style attack descriptions&lt;/a&gt;.&lt;br /&gt;The question is from someone completely new to the topic, and the answer gives a great breakdown of the various aspects which need to be addressed.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Nothing I am interested in looking into. A good approach for me is to look back at these when issues arise, and to stay straightforward.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Next steps&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Finish implementing encumbrance concept.&lt;/li&gt;&lt;li&gt;No idea! &amp;nbsp;Trying to balance resisting feature creep, and not having a MUD code-base that isn't complete enough to use.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-8355805927999897623?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/8355805927999897623/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2012/01/mud-progress.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/8355805927999897623" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/8355805927999897623" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2012/01/mud-progress.html" title="Mud progress" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27648409.post-5534884242360128228</id><published>2012-01-17T08:27:00.003+13:00</published><updated>2012-01-17T08:27:38.283+13:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><title type="text">Planet MUD-Dev additions &amp; removals</title><content type="html">Added:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://forums.tfcmud.com/blog.php/3-Natilena"&gt;Natilena&lt;/a&gt;&amp;nbsp;- Lua scripting related.&lt;br /&gt;&lt;br /&gt;Removed:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://basternae.org/blog"&gt;Basternae MUD&lt;/a&gt;&amp;nbsp;- Seems to have become a launching page for commercial projects.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-5534884242360128228?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/5534884242360128228/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2012/01/planet-mud-dev-additions-removals.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/5534884242360128228" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/5534884242360128228" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2012/01/planet-mud-dev-additions-removals.html" title="Planet MUD-Dev additions &amp; removals" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27648409.post-6006354989101722088</id><published>2011-12-18T11:45:00.000+13:00</published><updated>2011-12-18T11:45:56.871+13:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><title type="text">MUD development blogs wanted</title><content type="html">MUD development blogs are not that common. &amp;nbsp;Besides the initial set we started with on Planet MUD-Dev, it is rare that new blogs are found to be added. &amp;nbsp;If you know of any that meet the criteria, please comment on this post and let me know the URL.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Blog suitability criteria&lt;/b&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Should contain posts about development of a text-based MUD.&lt;/li&gt;&lt;li&gt;This can be played a browser, played in a custom client or of course a standard telnet client.&lt;/li&gt;&lt;li&gt;Multiplayer roguelikes are considered suitable, as long as their game is represented with text.&lt;/li&gt;&lt;li&gt;Tags or categories should be used to separate suitable posts from off-topic ones. &amp;nbsp;If not, and off-topic posts are too common, I do not add the blogs.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;As it is hard to find blogs, I do not complain to blogs that do not meet the last criteria. &amp;nbsp;The first three primarily represent my interests, as otherwise I wouldn't be interested in running this aggregator.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Unfortunately, I noticed three blogs died. &amp;nbsp;While they didn't have recent posts, having them on the aggregator was useful both to collect any unlikely and unexpected new posts, but also mainly to point to them for anyone interested in doing some MUD-related readings.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Removed blogs&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://dgdhub.org/backend/geeklog.rss"&gt;DGDhub&lt;/a&gt;. &amp;nbsp;Site is present, but content removed.&lt;/li&gt;&lt;li&gt;&lt;a href="http://anvil.ironrealms.com/feed"&gt;Iron Realms&lt;/a&gt;. &amp;nbsp;Default unconfigred web server install now appears at this location.&lt;/li&gt;&lt;li&gt;&lt;a href="http://textgaming.blogspot.com/feeds/posts/default"&gt;Ryan Hampshire&lt;/a&gt;. &amp;nbsp;Blog deleted.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;b&gt;Traffic&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Here are tables of analytics data for anyone else who is procrastinating.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Keywords through which this blog was found.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-jcsbnYOPyWc/Tu0a0J3aMCI/AAAAAAAAAZc/U30QjpJr_ek/s1600/pmd-keywords.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="126" src="http://4.bp.blogspot.com/-jcsbnYOPyWc/Tu0a0J3aMCI/AAAAAAAAAZc/U30QjpJr_ek/s320/pmd-keywords.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;The most common sources of traffic.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-ft8SwEbfmGs/Tu0a1ulNySI/AAAAAAAAAZk/H7gjCYITOV4/s1600/pmd-sources.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="199" src="http://2.bp.blogspot.com/-ft8SwEbfmGs/Tu0a1ulNySI/AAAAAAAAAZk/H7gjCYITOV4/s320/pmd-sources.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;And that's it, I should really do some MUD coding. &amp;nbsp;Or at least something more productive.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-6006354989101722088?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/6006354989101722088/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2011/12/mud-development-blogs-wanted.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/6006354989101722088" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/6006354989101722088" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2011/12/mud-development-blogs-wanted.html" title="MUD development blogs wanted" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-jcsbnYOPyWc/Tu0a0J3aMCI/AAAAAAAAAZc/U30QjpJr_ek/s72-c/pmd-keywords.png" height="72" width="72" /><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27648409.post-5033945297102555432</id><published>2011-12-18T11:16:00.001+13:00</published><updated>2011-12-18T11:16:30.576+13:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><title type="text">2003 MUD-Dev Conference &amp; lost MUD resources</title><content type="html">Back in the day, there was a parallel conference to GDC which was MUD-specific, and organised by posters from the &lt;a href="http://disinterest.org/resource/MUD-Dev/"&gt;MUD-Dev mailing list&lt;/a&gt;. &amp;nbsp;This was the MUD-Dev conference.&lt;br /&gt;&lt;br /&gt;The 2003 conference had a CD produced, for which the contents was described on a now Internet Archived &lt;a href="http://web.archive.org/web/20041119094424/http://www.kanga.nu/MDC/cdrom.2003/"&gt;page&lt;/a&gt;. &amp;nbsp;Unfortunately, my past efforts to locate someone with a copy of this CD have failed. &amp;nbsp;One of the presenters, Nathan Yospe, &lt;a href="https://www.dworkin.nl/pipermail/mud-dev2-archive/2009-March/001435.html"&gt;replied&lt;/a&gt; saying he never saw a copy.&lt;br /&gt;&lt;br /&gt;It is a pity that so much is lost. &amp;nbsp;At least community efforts have recovered a full &lt;a href="http://disinterest.org/resource/MUD-Dev/"&gt;MUD-Dev mailing list archive&lt;/a&gt;, and also a full copy of &lt;a href="http://disinterest.org/resource/imaginary-realities/"&gt;Imaginary Realities&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Has anyone saved any rare MUD resources they think might be of interest? &amp;nbsp;Maybe even some of the publically available files on the conference CD-ROM page?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-5033945297102555432?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/5033945297102555432/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2011/12/2003-mud-dev-conference-lost-mud.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/5033945297102555432" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/5033945297102555432" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2011/12/2003-mud-dev-conference-lost-mud.html" title="2003 MUD-Dev Conference &amp; lost MUD resources" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27648409.post-8044297366936787525</id><published>2011-12-09T23:23:00.001+13:00</published><updated>2011-12-10T02:52:08.433+13:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="game programming" /><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><category scheme="http://www.blogger.com/atom/ns#" term="opencyc" /><title type="text">OpenCycloGraph</title><content type="html">A &lt;a href="http://www.mudbytes.net/topic-3625"&gt;recent post&lt;/a&gt; to MudBytes on using real world natural resource and mineral data to make a game, made me think of&amp;nbsp;&lt;a href="http://opencyc.org/"&gt;OpenCyc&lt;/a&gt;. &amp;nbsp;I've played around with it in the past, but it is somewhat complicated. &amp;nbsp;Starting it up also starts up a web interface through which the ontology can be either clicked through, or searched for specific terms. &amp;nbsp;Even so, it is still hard to get a grip on what is in there and what it means.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-Nv5GpJPYOB0/TuHlEPcanWI/AAAAAAAAAYs/xBzJr76nFBM/s1600/OpenCycBrowser.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="229" src="http://2.bp.blogspot.com/-Nv5GpJPYOB0/TuHlEPcanWI/AAAAAAAAAYs/xBzJr76nFBM/s320/OpenCycBrowser.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Even people who know it well enough to be ready to extend the ontologies are warned that it can be difficult to know whether whatever you wish to add is in there or not. &amp;nbsp;Just clicking through the data, or searching on relevant searching terms that come to mind, I sort of wished for a graph to click through. &amp;nbsp;And this reminded me of &lt;a href="http://code.google.com/p/opencyclograph/"&gt;opencyclograph&lt;/a&gt;. &amp;nbsp;OpenCycloGraph can be pointed at a running instance of OpenCyc, and from there it can fetch and display the hierarchy of concepts.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-YL2WVVU7hsw/TuHnGzL8joI/AAAAAAAAAY0/P3AQIIpq1Lk/s1600/OpenCycloGraph.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="170" src="http://1.bp.blogspot.com/-YL2WVVU7hsw/TuHnGzL8joI/AAAAAAAAAY0/P3AQIIpq1Lk/s320/OpenCycloGraph.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;In the screenshot above, it can be seen showing the results of a search for "Mineral".&lt;br /&gt;&lt;br /&gt;Unfortunately, OpenCycloGraph is not quite ready for use. &amp;nbsp;There are no binaries provided at the Google Code project. &amp;nbsp;This means that anyone wanting to use it, needs to do a little bit of legwork. &amp;nbsp;I'll note below what I did, although I've never really worked in Java or used this IDE before, so maybe I'm doing it a little harder than I need to.&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Download and install NetBeans.&lt;/li&gt;&lt;li&gt;Run NetBeans and import the code as a project.&lt;/li&gt;&lt;li&gt;Find the "GLPanel.java" file under CycloGraph/src/com.touchgraph.graphlayout in NetBeans.&lt;/li&gt;&lt;li&gt;Right click on it, and select "Run File".&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;At this point, you will see a window looking something like the above. &amp;nbsp;However, it won't be able to find a running instance of OpenCyc so it won't really be useful.&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;Download and extract OpenCyc 2.0.&lt;/li&gt;&lt;li&gt;Try and run its "scripts/run-cyc.bat". &amp;nbsp;If it fails due to lack of memory, edit the BAT script and modify it to run the 64-bit version (this is a two line change).&lt;/li&gt;&lt;li&gt;Once it has started running on "localhost" up go back into NetBeans.&lt;/li&gt;&lt;li&gt;Search for "CycServer" which is used in OpenCycloGraph as the default address where it should look for a running instance of OpenCyc. &amp;nbsp;It should be in "GLPanel.java", line 1282. &amp;nbsp;Replace it with "localhost".&lt;/li&gt;&lt;/ol&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-ZXCYVTsIy3I/TuHqW4vJC-I/AAAAAAAAAY8/x89HyDRG9fY/s1600/OpenCycNetBeans.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="170" src="http://3.bp.blogspot.com/-ZXCYVTsIy3I/TuHqW4vJC-I/AAAAAAAAAY8/x89HyDRG9fY/s320/OpenCycNetBeans.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Now when you right-click on "GLPanel.java" and select "Run File", it should "work correctly" for selected values of "work correctly".&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;You start by entering a search term and hitting enter.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-JHPb35EOdw8/TuHu_4PuNvI/AAAAAAAAAZE/dvBjs3ym1-M/s1600/OCG01Search.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="8" src="http://2.bp.blogspot.com/-JHPb35EOdw8/TuHu_4PuNvI/AAAAAAAAAZE/dvBjs3ym1-M/s320/OCG01Search.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This will populate the graph, and from there you can click on related entries of interest.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-SZf3s-_r7VI/TuHvGqMRj_I/AAAAAAAAAZM/VmSEKmOq77s/s1600/OCG02MetalGraph.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="226" src="http://4.bp.blogspot.com/-SZf3s-_r7VI/TuHvGqMRj_I/AAAAAAAAAZM/VmSEKmOq77s/s320/OCG02MetalGraph.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Note that you can see what the relation is, for example above you can see that "NonMetal" is 'disjointWith' "Metal" which seems not very useful to the end user and more likely was added to help out OpenCyc inferencing.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If you find a node and want to know more, you can right click and select "Inspect Node" to update/synchronise the browser display in the left-hand pane.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-wRvaEWvTITc/TuHyOTfTBYI/AAAAAAAAAZU/9FWgqC1eT9U/s1600/OCG03SyncBrowserWindow.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="162" src="http://1.bp.blogspot.com/-wRvaEWvTITc/TuHyOTfTBYI/AAAAAAAAAZU/9FWgqC1eT9U/s320/OCG03SyncBrowserWindow.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;And that's about it. &amp;nbsp;There's a video of me generically browsing game world relevant information for about a minute and a half below. &amp;nbsp;One application would be adding a "light" verb and linking it to objects which are CombustibleFuelSources, for instance.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;object class="BLOGGER-youtube-video" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" data-thumbnail-src="http://i.ytimg.com/vi/zr9uT1y5aj0/0.jpg" height="266" width="320"&gt;&lt;param name="movie" value="http://www.youtube.com/v/zr9uT1y5aj0?version=3&amp;f=user_uploads&amp;c=google-webdrive-0&amp;app=youtube_gdata" /&gt;  &lt;param name="bgcolor" value="#FFFFFF" /&gt;  &lt;embed width="320" height="266"  src="http://www.youtube.com/v/zr9uT1y5aj0?version=3&amp;f=user_uploads&amp;c=google-webdrive-0&amp;app=youtube_gdata" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;An aspect of OpenCyc that escapes me is that either some data is missing and was not released as part of the cut-down OpenCyc public ontology, or I just don't know how to query it yet. &amp;nbsp;Case in point is Mass, massOfObject and MassOfObjectFn. &amp;nbsp;I am unable to locate any entries which map values for these to other ontology objects.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-8044297366936787525?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/8044297366936787525/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2011/12/pencyclograph.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/8044297366936787525" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/8044297366936787525" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2011/12/pencyclograph.html" title="OpenCycloGraph" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-Nv5GpJPYOB0/TuHlEPcanWI/AAAAAAAAAYs/xBzJr76nFBM/s72-c/OpenCycBrowser.png" height="72" width="72" /><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27648409.post-2005834156944534919</id><published>2011-11-29T17:44:00.001+13:00</published><updated>2011-11-29T18:59:46.707+13:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="javascript" /><category scheme="http://www.blogger.com/atom/ns#" term="web programming" /><category scheme="http://www.blogger.com/atom/ns#" term="game programming" /><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><category scheme="http://www.blogger.com/atom/ns#" term="roguelike" /><title type="text">Open source web-based consoles</title><content type="html">I'm looking to bring both my MUD and networked roguelike code-base into the 90's, erm.. that should be 00's these days. &amp;nbsp;A web-based console with connectivity to the backend server through the web server is the way to go.&lt;br /&gt;&lt;br /&gt;I've been collecting candidate "already written wheels" and wanted to collect them in one place.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Forum thread:&lt;/b&gt;&amp;nbsp;&lt;a href="http://roguetemple.com/forums/index.php?topic=1861.0"&gt;HTML+JS Tech Demo&lt;/a&gt;&amp;nbsp;(&lt;a href="http://dhack.googlecode.com/svn/trunk/releases/dhack-current-beta.html"&gt;demo&lt;/a&gt;).&lt;br /&gt;&lt;blockquote&gt;A GPL licensed &lt;a href="http://code.google.com/p/dhack"&gt;code-base&lt;/a&gt; which uses an array of character cells to emulate a curses-like display.&lt;br /&gt;&lt;br /&gt;Advantages: &lt;br /&gt;&lt;ul&gt;&lt;li&gt;Cleanly written code.&lt;/li&gt;&lt;/ul&gt;Disadvantages: &lt;br /&gt;&lt;ul&gt;&lt;li&gt;Restrictively licensed.&lt;/li&gt;&lt;li&gt;Code bound to existing game implementation.&lt;/li&gt;&lt;/ul&gt;&lt;/blockquote&gt;&lt;b&gt;Forum thread:&lt;/b&gt;&amp;nbsp;&lt;a href="http://roguetemple.com/forums/index.php?topic=1639.0"&gt;js-like beta (first version!) released&lt;/a&gt;&amp;nbsp;(&lt;a href="http://ondras.zarovi.cz/js-like/"&gt;demo&lt;/a&gt;).&lt;br /&gt;&lt;blockquote&gt;A BSD licensed&amp;nbsp;&lt;a href="http://code.google.com/p/js-like/"&gt;code-base&lt;/a&gt;&amp;nbsp;which implements three different display mechanisms, canvas, array of character cells and image based.&lt;br /&gt;&lt;br /&gt;Advantages: &lt;br /&gt;&lt;ul&gt;&lt;li&gt;Liberally licensed.&lt;/li&gt;&lt;li&gt;More library like, than game specific.&lt;/li&gt;&lt;/ul&gt;Disadvantages:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Code is somewhat hard to follow.&lt;/li&gt;&lt;/ul&gt;&lt;/blockquote&gt;&lt;b&gt;Forum thread:&lt;/b&gt;&amp;nbsp;DecafMUD (&lt;a href="http://discworld.atuin.net/lpc/decafmud/index.html"&gt;demo&lt;/a&gt;)&lt;br /&gt;&lt;blockquote&gt;A unknown licensed &lt;a href="https://bitbucket.org/stendec/decafmud/"&gt;code-base&lt;/a&gt; which provides a complete out of the box web-based MUD client. Supports different code pages, and able to interpret the complete telnet stream from negotiation to escape codes.&amp;nbsp;Tries to use web sockets for connectivity, but can fall back on flash if they are not usable.&lt;br /&gt;&lt;br /&gt;Advantages: &lt;br /&gt;&lt;ul&gt;&lt;li&gt;Complete solution&lt;/li&gt;&lt;li&gt;Straight-forward code.&lt;/li&gt;&lt;/ul&gt;Disadvantages:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Windows-incompatible repository contents, errors when cloned.&lt;/li&gt;&lt;li&gt;Official web-site down.&lt;/li&gt;&lt;li&gt;Telnet protocol support is superfluous, a modern MUD server should be have a direct connection and not be encumbered by these complications.&lt;/li&gt;&lt;/ul&gt;&lt;/blockquote&gt;While the GPL license is indeed restrictive, and reason enough to avoid using a project. &amp;nbsp;In this case, given a client is kept separated from the server, it shouldn't encumber the server-side in any way that matters.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-2005834156944534919?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/2005834156944534919/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2011/11/open-source-web-based-consoles.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/2005834156944534919" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/2005834156944534919" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2011/11/open-source-web-based-consoles.html" title="Open source web-based consoles" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27648409.post-4159186580124654743</id><published>2011-11-27T23:27:00.001+13:00</published><updated>2011-11-29T00:13:53.944+13:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="game programming" /><category scheme="http://www.blogger.com/atom/ns#" term="research" /><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><category scheme="http://www.blogger.com/atom/ns#" term="dwarf fortress" /><title type="text">Dwarf fortress forum notes #1</title><content type="html">On the overnight train from Beijing to Shanghai the other night, while the man on the bunk below me munched away on sunflower seeds, I really wanted to browse the &lt;a href="http://www.bay12forums.com/smf/index.php"&gt;Bay 12 forums&lt;/a&gt;. &amp;nbsp;The reason for this is that I've been thinking about procedural world generation lately, and not the graphical kind. &amp;nbsp;Having an ontology which defines a wide range of relevant scientific, cultural and historic facts would allow generation to produce something with a direct, if not subconscious, recognisable believability.&lt;br /&gt;&lt;br /&gt;Browsing the Bay 12 forums some time back I came across posts by people who were researching geological, geographical, historical and other areas in order to suggest more correct and realistic directions for Dwarf Fortress brought to mind. &amp;nbsp;This is pretty much the same thing, except rather than gathering them in the hope (one acknowledged to be unlikely) that someone would incorporate them into their game, I'd be looking to generate my own from them.&lt;br /&gt;&lt;br /&gt;Some initial interesting threads:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.bay12forums.com/smf/index.php?topic=82309.0"&gt;Geologic structures and the 3D ore veins&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The first post touches on a lot of subjects related to underground geological generation. &amp;nbsp;&lt;a href="http://www.bay12forums.com/smf/index.php?topic=82309.msg2183956#msg2183956"&gt;Second post&lt;/a&gt;&amp;nbsp;builds on this, and recommends a free book "Petrology of Sedimentary Rocks". &amp;nbsp;&lt;a href="http://www.bay12forums.com/smf/index.php?topic=82309.msg2184086#msg2184086"&gt;Pictures&lt;/a&gt;&amp;nbsp;of giant crystals in real life caves. &amp;nbsp;&lt;a href="http://www.bay12forums.com/smf/index.php?topic=82309.msg2197375#msg2197375"&gt;Fault lines&lt;/a&gt;&amp;nbsp;and similar things, with ascii diagrams. &amp;nbsp;Suggested potential use of perlin noise to model ore deposits. &amp;nbsp;Pointer to &lt;a href="http://sourceforge.net/projects/worldbuilder/"&gt;this&lt;/a&gt; "scientifically&amp;nbsp;plausible"&amp;nbsp; world building open source project.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.bay12forums.com/smf/index.php?topic=80022.0"&gt;Add real solid density values for stones&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;From a world ontology point of view, this is gold. It not only has discussion about density and colour, but also temperatures like their melting points. &amp;nbsp;This was kind of what I was looking for when I was looking in the latest release of OpenCyc lately.. but failed to find within it. &amp;nbsp;There's even a link to data on &lt;a href="http://www.fpl.fs.fed.us/research/centers/woodanatomy/techsheets_display.php?geo_category_id=4&amp;amp;genus_commonname_criteria=c&amp;amp;sorting_rule=1a"&gt;various woods&lt;/a&gt;. &amp;nbsp;People are even having samples shipped to them and measuring them themselves, in order to get their facts straight.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.bay12forums.com/smf/index.php?topic=83612.0"&gt;Alchemists&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Starts off talking with respect to the way the game works, rather than related aspects featured in history. &amp;nbsp;Turns to how it was featured &lt;a href="http://www.bay12forums.com/smf/index.php?topic=83612.msg2235532#msg2235532"&gt;in history&lt;/a&gt;, rather than in fictional sources like AD&amp;amp;D. &amp;nbsp;Veers to &lt;a href="http://www.bay12forums.com/smf/index.php?topic=83612.msg2238019#msg2238019"&gt;astronomy&lt;/a&gt;&amp;nbsp;and&amp;nbsp;the &lt;a href="http://www.bay12forums.com/smf/index.php?topic=83612.msg2238175#msg2238175"&gt;person responsible&lt;/a&gt; for modern perspective of alchemy. &amp;nbsp;Then to dwarf and magic related talk unrelated to history.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.bay12forums.com/smf/index.php?topic=83602.msg2233570"&gt;Evil plants in real life&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Using actual plants that exist as a baseline for the believability of game plants, seems to be pretty relevant. &amp;nbsp;Initial post links to a cracked.com article about 10 creepy plants, then &lt;a href="http://www.bay12forums.com/smf/index.php?topic=83602.msg2234502#msg2234502"&gt;another post&lt;/a&gt; links to a cracked.com article about 6 things that shouldn't explode but did (specifically the &lt;a href="http://en.wikipedia.org/wiki/Sandbox_Tree"&gt;sandbox tree&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="link: http://www.bay12forums.com/smf/index.php?topic=81681.0"&gt;Complete Weapons Database&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;A variety of Dwarf Fortress weapon definitions, the given weapon properties may or may not be generically useful or realistic. &amp;nbsp;No references given. &amp;nbsp;&lt;a href="http://www.bay12forums.com/smf/index.php?topic=81681.msg2164072#msg2164072"&gt;Pointer&lt;/a&gt; to a D&amp;amp;D pole-arm quiz, of unknown correctness. &amp;nbsp;Veered to &lt;a href="http://www.bay12forums.com/smf/index.php?topic=81681.msg2233973#msg2233973"&gt;mention&lt;/a&gt; of asian weapons, which is outside the scope of my 13th century England focus.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.bay12forums.com/smf/index.php?topic=22426.0"&gt;Absent pre-1400 technologies&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Started with a &lt;a href="http://www.bay12forums.com/smf/index.php?topic=22426.msg243564#msg243564"&gt;list&lt;/a&gt; of pre-1400 technologies that are not currently found in Dwarf Fortress, with the note that its developer has stated that these are the only ones to be in the game. &amp;nbsp;&lt;a href="http://www.bay12forums.com/smf/index.php?topic=22426.msg243691#msg243691"&gt;Moved&lt;/a&gt; onto bows and blowguns, to actual &lt;a href="http://www.bay12forums.com/smf/index.php?topic=22426.msg244269#msg244269"&gt;guns&lt;/a&gt; and then to mysterious unreproducible &lt;a href="http://www.bay12forums.com/smf/index.php?topic=22426.msg245143#msg245143"&gt;inventions&lt;/a&gt; (damascus steel / archimedes mirror). &amp;nbsp;Then &lt;a href="http://www.bay12forums.com/smf/index.php?topic=22426.msg2282177#msg2282177"&gt;more&lt;/a&gt; about different &lt;a href="http://www.bay12forums.com/smf/index.php?topic=22426.msg2284851#msg2284851"&gt;kinds&lt;/a&gt; of bows and their uses and users. &amp;nbsp;And finally, back on topic with pre-1400 technology &lt;a href="http://www.bay12forums.com/smf/index.php?topic=22426.msg2412785#msg2412785"&gt;wishlist&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.bay12forums.com/smf/index.php?topic=81484.0"&gt;A few thoughts for the new city maps&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Starts off with general wishes, but then moves on to &lt;a href="http://www.bay12forums.com/smf/index.php?topic=81484.msg2151644#msg2151644"&gt;relating&lt;/a&gt; how real cities came about, with &lt;a href="http://www.bay12forums.com/smf/index.php?topic=81484.msg2152614#msg2152614"&gt;links&lt;/a&gt; over to similar past posts in the "Future of the Fortress" topic. &amp;nbsp;Roman city &lt;a href="http://www.bay12forums.com/smf/index.php?topic=81484.msg2154303#msg2154303"&gt;planning&lt;/a&gt;. &amp;nbsp;Pictures and links to existing &lt;a href="http://www.bay12forums.com/smf/index.php?topic=81484.msg2166734#msg2166734"&gt;cities&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.bay12forums.com/smf/index.php?topic=83426.0"&gt;Alien Creature Behaviours and Myths&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.bay12forums.com/smf/index.php?topic=83426.msg2227949#msg2227949"&gt;References&lt;/a&gt; to monster archetypes within original historical myths. A &lt;a href="http://www.bay12forums.com/smf/index.php?topic=83426.msg2228664#msg2228664"&gt;desire&lt;/a&gt; for Gaelic and other cultural faeries, with detail of specific stories. &amp;nbsp;&lt;a href="http://www.bay12forums.com/smf/index.php?topic=83426.msg2228787#msg2228787"&gt;Link&lt;/a&gt; to Russian house spirits wikipedia page. &amp;nbsp;&lt;a href="http://www.monstropedia.org/index.php?title=Krasue"&gt;Link&lt;/a&gt; to flying asian vampire head and introduction of Monstropedia, which might be a good source for further examples. &amp;nbsp;The Dullahan is &lt;a href="http://www.bay12forums.com/smf/index.php?topic=83426.msg2231431#msg2231431"&gt;brought up&lt;/a&gt;, said to be "a cross between the headless horseman and the grim reaper". &amp;nbsp;&lt;a href="http://www.bay12forums.com/smf/index.php?topic=83426.msg2232869#msg2232869"&gt;Something&lt;/a&gt; about Kitsune that I didn't read because Japanese culture is out of scope. &amp;nbsp;Then the topic gets further Kitsune detail, before heading off into wishful thinking territory.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.bay12forums.com/smf/index.php?topic=69453.0"&gt;Cooking and Brewing Diversity: The Food and Drink Megathread&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Starts off with a breakdown of how cooking should ideally work, which is a good starting point for the elements that would be the breakdown for this part of the ontology. &amp;nbsp;Someone posts a &lt;a href="http://www.bay12forums.com/smf/index.php?topic=69453.msg1681034#msg1681034"&gt;list&lt;/a&gt; of recent cooking threads which look to cover a wide range of interesting parts of the big picture. &amp;nbsp;&lt;a href="http://www.bay12forums.com/smf/index.php?topic=69453.msg1689208#msg1689208"&gt;Reference&lt;/a&gt; to a wikipedia page on the history of alcohol. &amp;nbsp;&lt;a href="http://www.bay12forums.com/smf/index.php?topic=69453.msg1694544#msg1694544"&gt;Use&lt;/a&gt; of honey for preservation, and vinegar for cleaning. &amp;nbsp;Pies and their history are &lt;a href="http://www.bay12forums.com/smf/index.php?topic=69453.msg1772481#msg1772481"&gt;brought up&lt;/a&gt;. &amp;nbsp;The mining and storage of ice are &lt;a href="http://www.bay12forums.com/smf/index.php?topic=69453.msg1793422#msg1793422"&gt;next&lt;/a&gt;. &amp;nbsp;An uber-&lt;a href="http://www.bay12forums.com/smf/index.php?topic=69453.msg2330381#msg2330381"&gt;post&lt;/a&gt; with lots of history food-related pointers.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;To be done:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.bay12forums.com/smf/index.php?topic=60554.0"&gt;Future of the Fortress: The Development Page&lt;/a&gt;&amp;nbsp;(342 pages).&lt;br /&gt;&lt;br /&gt;This thread seems to be where the developer gets feedback from forum-goers, which includes comments and references about how topical things were done in history. &amp;nbsp;Lots of gold to be mined here.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.bay12forums.com/smf/index.php?topic=71494.0"&gt;SanDiego's realistic tissue rebalance&lt;/a&gt;&amp;nbsp;(6 pages).&lt;br /&gt;&lt;br /&gt;Bleeding, snapping of tendons, brain plasticity.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.bay12forums.com/smf/index.php?topic=22308.0"&gt;Underground Diversity&lt;/a&gt; (46 pages).&lt;br /&gt;&lt;br /&gt;Interesting things to flesh out adventuring below ground.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.bay12forums.com/smf/index.php?topic=31613.0"&gt;Aboveground Diversity&lt;/a&gt; (23 pages).&lt;br /&gt;&lt;br /&gt;Interesting things to flesh out adventuring above ground.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;div&gt;Sources:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.bay12forums.com/smf/index.php?board=5.0"&gt;DF Suggestions&lt;/a&gt; board.&lt;br /&gt;&lt;br /&gt;Some of the topic titles infer presence of useful information, but there are a lot there. &amp;nbsp;A better idea is to start with known threads of interest and work my way through the posts made by people who post the most useful history/science-related posts.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Poster:&amp;nbsp;&lt;a href="http://www.bay12forums.com/smf/index.php?action=profile;u=35220;area=showposts;sa=messages"&gt;Jeoshua&lt;/a&gt; (processed up to: May 06, 2011, 02:54:50 pm).&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Poster: &lt;a href="http://www.bay12forums.com/smf/index.php?action=profile;u=21396;area=showposts;sa=messages"&gt;NW_Kohaku&lt;/a&gt; (processed from: April 11, 2011, 12:21:22 pm up to: May 19, 2011, 04:12:47 pm).&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;Anyway, that's a good start.&lt;br /&gt;&lt;br /&gt;Next post: Dwarf fortress forum notes #2.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-4159186580124654743?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/4159186580124654743/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2011/11/dwarf-fortress-forum-notes-1.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/4159186580124654743" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/4159186580124654743" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2011/11/dwarf-fortress-forum-notes-1.html" title="Dwarf fortress forum notes #1" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27648409.post-7450705366362143530</id><published>2011-08-19T20:30:00.001+12:00</published><updated>2011-08-19T20:30:28.375+12:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="game programming" /><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><title type="text">Planet MUD-Dev Update</title><content type="html">Added the following links to &lt;a href="http://planet-muddev.disinterest.org/"&gt;Planet Mud-Dev&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blog.appendixg.com/"&gt;Appendix G&lt;/a&gt;:&lt;blockquote&gt;&lt;b&gt;Last activity:&lt;/b&gt; August 2011.&lt;br /&gt;&lt;b&gt;Summary:&lt;/b&gt; Regularly updated, enthusiastic for a sandbox game with player created cities and more.  Hodge podge theme including western, fantasy, post appocalyptic and more.&lt;/blockquote&gt;Thanks for the link &lt;a href="http://godwars2.blogspot.com/"&gt;Kavir&lt;/a&gt;!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-7450705366362143530?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/7450705366362143530/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2011/08/planet-mud-dev-update_19.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/7450705366362143530" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/7450705366362143530" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2011/08/planet-mud-dev-update_19.html" title="Planet MUD-Dev Update" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27648409.post-3277626887409204979</id><published>2011-08-17T07:25:00.000+12:00</published><updated>2011-08-17T07:25:36.733+12:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="game programming" /><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><title type="text">Planet MUD-Dev Update</title><content type="html">Added the following links to &lt;a href="http://planet-muddev.disinterest.org/"&gt;Planet Mud-Dev&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://chrysalisgames.blogspot.com/"&gt;Chrysalis Games&lt;/a&gt;:&lt;blockquote&gt;&lt;b&gt;Last activity:&lt;/b&gt; August 2011.&lt;br /&gt;&lt;b&gt;Summary:&lt;/b&gt; It had gone silent for a while, but recent posts indicate that interest is still present.  The theme seems to be Wheel of Time.  The last posts touch on stats and choice of races.&lt;/blockquote&gt;&lt;a href="http://karinthadillo.blogspot.com/"&gt;Karintha&lt;/a&gt;:&lt;blockquote&gt;&lt;b&gt;Last activity:&lt;/b&gt; December 2007.&lt;br /&gt;&lt;b&gt;Summary:&lt;/b&gt; Has been dead for a while, but posts touch on roleplaying, design and the state of MUD forums among other things.&lt;/blockquote&gt;&lt;a href="http://slothmudiii.blogspot.com/"&gt;SlothMud&lt;/a&gt;:&lt;blockquote&gt;&lt;b&gt;Last activity:&lt;/b&gt; November 2009.&lt;br /&gt;&lt;b&gt;Summary:&lt;/b&gt; Has also been dead for a while, but posts touch on dwindling player numbers, and summaries of periodic updates made to the gameplay.&lt;/blockquote&gt;&lt;a href="http://mudreviews.blogspot.com/"&gt;A Personal Tour de Mud&lt;/a&gt;:&lt;blockquote&gt;&lt;b&gt;Last activity:&lt;/b&gt; November 2010.&lt;br /&gt;&lt;b&gt;Summary:&lt;/b&gt; Dead also, but still twitching compared to the previous two.  I hesitated to add this one, as it isn't strictly development related.  But I find a lot of value as a MUD developer in reading reviews and comparing to my own ideas and preconceptions of what I would like to do, so I think this contributes from that angle.  Reviews also make allusions to code for the MUDs.&lt;/blockquote&gt;Thanks for these links &lt;a href="http://godwars2.blogspot.com/"&gt;Kavir&lt;/a&gt;!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-3277626887409204979?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/3277626887409204979/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2011/08/planet-mud-dev-update_17.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/3277626887409204979" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/3277626887409204979" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2011/08/planet-mud-dev-update_17.html" title="Planet MUD-Dev Update" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27648409.post-822404741504104044</id><published>2011-08-16T07:55:00.003+12:00</published><updated>2011-08-16T07:59:30.912+12:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="game programming" /><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><title type="text">MUD-Dev discussion: August 8th-14th</title><content type="html">Rather than work on one of my many hobby projects, procrastination drives me to summarise MUD discussion during the past week at the various major forums.  I think it is quite clear that if you want to productively discuss MUD development, &lt;a href="http://www.mudbytes.net/"&gt;MUDBytes&lt;/a&gt; is the place to go.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;MUDBytes&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.mudbytes.net/topic-3527-57630"&gt;Struggling with my object sys...&lt;/a&gt;&lt;blockquote&gt;&lt;a href="http://www.mudbytes.net/index.php?a=profile&amp;w=1164"&gt;Nich&lt;/a&gt; using the Python code-base &lt;a href="http://code.google.com/p/evennia/"&gt;Evennia&lt;/a&gt; wants to program an object system that empowers players to create content, perhaps by data or perhaps by access to the scripting system.  Composition, object orientation, multiple inheritance and entity systems are touched on.  Tyche chimes in with a promising but mostly incomprehensible &lt;a href="http://www.mudbytes.net/index.php?a=topic&amp;t=3527&amp;p=57560#p57560"&gt;post&lt;/a&gt; about Genesis and ColdC.  One of a "No-SQL" database or GIT is suggested for use, despite not really having any bearing on the subject at hand.  Otherwise devolves into Evennia/Python-specific discussion.&lt;/blockquote&gt;&lt;a href="http://www.mudbytes.net/topic-3414-57652"&gt;Anachronism, my Telnet library, Brand-new&lt;/a&gt;&lt;blockquote&gt;This topic is a few months old now, but still alive.&lt;br /&gt;&lt;br /&gt;"Anachronism allows you to consider Telnet as a set of data channels, rather than a stream of text with embedded data. Telopts are treated almost like ports, and when you attach a channel to one, Anachronism handles negotiation automatically and presents subnegotiation data as just another stream of data. This makes it really easy to keep Telnet away from the part of your code that actually does stuff, and it makes it possible to create a channel implementation once and share it with everyone."&lt;br /&gt;&lt;br /&gt;Developed using a Ruby parser generator, and examples are given using Ruby so are inscrutable unless you have learned that scripting language.  However, the project itself is c-based.  Sounds like a nice idea in theory, but no evidence of uptake yet.&lt;/blockquote&gt;&lt;a href="http://www.mudbytes.net/topic-3523-unread"&gt;Using Css Server-side For MVC&lt;/a&gt;&lt;blockquote&gt;Suggests that MUD text is marked up server-side using CSS definitions.  An interesting idea that hasn't been suggested before.  There are some silly suggestions, like custom colouring for different areas in a MUD.  But also interesting speculation on how it would work with &lt;a href="http://www.zuggsoft.com/zmud/mxp.htm"&gt;MXP&lt;/a&gt;.  Also an working proof of concept Ruby-based implementation &lt;a href="http://www.mudbytes.net/index.php?a=topic&amp;t=3523&amp;p=57543#p57543"&gt;is provided&lt;/a&gt;.  Mark-up approaches are then discussed, with forum-like mark-up being suggested as a replacement for HTML.  Discussion devolves into someone's implementation of some extremely stripped down implementation, not using CSS or HTML.&lt;/blockquote&gt;&lt;a href="http://www.mudbytes.net/file-2825"&gt;KMPH (FUSC)&lt;/a&gt;&lt;blockquote&gt;Uploaded code from Kavir, was updated by Scandum.  Written in C with support for several common code-bases.  Intended to be hooked in to process incoming and outgoing text, handling telnet negotiation, unicode, colours, protocols and more.  The update does the following: "handle broken packets and resolve a cyclic TTYPE issue with windows telnet."&lt;/blockquote&gt;&lt;br /&gt;&lt;b&gt;Top Mud Sites&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.topmudsites.com/forums/advanced-mud-concepts/6520-community-survey-what-do-mud-players-want.html"&gt;Community survey: What do MUD players want?&lt;/a&gt;&lt;blockquote&gt;About the only sign of life in these forums, and is probably pointless given that most people doing this never complete their efforts.  However, contains useful information like how worthwhile it is to actually use compression.  Also touches on other topics like what races to offer.&lt;/blockquote&gt;&lt;br /&gt;&lt;b&gt;The Mud Connector&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.mudconnect.com/discuss/discuss.cgi?mode=MSG&amp;area=admin_ethics&amp;message=10570#10570"&gt;Registration and required e-mail addresses&lt;/a&gt;&lt;blockquote&gt;Discussion about whether it is acceptable to request email addresses from players, and what might be done about them.&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-822404741504104044?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/822404741504104044/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2011/08/mud-dev-discussion-august-8th-14th.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/822404741504104044" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/822404741504104044" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2011/08/mud-dev-discussion-august-8th-14th.html" title="MUD-Dev discussion: August 8th-14th" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27648409.post-4458955406237493892</id><published>2011-08-16T05:31:00.000+12:00</published><updated>2011-08-16T05:31:40.773+12:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="game programming" /><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><title type="text">AJAX Mud Forums</title><content type="html">Link: &lt;a href="http://forums.ajaxmud.net"&gt;forums.ajaxmud.net&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Searching for new blogs to add to Planet MUD-Dev, I stumbled across this forum site I hadn't seen before or perhaps looked at in detail if I had.  I'll go over and briefly summarise interesting posts.&lt;ol&gt;&lt;li&gt;&lt;a href="http://forums.ajaxmud.net/Thread-HTTP-Streaming-testing-results"&gt;HTTP Streaming testing results&lt;/a&gt;: A good and straightforward overview of AJAX approaches, with notes detailing experimentation by the poster.&lt;/li&gt;&lt;li&gt;&lt;a href="http://forums.ajaxmud.net/Thread-Socket-IO-NodeJS-library"&gt;Socket.IO NodeJS library&lt;/a&gt;: Brings up &lt;a href="http://socket.io/"&gt;socket.io&lt;/a&gt; which is a library which implements AJAX approaches, the fallback approach using Flash and web socket support.&lt;/li&gt;&lt;li&gt;&lt;a href="http://forums.ajaxmud.net/Thread-jsMUD-the-NodeJS-MUD-Engine"&gt;jsMUD - the NodeJS MUD Engine&lt;/a&gt;: Notes on an effort to write a node.js MUD engine, which resulted in a few magazine articles.&lt;/li&gt;&lt;/ol&gt;That's pretty much it.  The forums are pretty bare and only really go into detail on specialised subjects.  Again, the best place to discuss these topics is within the major MUD forums.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-4458955406237493892?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/4458955406237493892/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2011/08/ajax-mud-forums.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/4458955406237493892" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/4458955406237493892" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2011/08/ajax-mud-forums.html" title="AJAX Mud Forums" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27648409.post-8158014082683577715</id><published>2011-08-16T05:09:00.000+12:00</published><updated>2011-08-16T05:09:14.697+12:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="game programming" /><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><title type="text">stackoverflow / gamedev.stackexchange</title><content type="html">Searching for new blogs to add to Planet MUD-Dev, I stumbled across the "mud" tags on both &lt;a href="http://stackoverflow.com/questions/tagged/mud"&gt;stackoverflow&lt;/a&gt; and &lt;a href="http://gamedev.stackexchange.com/questions/tagged/mud"&gt;gamedev.stackexchange&lt;/a&gt;.  Both of these resources now serve to collect questions from the both the clueless, the lazy and also those who are a combination of both qualities.&lt;br /&gt;&lt;br /&gt;I've done a quick survey of the worthwhile questions posted and their answers, and the results follow.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://stackoverflow.com/questions/tagged/mud"&gt;stackoverflow&lt;/a&gt;:&lt;blockquote&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://gamedev.stackexchange.com/questions/7174/generating-grammatically-correct-mud-style-attack-descriptions"&gt;Generating grammatically correct MUD-style attack descriptions&lt;/a&gt;&lt;br /&gt;The top two answers are very good, one going into detail on the subject and the other pointing to useful libraries that can be employed to solve the problem.&lt;/li&gt;&lt;/ol&gt;&lt;/blockquote&gt;&lt;a href="http://stackoverflow.com/questions/tagged/mud"&gt;gamedev.stackexchange&lt;/a&gt;:&lt;blockquote&gt;None!&lt;/blockquote&gt;It is not surprising to me that there aren't many worthwhile questions and answers.  These sites are good for generic questions, like generalist programming language specific questions, even if they are MUD related.  But it is a place unsuitable for questions better targeted at MUD developers, particularly in any of the MUD-specific forums.  However, you can't help those who won't help themselves...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-8158014082683577715?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/8158014082683577715/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2011/08/stackoverflow-gamedevstackexchange.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/8158014082683577715" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/8158014082683577715" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2011/08/stackoverflow-gamedevstackexchange.html" title="stackoverflow / gamedev.stackexchange" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27648409.post-696526279717553668</id><published>2011-08-16T03:41:00.000+12:00</published><updated>2011-08-16T03:41:12.448+12:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="game programming" /><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><title type="text">Planet MUD-Dev Update</title><content type="html">Did another trawl of the search engines (Bing, Duck Duck Go and Google) for "text mud development blog" and added the resulting links to &lt;a href="http://planet-muddev.disinterest.org/"&gt;Planet Mud-Dev&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://ilyrias.blogspot.com/"&gt;Ilyrias MUD&lt;/a&gt;:&lt;blockquote&gt;&lt;b&gt;Last activity:&lt;/b&gt; September 2006.&lt;br /&gt;&lt;b&gt;Summary:&lt;/b&gt; Most likely a dead blog for a failed commercial MUD.  Very few posts, one of which is on NPC behaviour and scripting.&lt;/blockquote&gt;&lt;br /&gt;&lt;a href="http://blog.tsosmud.org/feeds/posts/default?alt=rss"&gt;Sea of Souls&lt;/a&gt;:&lt;blockquote&gt;&lt;b&gt;Last activity:&lt;/b&gt; December 2009.&lt;br /&gt;&lt;b&gt;Summary:&lt;/b&gt; Most likely a dead blog, but the MUD behind it is still live.  A Wheel of Time themed Smaug.  Tens of posts tagged with development.&lt;/blockquote&gt;&lt;br /&gt;If you know the URL of a MUD or MUD developer that has interesting development related posts and isn't already present here, let me know.  Similarly, if you think a blog on this feed should be removed, also let me know.  Post in the comments for either of these, or any other thoughts.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-696526279717553668?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/696526279717553668/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2011/08/planet-mud-dev-update.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/696526279717553668" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/696526279717553668" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2011/08/planet-mud-dev-update.html" title="Planet MUD-Dev Update" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27648409.post-1656546577338396185</id><published>2011-05-15T00:55:00.000+12:00</published><updated>2011-05-15T00:55:31.747+12:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="computer games" /><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><title type="text">A real Imaginary Realities mirror</title><content type="html">Probably over a year or two ago now, &lt;a href="http://clift.org/fred/"&gt;Fred Clift&lt;/a&gt; replied to a message I sent to the a mailing list and mentioned he had a full mirror of Imaginary Realities.  Up to this point, the best mirror was the text only copy hosted at &lt;a href="http://tharsis-gate.org/articles/imaginary.html"&gt;this site&lt;/a&gt;.  However, the full mirror was not really usable as-is.  The index pages were missing and javascript redirected every visitor to the original now defunct URL of the site.  So it sat on my hard drive until now.&lt;br /&gt;&lt;br /&gt;I've finally had the chance to process the files and put them up for browsing in all their glory.  Note that one author does not want their article published any more and requested it be removed from the old mirror, so it has been removed from this one as well.  Both the mirror and the downloadable snapshot have had it removed.&lt;br /&gt;&lt;br /&gt;Link: &lt;a href="http://imaginary-realities.disinterest.org/"&gt;http://imaginary-realities.disinterest.org/&lt;/a&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-l992tsRiI5c/Tc53h-bfJQI/AAAAAAAAAW8/MZ1hh07af9U/s1600/imaginary-realities-screen.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="217" width="400" src="http://3.bp.blogspot.com/-l992tsRiI5c/Tc53h-bfJQI/AAAAAAAAAW8/MZ1hh07af9U/s400/imaginary-realities-screen.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Download: &lt;a href="http://disinterest.org/imaginary-realities-2011-05-14.zip"&gt;imaginary-realities-2011-05-14.zip&lt;/a&gt; (13.7 MB)&lt;br /&gt;&lt;br /&gt;Unfortunately, it is unlikely the forum threads associated with each article will ever be recovered.  Both them and the rest of the forum contents.  If someone else mirrored this, and happens to have a copy I'd like to find out otherwise though.  But MUD forums come and go all the time, all the time and effort discussing things going to waste.  Imaginary Realities, MUDMagic, ...  Anyway, enjoy the mirror.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-1656546577338396185?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/1656546577338396185/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2011/05/real-imaginary-realities-mirror.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/1656546577338396185" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/1656546577338396185" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2011/05/real-imaginary-realities-mirror.html" title="A real Imaginary Realities mirror" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-l992tsRiI5c/Tc53h-bfJQI/AAAAAAAAAW8/MZ1hh07af9U/s72-c/imaginary-realities-screen.png" height="72" width="72" /><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27648409.post-6325074983086313048</id><published>2011-05-08T19:55:00.000+12:00</published><updated>2011-05-08T19:55:54.243+12:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="telnet" /><category scheme="http://www.blogger.com/atom/ns#" term="game programming" /><category scheme="http://www.blogger.com/atom/ns#" term="computer games" /><category scheme="http://www.blogger.com/atom/ns#" term="windows" /><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><category scheme="http://www.blogger.com/atom/ns#" term="roguelike" /><title type="text">Roguelike MUD progress #6 - Chinese character sets</title><content type="html">Previous post: &lt;a href="/2010/09/roguelike-mud-progress-5.html"&gt;Roguelike MUD progress #5&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Feeling like doing a bit of programming, I decided to run my roguelike MUD code and see if there was anything that I might feel drawn to working on.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-Gs4d0C9q5Nw/TcZIzYVxEpI/AAAAAAAAAWk/ot3wHiHZtcw/s1600/2011-05-08%2B-%2BRoguelike%2BMUD%2B-%2B01%2B-%2BPast%2Blogin.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="271" width="400" src="http://3.bp.blogspot.com/-Gs4d0C9q5Nw/TcZIzYVxEpI/AAAAAAAAAWk/ot3wHiHZtcw/s400/2011-05-08%2B-%2BRoguelike%2BMUD%2B-%2B01%2B-%2BPast%2Blogin.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;This must be the first time I have tested it since I bought a Chinese laptop.  I have debug menus in-game which show me all four character sets, and they now show the following.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-3cUaZQCemug/TcZIzaJc0qI/AAAAAAAAAWs/lv9mP8zF8Cw/s1600/2011-05-08%2B-%2BRoguelike%2BMUD%2B-%2B02%2B-%2BChinese%2Bcharacter%2Bsets.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="271" width="400" src="http://2.bp.blogspot.com/-3cUaZQCemug/TcZIzaJc0qI/AAAAAAAAAWs/lv9mP8zF8Cw/s400/2011-05-08%2B-%2BRoguelike%2BMUD%2B-%2B02%2B-%2BChinese%2Bcharacter%2Bsets.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Windows Telnet looks better than Putty, but if Putty is what I have to use now, then that's the easiest path forward.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-JoFgRqm4gzI/TcZIzrEaKAI/AAAAAAAAAW0/UhlpNIlqQnc/s1600/2011-05-08%2B-%2BRoguelike%2BMUD%2B-%2B03%2B-%2BEt%2Btu%2BPutty.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="251" width="400" src="http://1.bp.blogspot.com/-JoFgRqm4gzI/TcZIzrEaKAI/AAAAAAAAAW0/UhlpNIlqQnc/s400/2011-05-08%2B-%2BRoguelike%2BMUD%2B-%2B03%2B-%2BEt%2Btu%2BPutty.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;It looks like Putty is also not working reliably now.  Going back to Windows Telnet, maybe there is some way to get DOS to display CP 437 without having access to the ability to switch operating system languages.  And it turns out there is, typing &lt;cite&gt;chcp 437&lt;/cite&gt; in a DOS console does the trick.  But unfortunately, it uses a different font and it also seems to break handling of escape codes.&lt;br /&gt;&lt;br /&gt;Unfortunately, this is going to require a lot more research and work.  I can't say I am enthused about it, as I would rather be just working on game code.  But maybe I can detect Chinese Windows and use unicode characters, as they seem to be available.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-6325074983086313048?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/6325074983086313048/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2011/05/roguelike-mud-progress-6-chinese.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/6325074983086313048" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/6325074983086313048" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2011/05/roguelike-mud-progress-6-chinese.html" title="Roguelike MUD progress #6 - Chinese character sets" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-Gs4d0C9q5Nw/TcZIzYVxEpI/AAAAAAAAAWk/ot3wHiHZtcw/s72-c/2011-05-08%2B-%2BRoguelike%2BMUD%2B-%2B01%2B-%2BPast%2Blogin.png" height="72" width="72" /><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27648409.post-2295349869553254470</id><published>2011-05-02T19:15:00.001+12:00</published><updated>2011-05-02T19:21:34.646+12:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="computer games" /><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><title type="text">Trying Imperian</title><content type="html">Since I've spent a little time in the past two days doing some MUD-related work, I felt like trying one out.  I decided to give &lt;a href="http://www.imperian.com/index.php"&gt;Imperian&lt;/a&gt; a go.  If I recall correctly, the first choice was from a long list of races.  Some had odd names, and I had no idea what the difference was, but making a choice you have to live with for the life of your gameplay is an unimportant one.. so I effectively randomly picked one.&lt;br /&gt;&lt;br /&gt;This dumped me in a isolated and staged environment, mostly comprised of filler rooms separating NPCs, each of whom offers a functional service.  The filler rooms are not even described.  This environment is portrayed as a past version of the city I would enter the real game within.  It is certainly better than past newbie experiences I have seen, like "newbie schools" and shared locations where confusing goings-on and killing fields of menial animals exist.&lt;br /&gt;&lt;br /&gt;Many of the commands are coloured and hyperlinked, which makes it almost like a click and read experience.  This is quite nice, but would be even better if it were done more consistently.  The occasional command is simply not linked, and other cases where commands could be linked are not taken advantage of.&lt;br /&gt;&lt;br /&gt;The map is nicely coloured, and is clearly matched the the &lt;cite&gt;tasks&lt;/cite&gt; command, making working out where to go to "complete" the introductory area a breeze.  However, the overlaying map window seems to serve no purpose.  It just features linked rooms, one of which is highlighted as the current location.  It is a shame, because with better integration it wouldn't be useless and could be even more useful than the text map displayed below.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-I2fnuVSeqw0/Tb5PQwoKKOI/AAAAAAAAAVM/9dfmoOv5Q_c/s1600/imperian-01-tutorial-map.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="266" width="400" src="http://2.bp.blogspot.com/-I2fnuVSeqw0/Tb5PQwoKKOI/AAAAAAAAAVM/9dfmoOv5Q_c/s400/imperian-01-tutorial-map.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Having completed the introductory area, the player is then confined to a large and confusing list of guilds which they have to select.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-ZTefouUZURs/Tb5PRAm5b_I/AAAAAAAAAVU/n6KlBlkrdJI/s1600/imperian-02-tutorial-guild-selection.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="267" width="400" src="http://2.bp.blogspot.com/-ZTefouUZURs/Tb5PRAm5b_I/AAAAAAAAAVU/n6KlBlkrdJI/s400/imperian-02-tutorial-guild-selection.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;The description for each of these guilds, is mostly meaningless to me.  Another important commitment to a gameplay defining choice which is made into a confusing and arbitrary experience.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-T38uS8DL01k/Tb5PRe8PgbI/AAAAAAAAAVc/xbw2yf7icts/s1600/imperian-03-tutorial-guild-text.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="268" width="400" src="http://1.bp.blogspot.com/-T38uS8DL01k/Tb5PRe8PgbI/AAAAAAAAAVc/xbw2yf7icts/s400/imperian-03-tutorial-guild-text.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Having randomly selected a guild, I am next confined to selection of a council.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-9SXG9hgy-io/Tb5PRbOKEdI/AAAAAAAAAVk/P6riJqMYfAc/s1600/imperian-04-tutorial-select-city-council.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="266" width="400" src="http://4.bp.blogspot.com/-9SXG9hgy-io/Tb5PRbOKEdI/AAAAAAAAAVk/P6riJqMYfAc/s400/imperian-04-tutorial-select-city-council.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;The first thing I see when I attempt to read about a council, is a long and meaningless list of names and positions.  This means nothing to me and makes me wonder why I am being forced to jump through this hoop.  I choose this council, for lack of any idea what else to do.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-JbKcD0tLCQI/Tb5PRnriYmI/AAAAAAAAAVs/3B-MujCFYp0/s1600/imperian-05-tutorial-help-ithaqua.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="267" width="400" src="http://1.bp.blogspot.com/-JbKcD0tLCQI/Tb5PRnriYmI/AAAAAAAAAVs/3B-MujCFYp0/s400/imperian-05-tutorial-help-ithaqua.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;At this point, I press backspace and.. the browser goes back a page and I no longer have a readily usable game window anymore.  I lost interest somewhere along the way anyway, due to all the choices I had to make, and which sapped away my investment in the character.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-kxTLawintC4/Tb5Paco0SdI/AAAAAAAAAV0/HAiGEvFfOLY/s1600/imperian-06-tutorial-backspace.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="344" width="400" src="http://2.bp.blogspot.com/-kxTLawintC4/Tb5Paco0SdI/AAAAAAAAAV0/HAiGEvFfOLY/s400/imperian-06-tutorial-backspace.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;The padded artificial feeling of the introductory area made it a hollow experience.  No rooms were there, or detail added to them, except to provide a list of checks in boxes in things which the player needed to be lead by the nose through.  Is it possible to do better?  Yes, of course, but it would be much harder and much more work.&lt;br /&gt;&lt;br /&gt;Reading selected information and making choices deemed necessary, where the two are not necessary linked, were the points of this experience.  It wasn't to understand anything, or to choose things which were interesting to me.  I wonder if I could make a game where the player didn't need to make any choices, in order to get into the real game world from a staged introductory area, with understanding of concepts, environment and ability.  More story driven, where choices are implicit from chosen actions.&lt;br /&gt;&lt;br /&gt;I like the idea of an introductory area.  I definitely find it better to keep the player away from the confusion on the game, and the weird announcements and player abilities.  The last game I logged into, I saw announcements about "laser tag" games and in another players teleporting in and out willy nilly with messages relating to "orbing" or something.&lt;br /&gt;&lt;br /&gt;The web-based client is okay, but the backspace problem is too much for me.  It's not the first time that I've had this happen when using a client like this.  Really, the game should give me a link that I can drag onto my bookmarks toolbar and when pressed takes me straight back into the game where I left off.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-2295349869553254470?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/2295349869553254470/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2011/05/trying-imperian.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/2295349869553254470" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/2295349869553254470" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2011/05/trying-imperian.html" title="Trying Imperian" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-I2fnuVSeqw0/Tb5PQwoKKOI/AAAAAAAAAVM/9dfmoOv5Q_c/s72-c/imperian-01-tutorial-map.png" height="72" width="72" /><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27648409.post-1671043850171174304</id><published>2011-05-01T01:37:00.000+12:00</published><updated>2011-05-01T01:37:10.690+12:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><title type="text">Added a "mud" label feed</title><content type="html">When I set up my blog to use FeedBurner, apparently that clobbers the ability of the viewer to choose what they want the feed of my blog they would subscribe to, to contain.  All they can get is the "FeedBurner" complete feed.  In order to work around this, I have added a specific FeedBurner feed for the "mud" labelled posts.  This is linked in the right-hand side of my blog, so go and grab it if you don't want to listen to the rest of my witterings on other subjects.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-1671043850171174304?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/1671043850171174304/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2011/05/added-mud-label-feed.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/1671043850171174304" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/1671043850171174304" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2011/05/added-mud-label-feed.html" title="Added a &quot;mud&quot; label feed" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27648409.post-1486511258319786864</id><published>2011-05-01T01:08:00.000+12:00</published><updated>2011-05-01T01:08:22.126+12:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="game programming" /><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><title type="text">Planet MUD-Dev</title><content type="html">Finding blogs about text-based MUD development is hard.  But I've always thought that if there were a well moderated aggregator that collected together quality blogs of relevance, then it should act as a magnet for other programmers to request that their blog also be added.  So here it is, an aggregator seeded with a variety of relevant blogs that I searched long and hard for.  The aggregated feeds are restricted to tags and categories that are directly relevant to text-based MUD development.  If any blogs were too broad in subject, I emailed their author and requested use of MUD-Dev related tags or categories and refrained from their inclusion.&lt;br /&gt;&lt;br /&gt;If you want your blog added, you can find contact information on the Planet web page.&lt;br /&gt;&lt;br /&gt;Link: &lt;a href="http://planet-muddev.disinterest.org/"&gt;http://planet-muddev.disinterest.org/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-pviKgeNjAeM/TbwIjQGe_2I/AAAAAAAAAVE/oIDzi21TqRk/s1600/planet-muddev.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="191" width="400" src="http://2.bp.blogspot.com/-pviKgeNjAeM/TbwIjQGe_2I/AAAAAAAAAVE/oIDzi21TqRk/s400/planet-muddev.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Setting up the &lt;a href="http://www.planetplanet.org/"&gt;Planet software&lt;/a&gt; on Bluehost was actually pretty straightforward.  What took most of the time was scouring Google looking for relevant feeds to add to the Planet.  Google is rife with garbage links that include keywords of no relevance to themselves, just to get attention.  Perhaps it is time to try Bing, or DuckDuckGo..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-1486511258319786864?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/1486511258319786864/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2011/05/planet-mud-dev.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/1486511258319786864" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/1486511258319786864" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2011/05/planet-mud-dev.html" title="Planet MUD-Dev" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-pviKgeNjAeM/TbwIjQGe_2I/AAAAAAAAAVE/oIDzi21TqRk/s72-c/planet-muddev.png" height="72" width="72" /><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27648409.post-5512634787838107998</id><published>2011-02-06T19:39:00.000+13:00</published><updated>2011-02-06T19:39:44.913+13:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="game programming" /><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><title type="text">Better article support</title><content type="html">There are too many interesting things to work on, and too little time to do them in.  I use this as justification for why I haven't worked on the Christmas requests from a user of my &lt;a href="http://code.google.com/p/sorrows-mudlib/"&gt;MUD framework&lt;/a&gt; until now.&lt;br /&gt;&lt;br /&gt;Anyway, the task at hand is allowing use of articles in the commands they give, and displaying more correct messages in response to those commands by using articles in them.  This transcript shows the current user experience.&lt;blockquote&gt;&amp;gt; look&lt;br /&gt;A room&lt;br /&gt;This is a room.&lt;br /&gt;It contains: brown pants, green pants, chest, you.&lt;br /&gt;Exits: south&lt;br /&gt;&amp;gt; take pants&lt;br /&gt;Which pants?&lt;br /&gt;&amp;gt; take the pants&lt;br /&gt;You cannot find any the pants.&lt;br /&gt;&amp;gt; take brown pants&lt;br /&gt;You take brown pants.&lt;/blockquote&gt;As it shows, articles are treated as unrecognised adjectives in user commands.  And when a sentence is constructed to describe an action (like the successful taking of pants), the lack of an article leaves it looking clunky.&lt;br /&gt;&lt;br /&gt;It has been years since I last thought about how to do this sort of thing.  I seem to recall some complex series of rules where a bystander and the actor see different things.  The actor would see a description qualified by "the" when it is the only object which matches the command they gave, and qualified by "a" or "an" when it is one of two or more objects which match the command they gave.  Meanwhile the bystander would always see "a" or "an".  Or something like that.  Thinking about it a little, I decided I would rather go with something simpler and worry about complexities later on.  So taking a simpler approach when dealing with single objects, the actor would alway sees "the" and the bystander always see "a".&lt;blockquote&gt;X takes an apple.&lt;br /&gt;You take the apple.&lt;/blockquote&gt;Or in Python..&lt;pre class="brush: python"&gt;#   If the object is a body, use their short description directly.&lt;br /&gt;text = self._object.shortDescription&lt;br /&gt;if isinstance(self._object, Body):&lt;br /&gt;    return text&lt;br /&gt;#   If the viewer is the actor, use the description with "the" article.&lt;br /&gt;if self._viewer is self._actor:&lt;br /&gt;    return "the "+ text&lt;br /&gt;#   If the viewer is not the actor, use the description with "a"/"an" article.&lt;br /&gt;if text[0] in ("a", "e", "i", "o", "u"):&lt;br /&gt;    return "an "+ text&lt;br /&gt;return "a "+ text&lt;/pre&gt;Looking at the simplistic "vowel as a first character" check, I can obviously find some standard list of special cases to ensure as much correctness as possible.  I also seem to recall some script on MudBytes that someone ran which located special cases of words, although maybe that wasn't related to articles. I can look into that at some later time.&lt;br /&gt;&lt;br /&gt;Anyway, moving on.. the parser already supports stripping adjectives from a command and identifying the name of the object being referred to.  Adding the articles to the list of these standard grammatical adjectives (determiners) does the trick.&lt;pre class="brush: python"&gt;articleDeterminers = set([ "a", "an", "the" ])&lt;br /&gt;determiners = distributiveDeterminers | cardinalNumberDeterminers | articleDeterminers&lt;/pre&gt;And then the stripping ensures they are not factored into identifying the referred objects.&lt;pre class="brush: python"&gt;words = [ s.strip().lower() for s in string.split(" ") ]&lt;br /&gt;noun = words.pop()&lt;br /&gt;allAdjectives = set(words)&lt;br /&gt;adjectives = allAdjectives.difference(determiners)&lt;/pre&gt;Now I have basic article support.  Hmm.  It is rather basic.  But now that I can see articles in object descriptions in game output, I can see that I should be using the same point of view based logic in all description generation.  For instance, displaying the room contents in a 'look' command.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-5512634787838107998?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/5512634787838107998/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2011/02/better-article-support.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/5512634787838107998" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/5512634787838107998" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2011/02/better-article-support.html" title="Better article support" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27648409.post-5895597036316300376</id><published>2010-09-21T23:41:00.010+12:00</published><updated>2011-05-08T19:58:00.578+12:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="game programming" /><category scheme="http://www.blogger.com/atom/ns#" term="python" /><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><category scheme="http://www.blogger.com/atom/ns#" term="roguelike" /><title type="text">Roguelike MUD progress #5</title><content type="html">Previous post: &lt;a href="/2010/09/roguelike-mud-progress-4.html"&gt;Roguelike MUD progress #4&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;In order to add some life to my game, I chose a monster that I've always found intriguing, the gelatinous cube.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href="http://www.wizards.com/default.asp?x=dnd/ag/20030712a"&gt;&lt;img width="50%" src="http://www.wizards.com/dnd/images/MM35_gallery/MM35_PG201.jpg"&gt;&lt;/a&gt;&lt;br /&gt;&lt;font size="2"&gt;Image linked to from over on wizards.com&lt;/font&gt;&lt;/div&gt;&lt;br /&gt;Now, the gelatinous cube is something from Dungeons and Dragons, and so it reminded me of the time that the people who made it released some &lt;a href="http://www.wizards.com/default.asp?x=d20/article/srd35"&gt;open content&lt;/a&gt;.  Cue confusion trying to understand &lt;a href="http://www.wizards.com/default.asp?x=d20/oglfaq/20040123f"&gt;their license&lt;/a&gt;.  Still confused.  Just as confused now as I was before.  I am going to assume that it is workable.&lt;br /&gt;&lt;br /&gt;Anyway, the content is provided in the form of RTF documents, so at first I thought I was going to have to rough it old school like they did in the '90s.  However, &lt;a href="http://www.andargor.com/"&gt;other people&lt;/a&gt; provide versions in more approachable formats, like CHM and its inferior brother HTML.  And better yet, various forms of SQL database.  That was where it all started to go wrong, and this became a prolonged diversion from making real substantial progress on the project.&lt;br /&gt;&lt;br /&gt;Rather than using piecemeal bits and pieces of the D&amp;D content in the SRD, as it is available in database format, there should be no reason I can't procedurally generate game content from a database structured form of the SRD data.  So, time to choose a database engine, and then to see what I can do with the data.&lt;br /&gt;&lt;br /&gt;First up was SQLite.  It is the obvious choice because it comes bundled with Python these days and therefore is not an extra dependency, given I am writing my game in.. Python.  However, I am somewhat spoilt by the tools that come with SQL Server, so I looked around for some similar tools for SQLite.  One promising tool just did not work.  The next most promising tool was the Firefox add-on &lt;a href="https://addons.mozilla.org/en-US/firefox/addon/5817/"&gt;SQLite Manager&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_7X0iQg6tJ40/TJiksxa23CI/AAAAAAAAAQk/bbjzT4zCtcE/s1600/2010-09-21+-+02+-+SQLite+Manager+D20SRD35.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 206px;" src="http://4.bp.blogspot.com/_7X0iQg6tJ40/TJiksxa23CI/AAAAAAAAAQk/bbjzT4zCtcE/s320/2010-09-21+-+02+-+SQLite+Manager+D20SRD35.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5519342432429726754" /&gt;&lt;/a&gt;&lt;br /&gt;It is a basic form of what it is intended to be, but unfortunately it is open source quality.  Clunky.  A garish gradient for background colours.  As a piece of work, the programmer did well and probably put a lot of time into it, but the clunkiness gets in the way of usability.   I found it hard to get a good view of what was actually in the columns.  And found myself wanting to use SQL Server Management Studio.&lt;br /&gt;&lt;br /&gt;So I took a look at the stripped down versions of SQL Server, and decided that SQL Server Express 2008 was the one for me.  Where SQLite comes out of the box both Python and requires no installation, unfortunately the installation process of SQL Server takes ages and if you have a shoddy Acer laptop like myself, makes it overheat.  Two days later it was installed and working, because the first time I installed it I chose the wrong option, and working out how to change it after the fact or why things didn't work..  was a nightmare.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_7X0iQg6tJ40/TJinFapsvjI/AAAAAAAAAQs/Y6aykGtzCdU/s1600/2010-09-21+-+01+-+SQL+Server+D20SRD35.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 206px;" src="http://4.bp.blogspot.com/_7X0iQg6tJ40/TJinFapsvjI/AAAAAAAAAQs/Y6aykGtzCdU/s320/2010-09-21+-+01+-+SQL+Server+D20SRD35.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5519345054837947954" /&gt;&lt;/a&gt;&lt;br /&gt;That's much better.  Now, it is time to look for a module that will allow me to use SQL Server from Python.  &lt;a href="http://code.google.com/p/pymssql/"&gt;pymssql&lt;/a&gt; looks like the best candidate for this.&lt;br /&gt;&lt;br /&gt;The actual data in the SRD database is just pieces of information stored in text fields.  Any use of it, will have to be interpreted at the Python level, or abstracted through database views.&lt;br /&gt;&lt;br /&gt;Most of the work I have done on the game engine itself, since my last post, has been bug fixes.&lt;ul&gt;&lt;li&gt;For some reason &lt;a href="http://www.chiark.greenend.org.uk/~sgtatham/putty/"&gt;Putty&lt;/a&gt; stopped working as a game client.  It would not switch to character mode and stayed in line mode when I connected to the game with it.  This also meant that it didn't switch to the correct character set, because the server was reacting to incoming sets of characters, not incoming full lines.  This was because I was not doing the negotiation right, sadly I needed to run Putty under the Visual Studio debugger to find out how.  Unfortunately, dithering looks crap in Putty, as the colours are ambiguous.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_7X0iQg6tJ40/TJitmQ8SymI/AAAAAAAAAQ8/0wrSkN3JAVs/s1600/2010-09-21+-+04+-+Putty+coloured+tile.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 198px;" src="http://2.bp.blogspot.com/_7X0iQg6tJ40/TJitmQ8SymI/AAAAAAAAAQ8/0wrSkN3JAVs/s320/2010-09-21+-+04+-+Putty+coloured+tile.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5519352216237034082" /&gt;&lt;/a&gt;&lt;br /&gt;The yellow tile here is the "gelatinous cube".  However, it still looks like a dithered yellow and white tile despite actually being straight yellow.&lt;/li&gt; &lt;li&gt;Code reloading fixes.  These are mostly make-do fixes, my referrer searching skills are deteriorating.&lt;/li&gt; &lt;li&gt;Cleaned up key press handling, in preparation for the input queueing.  Unfortunately, the input queueing requires game design related choices.  Like how long an action takes, is dependent on what the action is and what it means in-game.&lt;/li&gt; &lt;li&gt;The unicode character set display was broken, fixed it up and tried to get it to display various interesting unicode characters.  A wider variety of tiles through use of unicode looks like more trouble than it's worth unfortunately.  The number of unicode characters that have the correct representation when displayed in Putty are unfortunately limited.  There are however &lt;a href="http://roguebasin.roguelikedevelopment.org/index.php?title=Unicode"&gt;Roguelikes&lt;/a&gt; that use unicode, but that's another project for another day.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_7X0iQg6tJ40/TJitaH7dgxI/AAAAAAAAAQ0/JFMFjisZwQo/s1600/2010-09-21+-+03+-+Putty+unicode+characters.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 198px;" src="http://4.bp.blogspot.com/_7X0iQg6tJ40/TJitaH7dgxI/AAAAAAAAAQ0/JFMFjisZwQo/s320/2010-09-21+-+03+-+Putty+unicode+characters.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5519352007659193106" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;In theory, I should be able to spend a few hours on this in the next three days.  It is Mid-autumn Festival here, so I have three days off work.&lt;br /&gt;&lt;br /&gt;Next post: &lt;a href="/2011/05/roguelike-mud-progress-6-chinese.html"&gt;Roguelike MUD progress #6 - Chinese character sets&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-5895597036316300376?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/5895597036316300376/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2010/09/roguelike-mud-progress-5.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/5895597036316300376" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/5895597036316300376" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2010/09/roguelike-mud-progress-5.html" title="Roguelike MUD progress #5" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_7X0iQg6tJ40/TJiksxa23CI/AAAAAAAAAQk/bbjzT4zCtcE/s72-c/2010-09-21+-+02+-+SQLite+Manager+D20SRD35.jpg" height="72" width="72" /><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27648409.post-3038500854427635888</id><published>2010-09-07T00:11:00.005+12:00</published><updated>2010-09-22T01:14:57.749+12:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="game programming" /><category scheme="http://www.blogger.com/atom/ns#" term="python" /><category scheme="http://www.blogger.com/atom/ns#" term="stackless python" /><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><category scheme="http://www.blogger.com/atom/ns#" term="mud" /><category scheme="http://www.blogger.com/atom/ns#" term="code reloading" /><category scheme="http://www.blogger.com/atom/ns#" term="roguelike" /><title type="text">Roguelike MUD progress #4</title><content type="html">Previous post: &lt;a href="/2010/09/roguelike-mud-progress-3.html"&gt;Roguelike MUD progress #3&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Almost no progress on the game today.  Instead, I was distracted by two different problems with my &lt;a href="http://code.google.com/p/livecoding"&gt;code reloading framework&lt;/a&gt;.  Link to &lt;a href="http://code.google.com/p/livecoding/source/detail?r=146"&gt;SVN revision&lt;/a&gt;.&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Use of slots:&lt;pre class="brush: python"&gt;class Tile(object):&lt;br /&gt;    __slots__ = [ "character", "fgColour", "bgColour", "flags" ]&lt;/pre&gt;This also seems to be an unsolved problem in the &lt;a href="http://svn.python.org/projects/sandbox/trunk/xreload/xreload.py"&gt;xreload module&lt;/a&gt;, which was written for normal Python namespaces.&lt;br /&gt;&lt;br /&gt;&lt;cite&gt;TypeError: descriptor 'flags' for 'Tile' objects doesn't apply to 'Tile' object&lt;/cite&gt;&lt;br /&gt;&lt;br /&gt;I've not got any better ideas, and I am only using &lt;code&gt;__slots__&lt;/code&gt; for the sake of it.  So the solution is to stop using them.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;File-local instances of the classes it defines:&lt;pre class="brush: python"&gt;START_TILE = Tile("x", isMarker=True)&lt;br /&gt;SPAWN_TILE = Tile("s", isMarker=True)&lt;br /&gt;WALL_TILE  = Tile("X", isPassable=False, isOpaque=True)&lt;br /&gt;WALL1_TILE = Tile("1", isPassable=False, isOpaque=True)&lt;br /&gt;WALL2_TILE = Tile("2", isPassable=False, isOpaque=True)&lt;br /&gt;DOOR_TILE  = Tile("D")&lt;br /&gt;FLOOR_TILE = Tile(" ")&lt;br /&gt;&lt;br /&gt;mapTilesByCharacter = {}&lt;br /&gt;def IndexTiles():&lt;br /&gt;    for k, v in globals().iteritems():&lt;br /&gt;        if k.endswith("_TILE"):&lt;br /&gt;            mapTilesByCharacter[v.character] = v&lt;br /&gt;IndexTiles()&lt;br /&gt;&lt;br /&gt;CHAR_TILE_TEMPLATE = Tile("@", isPassable=False)&lt;br /&gt;DRAGON_TILE = Tile("&amp;", isPassable=False)&lt;/pre&gt;I've had to use a custom framework that has xreload-based code reloading, and encountered this same scenario there. In that case, it was because the class was registered with a external factory and subsequently used to churn out bad instances.  These then hit the following error.&lt;br /&gt;&lt;br /&gt;&lt;cite&gt;unbound method BLAH must be called with BLAH instance as first argument (got BLAH instead)&lt;/cite&gt;&lt;br /&gt;&lt;br /&gt;Solving that leaked class problem was simple, through locating the references to the throwaway new class, and substituting the old reference for them.  Replacing instances though, is a little more complicated.&lt;br /&gt;&lt;br /&gt;This error has gone away in 3.x I am told, which is a pity.  As it serves as a good indication that there instances or class references have leaked outside of the code reloading system.&lt;/li&gt;&lt;/ol&gt;Chances are that I am going to have to try and solve these cases for xreload, as well as in my custom framework.&lt;br /&gt;&lt;br /&gt;Next post: &lt;a href="/2010/09/roguelike-mud-progress-5.html"&gt;Roguelike MUD progress #5&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27648409-3038500854427635888?l=posted-stuff.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://posted-stuff.blogspot.com/feeds/3038500854427635888/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://posted-stuff.blogspot.com/2010/09/roguelike-mud-progress-4.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/3038500854427635888" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/27648409/posts/default/3038500854427635888" /><link rel="alternate" type="text/html" href="http://posted-stuff.blogspot.com/2010/09/roguelike-mud-progress-4.html" title="Roguelike MUD progress #4" /><author><name>Richard</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry></feed>

