The Monster Thread
Goto page Previous  1, 2, 3
 
Post new topic   Reply to topic    mudlab.org Forum Index -> Design
View previous topic :: View next topic  
Author Message
chaos



Joined: 24 Aug 2007
Posts: 35
Location: New Jersey

PostPosted: Tue Sep 18, 2007 12:53 pm    Post subject: Reply with quote

Yeah, got him.

Quote:
> reload -t /obj/npc/gods/azathoth
[ Testing : ] Load of /obj/npc/gods/azathoth as /obj/npc/gods/azathoth-RELOAD_TEST succeeded
[ Target : ] /obj/npc/gods/azathoth
[ Eval Cost : ] 990029
[ Time : ] 0.1908 sec
You call up Azathoth into your environment.
> exa azathoth
This is a gigantic, constantly contorting mass of half-matter, half-energy protoplasmic fluid, with long pseudopods that whip
about with incredible violence. You recognize it as Azathoth, the blind idiot thing whose senseless writhings alter the course of
stars, called by some the true ruler of the universe. It appears to be composed of an intense, vibrant shimmering radiance. It is
permeated by an intense, vibrant sparkling light.
It looks about one thousand four hundred fifty dimins across.
It is in good shape.
> Azathoth mindlessly lashes out at you.
Azathoth connects adequately and refutes you with its lower pseudopod, despite your attempt to dodge.
You have been stunned by the pain.
A blob of ectoplasm spurts from Azathoth onto your left arm and left hand, epistemically nullifying them, despite your attempt to
dodge, though you resist the attack slightly.
Your left arm and left hand are blasted off.
A gout of starfire surges from Azathoth toward you and blasts your right leg apart, despite your attempt to dodge.
Your right leg and right foot are reduced to component atoms.
You feel sluggish.
You have been poisoned!
[ Spirit: 523 Endurance: 475.1/478 Speed: 9 Head: 39.7/65.2 Chest: 66.8/143.5 ]
Your wounds are too severe to fight.
You are too stunned to do that right now; your action will automatically be performed as soon as you are able.
Azathoth lashes out with blind, irresistable force.
Azathoth connects adequately and disintegrates you with its upper pseudopod, despite your attempt to dodge.
You have been mortally wounded and will die soon if not aided.
Your right arm is ripped apart.
Your right hand is completely disintegrated.
Your left leg is ripped apart.
Your left foot is completely disintegrated.
You have been stunned.
You have been blinded.
The world goes silent.
A gout of starfire surges from Azathoth toward you and blasts your head and chest apart, despite your attempt to dodge.
Your head is reduced to component atoms.
You feel more sluggish.
Azathoth connects adequately and refutes you with its left pseudopod, despite your attempt to dodge.
Your right arm is blasted off.
Your left leg is blasted off.
A blob of magick spurts from Azathoth onto your chest, epistemically nullifying it, despite your attempt to dodge.
[ Spirit: 523 Endurance: 471.1/478 Speed: 8 ]
Some blood flows from your chest.
A blob of magick spurts from Azathoth onto your chest, epistemically nullifying it, despite your attempt to dodge.
Azathoth connects well and blasts you devastatingly with its lower pseudopod, despite your attempt to dodge.
You have been stunned.
A blast of magick explodes from Azathoth into your chest, epistemically nullifying it, despite your attempt to dodge.
[ Spirit: 523 Endurance: 468.1/478 Speed: 8 ]
Some blood flows from your chest.
> clean
You gesture.
The fresh Amberite left leg disappears.
The fresh Amberite right arm disappears.
The fresh Amberite left arm and left hand disappears.
Azathoth disappears.
Objects successfully destructed:
/obj/remains/flesh_limb#351552
/obj/remains/flesh_limb#351551
/obj/remains/flesh_limb#351539
/obj/npc/gods/azathoth
Incarnoi in target list (incarnoi must be targeted singly to be destructed):
/usr/chaos
> Some blood flows from your chest.
You feel sick.
Some blood flows from your chest.
heal chaos
Target: /usr/chaos (/usr/atman/chaos), env: /w/chaos/workroom
You are surrounded by a field of soft blue light.
You feel a wonderful sensation spread through your body.
Restoring limbs...
You have regained the use of your head, chest, arms, hands, legs and feet.
Restoring metabolism...
Restoring state...
You are no longer stunned.
Your hearing returns.
The poison has worked itself out of your system.
Restoring vitals...
Done.


