dr-scripts icon indicating copy to clipboard operation
dr-scripts copied to clipboard

Better squelching/combat summerizer

Open izawwlgood opened this issue 6 years ago • 2 comments

There's a ton of useless combat scroll. I think we could squelch virtually all of it and output summary data every 10 or 20s. Just to start, all critter attacks that don't hit (blocked, evaded, or parried), output every 10-20s as a summary ("You were attacked 6 times, dodged 2 times, blocked 3 times, and parried 1 time") would be a great reduction of scroll.

Additional things to squelch could be more personal. All attacks could be summarized by average damage and RT. All AoE could be summarized by number of critters hit. And a variety of actions could just be included as 'this action was performed this many times', such as appraisal, hunt, collect, and study. The goal would be to turn this -

[You're winded, solidly balanced with no advantage.]
>
[combat-trainer]>perform harvest on moth
You bend over the moth's corpse to make a few quick, precise motions with your ritual knife, focusing your thanatological insight intently in order to prepare it for harvesting.  You then plunge your knife efficiently into the corpse and carve out a poor piece of fetish material.
Roundtime: 4 sec.
>
[combat-trainer]>drop material
Having no further use for a poor chunk of moth material, you discard it.  The material quickly degrades into uselessness.
>
[combat-trainer]>loot
You search the fuligin moth.
The moth was carrying a tiny smoky yellow sunstone and a tiny clear peridot!
>
* A fuligin umbral moth slices wide at you.  You counter little of the shadowy claws with a darkened leather-wrapped parry stick tooled with interlocking ravens.  
[You're winded, solidly balanced and opponent has slight advantage.]
>
[combat-trainer]>stow sunstone
* A fuligin umbral moth lunges at you.  You barely block with a bronze target shield shaped like a clawed paw.  
[You're winded, solidly balanced and in very strong position.]
>
A fuligin umbral moth's shadowy form roils and churns, slowly sifting away to nothing.
>
You pick up a tiny smoky yellow sunstone.
You open your pouch and put the yellow sunstone inside, closing it once more.
>
[combat-trainer]>stow peridot
You pick up a tiny clear peridot.
You open your pouch and put the clear peridot inside, closing it once more.
>
The greenish radiation around you burbles warningly before a sphere of hissing acid spews forth in all directions!
The wave deeply pits a fuligin umbral moth's face as it blasts across it.
The fuligin moth is knocked completely senseless!
The wave lightly pits a fuligin umbral moth's lower thorax as it blasts across it.
The fuligin moth is lightly stunned!
The wave deeply pits a fuligin umbral moth's thorax as it blasts across it.
The wave lightly pits a fuligin umbral moth's thorax as it blasts across it.
>
[combat-trainer]>app moth 
You are certain that the fuligin moth is at death's door.
The fuligin moth has a major wound.
You are certain that it is about as strong as you are.
You are certain that it is about as agile as you are.
You are certain that it is about as disciplined as you are.
You are certain that it is about as quick to react as you are.
You are certain that it is about as conditioned as you are.
Taking stock of its offensive abilities, and defending with a bronze target shield shaped like a clawed paw and a darkened leather-wrapped parry stick tooled with interlocking ravens, you are certain that the fuligin moth is a rather difficult opponent. (+6)
Taking stock of its defensive abilities, and attacking with a sturdy staff of vedda capped with a cracked glass orb, you are certain that the fuligin moth is well above your abilities. (+10)

[Roundtime: 5 seconds]
>
A fuligin umbral moth staggers about drunkenly, its massive wings losing coherence.
>
A fuligin umbral moth appears less distracted.
>
* A fuligin umbral moth slices wide at you.  You counter little of the shadowy claws with a darkened leather-wrapped parry stick tooled with interlocking ravens.  
[You're winded, solidly balanced and opponent has slight advantage.]
>
* A fuligin umbral moth darts forward and slashes at you.  You turn aside little of the shadowy claws with a darkened leather-wrapped parry stick tooled with interlocking ravens.  
[You're winded, solidly balanced and in very strong position.]
>
A fuligin umbral moth staggers about drunkenly, its massive wings losing coherence.
>
[combat-trainer]>analyze
You reveal a moderate weakness in a fuligin umbral moth's defense.
Balance reduction can be inflicted upon the enemy by landing a gouge and a kick.
Roundtime: 2 sec.
>
A thunderous din peals from the northeast as the earth shudders.
>
[combat-trainer]>stance set 100 94 0
Setting your Evasion stance to 100%, your Parry stance to 94%, and your Shield stance to 0%.  You have 0 stance points left.
>
[combat-trainer]>prep REI 40
With tense movements you prepare your body for the Researcher's Insight spell.
>
[combat-trainer]>charge my an armband 40
Alternating waves of hot and cold swirl through the area in abnormal patterns as greenish acid falls in a horizontal rain all around you!
The wave melts nearly the entirety of a fuligin umbral moth's thorax as it blasts across it, leaving areas where white bone is visible underneath.
A fuligin umbral moth's wings spasm one last time, drifting away from its body like a cloud of acrid smoke.  The creature goes still, now nothing more than an ungainly mound of disintegrating shadow.
The wave deeply pits a fuligin umbral moth's abdomen as it blasts across it.
The fuligin moth is lightly stunned!
The wave deeply pits a fuligin umbral moth's abdomen as it blasts across it.
The fuligin moth is stunned!
The wave lightly pits a fuligin umbral moth's left back leg as it blasts across it.```

into this - 

```You were attacked 4 times, and blocked 3 times, parried twice, and evaded once. USOL pulsed 2 times, hitting 8 creatures. You Analyzed, Appraised, and Looted. You performed 1 ritual``` or similar.

izawwlgood avatar Mar 12 '18 12:03 izawwlgood

The first step in this would be to gather all the possible messaging for you blocking, parrying, and evading. I don't, personally, want to squelch things like spells. This would need to be another setting. Basically, it could be a YAML setting, dunno, but something like:

squelched_messaging:
- Parry
- Evade
- Block
#- Spells

Also, this suggestion is based on a lack of knowledge of which layer the messaging is handled. I don't even know if, at this point in startup/load, whatever scripts are running even have knowledge of YAML settings.

I think though, you need a regex for:

you.* turn/parry/dodge/etc and maybe match it with no damage in the rest of the line. I think I've experienced messaging where it says I dodge, but still take damage. I could be wrong. If this isn't the case, you just need to get the messaging for misses.

jbrock24 avatar Mar 12 '18 13:03 jbrock24

Good call. I was thinking of just using * to indicate 'attack on you', but I think that will include messages from PCs. Not much to be done around that, other than notice the other actions the PC takes towards you (spells, facing, talking, etc).

So, * to start, and then match for the following - (think I got them all) parry - counter, beat off, turn aside, fend off, repulse, deflect, slap away, knock aside, shield - block, raise evasion - 'You dodge.', 'You evade.', 'You quickly step aside.',

Now, I did get these too - * A juvenile wyvern slashes its razor-sharp talons at you. You attempt to evade. The talons lands a good strike (3/23) to your right leg. * A juvenile wyvern lunges foward and snaps its fangs at you. You fail to dodge. The fangs lands a good strike (3/23) to your chest.

So 'attempt to evade' and 'fail to dodge' might work as fail messages. OR, maybe priority match to 'lands' and search for damage amount.

izawwlgood avatar Mar 12 '18 15:03 izawwlgood

Closing as stale.

MahtraDR avatar Jan 24 '23 10:01 MahtraDR