1997Q4/
<!-- MHonArc v2.4.4 -->
<!--X-Subject: Re: [MUD&#45;Dev]  UI Issues: Anti&#45;scripting techniques -->
<!--X-From-R13: "Fenivf Qnfrl" <rsvaqryNcbynevf.arg> -->
<!--X-Date: Sun, 05 Oct 1997 20:22:21 +0000 -->
<!--X-Message-Id: 199710052021.QAA04821#polaris,net -->
<!--X-Content-Type: text/plain -->
<!--X-Head-End-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title>MUD-Dev message, Re: [MUD-Dev]  UI Issues: Anti-scripting techniques</title>
<!-- meta name="robots" content="noindex,nofollow" -->
<link rev="made" href="mailto:efindel#polaris,net">
</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="msg00045.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00047.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Thread:&nbsp;
[&nbsp;<a href="msg00060.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00052.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Index:&nbsp;
[&nbsp;<A HREF="author.html#00046">Author</A>
&nbsp;|&nbsp;<A HREF="#00046">Date</A>
&nbsp;|&nbsp;<A HREF="thread.html#00046">Thread</A>
&nbsp;]

<!--X-TopPNI-End-->
<!--X-MsgBody-->
<!--X-Subject-Header-Begin-->
<H1>Re: [MUD-Dev]  UI Issues: Anti-scripting techniques</H1>
<HR>
<!--X-Subject-Header-End-->
<!--X-Head-of-Message-->
<UL>
<LI><em>To</em>: &lt;<A HREF="mailto:mud-dev#null,net">mud-dev#null,net</A>&gt;</LI>
<LI><em>Subject</em>: Re: [MUD-Dev]  UI Issues: Anti-scripting techniques</LI>
<LI><em>From</em>: "Travis Casey" &lt;<A HREF="mailto:efindel#polaris,net">efindel#polaris,net</A>&gt;</LI>
<LI><em>Date</em>: Sun, 5 Oct 1997 16:21:29 -0400</LI>
<LI><em>Reply-To</em>: "Travis Casey" &lt;<A HREF="mailto:efindel#io,com">efindel#io,com</A>&gt;</LI>
</UL>
<!--X-Head-of-Message-End-->
<!--X-Head-Body-Sep-Begin-->
<HR>
<!--X-Head-Body-Sep-End-->
<!--X-Body-of-Message-->
<PRE>
Brian Price &lt;blprice#bedford,net&gt; wrote:
&gt;It is amazing to me how untactfully I can manage to state ideas and
&gt;opinions at times.  Hopefully this thread can generate some useful
&gt;ideas in spite of my poor choice of words.
&gt;
&gt;&gt; From:          "Travis Casey" &lt;efindel#polaris,net&gt;
&gt;&gt; Brian Price &lt;blprice#bedford,net&gt; wrote:

&gt;&lt;snip example of my lack of tact&gt;
&gt;&gt;
&gt;&gt; As someone who has often championed such systems, and who has helped
&gt;&gt; to implement several of them, I have to take exception to this
&gt;&gt; comment.  :-)  The basic idea behind such a system is that a character
&gt;&gt; should be able to get better at a skill by practicing it.  This is
&gt;&gt; quite realistic, and, ideally, should lead to players being better
&gt;&gt; able to define their characters and should encourage roleplaying.
&gt;&gt; Quite simply, a warrior *should* get better at fighting by fighting,
&gt;&gt; a thief *should* get better at stealing by stealing, and a chef *should*
&gt;&gt; get better at cooking by cooking.
&gt;
&gt;To a point I agree with you, however... in general basic training of
&gt;some sort is required to gain an initial level of competency in a
&gt;given skill.   After some time spent actually using the skills, one
&gt;may profit from advanced training in the skill.  Likewise after a
&gt;period of using the skill at the more advanced level, one might be
&gt;able to recieve 'masters' level training, allowing one to progress
&gt;eventually to mastery of the skill.

Basic training in skills is usually assumed in a guild or class based
system.  In pure skill systems, IMHO training should be available, and
should be quite valuable at low skill levels.  As skill levels go up,
however, characters should have a harder time finding trainers who can
still help them, and the price for training (not necessarily a monetary
price) should go up.

For some skills, getting some basic training is a true necessity, since
failure can carry harsh consequences.  No one in their right mind would
want to learn the basics of defusing bombs by trial and error with live
bombs, for example.  :-)

