![]() |
#1 |
Senior Member
|
|
![]() |
![]() |
![]() |
#2 |
New Member
Join Date: Jul 2002
Location: Canada
Posts: 17
![]() |
I haven't actually seen any adaptive code (but then I don't look at others'
code). However I have heard a fair amount about this topic and been giving it thought myself. With a good scripting language (something I've been working toward a lot) it is simple to do as you suggest via persistent variables that allow the mob to remember various fighting methods and styles. As you said this can then be used to help the mob adapt to given styles. Another thing that can be done is to base the adaptation to the results of a quick profile of the oppponent (mage, warrior, cleric -- when not on a class-based mud). Our mud has several 5 types of variables that can be used in the scripting, one of these is a persistent variable by vnum which allows for all mobs of the same vnum to share the variable values. This is extremely useful for what you suggest since the adpatation would propogate through all instantiations and future instantiations of the mob. Cheers, Blobule. |
![]() |
![]() |
![]() |
#3 |
Senior Member
Join Date: Apr 2002
Location: Sweden
Home MUD: 4 Dimensions
Posts: 574
![]() ![]() |
We have a pretty funny script in our mud, which makes a mob pick up things you say to it, and use them as retort. It has a pretty large number of random one-liners to start out with, and as you talk to it, it adds whatever you say to its list, so its vocabulary gets longer the longer you talk to it.
Obviously the players like this, because they can teach the mobs to praise themselves or slander their enemies, saying things like 'Molly is a moron' or 'The imps are all powertripping bastards'. It's a neat script, and it could easily be adapted to work on fight skills, but it would be a bit risky, since things like that can easily disrupt the balance totally. |
![]() |
![]() |
![]() |
#4 |
New Member
Join Date: Jul 2002
Location: Canada
Posts: 17
![]() |
|
![]() |
![]() |
![]() |
#5 |
Member
|
On one of the muds I build on, We have a customized quest code where the mobs adapt to your stats, the stronger you get the stronger they do too..
I don't know all the specifics of the code part but I thought this might be along the lines of what Shao was asking about. If you want to know the name of the mud you can private message me. I don't wish to advertise outside of the proper forum. |
![]() |
![]() |
![]() |
#6 |
Member
Join Date: Mar 2003
Posts: 70
![]() |
Hmm, that sort of adaptive code for combat is something we have looked at occasionally but we don't add as a general thing for the simple reason that players learn what skills work well on what monsters - and that is a part of playing well.
Adaptive monsters make it impossible for players to do this since if they don't kill a monster for a month then its stats might have changed totally since the last time. Instead what we do is write complex monsters, such as my thief which uses all the thief combat abilities intelligently (including using appropriate abilities for the targets class). That monster provides a nice challenge and adapts to what you are - but he doesn't change if you go away for a while and then come back. We do have learning monsters, for example there is a creature you can tame and teach to do feelings, but in generally we dont have combat learning monsters and we don't have monsters which learn from the death of a previous monster by the same name. |
![]() |
![]() |
![]() |
#7 |
New Member
Join Date: Jul 2002
Location: Canada
Posts: 17
![]() |
It strikes me that it's all the same really. Your creature adapts during its
current lifespan, but no other mobs share that learning. This is merely a variable scoping issue. On our MUD we support 5 types of variable scope, 3 of which are relevant here. Global Perisistent vnum scope -- variable is shared by all instances of the the vnum (type specific, objects and mobs of same vnum don't share data) and data persists through server reboots. Global non-persistent -- same as above but reset during each reboot. Instance specific -- variable has the same duration as the life of the entity. Thus depending on which scope I use I can achieve any of the above styles of adaptation. |
![]() |
![]() |
![]() |
#8 |
Member
Join Date: Mar 2003
Posts: 70
![]() |
Indeed, there is no technical issue with monsters learning from previous deaths...or with them knowing nothing about them.
It's a gameplay/balance issue. |
![]() |
![]() |
![]() |
#9 |
Member
Join Date: Aug 2002
Posts: 153
![]() |
![]() |
![]() |
![]() |
![]() |
Thread Tools | |
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Special Mobs | Iluvatar | MUD Builders and Areas | 13 | 08-27-2004 10:58 AM |
mobs that track | karlan | Advanced MUD Concepts | 9 | 11-28-2003 01:23 AM |
Tracking/Hunting Mobs | karlan | MUD Coding | 5 | 05-21-2003 09:59 AM |
What's so wrong about killing mobs? | jornel | Roleplaying and Storytelling | 11 | 11-17-2002 04:11 PM |
Mobs | Keljorian | MUD Builders and Areas | 3 | 05-31-2002 12:14 PM |
|
|