<!-- MHonArc v2.4.4 --> <!--X-Subject: Re: [MUD-Dev] New topic: AI and NPCs --> <!--X-From-R13: "Xba O. Znzoreg" <wyflfvapNvk.argpbz.pbz> --> <!--X-Date: Sat, 30 Aug 1997 01:36:28 +0000 --> <!--X-Message-Id: 199708300136.UAA23298@dfw-ix4.ix.netcom.com --> <!--X-Content-Type: text/plain --> <!--X-Reference: 3404538D.EDECBA71#darklock,com --> <!--X-Head-End--> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <html> <head> <title>MUD-Dev message, Re: [MUD-Dev] New topic: AI and NPCs</title> <!-- meta name="robots" content="noindex,nofollow" --> <link rev="made" href="mailto:jlsysinc#ix,netcom.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="msg00849.html">Previous</a> | <a href="msg00851.html">Next</a> ] Thread: [ <a href="msg00818.html">Previous</a> | <a href="msg00954.html">Next</a> ] Index: [ <A HREF="author.html#00850">Author</A> | <A HREF="#00850">Date</A> | <A HREF="thread.html#00850">Thread</A> ] <!--X-TopPNI-End--> <!--X-MsgBody--> <!--X-Subject-Header-Begin--> <H1>Re: [MUD-Dev] New topic: AI and NPCs</H1> <HR> <!--X-Subject-Header-End--> <!--X-Head-of-Message--> <UL> <LI><em>To</em>: <A HREF="mailto:mud-dev#null,net">mud-dev#null,net</A></LI> <LI><em>Subject</em>: Re: [MUD-Dev] New topic: AI and NPCs</LI> <LI><em>From</em>: "Jon A. Lambert" <<A HREF="mailto:jlsysinc#ix,netcom.com">jlsysinc#ix,netcom.com</A>></LI> <LI><em>Date</em>: Fri, 29 Aug 1997 21:36:48 -4</LI> <LI><em>Comments</em>: Authenticated sender is <jlsysinc#popd,ix.netcom.com></LI> <LI><em>Reply-to</em>: <A HREF="mailto:jlsysinc#ix,netcom.com">jlsysinc#ix,netcom.com</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 27 Aug 97 at 9:17, Caliban Tiresias Darklock wrote: > [snipped some good fun] > Has anyone managed to implement something resembling tactical intellect > in MUD mobs? Yes. I include a repost from rgma last year. I haven't looked at this issue in awhile. There have been other interesting diversions. I've snipped up the post a bit, since it rambled between different issues. --cut-- From: "Jon A. Lambert" Subject: Re: Talking Mobs (was Re: Realistic MUDs: Mob behavior) x-netcom-date: Tue Oct 15 10:12:02 PM CDT 1996 newsgroups: rec.games.mud.diku,rec.games.mud.admin,rec.games.mud.lp Chris Lawrence (Contra) wrote in article <snip> > Instead I use object inheritance and what I > call Combat Packages to dynamically spuff up mobile's combat > capabilities at runtime. I expect it to be rather nasty when a mobile > just happens to grab a new (comparitively very high level) combat > package in the middle of a fight. > I'd be interested in hearing your ideas on these "combat packages". Is this a script-type language that you are working on or more similar to the hardcoded MOB special procedures? In the system I am working on, I have three classes of "mobiles", a PLAYER class, an NPC class and a MOB class. <snip> The MOB class is used to depict non or semi-intelligent mobiles (animals, reptiles, various fantastic creatures). In order to implement the MOB class behavior I have attached two pieces of information: 1) Outlook - this is a bit string for a MOB reaction to a player's entrance or approach. I have 19 possible values defined currently that range from JUMPY. TIMID, NORMAL, HOSTILE PASSIVE, GREEDY, CRUEL, HUNGRY to name a few. The MOB may have one or more of these bits switched on. They determine whether the MOB will attack and the motive of the attack. 2) Attack Script - this is stored as a string but loaded into as a linked list at init time. A sample script looks similar to this: Buffalo - 50MHo70/60LBa30/70LTs<< If you familiar with the Rolemaster system, you will recognize this notation. What it attempts to describe is an realistic attack sequence for the particular MOB. The buffalo has three attack methods each separated by slashes. The 1st attack has a 70% chance of being picked and will be a 50 attack strength medium horn attack. The 2nd attack has a 30% chance of being picked and will be a 60 attack strength Light Bash attack. The 3rd attack is a conditional attack. It will occur in the same round if the 2nd attack method is successful and is a 70 attack strength Light Trampling attack. The notation is much more complex than my example. It can also be used to describe spell and other special attacks. I have only implemented the physical attack pieces as of this point. I have done little work on realistic intelligent mobile response thus my interest in your "combat-packages". I have defined same general modes of attack for my NPCs though. A great majority of intelligent MOBs will not have KILL as their primary mode of attack. Mobiles in cities for instance generally attempt to incapacitate rather then kill. Thieves, for instance, will attempt to render their victims unconscious, loot and flee. Or engage in hit-and-run type behavior if things don't go well. While normal citizens will generally flee, shout or attempt to disarm their attackers. City guards may subjugate or kill depending on the local justice system. Of course in the wilderness, death is more often the objective of the attack, but not always. For example the buffalo I described would general leave off the attack once the character drops to an unconscious state. As long as the character is not bleeding they will regain consciousness within a given period of time. Mobiles flagged as hungry would of course devour the most of the corpse leaving it unretrievable. This is still very fuzzy though as to how I will implement this type of behavior. --end cut-- Jon A. Lambert </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="00954" HREF="msg00954.html">Re: [MUD-Dev] New topic: AI and NPCs</A></strong> <ul compact><li><em>From:</em> coder#ibm,net</li></ul> </UL></LI></UL> <!--X-Follow-Ups-End--> <!--X-References--> <UL><LI><STRONG>References</STRONG>: <UL> <LI><STRONG><A NAME="00767" HREF="msg00767.html">New topic: AI and NPCs</A></STRONG> <UL><LI><EM>From:</EM> Caliban Tiresias Darklock <caliban#darklock,com></LI></UL></LI> </UL></LI></UL> <!--X-References-End--> <!--X-BotPNI--> <UL> <LI>Prev by Date: <STRONG><A HREF="msg00849.html">Re: [MUD-Dev] Re: Character evolution</A></STRONG> </LI> <LI>Next by Date: <STRONG><A HREF="msg00851.html">Re: [MUD-Dev] META: Attributions and Eudora</A></STRONG> </LI> <LI>Prev by thread: <STRONG><A HREF="msg00818.html">Re: [MUD-Dev] New topic: AI and NPCs</A></STRONG> </LI> <LI>Next by thread: <STRONG><A HREF="msg00954.html">Re: [MUD-Dev] New topic: AI and NPCs</A></STRONG> </LI> <LI>Index(es): <UL> <LI><A HREF="index.html#00850"><STRONG>Date</STRONG></A></LI> <LI><A HREF="thread.html#00850"><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] New topic: AI and NPCs</STRONG>, <EM>(continued)</EM> <ul compact> <ul compact> <ul compact> <ul compact> <ul compact> <ul compact> <ul compact> <LI><strong><A NAME="01150" HREF="msg01150.html">Re: [MUD-Dev] New topic: AI and NPCs</A></strong>, Jon A. Lambert <a href="mailto:jlsysinc#ix,netcom.com">jlsysinc#ix,netcom.com</a>, Mon 08 Sep 1997, 02:26 GMT <UL> <LI><strong><A NAME="01164" HREF="msg01164.html">Re: [MUD-Dev] New topic: AI and NPCs</A></strong>, Nathan Yospe <a href="mailto:yospe#hawaii,edu">yospe#hawaii,edu</a>, Mon 08 Sep 1997, 18:08 GMT </LI> </UL> </LI> </ul> </ul> </ul> <LI><strong><A NAME="00802" HREF="msg00802.html">Re: [MUD-Dev] New topic: AI and NPCs</A></strong>, Alex Oren <a href="mailto:alexo#bigfoot,com">alexo#bigfoot,com</a>, Thu 28 Aug 1997, 12:42 GMT <UL> <LI><strong><A NAME="00818" HREF="msg00818.html">Re: [MUD-Dev] New topic: AI and NPCs</A></strong>, Caliban Tiresias Darklock <a href="mailto:caliban#darklock,com">caliban#darklock,com</a>, Thu 28 Aug 1997, 23:31 GMT </LI> </UL> </LI> <LI><strong><A NAME="00850" HREF="msg00850.html">Re: [MUD-Dev] New topic: AI and NPCs</A></strong>, Jon A. Lambert <a href="mailto:jlsysinc#ix,netcom.com">jlsysinc#ix,netcom.com</a>, Sat 30 Aug 1997, 01:36 GMT <UL> <LI><strong><A NAME="00954" HREF="msg00954.html">Re: [MUD-Dev] New topic: AI and NPCs</A></strong>, coder <a href="mailto:coder#ibm,net">coder#ibm,net</a>, Mon 01 Sep 1997, 17:53 GMT <UL> <LI><strong><A NAME="01112" HREF="msg01112.html">Re: [MUD-Dev] New topic: AI and NPCs</A></strong>, clawrenc <a href="mailto:clawrenc#cup,hp.com">clawrenc#cup,hp.com</a>, Fri 05 Sep 1997, 21:48 GMT </LI> </UL> </LI> </UL> </LI> <LI><strong><A NAME="00885" HREF="msg00885.html">Re: [MUD-Dev] New topic: AI and NPCs</A></strong>, coder <a href="mailto:coder#ibm,net">coder#ibm,net</a>, Sun 31 Aug 1997, 16:33 GMT <UL> <LI><strong><A NAME="00906" HREF="msg00906.html">Re: [MUD-Dev] New topic: AI and NPCs</A></strong>, Jeff Kesselman <a href="mailto:jeffk#tenetwork,com">jeffk#tenetwork,com</a>, Sun 31 Aug 1997, 19:46 GMT </LI> </UL> </LI> </ul> </ul> </ul> </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>