&gt;A poorly trained cook will _not_ get better at cooking by doing it
&gt;(my gf is a prime example here), there must be in addition to
&gt;practice, a desire and a conscious effort to advance in the art.

I'd say that these are also assumed for player characters.  This might
not be a valid assumption for all characters, but I think it should hold
often enough that we can ignore exceptions.

&gt;While I suppose in some exceptional case a chef might go from
&gt;flipping burgers in a fast food joint to becoming a world-renowned
&gt;chef by sheer practice, this would not be the normal case by any
&gt;means.  Of course, we all know that training alone does not suffice
&gt;either, I'd bet we all know of individuals who have completed some
&gt;course of training, barely passing, and never achieved any degree of
&gt;success in the trained skill.  (Such individuals do tend to become
&gt;managers however :) j/k).

Well, one question is in how you divide up skills.  For example, one
could simply have a "cooking" skill, or you could divide it up into
"short-order cook", "baking", "barbecueing", "haute cuisine", etc.  Thus,
our hypothetical burger-flipper might become a very good short-order cook,
but will never become a world-renowned chef, since that would require a
high skill in haute cuisine.  Of course, few muds will probably want to
divide cooking into this many skills -- but many muds might want to divide
up combat skills into, say, "short slashing sword", "short thrusting sword",
"medium slashing sword", etc.

&gt;&gt; The problem, IMHO, is not in the concept, but in the implementation.
&gt;&gt; I think Brian's talking about the implementation of this idea that he's
&gt;&gt; seen on SWmud, so I'm going to talk specifically about that
implementation
&gt;
&gt;Actually the implementation on SWmud (for reasons you detail below)
&gt;is one of the better implementations of that general idea that I've
&gt;seen.  My main exposure to skill systems has been from Diku/Merc/Rom.

Thanks.  :-)

&gt;&gt; and its problems.  Hopefully some of this will still be helpful to others
&gt;&gt; implementing such systems -- sort of a warning about what I'd change if
&gt;&gt; I could do it over.
&gt;&gt;
&gt;&gt; 1 - There are many cases where it's possible to attempt to use a skill,
&gt;&gt;     and thereby advance it, when the character simply shouldn't be able
&gt;&gt;     to.  The best example of this is hiding -- on SWmud, any character
who
&gt;&gt;     can hide can try to hide at any time, and gets advancement in the
&gt;&gt;     hiding skill for it.  A more logical implementation would only test
&gt;&gt;     the skill, and therefore allow for advancement, when there was a
chance
&gt;&gt;     that someone would notice you -- after all, it's hard to improve a
skill
&gt;&gt;     with no feedback about whether you're doing it right!
&gt;
&gt;Yep, couldn't agree more.  However I'm in favor of light-wieght
&gt;solutions to these types of problems.

IMHO, this *is* a light-weight solution... it would require a bit of coding,
but once it's been done once, it should be useable for any skill which has
this quality.

[cuts made]

&gt;&gt;     The Arduin paper RPG has a wonderful concept which is related to
this.
&gt;&gt;     In it, once a character has succeeded or failed at a particular task,
&gt;&gt;     that character doesn't need to roll for it again unless circumstances
&gt;&gt;     change in a way that will lower or raise (respectively) his/her
chance
&gt;&gt;     of success.  For example, if a thief fails to pick a lock, he/she
will
&gt;&gt;     fail on any subsequent attempt to pick that lock until circumstances
&gt;&gt;     change in his/her favor (e.g., the thief gets better at picking
locks,
&gt;&gt;     obtains a better set of lockpicks, or can spend significantly more
time
&gt;&gt;     trying).  In general, this only applies to long-term actions, not to
&gt;&gt;     "instant" actions -- for example, it doesn't apply to hit rolls in
&gt;&gt;     combat.
&gt;
&gt;While a very interesting and seemingly (at first glance anyways) a
&gt;realistic solution, implementing this in a mud would (I think) be a
&gt;rather involved task.. ie. a heavyweight solution.

I don't think it would be very involved... however, it would require a good
deal of permanent storage, if characters have very long lives.  I wasn't
thinking of this as an actual suggestion, though, just mentioning it as an
interesting and related note.