Gives people mental disorders when he shows up, too. A dimin is a decimeter, so he was only about 150 meters across when I happened to look at him. The "appears to be composed of / permeated with" stuff is my astral perception at work, not an inherent part of Azzie's description.

Code:
#include <Public.h>
#include <autonomon.h>
#include <mental_disorders.h>

inherit "/std/god";

status query_heart_beat_terminable() {
    return !environment();
}

void heart_beat() {
    ::heart_beat();
    set_attribute(Attr_Siz, semirandom(300000));
    if(!random(100)) {
        mentation("boredom", Thought_Type_Feel, True);
        message(([
            Message_Content         : ({
                0, ({ "blink", 0 }), "out of existence with a sound like a thunderclap",
            }),
            Message_Flags           : Message_Flag_Auditory,
            Message_Alternate       : ([
                Message_Content     : ({
                    0, ({ "blink", 0 }), "out of existence",
                }),
                Message_Flags       : Message_Flag_Visual | Message_Flag_Astral,
            ]),
        ]));
        move(Public_Room("trash"));
        remove();
    } else if(!query_attacker() && !random(10)) {
        string exit = query_random_exit();
        if(exit)
            init_command(exit);
    }
}

void configure() {
    ::configure();
    set_creator("chaos");
    set_race("lloigor");
    set_identity(([
        Identity_Adjunct_Adjectives : ({ "colossal", "writhing" }),
        Identity_Adjunct_Nouns      : ({ "mass" }),
        Identity_Adjectives         : ({ "churning" }),
        Identity_Nouns              : ({ "matter" }),
        Identity_Color              : "gray-streaked opalescent",
        Identity_Special_Names      : ({ "LLOIGOR_RELATED" }),
    ]));
    set_personal_name("Azathoth");
    set_identify_skills(([
        Skill_Elder_Lore            : 5,
        Skill_Arcane_Lore           : 95,
        Skill_Legend_Lore           : 105,
    ]));
    add_description(({
        "This is a gigantic, constantly contorting mass of half-matter, half-energy protoplasmic fluid, with long pseudopods "
        "that whip about with incredible violence.",
    }));
    add_known_description(({
        "You recognize", ({ 'o', 0 }), "as Azathoth, the blind idiot thing whose senseless writhings alter the "
        "course of stars, called by some the true ruler of the universe.",
    }));
    set_anatomy("four-pseudopodded amorphous");
    set_level(250);
    set_attribute(Attr_Str, 1000);
    set_attribute(Attr_Int, 0);
    set_attribute(Attr_Con, 3000);
    set_attribute(Attr_Dex, 150);
    set_attribute(Attr_Wil, 5000);
    set_attribute(Attr_Cha, 0);
    set_attribute(Attr_Per, 0);
    set_attribute(Attr_Siz, semirandom(300000));
    set_weapon_class(20, Limb_Type_Tentacle, ({({ "crushing", "magical", "magical+", "force", "force+", "chaos", "chaos+" })}));
    add_skill_points(Skill_Blindfighting, 1000);
    add_skill_points(Skill_Hardiness, 2000);
    add_skill_points(Skill_Quickness, 200);
    add_skill_points(Skill_Regeneration, 3000);
    add_skill_points(Skill_Manifestation, 100);
    add_skill_points(Skill_Transcendence, 3000);
    set_trait(Trait_Amorphism, True);
    set_trait(Trait_Intangibility, True);
    set_trait(Trait_Sentience, Sentience_None);
    set_trait(Trait_Wingless_Flight, True);
    set_aggressive(True);
    set_can_kill(True);
    add_friend("LLOIGOR_RELATED");
    set_attack_message(({
        0, "mindlessly", ({ "lash", 0 }), "out at", "%e",
    }));
    add_special_attack(([
        Special_Attack_Vector   : Vector_Blob,
        Special_Attack_Type     : ({({ "magical", "magical+" }), ({ "magical", "magical+" }), ({ "magical", "magical+" })}),
        Special_Attack_Skill    : Skill_Manifestation,
        Special_Attack_Power    : Special_Attack_Power_Extreme,
        Special_Attack_From     : this_object(),
        Special_Attack_Activity : 5,
        Special_Attack_Flags    : Special_Attack_Flag_Suppress_Result_Description,
        Special_Attack_Chance   : Special_Attack_Chance_Somewhat_Profuse,
    ]));
    add_special_attack(([
        Special_Attack_Vector   : Vector_Blast,
        Special_Attack_Type     : ({({ "magical", "magical+" }), ({ "magical", "magical+" }), ({ "magical", "magical+" })}),
        Special_Attack_Skill    : Skill_Manifestation,
        Special_Attack_Power    : Special_Attack_Power_Extreme,
        Special_Attack_From     : this_object(),
        Special_Attack_Activity : 5,
        Special_Attack_Flags    : Special_Attack_Flag_Suppress_Result_Description,
        Special_Attack_Chance   : Special_Attack_Chance_Somewhat_Profuse,
    ]));
    add_special_attack(([
        Special_Attack_Vector   : Vector_Blob,
        Special_Attack_Type     : ({ "magical", "chaos", "photonic", ({ "magical", "magical+" }), ({ "magical", "magical+" })}),
        Special_Attack_Skill    : Skill_Manifestation,
        Special_Attack_Power    : Special_Attack_Power_Extreme,
        Special_Attack_From     : this_object(),
        Special_Attack_Activity : 5,
        Special_Attack_Flags    : Special_Attack_Flag_Suppress_Result_Description,
        Special_Attack_Chance   : Special_Attack_Chance_Somewhat_Profuse,
    ]));
    add_special_attack(([
        Special_Attack_Vector   : Vector_Gout,
        Special_Attack_Type     : ({ "plasma", "heat", "fire", "radiation", ({ "magical", "magical+" })}),
        Special_Attack_Skill    : Skill_Manifestation,
        Special_Attack_Power    : Special_Attack_Power_Extreme,
        Special_Attack_From     : this_object(),
        Special_Attack_Activity : 5,
        Special_Attack_Flags    : Special_Attack_Flag_Suppress_Result_Description,
        Special_Attack_Chance   : Special_Attack_Chance_Frequent,
    ]));
    add_special_attack(([
        Special_Attack_Vector   : Vector_Wave,
        Special_Attack_Type     : ({ "radiation", "magical", ({ "magical", "magical+" })}),
        Special_Attack_Skill    : Skill_Manifestation,
        Special_Attack_Power    : Special_Attack_Power_Extreme,
        Special_Attack_From     : this_object(),
        Special_Attack_Activity : 5,
        Special_Attack_Flags    : Special_Attack_Flag_Suppress_Result_Description,
        Special_Attack_Chance   : Special_Attack_Chance_Frequent,
    ]));
    set_chat(5, ({
        ";contort mindlessly",
        ";lash out with blind, irresistable force",
    }));
}

