<!-- MHonArc v2.4.4 --> <!--X-Subject: [MUD-Dev] Re: skill system --> <!--X-From-R13: "Xbua Pregbtyvb" <nyrkoNvagreargpqf.pbz> --> <!--X-Date: Thu, 4 Jun 1998 01:18:42 -0700 --> <!--X-Message-Id: E0yhVEQ-00009Z-00#mail,kanga.nu --> <!--X-Content-Type: text/plain --> <!--X-Head-End--> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <html> <head> <title>MUD-Dev message, [MUD-Dev] Re: skill system</title> <!-- meta name="robots" content="noindex,nofollow" --> <link rev="made" href="mailto:alexb#internetcds,com"> </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> [ <a href="../">Other Periods</a> | <a href="../../">Other mailing lists</a> | <a href="/search.php3">Search</a> ] <br clear=all><hr> <!--X-Body-Begin--> <!--X-User-Header--> <!--X-User-Header-End--> <!--X-TopPNI--> Date: [ <a href="msg00875.html">Previous</a> | <a href="msg00877.html">Next</a> ] Thread: [ <a href="msg00891.html">Previous</a> | <a href="msg00926.html">Next</a> ] Index: [ <A HREF="author.html#00876">Author</A> | <A HREF="#00876">Date</A> | <A HREF="thread.html#00876">Thread</A> ] <!--X-TopPNI-End--> <!--X-MsgBody--> <!--X-Subject-Header-Begin--> <H1>[MUD-Dev] Re: skill system</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: skill system </LI> <LI><em>From</em>: "John Bertoglio" <<A HREF="mailto:alexb#internetcds,com">alexb#internetcds,com</A>></LI> <LI><em>Date</em>: Thu, 4 Jun 1998 01:18:32 -0700</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> From: J C Lawrence <claw#under,engr.sgi.com> To: mud-dev#kanga,nu <mud-dev#kanga,nu> Date: Tuesday, June 02, 1998 7:21 PM >On Thu, 28 May 1998 08:11:12 -0400 >Andrew C M McClintock<andrewm#tiger,hsc.edu> wrote: > >> I've been mulling over some ideas for the skill system in my mud (at >> this stage still no more than a fantastical whimsy) and thought I >> would bounce the ideas off the list. > >> For each skill there would be: > >...discussion of various learning forms and growth/decay curves... > >The following really isn't in response to your post directly, just me >maundering about the area and noting things I stumble across: > >My general view of game features is that they must do one of three >things: > > 1) Provide a game-world goal for players to achieve. > > 2) Provide a game-world problem for players to solve. > > 3) Solve a game-world problem for players. > >This is based on the definition of a game as being comprised of goals, >barriers, and freedoms. Before I respond to the post, I think it is necessary to narrow the definition of skills and examine the other elements at work here. Much of what goes into a world building system is designed to answer one simple question: "If I try to do this will I be sucessful?". Specific skills are just a part of this equation. I would suggest that there are several elements which affect a character's ability to accomplish goals in a game world. These are often found in paper RPG systems. Attributes: Broadly, what the character is born with. Sometimes, raw strength, speed, size or dex is enough to accomplish a given task. Perhaps with a higher risk, lower ultimate reward potential, etc. A good system will cap attribute improvements within a reasonable range. Attributes mold the rough character, making some life directions obvious and others almost untainable (or just not worth pursuing). The nature of attribues almost requires a careful mathmatical (better would be graphical)distribution during character creation. Attributes are the "metric of last resort" when trying to accomplish something. Talents: These are chosen during character creation (and perhaps "discovered" in later play). Talents are more focused than attributes for the purpose of deciding the outcome of actions. A talent in Acting (in the absense of specific skills) should allow a reasonable chance of success in actions or tasks related to those talents. Note that a person can without talent can learn a skill (we all see this daily in the real world). Talent provides a baseline which makes advancement in a skill easier and faster. Talents bring the character more into focus and provide shape and direction. Learning skills influenced by talents is a logical path but not one which is mandated. Talents should have a fixed value internally and can not be developed. Our system allows mathmatical distribution of "talent points" but that may be an error (too mechanical, probably a better system would be "some talent", "good talent", "extraordinary talent" values which deplete a graphical bar. Can be done with JS). Quirks and flaws are the opposite of talents. They modify reactions and success in a negative fashion. Some systems allow the use of these elements to allow for the purchase of more talents, attributes and/or skills. Skills: Skills represent a more formal approach to problem solving. I do not have a skill in the C programming language. I have the attributes required (I think), I have the talent (I can program in other languages and learn new things quickly), I even have related skills...but I really couldn't (at this moment) compile a 20 line program with any chance it would run. No skill. Leave me alone in a room with a book and a compiler, I will develop some ability with C. I am still not a C programmer. If given the task: "Write a program for this embedded controller in C.", I will probably fail at this point. If the task was "Write a program which will print 'Hello World' to the console", I could probably succeed. Of course, I might have been able to guess my way to success as well without any study given the ease of the task. Given enough study and practical application, I could at some point raise my head up high and say I am a C programmer. A some point (in game terms), my skill level could reach a point where virtually any task was possible. However, doing that would cause my growth in other areas to stop and would require resources (cases of Diet Coke). That is why many people with a 456 level C programming skill have a .4 skill level in general social behavior. Perhaps leveling off at about 87 would have been a better idea. I would suggest that skills are just a refinement of the elements above. Take a big iron bar, an adjustable wrench and a socket wrench with a 1/2 inch hex socket. All three tools can be used to remove a wheel nut from a car. Now, the socket wrench will do the best job but is almost useless with a 3/4 inch nut. The adjustable wrench is not the professionals choice, but will do the job. The big iron bar will get the nut off if you are lucky (see where I'm going here), but is the last resort. The bar is a nice thing to have around, though, because it is useful in a lot of area. If you take off a lot of 1/2 inch nuts, investing in the proper socket is probably a good idea. What I am suggesting is a multi-tiered model. Lifting stuff makes me stronger. Reading stuff makes me smarter...a little bit each time. The real issue is how hard is it to do things. >Skill webs primarily provide problems for players, especially as >contrssted to their prior simplistic model of levels where skills came >automatically with level progress. > >The primary problem is in gaining the necessary skills, a possible >secondary problem is in maintaining the required skill sets for a >particular play style. A presumably unintentional secondary problem >is in determining what skills sets are required for a particular >problem or play style. The creation of player archtypes which can be controlled by new and old players will give enough insight into the process. The skill set possesed by the npc character is exposed to its controler. Note that the specific numbers for success are not exposed. You take a skilled fencer into battle. You discover this guy kick butt with multiple, lightly armored opponents. You examine his STR and DEX, see he has a talent in Combat Arts. You notice he has a minor talent in Acrobatics and Athletics. You see basic combat skills, light armor wearing and a mastery of the foil and eppe...etc. Now, you know from running this guy that he is a good fighter. You don't know how well he would do trying to brew a vat of beer, since you don't see any grounding in specific skills or talents. If you try, you will probably fail. > >This last point seems the nastiest, and comes in two flavours: > > 1) Should the fact of, or the structure of the skill web be exposed >to players? If the nature of the skill web is stored in a mathmatical matrix in the server, it will become common knowledge whether directly exposed or not. There are all kinds of cool things you can do to mask it, however. Example: Everybody "knows" that the monastary on the mountain will take one character at a time to train as a Quack-Foo fighter (a partically potent form of martial arts). Everybody "knows" the character *must* have a grounding in the basic Foo fighting skill (which is rare but still easier to come by). What nobody "knows" except the server is that once in a while a person fitting the right attribute/talent profile will be invited to study. This might be controled by the phases of the moon, the calendar of feast days, a lack of a current student or just dumb luck. > 2) If it is exposed, how do players determine what skills are >required? > Again, the word will get out. Some things are obvious. If the command [SEARCH FOR WATER] is understood, players will try it. If the skill of Water Witching is learnable, one would assume this would make ones chances of finding a suitable well higher. >#1 has historically been solved by exposing the skill web to at least >some extent. Most commonly there is command or query which reports a >character's current skill status in some manner. Given an exposed >skill tree, #2 comes into play. How does a player determine what the >game-world import and impact of his skill tree is? This essentially >maps down to three questions: > > a) Is my skill set likely sufficient to accomplish XXX? > > b) What skill set do I need to likely accomplish XXX? > > c) What can I do with skill set YYY? > >They are related but not identical. The answers to each has different >effects on game play and game-world solution attempts. > >#A could be considered analagous to the DIKU "consider" command. >Providing this support allows (and even encourages) players to follow >a low-risk course, only attempting those actions which are >known-profitable, and which are stated as likely. A Consider command that tells the player things they have now way of knowing IC is a bad idea. If I see a furry bunny, the normal description should tell me that. If I am an adept ranger I might perceive that that cute bunny is in fact the Vorpal Bunny of Doom which does 10D100 + 50 damage from its Claws of Doom. Moral of the story: be careful who you pick on. >Making the answers to #A vague (large granularity) dones't solve the >problem, it mrely makes the answers unreliable and largely useless. Make them accurate but only within the players ability to perceive. This mean that, in general, by the time a fighter can accurately assess his opponents, he won't need to in most cases. Opponent identification is an action. It is governed by attributes, talents and specific skills. An ace swordman might notice a potential opponent had the moves of an expert swordsman (I don't know how, ask a swordsman) so would be reported an estimate of the sword skill. Most people would have a reasonable estimate of a persons strength, but would miss the knuckle scarring of an expert brawler...etc. >#B is more invasive. Skill webs, particularly finely grained ones, >suffer from compartmentalisation. What is actually attempting to be >modeled with discrete units with pre-defined inter-connects is a very >organic and inter-related structure full of n'th order derived >inter-connects. It sounds messy, it is messy, its the unexpecteds >that get you. > > Yes, swinging an axe to cut down a tree is not unlike swinging a >sword to cut down a man, especially a two-handed butcher blade. >Swinging that same axe however also gains upper body strength, which >provides an ancillary ability to climb ropes, despite having a very >low skill rating in rope climbing (brute strength making up for >technique). > > Question: Is this level of skill web inter-connect valuable in a >game? > For sure. Swing an axe. Get stronger. Doesn't make any difference whether the target is a great oak or Bubba. Anybody can try anything allowed by the server. The server will examine the elements which affect success for this action and make a calculation which describes the degree of success or failure. >#B additionally allows a more insidious form of predictive play than >#A. A player can now pre-determine his character-path in terms of >goals, find out what each goal requires in terms of skills, and from >there chart a mechanical course to wend the game to the various >inflection points of the requisite skill levels. > The mechanical nature of things can be controled by providing many ways to accomplish the same task. >While it may be unlikely that many (any) players will so chart a >character's life from its inception till the end, it will happen on >the more micro scale: > > Bubba wants to build a tree house. What skill sets will he need? >Ahh, he'll need Q, R, S and T (as compared to what he has now). >Requisite actions later, Q, R, S, and T are acquired, and the tree >house is built. My system would let Bubba build the tree house any time he wants to try. Some things are requried. He must assemble the materials for the house. If skilled in tree house construction, fewer materials will be requried because less will be wasted in the building process. Tools will help. He should aquire the proper tools to speed construction and improve quality. Since in our world time is an enemy (eating is required) construction skills will be important to success by shortening the time. He may find himself with a half finished tree house while he has to go hunting to get some grub. If Bubba has the tools, the materials, a proper site (either by dumb luck or understanding) and enough time, some kind of tree house will result. The quality of the item will be calculated based on skills, talents and attributes. If Bubba house falls down during the first rain storm...he might hire a few skilled tradespeople NPCs (who would add their skills and attributes to his) to make a better home. > >Note: This is __NOT__ necessarily a problem. It merely /can/ be a >problem depending on your world and game type. > >#C is both a blessing and a curse. The blessing is that skill sets >now have a well known and documented useful value (Yes! I can >decapitate 70% of trolls in a single blow using a rusty carving >knife!). The curse is that it kills experimentation and exploration. > You find that most Trolls seem to be vunerable to the carving knife but are unsure as to the percentage (unless you keep a spreadsheet OOC). If the algorithim controlling the decapitation of Trolls is sufficiently complex, you will be unsure if you have taken the best path. >Chaging the answer to #B so that it merely suggests areas which may be >accomplished also removes the inter-connect values of the skill sets. > > Bubba the axe swinging woodsman may really like to be reminded that >he's now got enough strength to climb ropes with ease, and the fact of >that suggestion may prompt Bubba to consider character-life courses he >would not have examined otherwise. > You don't remind him. He just discovers that high strength makes certain things possible which were not before. Take rope climbing. Assume you make a 1-100 skill roll (higher is better). You could be successful: 1) Low everything but a high degree of rope climbing skill learned as a sailor. Target number:14 2) High strength and nothing else. (Expect BAD results for a critical failure, however) Target number: 34. Have really high strength (and perhaps low encumberance) the number could go down to 22. Critical failure under 14 3) A balanced mixture of STR, DEX, WILL and a little athletic talent thrown in. Target number: 23 4) Absolute dumb luck. You grabbed the rope and got hit by a sudden updraft...who knows. Target number: 94. Critical failure under 24 Given this kind of granularity, it will be difficult to determine the "right" skill mix. > Yes, there are several "may's" in there. Yes, the value of so >suggesting to Bubba is of arguable game-value. Yes, it creates a >certain form of pandering Mr Rodger's-like game world. > >The last bit on exposed skill sets is, what is the interface? What >does the user see? How does the user manipulate nd query his skill >sets? How is the learning curve for the human user of character skill >sets in the game made manageable? How does the user know what skill >sets are possible, what skill sets his character currently has, and in >what state, what skill sets are easier for his character than others, >etc? > We don't measure skills, we measure the results of skills. No one says Michael Jordan has a skill of 96 in basketball. We say he averages 32 points per game and has a 53% success rate for shots from inside 20 feet (or whatever is actually correct). So we really don't really need to explain all that much about skills. The help file exposes all standard commands. Guess the parser is a dreadful game. The help file details the syntax of the command and may offer some general hits about success. Under no circustances is the actual math exposed. Everything that can be attempted is detailed. (A few special commands might be reserved for special areas/quests but I cannot think of a good reason to do so at this time.) You type TEST [Action] where [action] is what you would like to have a metric for success. >TEST CLIMB ROPE would test an average rope climbing action and report to you a text description of your chances. Of course, an unskilled person (and even worse, a stupid one) could expect a wild variation Does the Farming Skill improve cultivation of herbs found in the wild? I would guess so but maybe when I implmented the PLANT HERB command I decided to use your Natural talent coupled with Alchemy/Herbalist skills instead. Someone might complain that while they were not skilled in Herbalism, they were expert farmers and should be able to grow herbs. So I make it so most herbs can be grown and harvested using farming skills...but leave a few exotics whose cultivation is more ritual oriented to the domain of the arcane professionals. And so on. What I am suggesting is the world designer makes a best guess as to what should control the outcome of an an action and implements it. As you get feedback, you broaden the controlling elements and give make a more "realistic" feeling world. >I don't have answers to any of these last. > >In #1, not exposing the skill system at all raises other interesting >questions. If the skill web is not exposed at all, is there any other >sort of comparitive metric for players to judge their characters >against each other? Is there a game-provided metric to judge and >perceive the progress of a character in the game (ala levels, or if >only as a reflection of skill set improvement)? > Levels are based on doing lots of stuff. You get experience points for being in the world and mucking about. Tough stuff gets you more, easy stuff less. I really agree with the idea expressed earlier in the list that players will create metrics even if you do not. >Not exposing the skill set concept doesn't remove the questions of: > > q) What are my chances of being able to accomplish XXX? > You guess or ask. As before, by the time the answer the world gives you is accurate, you will already know the answer because of experience. > r) What do I need to do to be likely to accomplish XXX? The world reports when something is impossible. If you have sufficient skill or other elements it might even tell you what is missing. An alcheminst might realize that the potion failed because the sulfur was not pure enough...Bubba would not. > > s) What can I likely do right now? > Anything. Browse the help file and try commands. DIG might not work because you are standing on solid rock. The world would tell you that. It would not tell you that the sequence DRILL HOLE IN GROUND, PUT PURPLE POTION IN HOLE, RUN N, S would provide you with a nice big hole in the ground. >#Q, #R, and #S are of course the direct counterparts to #A, #B, and #C >above, with the underlieing mechanics hidden. The rest of the points >on #A, #B, and #C apply equally well here. > >Additionally such variable skill set structures also provide their own >goals and problems within the game world (not surprising: organic >system). The clarity and definition of those goals, and the problems >of initially achieving them is discussed above (what do I need, how do >I get that, etc). The second order problems and goals are more >curious: > > I) How do I maintain what I need? Are the activities required for >maintenance different than required for the initial gain? > > II) How do I know when my skill sets decay such that they need >maintenance (to be able to do what I want to be able to do)? I feel skill decay should be a minor factor. Attribute decay should be a much more real problem. Concept: You started off as weak wizard. Now you are smarter but even weaker. Maybe you should go jogging....No pain, no gain. > > III) What are the costs in other wanted items for maintaining that (eg >inability to be supremse master in two widely unrelated skill sets, >where do I trade off)? > If you mean unrelated in terms of core attributes, you do it during character creation. You can't be a warrior-tank mage-healer unless accept mediorcrity in the secondary skills AND spend a lot of time running around learning. If you mean unrelated in terms of learning paths, it is somewhat different. Learning Alchemy and Cartography are very different skills but use similar core attribute. Literacy would be a requirement of Alchemy and could speed advancement in map making but not necessarily be required...etc. > IV) What are the impacts on my game play and game style for >maintaining those skills at those levels (eg spend 90% of time >maintaing skill sets for 10% "play" time)? Skill mainntence should not be an major issue. Skill improvement should be. Finding ways (and places and teachers and situations ) to improve skills should be important. > >ObStory: > > A nameless MUD did a skill web implementation. One of the tasks >possible in that MUD was to get a boat and cross a channel from the >mainland to an island. If you had sufficiant swimming skills (called >something.water.something_else), you made it over without effort. If >you didn't have that skill at the needed level you drowned, presumably >because the Imp decided that non-swimmers would freak out sufficiently >at the choppy waters that they'd necessarily fall overboard/capsize >and thereby try their breathe.water skills. > A bit goofy, but not unreasonable if the proper tests are made. Being a passenger on a boat is normally a pretty passive activity. A dwarf might get violently ill and end the trip with a high fatigue level....but you would not expect to be required to have a skill. However, if the trip got rough then it would be reasonable to test characters on whether they had other skills to survive. If the player was in control of the boat, you would test seamanship or small boat handling. If you failed, you would test swimming....and so on. It the boat sinks or founders, then all passengers would have to test various skills required for survival. If the boat is just really bouncing, a person with high dex and other physical skills might make it. A good implentation of this situation would allow multiple ways to be successful...none of which would be guaranteeed. >-- >J C Lawrence Internet: claw#null,net >(Contractor) Internet: coder#ibm,net >---------(*) Internet: claw#under,engr.sgi.com >...Honourary Member of Clan McFud -- Teamer's Avenging Monolith... > John Bertoglio >-- >MUD-Dev: Advancing an unrealised future. > </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="00926" HREF="msg00926.html">[MUD-Dev] Re: skill system</A></strong> <ul compact><li><em>From:</em> J C Lawrence <claw#under,engr.sgi.com></li></ul> </UL></LI></UL> <!--X-Follow-Ups-End--> <!--X-References--> <!--X-References-End--> <!--X-BotPNI--> <UL> <LI>Prev by Date: <STRONG><A HREF="msg00875.html">[MUD-Dev] Administrative Meddling</A></STRONG> </LI> <LI>Next by Date: <STRONG><A HREF="msg00877.html">[MUD-Dev] Re: Administrative Meddling</A></STRONG> </LI> <LI>Prev by thread: <STRONG><A HREF="msg00891.html">[MUD-Dev] Re: OT: ICQ hacks and exploits</A></STRONG> </LI> <LI>Next by thread: <STRONG><A HREF="msg00926.html">[MUD-Dev] Re: skill system</A></STRONG> </LI> <LI>Index(es): <UL> <LI><A HREF="index.html#00876"><STRONG>Date</STRONG></A></LI> <LI><A HREF="thread.html#00876"><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><A NAME="00889" HREF="msg00889.html">[MUD-Dev] META: membership list</A></strong>, J C Lawrence <a href="mailto:claw#under,engr.sgi.com">claw#under,engr.sgi.com</a>, Fri 05 Jun 1998, 22:57 GMT <LI><strong><A NAME="00884" HREF="msg00884.html">[MUD-Dev] OT: ICQ hacks and exploits</A></strong>, J C Lawrence <a href="mailto:claw#under,engr.sgi.com">claw#under,engr.sgi.com</a>, Fri 05 Jun 1998, 16:26 GMT <UL> <LI><strong><A NAME="00885" HREF="msg00885.html">[MUD-Dev] Re: OT: ICQ hacks and exploits</A></strong>, Mike Sellers <a href="mailto:mike#bignetwork,com">mike#bignetwork,com</a>, Fri 05 Jun 1998, 17:22 GMT <UL> <LI><strong><A NAME="00891" HREF="msg00891.html">[MUD-Dev] Re: OT: ICQ hacks and exploits</A></strong>, J C Lawrence <a href="mailto:claw#under,engr.sgi.com">claw#under,engr.sgi.com</a>, Sat 06 Jun 1998, 01:18 GMT </LI> </UL> </LI> </UL> </LI> <LI><strong><A NAME="00876" HREF="msg00876.html">[MUD-Dev] Re: skill system</A></strong>, John Bertoglio <a href="mailto:alexb#internetcds,com">alexb#internetcds,com</a>, Thu 04 Jun 1998, 08:18 GMT <UL> <LI><strong><A NAME="00926" HREF="msg00926.html">[MUD-Dev] Re: skill system</A></strong>, J C Lawrence <a href="mailto:claw#under,engr.sgi.com">claw#under,engr.sgi.com</a>, Wed 10 Jun 1998, 02:07 GMT <UL> <LI><strong><A NAME="00936" HREF="msg00936.html">[MUD-Dev] Re: skill system</A></strong>, s001gmu <a href="mailto:s001gmu#nova,wright.edu">s001gmu#nova,wright.edu</a>, Wed 10 Jun 1998, 14:29 GMT <UL> <LI><strong><A NAME="00941" HREF="msg00941.html">[MUD-Dev] Re: skill system</A></strong>, Adam Wiggins <a href="mailto:adam#angel,com">adam#angel,com</a>, Wed 10 Jun 1998, 20:15 GMT <UL> <LI><strong><A NAME="00947" HREF="msg00947.html">[MUD-Dev] Re: skill system</A></strong>, Katrina McClelan <a href="mailto:kitkat#the486,bradley.edu">kitkat#the486,bradley.edu</a>, Wed 10 Jun 1998, 22:55 GMT </LI> </UL> </LI> </UL> </LI> </UL> </LI> </UL> </LI> </UL></BLOCKQUOTE> </ul> <hr> <center> [ <a href="../">Other Periods</a> | <a href="../../">Other mailing lists</a> | <a href="/search.php3">Search</a> ] </center> <hr> </body> </html>