&gt;In many cases, in order to 'play the game' a certain level of
&gt;proficiency in some skills is pretty much required.  All skill
&gt;systems I have seen implemented to date (granted a narrow subset)
&gt;have all had the fatal flaw of being imbedded in a game system that
&gt;rewarded the 'powergamer'.   Every player I have observed on such
&gt;muds (unless just plain clueless newbies that never stuck with the
&gt;game) all engaged in spamming of one sort or another to increase
&gt;skill levels to a certain point.  I have adopted a playing style on
&gt;such muds which incorporates skill improvement efforts into leveling
&gt;efforts and even manage to solve a few quests/explore a bit in the
&gt;process, still in many cases, I'm reduced to useless spamming to
&gt;increase skills to a competitive level.

I agree.  Implementing some of the ideas I discussed to make blindly
reusing skills have low returns should go a long way towards solving
this problem.

&gt;Having gone this far, even though it is somewhat off topic, I'd be
&gt;remiss if I did not present an alternative, lightwieght, solution.

Well, IMHO, the solutions I've proposed aren't truly "heavyweight."
I don't mind spending a large amount of time thinking about and
implementing a solution to a problem, as long as it's something that
will only need to be done once.  I think the biggest problem we had on
SWmud was that there wasn't a single system for advancing skills -- it
was pretty much left up to the writers of the individual skills when they
should advance and how much they should rise each time the skill was
advanced.  Thus, fixing problems required tweaking individual skills --
and didn't help any other skills which had the same problem.

A single system for advancing skills, with a few options for different
"types" of skills, would allow easier fixes to related groups of skills,
and would reduce the chance that an inexperienced skill designer could mess
up.

As usual, the most important thing is playtesting; on SW, our skill system
was tacked on late in our original playtesting stage, and many problems
weren't noted until after the mud was open.  Individual problems have been
tweaked since then, but no one's had the ambition to do a basic redesign
of the skill system.

A sudden thought for skill systems -- something that might be useful to keep
is a running record of how often different skills are used -- for example,
you might want to keep the number of times/day that each skill is used.
This
information could then be used to adjust advancement rates.  This could even
be done automatically by the skill code, although you'd probably want to set
limits on how much and/or how fast the advancement rate can be adjusted.
This
would help prevent scenarios where a skill is given a high rate of
advancement
per use because it's thought that it won't be used much, and then turns out
to be used more than was expected.

A mildly sadistic system might be to do these adjustments on a character-by-
character basis -- thus, those who try to advance faster by "spamming"
skills
would have their advancement per use decreased to where they advance no
faster,
or maybe even slower, than they would if they only used the skill when it's
truly needed!

&gt;First, the premise I'm operating under is:
&gt;   A.  No levels
&gt;   B.  No classes per se (may use careers which give bonuses or
&gt;        penalties to certain skills).
&gt;   C.  The object of the game is to develop one's character and
&gt;        over a period of time gain power and influence thru play.
&gt;   D.  The gaining of and training in a skill implies that the
&gt;        character percieves a need for, and will use, the skill.
&gt;
&gt;The lightweight solution is then:
&gt;   A.  Each level of skill mastery requires training.
&gt;   B.  Training requires an expenditure of experience points,
&gt;         game play time, and money.
&gt;   C.  Higher levels of training cost ever increasing amounts of B.
&gt;   D.  Training requires an instructor, an instructor must be
&gt;         located in order to train.  (instructor could be an object
&gt;         in some cases though this requires additional considerations)
&gt;   E.  The more rare a skill, and the higher the level of training
&gt;         offered by the instructor, the harder it is to find and
&gt;         costlier it is to reach said instructor.
&gt;
&gt;There are quite a number of variations on the above theme that I will
&gt;likely implement but that is the general 'look and feel' of the
&gt;system I propose as a lightweight solution.  It is modeled to a
&gt;degree upon a modified paper Traveller rpg system I've had a number
&gt;of years experience with.  Such a system has a degree of realism
&gt;built in, is easy and low cost to implement, and generates a number
&gt;of game-play situations similar to quests.