int query_sense_aggression_value() {
    return 0;
}

status summon(object where) {
    object env = environment();
    if(env) {
        if(where == environment())
            return False;
        message(([
            Message_Content         : ({
                0, "suddenly", ({ "collapse", 0 }), "into a compact arrow-shape and", ({ "speed", 0 }), "away, leaving a "
                "shrieking sound like the",
                Description(Description_Type_Ambient_Medium_Colored_Name),
                "itself being torn apart in", ({ 'r', 0, "wake" }),
            }),
            Message_Flags           : Message_Flag_Auditory,
            Message_Alternate       : ([
                Message_Content     : ({
                    0, "suddenly", ({ "collapse", 0 }), "into a compact arrow-shape and", ({ "speed", 0 }), "away",
                }),
                Message_Flags       : Message_Flag_Visual | Message_Flag_Astral,
            ]),
        ]));
    }
    if(move(where, Move_Flags_Force) != Move_Succeed) {
        message(([
            Message_Content         : ({
                0, ({ "stop", 0 }), "short",
            }),
            Message_Flags           : Message_Flag_Visual | Message_Flag_Astral,
        ]));
        return False;
    }
    if(env) {
        for(object obj = first_inventory(env); obj; obj = next_inventory(obj)) {
            unless(obj->is_character() && obj != this_object())
                continue;
            int fear_resist = obj->query_fear_resistance();
            if(fear_resist != Null) {
                obj->mentation("relief", Thought_Type_Feel, True);
                obj->display(([
                    Message_Content : ({
                        0, ({ "have", 0 }), 'a', (fear_resist < 300 ? "tremendous feeling" : "feeling"), "of relief and reprieve",
                    }),
                    Message_Flags   : Message_Flag_Emotive,
                ]));
            }
        }
    }
    message(([
        Message_Content         : ({
            "with a sound like a massive thunderclap,", ({ 'a', 0 }), ({ "appear", 0 }),
        }),
        Message_Flags           : Message_Flag_Auditory,
        Message_Alternate       : ([
            Message_Content     : ({
                ({ 'a', 0 }), ({ "appear", 0 }),
            }),
            Message_Flags       : Message_Flag_Visual | Message_Flag_Astral,
        ]),
    ]));
    env = environment();
    if(env) {
        for(object obj = first_inventory(env); obj; obj = next_inventory(obj)) {
            unless(obj->is_character() && obj != this_object())
                continue;
            int fear_resist = obj->query_fear_resistance();
            if(fear_resist != Null && !obj->query_blindness(True)) {
                obj->mentation("horror", Thought_Type_Feel, True);
                obj->display(([
                    Message_Content : ({
                        "at the sight of", ({ 't', this_object() }), ",", 0, ({ "are", 0 }),
                        fear_resist >= 300 ? "filled" : "overwhelmed", "with unthinking, primal horror",
                    }),
                    Message_Flags   : Message_Flag_Emotive,
                ]));
                if(random(1000) > fear_resist)
                    Daemon_Mental_Disorders->inflict_mental_disorder(obj, 0, !random(5) && random(500) > fear_resist);
                obj->stun_living(semirandom(20), False, ({ "force", "sonic", "psionic", "magical" }));
                if(random(500) > fear_resist)
                    obj->init_command("flee");
            } else {
                obj->stun_living(semirandom(10), False, ({ "force", "sonic" }));
            }
        }
    }
    return True;
}
Back to top
View user's profile Send private message Visit poster's website
Author Message
shasarak



