Jump to content

Creating a PC effect to deflect all incoming projectiles if...


Recommended Posts

Trying to think of the best way to implement this for a PC Monk, using OD&D rules. Basically, each time the Monk is hit by a missile, they can make a save vs. petrification to take no damage. Seems overly complicated to implement without firing a script or something every time they're attacked. I'm pretty new to modding in general so any help would be appreciated!

Link to comment

As you've stated? Not really possible at all; I just don't see any mechanism to graft a save onto incoming effects.

But. If you're willing to loosen things a bit, there's an alternative.

- Step 1. Create a spell that grants immunity to all of the projectiles you want this effect to apply to. Lots of opcode 83 effects. Unconditional, with a long enough duration.

- Step 2. Append two opcode 321 effects to the spell from step 1. The first one goes first and is a standard anti-stacking use of that effect; remove the effects of the spell (any previous castings) before applying the spell. The second one goes last and is decidedly non-standard; remove the effects of the spell after applying the spell if a save is failed.

- Step 3. Create an EFF that casts the spell (opcode 146) from step 1 and 2.

- Step 4. Create a spell that applies the EFF from step 3 repeatedly (opcode 272). Frequency is up to you, but faster rates like "once per second" have been known to cause problems with saving.

- Step 5. Apply the spell from step 4 to monks at an appropriate level, by putting it in the kit CLABs. This applies to PC monks only; if you want this to work for non-party monks, you need to either apply the spell with scripts or put that opcode 272 effect in their CRE files.

So, what does this scheme do? First, a monk of sufficient level gets a spell applied to them that applies a permanent op272 effect. That effect then repeatedly casts a spell on that monk. If they make their save, the spell removes any previous instances of itself and applies immunity to a bunch of projectiles. This lasts until the next time that op272 effect triggers, at which point a new instance of the spell is cast. If they fail their save, the spell removes itself immediately, resulting in a state of vulnerability that lasts until the next time the op272 effect triggers.

Instead of a save for each individual projectile, a monk gets a save that applies to an interval of time; either all projectiles are blocked in that interval, or none are.

Link to comment

Could be done with 7eyes.2da. Not completely, though. Apply a spellstate, and add a row to 7eyes.2da that blocks missile damage when that spellstate is in effect. When missile damage is applied, it is blocked but also removes the spellstate. Fiddly to get just right, to be sure. But possible. 

My mod has a feat which allows one missile attack to be blocked each round. It removes and reapplies the spellstate every six seconds. Adding a saving throw would be difficult, but not impossible. You could use a technique similar to my effect evasion function: the spell applying the spellstate would begin with a 177 effect calling an .EFF that blocks the spell; and has a 318 effect preceding the 177 which blocks the .EFF, but only on a failed save. Result: the spell takes effect only if you make a saving throw. Give it a 1-second duration and repeat its application every second, and you can block up to six missile attacks per round, as long as you make the saving throws. It’s not exactly the same as getting a save for each missile… but maybe it’s close enough. 

Caveat is, it only blocks missile damage. Fire arrows would still do fire damage, acid arrows still do acid damage. Etc.

An alternative is to forget 7eyes: do the 177/318 reverse-save thing every second, but instead of in a spell that applies a spellstate, the spell could apply numerous op83 effects to block all missile projectiles. This would completely block the missile attacks… but if a mod comes along and adds a new projectile for some magical arrows or whatever, your mod might not include an 83 effect for it, and would therefore give incomplete protection. 

Edited by subtledoctor
Link to comment

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...