It does, however, require continuing implementation -- each time a new
skill is added, trainers have to be added for it.  Further, the "harder
to find" part for finding high-level instructors may be hard to implement,
and gives more incentive for players to "cheat" by sharing locations of
instructors.
--
      |\      _,,,---,,_        Travis S. Casey  &lt;efindel#io,com&gt;
 ZZzz  /,`.-'`'    -.  ;-;;,_   No one agrees with me.  Not even me.
     |,4-  ) )-,_..;\ (  `'-'        rec.games.design FAQ:
    '---''(_/--'  `-'\_)      <A  HREF="http://www.io.com/~efindel/design.html">http://www.io.com/~efindel/design.html</A>



</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="00052" HREF="msg00052.html">Re: [MUD-Dev]  UI Issues: Anti-scripting techniques</A></strong>
<ul compact><li><em>From:</em> Adam Wiggins &lt;nightfall#user2,inficad.com&gt;</li></ul>
</UL></LI></UL>
<!--X-Follow-Ups-End-->
<!--X-References-->
<!--X-References-End-->
<!--X-BotPNI-->
<UL>
<LI>Prev by Date:
<STRONG><A HREF="msg00045.html">Re: [MUD-Dev]  Balance of Character Power</A></STRONG>
</LI>
<LI>Next by Date:
<STRONG><A HREF="msg00047.html">Re: [MUD-Dev]  UI Issues: Anti-scripting techniques</A></STRONG>
</LI>
<LI>Prev by thread:
<STRONG><A HREF="msg00060.html">Re: [MUD-Dev]  UI Issues: Anti-scripting techniques</A></STRONG>
</LI>
<LI>Next by thread:
<STRONG><A HREF="msg00052.html">Re: [MUD-Dev]  UI Issues: Anti-scripting techniques</A></STRONG>
</LI>
<LI>Index(es):
<UL>
<LI><A HREF="index.html#00046"><STRONG>Date</STRONG></A></LI>
<LI><A HREF="thread.html#00046"><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>Re: [MUD-Dev] Usability and interface and who the hell is suppo</STRONG>, <EM>(continued)</EM>
<ul compact>
<LI><strong><A NAME="00050" HREF="msg00050.html">Re: [MUD-Dev] Usability and interface and who the hell is suppo</A></strong>, 
Travis Casey <a href="mailto:efindel#polaris,net">efindel#polaris,net</a>, Sun 05 Oct 1997, 22:13 GMT
</LI>
</ul>
</LI>
<LI><strong><A NAME="00000" HREF="msg00000.html">Re: [MUD-Dev]  UI Issues: Anti-scripting techniques</A></strong>, 
Brian Price <a href="mailto:blprice#bedford,net">blprice#bedford,net</a>, Wed 01 Oct 1997, 05:37 GMT
<UL>
<li>&lt;Possible follow-up(s)&gt;<br>
<LI><strong><A NAME="00004" HREF="msg00004.html">[MUD-Dev]  UI Issues: Anti-scripting techniques</A></strong>, 
Maddy <a href="mailto:maddy#fysh,org">maddy#fysh,org</a>, Wed 01 Oct 1997, 15:01 GMT
<UL>
<LI><strong><A NAME="00060" HREF="msg00060.html">Re: [MUD-Dev]  UI Issues: Anti-scripting techniques</A></strong>, 
clawrenc <a href="mailto:clawrenc#cup,hp.com">clawrenc#cup,hp.com</a>, Mon 06 Oct 1997, 22:51 GMT
</LI>
</UL>
</LI>
<LI><strong><A NAME="00046" HREF="msg00046.html">Re: [MUD-Dev]  UI Issues: Anti-scripting techniques</A></strong>, 
Travis Casey <a href="mailto:efindel#polaris,net">efindel#polaris,net</a>, Sun 05 Oct 1997, 20:22 GMT
<UL>
<LI><strong><A NAME="00052" HREF="msg00052.html">Re: [MUD-Dev]  UI Issues: Anti-scripting techniques</A></strong>, 
Adam Wiggins <a href="mailto:nightfall#user2,inficad.com">nightfall#user2,inficad.com</a>, Mon 06 Oct 1997, 02:33 GMT
</LI>
</UL>
</LI>
<LI><strong><A NAME="00047" HREF="msg00047.html">Re: [MUD-Dev]  UI Issues: Anti-scripting techniques</A></strong>, 
Travis Casey <a href="mailto:efindel#polaris,net">efindel#polaris,net</a>, Sun 05 Oct 1997, 20:49 GMT
<UL>
<LI><strong><A NAME="00055" HREF="msg00055.html">Re: [MUD-Dev]  UI Issues: Anti-scripting techniques</A></strong>, 
Shawn Halpenny <a href="mailto:malachai#iname,com">malachai#iname,com</a>, Mon 06 Oct 1997, 14:54 GMT
<UL>
<LI><strong><A NAME="00064" HREF="msg00064.html">Re: [MUD-Dev]  UI Issues: Anti-scripting techniques</A></strong>, 
Adam Wiggins <a href="mailto:nightfall#user2,inficad.com">nightfall#user2,inficad.com</a>, Tue 07 Oct 1997, 08:11 GMT
</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>