Top Mud Sites Forum Return to TopMudSites.com
Go Back   Top Mud Sites Forum > Mud Development and Administration > MUD Builders and Areas
Click here to Register

Reply
 
Thread Tools
Old 08-18-2004, 08:49 AM   #1
Iluvatar
Member
 
Join Date: May 2002
Location: Mississippi USA
Posts: 142
Iluvatar is on a distinguished road
Unhappy

Has anyone played with the idea of grouping or joining the parts, ie. arms, hands, feet, tail, etc into a single mob. Each component is actually a separate mob with it's own type of attack. When you link them I've seen the effect to be pretty amazing. What's your experience?
Iluvatar is offline   Reply With Quote
Old 08-18-2004, 08:59 AM   #2
KaVir
Legend
 
KaVir's Avatar
 
Join Date: Apr 2002
Name: Richard
Home MUD: God Wars II
Posts: 2,052
KaVir will become famous soon enoughKaVir will become famous soon enough
Sounds like an interesting subject, but I'm not sure that I quite follow what you're suggesting. Could you elaborate and perhaps give some examples?

I remember a discussion on MUD-DEV around 6 or 7 years ago where someone talked about having a "swarm" mob, with multiple "bee" limbs, each of which had an attack - is that the sort of thing you're talking about?
KaVir is offline   Reply With Quote
Old 08-18-2004, 11:43 AM   #3
Amnon
Member
 
Join Date: May 2002
Posts: 140
Amnon is on a distinguished road
You mean like... have a sort of a "limb" editor, and assign each limb a function, then when you make the mob you tell it "You have this limb, and that limb, and this tail that can pierce armor, and this head with horn attack", and the completed mob uses the attacks based on its limbs?


No, can't say that I've seen that anywhere, but it sounds nice
Amnon is offline   Reply With Quote
Old 08-18-2004, 11:53 AM   #4
Enola_Phoenix
Member
 
Join Date: Jun 2004
Location: Georgia
Posts: 87
Enola_Phoenix is on a distinguished road
Send a message via AIM to Enola_Phoenix Send a message via MSN to Enola_Phoenix Send a message via Yahoo to Enola_Phoenix
Ok sounds like the WAY long way around, but since I do very LITTLE coding and nothing was hard coded to allow distinct actions of limbs, I did create a mob that had 3 seperate parts, each part was based on an element had its own description (ed descrip), each part had its own attack weapon, noun, different hp, weakness, etc etc etc. But they all three worked together, if the person was using a flaming weapon the flame one would guard, if they had holy the light one would guard, you had to take each one out one at a time, and they all got to attack each time a round. They would heal each other, like I said guard each other, it was very kewl to write the mprogs for and even better to see it fought against.

If this somewhat along the lines of what you are talking about, I am in the process of having it hard coded into the new mud system, and if you'd like to see the mprogs for this entire system let me know, that way for those who don't know how to code (points to self) they can still have this unique mob.

Hope that added to the post constructively
Enola_Phoenix is offline   Reply With Quote
Old 08-18-2004, 12:32 PM   #5
Jazuela
Senior Member
 
Join Date: Apr 2002
Location: New England
Posts: 843
Jazuela will become famous soon enoughJazuela will become famous soon enough
Assembly-line mob creation..sounds like fun!

I made an NPC once, that was a construct of an evil scientist. Code-wise it was just a half-elf I think, if I remember right. But his description was something like...it had a squashed bear head, a dwarven body, one tattered aerian wing, the tail of a dog-like creature, and legs of some other critter.

Would've been interesting if I was able to actually create such a thing with the code though.
Jazuela is offline   Reply With Quote
Old 08-18-2004, 02:10 PM   #6
Molly
Senior Member
 
Join Date: Apr 2002
Location: Sweden
Home MUD: 4 Dimensions
Posts: 566
Molly will become famous soon enoughMolly will become famous soon enough
We have something similar to what you describe coded in our mud.

The concept is called 'segmented' or 'fused'  mobs, where each mob of this type consists of several elements; a 'fusehead' and any number of segments that can be designed any way you want.

The segmented mob appears to the player as one single creature when looked at, but each segment has its own attack and can also be looked at separately. If you kill a segment, the rest of the mob keeps fighting, if you kill the head, the segments die too.

It's a pretty nifty feature, which I have used for mythical monsters such as the multiheaded Scylla, but also for things like 'a swarm of bees', 'a flock of sharks' or 'a pack of wolves'.

I guess the same concept could be applied to body-parts, even we haven't used it in that way yet, mainly because our fight messages would make it look a bit silly. But I guess these could be adapted too.

If you talk to our coder Mordecai, he might explain how the code works better than I can, I am basically just a builder.
Molly is offline   Reply With Quote
Old 08-18-2004, 09:49 PM   #7
Iluvatar
Member
 
