1998Q3/
<!-- MHonArc v2.4.4 -->
<!--X-Subject: [MUD&#45;Dev] Re: Room descriptions -->
<!--X-From-R13: Vny Pynpx <unyNzbbf.zy.bet> -->
<!--X-Date: Sun, 27 Sep 1998 15:48:01 &#45;0700 -->
<!--X-Message-Id: 19980927190708.16944#moos,ml.org -->
<!--X-Content-Type: text/plain -->
<!--X-Reference: 1.5.4.32.19980927192638.0070273c#pop,pipeline.com -->
<!--X-Head-End-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title>MUD-Dev message, [MUD-Dev] Re: Room descriptions</title>
<!-- meta name="robots" content="noindex,nofollow" -->
<link rev="made" href="mailto:hal#moos,ml.org">
</head>
<body background="/backgrounds/paperback.gif" bgcolor="#ffffff"
      text="#000000" link="#0000FF" alink="#FF0000" vlink="#006000">

  <font size="+4" color="#804040">
    <strong><em>MUD-Dev<br>mailing list archive</em></strong>
  </font>
      
<br>
[&nbsp;<a href="../">Other Periods</a>
&nbsp;|&nbsp;<a href="../../">Other mailing lists</a>
&nbsp;|&nbsp;<a href="/search.php3">Search</a>
&nbsp;]
<br clear=all><hr>
<!--X-Body-Begin-->
<!--X-User-Header-->
<!--X-User-Header-End-->
<!--X-TopPNI-->

Date:&nbsp;
[&nbsp;<a href="msg01314.html">Previous</a>
&nbsp;|&nbsp;<a href="msg01316.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Thread:&nbsp;
[&nbsp;<a href="msg01313.html">Previous</a>
&nbsp;|&nbsp;<a href="msg01317.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Index:&nbsp;
[&nbsp;<A HREF="author.html#01315">Author</A>
&nbsp;|&nbsp;<A HREF="#01315">Date</A>
&nbsp;|&nbsp;<A HREF="thread.html#01315">Thread</A>
&nbsp;]

<!--X-TopPNI-End-->
<!--X-MsgBody-->
<!--X-Subject-Header-Begin-->
<H1>[MUD-Dev] Re: Room descriptions</H1>
<HR>
<!--X-Subject-Header-End-->
<!--X-Head-of-Message-->
<UL>
<LI><em>To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI>
<LI><em>Subject</em>: [MUD-Dev] Re: Room descriptions</LI>
<LI><em>From</em>: Hal Black &lt;<A HREF="mailto:hal#moos,ml.org">hal#moos,ml.org</A>&gt;</LI>
<LI><em>Date</em>: Sun, 27 Sep 1998 19:07:08 -0400</LI>
<LI><em>Reply-To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI>
</UL>
<!--X-Head-of-Message-End-->
<!--X-Head-Body-Sep-Begin-->
<HR>
<!--X-Head-Body-Sep-End-->
<!--X-Body-of-Message-->
<PRE>
On Sun, Sep 27, 1998 at 03:26:38PM -0400, apocalypse#pipeline,com wrote:
&gt; 
&gt; Hal Black:
&gt; &gt;It is more "true" because hopefully we can reduce a lot of the absolutely
&gt; &gt;false things that are portrayed and trigger emotions and imagination.
&gt; &gt;(more on this in a bit)
&gt; 
&gt; Totally subjective. Its not false for some vampires to love the sun,
&gt; the old ones (even in V:TM) can go out in sunlight for times
&gt; and take no damage at all. The only way it can be false, is if
&gt; in our own creations we make it false.

Exactly, you are arguing my argument for me.  Compare the age of the vampire
to the amount of sunlight, and tailor the description accordingly.

&gt; Hal Black :
&gt; &gt;Much like cave-dwelling salamanders and fish,
&gt; &gt;this race has somehow evolved to not have pigmentation or protection from
&gt; &gt;the sun.  This race will therefore have evolved to hate the sun.  Because
&gt; &gt;perhaps in the world I've created, being blind, crippled and burned by the
&gt; &gt;sun makes one sterile at best.  So, anyone of this race without an
&gt; &gt;instinctive fear of the sun will die.  Thus, by natural selection, 99% of
&gt; &gt;this race will have a fear of the sun.
&gt; 
&gt; Therefore, why would he ever walk around any place that could possibly
&gt; have sunlight in it? why wouldnt he stick to dungeons, mountain caves,
&gt; and other dark places? what is HE doing out of character tromping around
&gt; the nice warm forest amidst the sprites and humans? 

Exactly, exactly.  But in that event, there should be some pretty severe
repercussions?  Maybe he had to go surface-side on some adventure and stayed
out too late (too early).  This is what makes an adventure.  Unless people
are marching around playing roles just for the sake of playing roles, there
tends to be some form of conflict.  Maybe this conflict causes someone to do
something they wouldn't normally do.  Then things like this come up.  If you
make it possible for only sun-loving creatures to enter a given area, then
you can tell the player how they feel about it.  If you do allow vampires
(or - to avoid your semantical argument that vampires like the sun - the
race I spoke of that doesn't like the sun) into that area, you have no business
telling them that they like the sun.

&gt; Hal Black :
&gt; &gt;And because we are trying to place this person in a role, we as gamemasters
&gt; &gt;should not tell them to feel something that is out of character with something
&gt; &gt;they DO feel.  This race will not be caressed by the sun, they will be burned
&gt; &gt;by it. 
&gt; 
&gt; Hehehe...Id argue that we didnt place them in the role, they chose it,
&gt; and as such, they need to act accordingly. I shouldnt have to tell them

OK, to address this semantical argument, I meant that it is the job of
the gamemaster to help people become accustomed to the roles they've chosen as
they fit into the universe at hand.  What if I want to be a vampire in your
vampire game?  He doesn't ever drink blood, and melts if he's ever in the dark,
so he is either out in the sun or under a grow-light at all times.  He is also
5 quadrillion years old and can kick anybody's ass.  If this isn't consistent
with what others are playing, it will be annoying to them at best.  (please
reference the recently posted article about the game contract) The engine can
be a nice safety net for unconventional or even irrational play.  To summarize,
unless your mud allows free fantasy, players can't just chose whatever roles
they want to play, they should fit into the context of the world at least.
If I am running a medieval game, I don't want a self-styled spaceman spiff
running around in it, and probably the players don't either.

&gt; to not walk around in daylight filled rooms, if 99% of their race hates
&gt; the sun. The responsibility of RP, and understanding is totally up
&gt; to them, they are the character, im just the guy who makes the world,
&gt; its up to them to interpret it, not me. 

Someone has to make the universe rules.  And the game engine is your tool for
making that reality manifest to immerse players in it.  Surely you shouldn't
have to tell players this...  But what happens when some circumstance happens
that they DO end up outside?  Either you can monitor the game all the time as
the admin and type stuff in (which I'd never attempt) or you can code it once
and let the players play and let the engine take care of this kind of thing.

&gt; Hal Black:
&gt; &gt;That's why I think we should 
&gt; &gt;just provide hints when we can, and leave the imagination to the player.
&gt; &gt;Nothing is more frustrating for me as a player to be told that I'm feeling
&gt; &gt;something that I'm not.
&gt; 
&gt; Id agree, but im saying that no matter what way we choose to show them the room,
&gt; we are going to, in a lot of cases, force them to "feel something they dont".
&gt; 
&gt; 
&gt; &gt;If Sam and Mark are twins, certainly they will see almost exactly the same
&gt; &gt;things.  However, if Sam is blind and Mark can't smell, they will certainly
&gt; &gt;need different descriptions of the perfume shop if you really want to put the
&gt; &gt;player in the role they are playing.
&gt; 
&gt; Again we can go round and round :) If mark cant smell, and the room tells him he
&gt; can, whoa! hey sam! I can  sm(inhale)ell here!!!! the end result is the
&gt; same , no matter what we try to do, we are going to force them 
&gt; inevitably into something they may not be thinking and feeling.

What???
  I just said that if they are different, they get different perceptions.
Explain to me how I can't do this.

  Since you aren't seeing it, here is some code you can have in every room and
it will work perfectly:

if (character.body.can_see()) character.render(VISION,room.desc);
if (character.body.can_smell())  character.render(SMELL,room.scent);
 
In a nutshell: if Mark can't smell, he doesn't get smell messages!!!
               if Sam can't see, he doesn't get vision messages!!!

&gt; Id rather do it once, than try to discern what every possibility could be
&gt; for every player, for every thing they could be wearing (to stop sunlight for 
&gt; example), for every space-suit, faulty space-suit, every boot with a hole
&gt; in it every pair of wet gloves, all the hundreds of items that change
&gt; what the player can see/hear/smell or feel, all the little things
&gt; that the guy on the computer just found out about his character..
&gt; Thats just too many times im trying to get into someones head
&gt; that isnt mine. Ill take my chances with one time, but hundreds, thousands?

This is actually pretty easy to implement.

&gt; Hal Black :
&gt; &gt;Sam in his spacesuit.
&gt; &gt;    &gt; go west
&gt; &gt;    [first he sees the room description]
&gt; &gt;    This room is clogged with a greasy, black, oily smoke.
&gt; &gt;    [he takes his first breath in the room]
&gt; &gt;    You inhale the clean air from your spacesuit.
&gt; &gt;    [or maybe there is no message at all??]
&gt; &gt;
&gt; &gt;Sam in a leaky spacesuit.
&gt; &gt;    &gt; go west
&gt; &gt;    [first he sees the room description]
&gt; &gt;    This room is clogged with a greasy, black, oily smoke.
&gt; &gt;    [he takes his first breath in the room]
&gt; &gt;    As you inhale, your lungs burn and you start to cough.
&gt; &gt;    [Sam thinks, hey, there is a leak in my spacesuit.]
&gt; &gt;
&gt; 
&gt; see above ;)

Here is some pseudo-code for you to implement this.  What's good about it is
that you only have to implement the body once, and it will work in any
environment.  There are other, more sophisticated, ways to do this too, so that
vampires don't breathe, for instance if you don't want them to breathe in your
world.  I am trying to be brief here.

    body human interfaces living {
       breathe {
          if (not breathable(environment.air)) {
	       choke();
          }
          call(1 seconds, breathe);
       }
       bool breathable(gas theGas) {
          if theGas = earthlike return true;
          else return false;
       }
    }

    environment room {
       theAir = smoky;
       gas air() {
          if (body.in_sealed_container())
             return body.container.environment.air();
          else
             return theAir;
       }
    }

    environment suit {
       gas air() {
          if (punctured)
             return (environment.air());
          else
             return earthlike;
       }
    }

So it is kinda messy wrt to variable names and type names...  sue me, it's
pseudo-code. 8')


&gt; &gt;I think situations should be descriptive as possible...  But where appropriate.
&gt; &gt;Otherwise, as a player trying to play a role, I just feel angry when I am
&gt; &gt;forcefully removed from my role by the engine telling me to feel a certain way
&gt; &gt;when I wouldn't, or when someone starts talking about the home-run race in
&gt; &gt;a medieval game.
&gt; 
&gt; Dont you see though, that "viewer specific" descriptions do this just
&gt; as forcefully, and "un-correctly" as a static one. The only difference is
&gt; whoever
&gt; wrote the specific descriptions tried to get inside that viewers character
&gt; more than one time. He just colored thousands more descriptions with his
&gt; own personal ideas, prejudices, understandings, than the person that
&gt; writes one. Those "viewer specific" descriptions are no more accurate 
&gt; or entertaining than one, in fact, they have intruded so much, that now
&gt; wherever I go, im told, "for my specific circumstances" what I see, hear
&gt; etc. Cant I get a chance to do that? Why does the game engine have to kick
&gt; me out of my character in each room, and tell me specifically for my character
&gt; now, what i see, hear, etc..

I have never advocated that the game engine should take you out of your
character and tell you how you feel.  However, the physical body of your
character will - IN SOME CASES - bias your viewpoint.  The engine can give
hints for what you might be feeling, but shouldn't be overbearing.  But in
the case of seeing and hearing...  If you are blind, the engine shouldn't be
giving you any visual information at all.  If you are deaf, the engine
shouldn't be relaying any noises to you.  And likewise, if your face is getting
painfully burned off by the sun, it shouldn't be telling you how much you love
the sun.  Maybe you do love the sun, maybe you don't, but it shouldn't tell
you that you do.

&gt; Im going to use a simple principle here :
&gt; 
&gt; Akhams Razor.

Actually it's either Ockham's or Occam's Razor in English.

&gt; 
&gt; "The simplest explanation is often the real one" (not entirely quoted as written
&gt; but definitely appropriate and consistent).

Occam was born before there were things like quantum physics.  8')

Since you're quoting Occam, it is interesting to note in the context of this
debate that he applied his theory to psychological powers distinct for each
mode of sense.  8')

&gt; In summary, to make specific descriptions, is to try to invade
&gt; each of the now millions of minute possibilites within each
&gt; characters perceptions (and hehe, I definately do not relish
&gt; the idea of trying to write all those descriptions, someone
&gt; would be at it for years of real time).

There really wouldn't be millions of different of descriptions.  Just as many
as your characters has senses per room.  And of course you don't have to have
a distinct smell and taste for every region.  It would be nice to have
physical effects too, such as the sunlight and the breathing oily air, but I
think it's just as easy to put those in the player objects as it is to put them
in the room, and perhaps it fits better.

You can really do a lot of neat things with the engine if you want.  If you
don't want to, it is your hill of beans.

I guess the other alternative is just to let the players make up whatever they
want for their roles.  In free-form role-playing, where the players aren't
bound by any universal rules, and can march around being Bill Clinton one minute
and Billy the Kid 5 minutes later, at their whim, it seems kinda pointless to
have the admins bound by any rules either in how they make up the game.  Maybe
that is the kind of thing you're used to..  I'm not sure.



</PRE>

<!--X-Body-of-Message-End-->
<!--X-MsgBody-End-->
<!--X-Follow-Ups-->
<HR>
<ul compact><li><strong>Follow-Ups</strong>:
<ul>
<li><strong><A NAME="01371" HREF="msg01371.html">[MUD-Dev] Re: Room descriptions</A></strong>
<ul compact><li><em>From:</em> Nathan F Yospe &lt;yospe#hawaii,edu&gt;</li></ul>
<li><strong><A NAME="01317" HREF="msg01317.html">[MUD-Dev] Re: Room descriptions</A></strong>
<ul compact><li><em>From:</em> Caliban Tiresias Darklock &lt;caliban#darklock,com&gt;</li></ul>
</UL></LI></UL>
<!--X-Follow-Ups-End-->
<!--X-References-->
<UL><LI><STRONG>References</STRONG>:
<UL>
<LI><STRONG><A NAME="01313" HREF="msg01313.html">[MUD-Dev] Re: Room descriptions</A></STRONG>
<UL><LI><EM>From:</EM> apocalypse#pipeline,com</LI></UL></LI>
</UL></LI></UL>
<!--X-References-End-->
<!--X-BotPNI-->
<UL>
<LI>Prev by Date:
<STRONG><A HREF="msg01314.html">[MUD-Dev] Re: Unix is a mud (Re: Ugh, IS Diablo a mud?)</A></STRONG>
</LI>
<LI>Next by Date:
<STRONG><A HREF="msg01316.html">[MUD-Dev] Re: Room descriptions</A></STRONG>
</LI>
<LI>Prev by thread:
<STRONG><A HREF="msg01313.html">[MUD-Dev] Re: Room descriptions</A></STRONG>
</LI>
<LI>Next by thread:
<STRONG><A HREF="msg01317.html">[MUD-Dev] Re: Room descriptions</A></STRONG>
</LI>
<LI>Index(es):
<UL>
<LI><A HREF="index.html#01315"><STRONG>Date</STRONG></A></LI>
<LI><A HREF="thread.html#01315"><STRONG>Thread</STRONG></A></LI>
</UL>
</LI>
</UL>

<!--X-BotPNI-End-->
<!--X-User-Footer-->
<!--X-User-Footer-End-->
<ul><li>Thread context:
<BLOCKQUOTE><UL>
<LI><STRONG>[MUD-Dev] Re: Room descriptions</STRONG>, <EM>(continued)</EM>
<ul compact>
<ul compact>
<LI><strong><A NAME="01307" HREF="msg01307.html">[MUD-Dev] Re: Room descriptions</A></strong>, 
Hal Black <a href="mailto:hal#moos,ml.org">hal#moos,ml.org</a>, Sun 27 Sep 1998, 16:58 GMT
</LI>
</ul>
<LI><strong><A NAME="01311" HREF="msg01311.html">[MUD-Dev] Re: Room descriptions</A></strong>, 
quzah [sotfhome] <a href="mailto:quzah#softhome,net">quzah#softhome,net</a>, Sun 27 Sep 1998, 18:30 GMT
<UL>
<LI><strong><A NAME="01312" HREF="msg01312.html">[MUD-Dev] Re: Room descriptions</A></strong>, 
Richard Woolcock <a href="mailto:KaVir#dial,pipex.com">KaVir#dial,pipex.com</a>, Sun 27 Sep 1998, 18:44 GMT
</LI>
</UL>
</LI>
<LI><strong><A NAME="01313" HREF="msg01313.html">[MUD-Dev] Re: Room descriptions</A></strong>, 
apocalypse <a href="mailto:apocalypse#pipeline,com">apocalypse#pipeline,com</a>, Sun 27 Sep 1998, 19:37 GMT
<UL>
<LI><strong><A NAME="01315" HREF="msg01315.html">[MUD-Dev] Re: Room descriptions</A></strong>, 
Hal Black <a href="mailto:hal#moos,ml.org">hal#moos,ml.org</a>, Sun 27 Sep 1998, 22:48 GMT
<UL>
<LI><strong><A NAME="01317" HREF="msg01317.html">[MUD-Dev] Re: Room descriptions</A></strong>, 
Caliban Tiresias Darklock <a href="mailto:caliban#darklock,com">caliban#darklock,com</a>, Mon 28 Sep 1998, 00:09 GMT
<UL>
<LI><strong><A NAME="01318" HREF="msg01318.html">[MUD-Dev] Re: Room descriptions</A></strong>, 
Hal Black <a href="mailto:hal#moos,ml.org">hal#moos,ml.org</a>, Mon 28 Sep 1998, 00:58 GMT
<UL>
<LI><strong><A NAME="01321" HREF="msg01321.html">[MUD-Dev] Re: Room descriptions</A></strong>, 
J C Lawrence <a href="mailto:claw#kanga,nu">claw#kanga,nu</a>, Mon 28 Sep 1998, 02:19 GMT
</LI>
</UL>
</LI>
<LI><strong><A NAME="01320" HREF="msg01320.html">[MUD-Dev] Re: Room descriptions</A></strong>, 
J C Lawrence <a href="mailto:claw#kanga,nu">claw#kanga,nu</a>, Mon 28 Sep 1998, 01:16 GMT
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</ul>
</LI>
</UL></BLOCKQUOTE>

</ul>
<hr>
<center>
[&nbsp;<a href="../">Other Periods</a>
&nbsp;|&nbsp;<a href="../../">Other mailing lists</a>
&nbsp;|&nbsp;<a href="/search.php3">Search</a>
&nbsp;]
</center>
<hr>
</body>
</html>