Concepts for single player Interactive Fiction mode:
Interesting link: http://www.brasslantern.org/writers/
------------------------------------------------------
[feature,tkinter,html] Add optional picture to every MudObject description.
[feature,tkinter,html] Add optional sound clip to locations
[code]  use websockets or comet long polling instead of 0.5 sec polling to update the text in the browser

Concepts for multiplayer MUD mode (and not really for single player I.F.):
--------------------------------------------------------------------------
[feature] user banning
[feature] check all commands if they provide appropriate feedback to others in the room (such as "Xyz looks around")
[feature] SSH interface via Paramiko?
[feature] New mud-mode save command that immediately triggers the driver to store the player's state. (already have this for IF-mode)
[feature] Let driver store player's state once in a while (every minute or so), when they logout, and when they get disconnected.
[feature] Let players define aliases for certain commands (including args) "alias w_s=wield sword"
[feature] Write stuff to a logfile for the server admins.
[feature] Mailbox system: can mail messages, money and items to other players. Only when mailbox in vicinity (unless wizard)
[feature] Notify player if mail arrived.
[feature] Pets: tame/befriend/abandon (charisma/luck)
[feature] Combat: backstab (stealth/charisma/luck/agility?  vs luck/wisdom/agility)
[feature] Follow other creatures: follow.  If you have a follower and want to try to stop him: evade
[feature] Groups: team up with other players and share quest and combat experience
[feature] Skills: stealth, lockpicking, ...
[feature] World zones: (optional) timed zone resets to reset to starting configuration. Or global server reset? (circle has zones and zone resets)
[info,feature] DAMAGE TYPES:
    blunt, slash, pierce, water, shock, cold, heat, gas, acid, magic, poison, disease, sonic, psionic,
    trauma/wound, suffocation, deathray (zap-command), EMP, karma, pressure, decompression, inertia


General ideas/TODO:
-------------------
[bug] Fix handling of non-ascii texts and input (python 2.7 crashes, py 3 encodes it wrong)
[code] Flesh out more items/templates in items.basic.  Take ideas from objects in other mudlibs
[feature] conditional/changing exits, for instance a hatch that is not there until you 'discover' it. (circle data contains such exits)
[feature] Parser: allow simple question/answer dialog. 'no/yes' verbs to reply to a stated question? Use answer/say/tell commands?
[feature] More commands should recognise object aliases (touch, take) like examine already does.
[feature] allow livings to wear items/armour on various body parts, extend circle zone loader to use this
[feature] allow livings to wield a single item (weapon/light/shield/...) (=always in hand), extend circle zone loader to use this
[cosmetic] Add <center> text style which centers the line(s) on the screen.
[code,cosmetic] input should be case insensitive (everything except stuff in quotes - the message)
    commands, adverbs, names - all should be lowercased and compared by lowercase.
[code, API] path-finding: GOTO/GO TO <location/living/item> (must have examined it before, to remember it. See also next idea).
[code, API] search/find/locate: keep track of stuff you've encountered and mention that if the player searches for something
    (like: search key -> "you remember that there was [a key] [somewhere at/in/on <location>]")
[feature] when X.combine(Y [,Z,...]) -> make it possible to 'produce' a new object that replaces both X and Y [, and Z,..]
[feature] make detach/remove work (X.detach(Y)) where you get Y and possibly replace X with a new object
[publish] upload the story(s) as separate files to pypi? http://docs.python.org/2/distutils/extending.html#adding-new-distribution-types
[test] double names.
    What happens when player name == npc name (movement, examine, talk, soul emotes, destroy player)
    What happens with multiple items of same name in room, in inventory, in bag
    make a little menu that gives an enumerated choice of the stuff with the same name?
[code] prototypes to extend items/npc instead of inheritance?
[code] Define a DSL to define the basic world stuff, and convert it to python source (or parse directly). Much like the circle importers
[feature] Change living location logic so that livings can sit inside a container item too.
    Then:  go-in (wizard): step into something, go-out (wizard): step out of current location
    + take <living> can actually work! (take ant, trap rabbit in cage, ...)
[feature] Hunger/thirst/fatigue?


[feature] Light/Dark
--------------------
light level in rooms: dark/light? or three states?  (0=pitch black, 0.5=dark/dusk, 1=normal daylight)
darkness in locations -> can't see location/exits/items/players (unless they're fluorescent, or unless you explicitly examine <direction>?)
if there's a lightsource in the room (or someone has a light source in their inventory), the room is lit.