Join Date: May 2002
Location: Mississippi USA
Posts: 142
Iluvatar is on a distinguished road
The example I've typically used is a dragon. The basic design is a mob named dragon that can do bite with the occasional breath blast as appropriate. The neat thing is add other mobs labeled and described as left leg, right leg, tail, wings etc which can act in a co-ordinated fashion to either bash, sweep, claw etc. It's pretty much whatever you wish and if you keep the basic concept of one creature in mind, not too hard to describe.

Realistically, the key is to make parts killable but not leave a corpse and the only simplistic way to kill it is to target whatever is labeled as the "main body" of the creature. If you kill the main body, all that's remaining is the corpse of the main body. If you kill an arm, obviously that isn't a death blow but you might see a dead arm if you have the time to examine. This won't work for groups of creatures or crowds of people by the nature of it. The mob (mob_set) flees as a group, fights as a group, dies as one and none of the components except the main can be seen by mortals on examining the room for contents.

Benefits to us as builders is we can tailor the power and interaction of the mob with just about any level opponent and it lends an air of realism to the fight. On a 1-101 level scale, imagine fighting a level 75 dragon with level 90 legs that kick and claw you while a level 80 tail sweeps? Downside is if the builders get too crazy, you can wind up with a serious memory usage issue with something like a centipede or excessive scripts applied and running during just one battle.

I've actually seen this work by both hard coding and DG_Scripting and I have to say hard coding is the smoothest of the processes. It's got to be special coding though so the function is outside of the normal message display system to maintain the semblence of just one mob.
Iluvatar is offline   Reply With Quote
Old 08-24-2004, 11:11 PM   #8
karlan
Member
 
Join Date: Apr 2002
Location: Brisbane Australia
Posts: 74
karlan is on a distinguished road
Red face

DOH, got my hopes up... you had me thinking of stuff like the constructicons... (possibly showing my age now)
karlan is offline   Reply With Quote
Old 08-25-2004, 08:31 PM   #9
Ogma
Member
 
Ogma's Avatar
 
Join Date: Apr 2002
Home MUD: DartMUD
Posts: 86
Ogma is on a distinguished road
That sort of sounds like a bass-ackwards way of doing that. What you are describing is what we do with all mobs...but it's a body with multiple parts, not multiple mobs fused into one.

Typically, a humanoid creature has a body, head, left arm, right arm, left leg and right leg. A creature has an overall pool of hit points as well as each part having its own pool of hitpoints. During combat, damage is done to individual parts and parts can be disabled or destroyed individuall. Damage to an individual part might do more or less damage to the overall as well. For instance, damage to the body or head is much worse than damage to an arm or leg.

Each part can also be separately configured to be able to swing in combat or to work as a hand.
Ogma is offline   Reply With Quote
Old 08-26-2004, 02:56 AM   #10
Estarra
Member
 
Join Date: Jul 2003
Home MUD: Lusternia
Posts: 189
Estarra is on a distinguished road
It seems like the main feature of this is the ability for players to neutralize the mob's attacks, i.e., cut off its tail and it can't tailsweep you (or whatever).

As a practical matter from the player perspective, would this actually be used? I mean, would players actually go through the trouble of hacking at the dragon's tail and claws rather than just going for the big kill of the body? Just seems like a lot of work for a feature that may not be often used.

Anyway, custom actions that allow different damage levels, damage types, and effects, are certainly great features for builders.
Estarra is offline   Reply With Quote
Old 08-26-2004, 09:01 AM   #11
Cyre
New Member
 
Join Date: Jul 2004
Posts: 20
Cyre is on a distinguished road
If you've ever played a console RPG like Breath of Fire or in a few instances some of the Final Fantasy games, you should be familiar with how this concept works and can be used to make for interesting combat scenarios.

Consider: You're fighting a dragon with four attackable parts, it's head, two front limbs, and its tail. If you attempt to attack the head, the limbs react and knock away the attack, lowering the damage significantly. So to counteract this, you attack the limbs first until they are out of commission. At the same time, however, you realize that the dragon's tail is magic, and changes the resistance of the rest of the body to whatever damage you last dealt to it. So if you cast ice magic on the dragon, the tail reacts and changes its resistance to ice magic. Now, you could cycle through other spells if you have them, but your ice magic might be your strongest, so instead you can attack the tail until it is no longer a factor, at which point you can use your strongest attack without worrying about it being negated by resistances.

This is a situation where it is beneficial to the player to be a smart basher. If they attack the head first, which is the only way to actually kill the dragon entirely, it is going to take them an extremely long time, and they'll be getting clawed, whipped by a tail, and lit on fire the entire time. But if they attack the tail first so they can use their strongest attack without worry of resistance change, then get rid of the limbs so they can't block, they'll have a much easier time of dispatching the dragon's head.