Joined: 29 Jun 2005
Posts: 134
Location: Emily's Shop

PostPosted: Wed Sep 19, 2007 1:38 pm    Post subject: Reply with quote

Quote:
Your head is reduced to component atoms.
You feel more sluggish.

Yeah, that always makes me feel sluggish too. Twisted Evil
Back to top
View user's profile Send private message
Author Message
Kjartan



Joined: 13 May 2005
Posts: 110

PostPosted: Wed Sep 26, 2007 10:05 pm    Post subject: Reply with quote

This also falls under favorite unintended gameplay.

Long ago, I made a vampire NPC that could charm players to fight for it. When it charmed a player, it would stick a prog in him that would play him reasonably for his class; so clerics would heal the vampire (we didn't have the D&D positive/negative energy stuff at that point, so that was allowed), mages would blast, fighters would interpose themselves between enemies and him, etc.

Unfortunately the save on the charm was a little bit too difficult - it wasn't difficult as saves go, but he kept trying, and once the vampire got lucky and nabbed a couple of players they could keep him alive long enough that anyone coming against him would eventually fail the save.

So, after a while he had most of the high level players on the mud, nobody else would challenge him, and an admin had to step in and shut him down.
Back to top
View user's profile Send private message Visit poster's website
Author Message
KaVir



Joined: 11 May 2005
Posts: 565
Location: Munich

PostPosted: Tue Oct 25, 2011 11:03 am    Post subject: Reply with quote

Old post, but I couldn't resist:
chaos wrote:
Your left arm and left hand are blasted off.
Your right leg and right foot are reduced to component atoms.
Your head is reduced to component atoms.
Your right arm is blasted off.
Your left leg is blasted off.

You gesture.

The term "clever Dick" springs to mind.


Anyway, on a more serious note, something recently brought to mind an old roleplaying game that had "fae hounds", and I thought they'd make a good addition to this thread. They were basically a pack of intelligent hounds that fought tactically, but the interesting thing was that only one of them could be hurt - the others were invulnerable - and there was no way to tell which one. If you struck the vulnerable hound then all of the hounds would suffer an identical wound, but then the vulnerability would randomly switch to another hound.

Area-effect attacks would obviously remain just as effective, although I don't think that would necessarily be a bad thing - particularly if the hounds were smart enough to split up in order to minimise the impact of such attacks.

The switching (in)vulnerability is a nice twist, but from a mud perspective I also like the idea of having a pack of creatures that work together, particularly if the combat supports positioning, facing, flanking, etc.
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic    mudlab.org Forum Index -> Design All times are GMT
Goto page Previous  1, 2, 3
Page 3 of 3

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

Powered by phpBB © 2001, 2002 phpBB Group
BBTech Template by © 2003-04 MDesign