October 1997
- Carnage, scripting newbie guides Koster, Raph
- Carnage, scripting newbie guides Nathan Yospe
- Carnage, scripting newbie guides Chris Gray
- Carnage, scripting newbie guides ##Make Nylander
- Carnage, scripting newbie guides ##Make Nylander
- Usability and interface and who the hell is supposed to clawrenc@cup.hp.com
- Usability and interface and who the hell is supposed to Adam Wiggins
[JCL:]
> at 09:44 AM, Maddy <maddy@fysh.org> said:
> >I'd like to refer to everyone consistantly all the time, although I
> >do see merits in providing a longer description when looking.
> >Maybe....
>
> > A one-armed elf is here. He has a beard and is dressed in a
> > long flowing robe.
> > The one-armed elf says, 'Hello.'
>
> This is essentially a Level Of Detail question (LOD). The simplest
> model is that of a graphical world. When the object is far distant,
> and only represented by a couple pixels, who cares how well rendered
> it is? Conversely when he is 6" away, that rendering quality can be
> important.
The really nice thing about graphics, of course, is that someone can
'notice' something without it being in the forefront. Thus you can depict
Bubba smiling and Buffy in the background even if the character is currently
in a battle to the death with his hated enemy. It's unlikely the player
themselves will notice, of course, but it is still there.
> The same things really applies to textual descriptions of characters
> in text MUDs with a couple extra caveats thrown in:
>
> -- Familiarity breeds contempt. If you've seen Bubba all day every
> day for the last 50 MUD years, you don't want to read his full desc
> every time he enters a room. Wiggins(?) has written several bits on
> his approach to this point. The most key of which appears to be
> having the server recall how you last saw the other character, and how
> you are most familiar with seeing him, and on that basis adjudicating
> whether or not you actually recognise him as the character you know.
Yeah. I posted quite a bit (from Orion's account, I believe) on Wout's
list. At the time our mud was just begining to mature into something
semi-unique, and the feature I was most proud of at the time was that.
Now it's just one of many things, but we haven't changed our approach to
it very much at all since we've been so happy with it. Instead the rest
of the system has been busy catching up with it.
> The key example given was something on the order of:
>
> > l
> Bubba is here.
> > l at bubba
> Bubba has long hair, a beard that reaches his knees, etc
> and is wearing very tattered and filthy clothes.
> > enter inn
> Bubba goes upstairs.
> ...
> A youg clean shaven man comes down stairs.
> The man claps your shoulder and says, "Boffo! Don't recognise
> me all cleaned up eh? Its me, Bubba!"
>
> One thing that I don't think Wiggins ever touched on is how to
> detect and manage the transition from unknown to to known. Above, you
> knew Bubba as the hairy woodsman. Now he's spiffed up. How does the
> server detect and re-bind your familiarity with Bubba to his new
> clean-shaven self?
I usually tend not to talk about actual techniques or code for doing the
stuff I put forward, except in a very broad manner. This is mainly because
the details don't interest me all that much. Code is cheap.
Anyhow, slightly more detail on how we resolve this:
The routine which finds the name for someone or something searches through
your character's memory for the closest match. This involves finding
a memory node, comparing it to the current 'best match' to see which one
fits closer and replacing the best match with the current node if it fits
better. By the time you get to the end you should have the closest fit.
We do fudge this a little bit - each memory node stores the actual id number
of the object it identifies, and a special roll is made once you find the
'real' memory node. This involves checking the familiarity of that character
with some other variables (character's perception, how long it's been since
they last saw them, how different their appearance is). Criteria for
non-character objects is not fully fleshed out just yet...location is still
the main factor for recognition.
Also, we have delayed recognition. Thus:
Bob waves a black runesword at you.
<pause>
You recognize Bob's black runesword as the mighty blade Stormbringer!
Here the character had probably read about stormbringer in a book somewhere,
attaching a (faint) memory node about the object to them. Again a fudge -
memory nodes about famous things tend to persist for longer, even for something
you've never seen.
By the same token:
A stately gentleman smiles at you.
<pause>
You recognize the stately gentleman as Bob Thorpfoot, King of the Realm!
This gave us a somewhat unexpected side-effect that I rather liked:
A clean-shaven, well-groomed young man is standing here.
You recognize the clean-shaven man as Bubba!
Since I liked that, we went for the obvious addition:
You recognize the clean-shaven man as your old friend Bubba, whom you haven't
seen in three years!
> -- Comparitive significance. You know Bubba well, and can recognise
> him on sight. As such you want the minimal desciption as above.
> However, now Bubba is in a crowd of 500 others milling about a room.
> Glancing in the room you are should not see "A large crowd of people
> and Bubba are here". Bubba's familiarity should be drowned out in the
> mass of other data represented by the crowd.
>
> Nathan has written some interesting pieces on this area specifically,
> mot especially in the handling of crowds and loss off detail due to
> data overload.
We use the data clipping to actually define the amount of detail. Thus,
when the player types 'look', we simply query the object they are owned
by for a description of the nearby area that fits into between two and
three lines. The code will use as little or as much detail is as necessary
to fill those lines. This, of course, allows for sliding detail levels.
Instead of the normal briefed mode which just gags out the room desc, the
user can set their level of detail to whatever they like. While it's
true that setting their detail to, say, 20 lines per 'look' means that
they get a whole bunch of extra info, this doesn't bother me too much,
as they still have to read through it all. I consider this similar to
taking a very close look at a large crowd to determine who's all there.
Regardless, five hundred people are going to be hard to sort through.
Of course, here's a place where a good coordinate-based system takes care
of some problems. If Bubba's on *this* side of the crowd, you spot him
straight off. If he's on the opposite side, your view of him is actually
blocked, so forget it.
- Usability and interface and who the hell is supposed to Adam Wiggins
- 101 Spells Not Worth Memorizing clawrenc@cup.hp.com
- more classes (Usability and interface and who the Brian Price
- more classes (Usability and interface and who the Matt Chatterley
- more classes (Usability and interface and who the coder@ibm.net
- Stranger in a Strange Land (was Usability and interface and Maddy
- Tablets. Ola Fosheim Grøstad
- Stranger in a Strange Land (was Usability and interface clawrenc@cup.hp.com
- Usability and interface ... Marian Griffith
- Usability and interface ... Caliban Tiresias Darklock
- Usability and interface ... Broly
- Usability and interface ... Caliban Tiresias Darklock
- Usability and interface ... Derrick Jones
- Usability and interface ... coder@ibm.net
- Usability and interface ... Derrick Jones
- Usability and interface ... coder@ibm.net
- Usability and interface ... coder@ibm.net
- Usability and interface ... Marian Griffith
- Turn-based Combat Jon A. Lambert
- Turn-based Combat Travis Casey
- Turn-based Combat John G.
- OT: I'm moving! coder@ibm.net
- (fwd) New mud release coder@ibm.net
- Riddles for games clawrenc@cup.hp.com
- Riddles for games Chris Gray
- Riddles for games coder@ibm.net
- The Trap Collection clawrenc@cup.hp.com
- Learning through failure Jon A. Lambert
- Learning through failure Maddy
- The Trap Collection - Volume II clawrenc@cup.hp.com
- THE COMPLETE GUIDE TO UNLAWFUL CARNAL KNOWLEDGE FOR FANTASY ROLE-PLAYING GAMES clawrenc@cup.hp.com
- (fwd) New MUD software wanted? coder@ibm.net
- (fwd) New MUD software wanted? Felix A. Croes
- (fwd) New MUD software wanted? coder@ibm.net
- META: File attachments as list postings. coder@ibm.net
- More Riddles... Jon A. Lambert
- More Riddles... Jon A. Lambert
- multiple intelligences Brandon J. Rickman
- multiple intelligences Travis Casey
- multiple intelligences Brandon J. Rickman
- multiple intelligences S001GMU@nova.wright.edu
- multiple intelligences Travis S. Casey
- multiple intelligences coder@ibm.net
- OT: Usability and interface and who the hell is suppo coder@ibm.net
- Fear of magic (was:Usability and interface) Derrick Jones
- Fear of magic (was:Usability and interface) Michael Hohensee
- Fear of magic (was:Usability and interface) coder@ibm.net
- The Official T$R Book of Adventure Suggestions coder@ibm.net
- Mud governance Koster, Raph
- Mud governance Felix A. Croes
- Mud governance Mike Sellers
- Mud governance Travis Casey
- Mud governance coder@ibm.net
- Mud governance Mike Sellers
- Mud governance coder@ibm.net
- Mud governance S001GMU@nova.wright.edu
- Mud governance coder@ibm.net
- Mud governance Koster, Raph
- Mud governance coder@ibm.net
- OT: Usability and interface and who the hell is su Jon A. Lambert
- Fear of magic (was:Usability and interface) Marian Griffith
- Fear of magic (was:Usability and interface) Derrick Jones
- Fear of magic (was:Usability and interface) coder@ibm.net
- Fear of magic (was:Usability and interface) Nathan Yospe
- Fear of magic (was:Usability and interface) Marian Griffith
- Fear of magic (was:Usability and interface) Sauron
- Fear of magic (was:Usability and interface) coder@ibm.net
- Fear of magic (was:Usability and interface) Marian Griffith
- Fear of magic (was:Usability and interface) coder@ibm.net
- Fear of magic (was:Usability and interface) Brandon J. Rickman
- Fear of magic (was:Usability and interface) Derrick Jones
- Fear of magic (was:Usability and interface) Jon A. Lambert
- Fear of magic (was:Usability and interface) Adam Wiggins
- Fear of magic (was:Usability and interface) Derrick Jones
- Fear of magic (was:Usability and interface) Derrick Jones
- Fear of magic (was:Usability and interface) Derrick Jones
- Fear of magic (was:Usability and interface) coder@ibm.net
- Fear of magic (was:Usability and interface) coder@ibm.net
- Fear of magic (was:Usability and interface) Sauron
- Fear of magic (was:Usability and interface) Marian Griffith
- Fear of magic (was:Usability and interface) Marian Griffith
- Fear of magic (was:Usability and interface) Jon A. Lambert
- Fear of magic (was:Usability and interface) coder@ibm.net
- Fear of magic (was:Usability and interface) Vadim Tkachenko
- Fear of magic (was:Usability and interface) Sauron
- Fear of magic (was:Usability and interface) Stephen Zepp
- Fear of magic (was:Usability and interface) Matt Chatterley
- Fear of magic (was:Usability and interface) Vadim Tkachenko
- Fear of magic (was:Usability and interface) Stephen Zepp
- Fear of magic (was:Usability and interface) coder@ibm.net
- Fear of magic (was:Usability and interface) Matt Chatterley
- Fear of magic (was:Usability and interface) coder@ibm.net
- Fear of magic (was:Usability and interface) Alex Oren
- Fear of magic (was:Usability and interface) Alex Oren
- Fear of magic (was:Usability and interface) Koster, Raph
- Fear of magic (was:Usability and interface) Chris Gray
- Fear of magic (was:Usability and interface) Richard Woolcock
- Fear of magic (was:Usability and interface) Stephen Zepp
- META: List burp coder@ibm.net
- To catch a mage (was fear of magic) Derrick Jones
- To catch a mage (was fear of magic) Matt Chatterley
- To catch a mage (was fear of magic) coder@ibm.net
- To catch a mage (was fear of magic) coder@ibm.net
- To catch a mage (was fear of magic) Derrick Jones
- To catch a mage (was fear of magic) coder@ibm.net
- To catch a mage (was fear of magic) Derrick Jones
- To catch a mage (was fear of magic) coder@ibm.net
- CODE RELEASE: [mush mux] Portable Space Engine v0.8.3 RELEASED! coder@ibm.net
- ANNOUNCEMENT: [graphical commercial] Mystic Realms coder@ibm.net
- CODE RELEASE: [server] New Mud Software (SunderMUD 1.0) coder@ibm.net
- string parsing Felix A. Croes
- string parsing Chris Gray
- string parsing Felix A. Croes
- string parsing Jon A. Lambert
- string parsing Felix A. Croes
- string parsing Chris Gray
- string parsing Felix A. Croes
- string parsing Chris Gray
- string parsing Felix A. Croes
- string parsing Chris Gray
- string parsing coder@ibm.net
- string parsing Felix A. Croes
- string parsing coder@ibm.net
- string parsing Chris Gray
- string parsing coder@ibm.net
- string parsing Chris Gray
- string parsing coder@ibm.net
- string parsing Jon A. Lambert
- string parsing Adam Wiggins
- string parsing Ola Fosheim Grøstad
- string parsing Chris Gray
- string parsing Felix A. Croes
- string parsing Nathan Yospe
- string parsing Felix A. Croes
- string parsing Nathan Yospe
- string parsing coder@ibm.net
- string parsing Chris Gray
- string parsing Nathan Yospe
- string parsing Chris Gray
- string parsing coder@ibm.net
- Idea: Hive-mind monster coder@ibm.net
- Idea: Hive-mind monster Adam Wiggins
- Idea: Hive-mind monster coder@ibm.net
- Idea: Hive-mind monster Sauron
- Idea: Hive-mind monster Derrick Jones
- Idea: Hive-mind monster Michael Hohensee
- Idea: Hive-mind monster Brandon J. Rickman
- Idea: Hive-mind monster coder@ibm.net
- Idea: Hive-mind monster Derrick Jones
- Idea: Hive-mind monster coder@ibm.net
- Idea: Hive-mind monster coder@ibm.net
- Idea: Hive-mind monster coder@ibm.net
- Skill Listing - Part II Jon A. Lambert
- Skill Listing - Part II Derrick Jones
- Skill Listing - Part I Jon A. Lambert
- Poison List - Part II Jon A. Lambert
- Poison List - Part III Jon A. Lambert
- Poison List - Part IV Jon A. Lambert
- Poison List - Part I Jon A. Lambert