I don't know of many sound examples of this having been implemented in MUDs before, but that's why I've been working on them myself for some time. It isn't particularly difficult as long as you have code to allow for the progs of different mobs to coordinate with each other. The hardest part is getting them to act in unison in a consistent fashion, but providing you just double check all of your internal functions for the right message order and such, it can be accomplished with some very nice results.
Cyre is offline   Reply With Quote
Old 08-26-2004, 12:33 PM   #12
Molly
Senior Member
 
Join Date: Apr 2002
Location: Sweden
Home MUD: 4 Dimensions
Posts: 566
Molly will become famous soon enoughMolly will become famous soon enough
Estarra Posted on Aug. 26 2004,01:56
Quote:
Originally Posted by
As a practical matter from the player perspective, would this actually be used? I mean, would players actually go through the trouble of hacking at the dragon's tail and claws rather than just going for the big kill of the body? Just seems like a lot of work for a feature that may not be often used.
I am not sure about other codebases, but here is howe we set it up in our mud:

The main body part (the head, main body or whatever that may be) is set up to be non-aggro, but to assist the other parts, which in turn are set as aggressive. So, when you enter the room with the segmented mob, some of the other body parts will be attacking you first, unless you are very quick on the trigger. Also the main part will have a different alias, one that is not immediately obvious, so that you cannot just type 'kill head'.

In many codebases you cannot attack one mob while you are already fighting another. In our mud you actually have a command that allows you to switch your main attack from one mob in a group to another, but you'd have to fight the segmented mob at least once first before you can figure out the best strategy. Which is what makes a feature worth while; the strategy or skill you need to apply to beat it.

Our segmented mobs are hard coded, but it shouldn't be very hard to script it either. All you need to do is choosing suitable attack types for the parts, make them !display and then disable the usual 'death cry' in their scripts with the line 'return 0'. And of course add any echoes you like for each part to spice it up.

Feel free to visit and try out our version of Voltron, hehe
Molly is offline   Reply With Quote
Old 08-27-2004, 11:11 AM   #13
Rundvelt
Member
 
Join Date: Oct 2003
Posts: 37
Rundvelt is on a distinguished road
This is VERY hard to do properly with Mprogs, so I would suggest you don't attempt this unless you're really good.

Using the example of a dragon, I would seperate it into 5 parts. That being head, front left claw, back left claw, torso and tail. I'm going to break down the process here, and hopefully I get it right.

First of all, you need a SIXTH mob, an invisible one (no long or short desc) that repops before the other parts of the dragon. It should be invincible to everything (or better yet, unattackable).

The sixth mob will hold all the mprogs for the dragon and force operate the components.

The torso or head will be the killing targets for the mob.

The mprog should look to see if both the torso and head still exist, and if they do and are in combat with the player, it then goes into it's random attack.

I don't remember the commands, but I'll write the program if it was english. You can translate to compy if you want.

rand 10
if $n is affected by fly
then
force tail emote "swings and misses because you're flying!"
else
force tail emote "hurls around the dragon's body and hits you!"
remove 200 life player
endif
else
rand 20
force left claw emote "the dragon's talon attack misses you"

etc, I think you get the point.

That way, the parts attack, but can be killed before the head and such. It can get REALLY complex too. You can have the head charge a breath attack through mprogs, but severing the tail might prevent it.

The whole point here is that you always have a "puppetmaster" mob which contraols everything. Because mprogs are very difficult to interlace between mobs.
Rundvelt is offline   Reply With Quote
Old 08-27-2004, 11:58 AM   #14
Molly
Senior Member
 
Join Date: Apr 2002
Location: Sweden
Home MUD: 4 Dimensions
Posts: 566
Molly will become famous soon enoughMolly will become famous soon enough
I guess this is very different in different codebases. In Circle code, we use DG_scripts, which are a lot more versatile than mob_progs. (I know, because I have worked a lot with both).

DG_scripts aren't restricted to mobs, you can make both room and object scripts. So you don't even need the 'super mob', most of the events could be run by the room.

It would be a bit tricky, but not too hard to set it up in DG_scripts, but hard-coded is still better, because a complex script (or series of interacting scripts) like that might eat a bit too much memory.

Whether you decide to do it in scripts or code might also be dependant on how active your coder is, and how attentive he is to the ideas of builders.
Molly is offline   Reply With Quote
Reply


Thread Tools


Special Mobs - Similar Threads
Thread Thread Starter Forum Replies Last Post
mobs that track karlan Advanced MUD Concepts 9 11-28-2003 02:23 AM
Tracking/Hunting Mobs karlan MUD Coding 5 05-21-2003 10:59 AM
Adaptive mobs Shao_Long Advanced MUD Concepts 8 05-02-2003 12:06 PM
What's so wrong about killing mobs? jornel Roleplaying and Storytelling 11 11-17-2002 05:11 PM
Mobs Keljorian MUD Builders and Areas 3 05-31-2002 01:14 PM

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off

All times are GMT -4. The time now is 11:41 AM.


Powered by vBulletin® Version 3.6.7
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Style based on a design by Essilor
Copyright Top Mud Sites.com 2014