Proc:Damage (Area)
From SlothMUD Wiki
Overview
The damage procedure allows builders to have a random chance of damage to hit all players in an area at a desired interval.
Here is a list of keys that the procedure will use:
Key | Default | Description |
---|---|---|
DAMAGE_FREQUENCY | 60 (seconds) | How often the proc should deal damage, in seconds. The MUD only runs procs every 10 seconds, so it should be a multiple of 10. |
DAMAGE_CHANCE | 100 (%) | The percentage chance of hitting any player in the area. |
DAMAGE_DICE | 1 | The number of dice to roll. |
DAMAGE_DIE_SIZE | 1 | The size of the die to roll. |
DAMAGE_ADDITIONAL | 0 | A modifier to the die roll to either add or subtract damage. |
DAMAGE_TYPE | UNDEFINED | The type of damage to apply. This could be a spell id or hit type id. |
DAMAGE_FLAGS | 0 | Flags to the damage function to modify behavior. Current flags are: 1 = HIT_ETHEREAL - Required if non-spell damage should hit ethereal mobs |
SAVING_THROW | None | Type of saving throw to apply to the damage. Can be "paralysis", "poison", "petrification", "breath", or "spell". |
SAVE_ADJUSTMENT | 0 | Adjustment to the saving throw. A positive number makes it easier for the player to save against the damage and a negative number makes it harder. |
DAMAGE_MOBILES | 0 (False) | Whether the proc should target mobiles that are following players |
ALLOW_DEATH | 0 (False) | Whether the proc should kill players or leave them at 0 hps. |
DAMAGE_MESSAGE_ACTOR_0 | No message. | The message that is displayed to players in the area that are hit with damage. Similarly builders can configure DAMAGE_MESSAGE_ACTOR_1 to allow for multiple messages, where one is randomly selected. This can be done all the way up to whatever MAX value the builder would like. |
DAMAGE_MESSAGE_ROOM_0 | No message. | The message that is displayed to the room when a player in the area is hit with damage. Similarly builders can configure DAMAGE_MESSAGE_ROOM_1 to allow for multiple messages, where one is randomly selected. This can be done all the way up to whatever MAX value the builder would like. |
MISS_MESSAGE_ACTOR_0 | No message. | The message that is displayed to players in the room when they are missed by the damage. Similarly builders can configure MISS_MESSAGE_ACTOR_1 to allow for multiple messages, where one is randomly selected. This can be done all the way up to whatever MAX value the builder would like. |
MISS_MESSAGE_ROOM_0 | No message. | The message that is displayed to the room when a player in the room is missed by the damage. Similarly builders can configure MISS_MESSAGE_ROOM_1 to allow for multiple messages, where one is randomly selected. This can be done all the way up to whatever MAX value the builder would like. |
Sample
A lightning bolt hits players in the area.
addproc area Damage setproc area # DAMAGE_FREQUENCY 10 setproc area # DAMAGE_CHANCE 50 setproc area # DAMAGE_DICE 6 setproc area # DAMAGE_DIE_SIZE 6 setproc area # DAMAGE_ADDITIONAL 6 setproc area # DAMAGE_TYPE 30 setproc area # DAMAGE_FLAGS 24 setproc area # DAMAGE_MOBILES 1 setproc area # DAMAGE_MSG_ACTOR_0 The hairs on your arms begin to stand up! setproc area # DAMAGE_MSG_ACTOR_1 YOU'RE HIT! Lightning arcs from your body to the ground! setproc area # DAMAGE_MSG_ACTOR_2 Your body convulses as a bolt of lightning strikes you! setproc area # DAMAGE_MSG_ROOM_0 There is a flash of light as the air crackles all about! setproc area # DAMAGE_MSG_ROOM_1 There is a loud BOOM as a bolt of lightning strikes $n! setproc area # DAMAGE_MSG_ROOM_2 $n glows brightly as a bolt of lightning strikes $m with full force! setproc area # MISS_MSG_ACTOR_0 Lightning comes down from the sky and barely misses you! setproc area # MISS_MSG_ROOM_0 Lightning comes down from the sky and barely misses $n! setproc area # PROC_ENABLED 1