Jump to content

Proposal: tweaking invisibility


Recommended Posts

I wonder if there's a way to get mechanically creative to make invisibility a more interesting and contoured system.

 

For instance: take the 2nd level spell 'See Invisible.' If this dispels invisibility utterly, then it enables all of the caster's allies to see invisible as well. It acts like True Sight in other words (or Oracle, anyway). That's terrible... the game tries to balance it by limiting the spell level affected by it, but that's terrible as well!

 

What if See Invisible first checks for Invisibility, and if it is there, dispels it but adds Improved Invisibility in its place, as well as giving the caster the "see invisible by script" attribute. Now we have a less powerful dispel; the caster can see and target the invisible person, but the person retains some benefits against attackers who cannot see invisible. Better dispels (Invis. Purge, Oracle) would eliminate invisibility altogether.

 

Potential implementation: 'Invisibility' sets the caster to invisible, and sets a state along with it, and also sets a repeating effect that provides improved invisibility as long as the state is valid. 'See Invisible' would remove the invisibility but not the state; the hidden person would stay improved invisible. But if they attack or cast, the normal mechanism would kick in removing that state, and the improved invisibility would go away.

 

Theoretically. Need to test that.

 

What else: why is the Sanctuary opcode not used more? Maybe Shadow Door should provide Sanctuary in addition to improved invisibility, that would be a reason to use the 5th-level spell over the 4th-level spell. Maybe Mislead should provide Sanctuary too, instead of its outrageous super-invisibility.

 

How about a 1st-level spell that provides improved invisibility (only) and a bonus to Hide in Shadows - something just for mage/thieves? (Maybe add a short-term (~3-round) normal invisibility to it as well, but only for Illusionists.)

 

I suppose I could (and might) do this kind of stuff in my own mod. But I'm curious what SR users/modders think of it.

Link to comment

You do understand that the improved invisibility makes the character invisible also after they break the invisibility rule of no attacking & casting hostile spells ? As that's what it's there for.

Now if one were to remove that... then you just have to make darn sure there's no stopping it from being removed... like for example that the Lich can't protect himself via innocent invisibility spell AS IT's IMMUNE TO IT! And all it's effects. That's why the original Liches never casted it... Go check if you don't believe, make sure you do so from the original scrips and spell selections, not the .cre files immunity'es, as those are non canon.

Link to comment

Improved invisibility is an effect which is less than invisibility - it leaves you visible, but immune to spell targeting, and with combat bonuses. Contrast with simple invisibility which makes you completely invisible to any and all targeting (until you attack or cast).

 

The 4th level spell 'Improved Invisibility' is a combination of both effects. I'm suggesting using the effect on its own, as something like camouflage (since it is not actual invisibility).

Link to comment

Improved invisibility is an effect which is less than invisibility - it leaves you visible, but immune to spell targeting, and with combat bonuses.

Well, the AC bonus from it actually makes it better... especially when you can't be targeted by spells, like say Spellstrike. A 9th level spell needed to remove it's protection, not the invisibility actually. Yes, the spell trap, thaty protects the user from any spell attack. Give it a PfMW, and you are completely immune to everything ! Unless you make the Spellstrike area of effect like the SCS does... with a wery small area, where the lich just needs to move between casting spells and be safe from it. When you discuss this, it might be important to distict between the opcode and the spell... and to me, it seems that there's no distinction between the different stages of the effect.

Can you actually separate the 0 from 1? I ask this because I would remember that the Lich that casted a spell with II returned completely invisible after his casting was over. And then began to cast a different spell in the very same spot, not having moved, but having waited for the psuedo-turn to be over so he could cast again.

Edited by Jarno Mikkola
Link to comment

 

 

But if they attack or cast, the normal mechanism would kick in removing that state, and the improved invisibility would go away.

I believe that this will be the fly in your ointment.

I don't fully know how it works... I know invisibility sets a stat or state to be identifiable by the engine, and (certain) actions and (certain) spellcasting dispels the invisibility. And dispels the state. But what if we could use opcode 233 or 328 to set that stat/state without the subject being invisible? Would those actions/spellcasting still cancel the stat/state? Or do such actions only cancel invisibility, and the lack of invisibility is what cancels the stat/state?

 

Would it be a waste of time to post a feature request to decouple those things on Redmine?

 

I could possibly make a workaround if there was some way to detect that an individual is attacking or casting... but there does not seem to be any way to detect that (unless the individual is a bard/shaman/cleric in the midst of using a modal ability). Is it possibly worth a feature request to add such conditions to opcode 232? That would actually open up a lot of other possibilities as well...

Link to comment

Thinking out loud... I suppose you could set a brief application of opcode 328 as a casting feature of every spell and ability, as as a... melee/ranged hit effect on every weapon? (Not perfect, it wouldn't apply if you attack but miss... but perfection is maybe too lofty a goal here.)

 

Then the "improved invisibility" effect used to replace the full invisibility could be coupled with a 232 contingency coupled with 324/326 checks against that spellstate. So it would (with a bit of a delay) be canceled if the formerly invisible person either casts a spell or successfully lands an attack.

 

That's a lot of patching to achieve a result like this for a dinky little 2nd-level spell... but on the other hand it would be a pretty cool result! And it would make Improved Invisibility at 4th level a bit more robust, because it would create circumstances where it would only be partially dispelled.

Edited by subtledoctor
Link to comment

I'm going to take a shot at this, with a "Life Detection" psionic ability. Roughly:

 

- Apply opcode 193 "invisibility detection by script" to caster

- Dispel invisibility (probably by using opcode 337) to everyone hit by the projectile (probably inareanp.pro)

- 324 protection against the rest of the spell for anyone with state_improved_invisible

- 326 to cast SpellA on anyone hit by the projectile who has state_invisible

 

- SpellA: apply partial invisibility permanently

 

- Patch all spells with a global effect which 321 cancels SpellA

- Patch all weapons with melee hit effect/ranged hit effect to 321 cancel SpellA

 

That should affect anyone who is invisible by making them fully visible to the caster, but only partially visible to everyone else. And if the partially visible person casts a spell or lands an attack, they will become fully visible to everyone. If someone is covered by the 4th- or 5th-level Improved Invisibility (which is real invisibility layered with partial invisibility) then they will lose the real invisibility but retain their partial invisibility, and they will not lose the partial invisibility if they perform an action.

 

It probably won't affect 6th-level Mislead invisibility at all, because it is stupid. :(

Edited by subtledoctor
Link to comment

- Apply opcode 193 "invisibility detection by script" to caster

- Dispel invisibility (probably by using opcode 337) to everyone hit by the projectile (probably inareanp.pro)

- 324 protection against the rest of the spell for anyone with state_improved_invisible

- 326 to cast SpellA on anyone hit by the projectile who has state_invisible

 

- SpellA: apply partial invisibility permanently

 

- Patch all spells with a global effect which 321 cancels SpellA

- Patch all weapons with melee hit effect/ranged hit effect to 321 cancel SpellA

You can simplify some of this:

The projectile can restrict it's targets to only enemies with normal but without improved invisibility.

Opcode 136 (Force Visible) already removes only normal invisibility without touching improved invisibility, instead of opcode 337.

Depending on what Beamdog does with Sanctuary, you could clone all normal invisibility effects to also apply sanctuary for the same duration.

Opcode 136 will remove normal invisibility, while leaving sanctuary intact, rendering them visible while enabling only those with opcode 193 to target them until they take a hostile action.

Link to comment

You can simplify some of this:

The projectile can restrict it's targets to only enemies with normal but without improved invisibility.

Ah right, I forgot .PROs can filter by SPLPROT as well.

 

Opcode 136 (Force Visible) already removes only normal invisibility without touching improved invisibility, instead of opcode 337.

Good to know.

 

Depending on what Beamdog does with Sanctuary, you could clone all normal invisibility effects to also apply sanctuary for the same duration.

Opcode 136 will remove normal invisibility, while leaving sanctuary intact, rendering them visible while enabling only those with opcode 193 to target them until they take a hostile action.

Hmm... Interesting idea. That would obviate adding the partial invisibility effect. (Although that could be desirable if you want the power to give a vague telepathic sense of the target's location to allies... but whatever.)

 

I thought Invisibility and Sanctuary have different conditions for being canceled? Is opening containers the only difference? I thought any spellcasting is supposed to dispel invisibility, though as I mentioned in another thread, I've seen inconsistent behavior in this regard.

 

TBH I really like this idea, and I think giving basic Invisibility all the benefits of Sanctuary is fine. The only real issue is the still-horrible-after-all-these-years Sanctuary visual effect. Is there any way to change that?

Edited by subtledoctor
Link to comment

About this. I personally *hate* invisibility spells, potions, rings etc. It makes stealth skill virtually useless. So, I'd like to change this a bit. Am not sure how however - but something among these lines:

1) if you're alone (no PCs around you) invisibility works as it does now

2) if you're surrounded by enemies, they have a %-based chance of noticing you.

3) if you move, you become visible

 

Now, I'm wondering about the implementation.

Ad2)

Use cast spell on condition/enemy in range x - cast spell x on enemy - spell x has % chance to remove invisibility. The more enemies around, the greater the chance to get busted.

What I'm worried about is that it would remove stealth as well if I don't use 321 which is EE only. And I don't know if this would work at all, give how cast on condition is wonky.

 

Ad3)

I think it could be possible to make, at least on EEs, moving break invisibility. This would imo be perfect. If you want to stay invisble, stay in one place and be quiet. Stealth would actually become a useful skill, and rangers/thieves could be used as scouts as opposed to almighty level 2 spell under which a full-plated 6 DEX berserker explores the perils of the Sword Coast.

AI however, couldn't cope with this perfectly, but whatever- maybe have a 3-6 second buffer window before you're "exposed".

 

Toughts? Too drastic of a revision? I'd keep Imp.Invisibility line intact, this would only affect the cheapest invis options - level 2 spell, Ring of invis, Potions of invis.

Link to comment

I think a low-level spell that only grants the "improved" part of improved invisibility would be interesting. As long as it is canceled if you cast a spell or land a hit, as described above. It would require EEs or a custom sectype.

That would be quite powerful: -4 AC, +4 saves, and cannot be targeted by spells... BUT you can't do anything except run away or it is canceled. And then, in a way, Blur is the upgraded version: AC and save bonuses that stay even while you cast/fight. Therefore, make this a 1st-level spell: it would be a good replacement for Expeditious Retreat (which I kind of hate in its current form).

Add a stealth bonus for mage/thieves, 'cause why not? Even give it to rangers. Or modify Sanctuary to do something similar.

 

...

As for the 2nd level spell, I'm not sure. The new EE "cancel effect on movement" is pretty limited in its capabilities IIRC... really only works with bard songs. Only thing I can think to test is if you set the Invisibility spell to be a bard song under "spell type." Maybe that would trick the engine... but I'm not holding my breath.

Even if that works, if you move you should still be somewhat invisible, so I would combine it with the 1st-level spell I described above. So:
- Cast Invisibility, you go invisible
- If you move, you lose full invisibility
- At that point, warriors can hit you with a -4 attack roll penalty
- And casters can hit you if they can see invisible (2nd-level spell grants 193)
- And if you cast a spell or strike someone, you lose the effect entirely.

The weak point there is the "on movement" part.

...

Completely different train of thought: you could have it apply normal invisibility and my 1st-level semi-invisibility as subspells, and have the normal version be flagged as a non-combat spell. So if you cast invisibility among enemies, you only get the weaker half of it. But if you cast it outside combat, you get real invisibility and then you can sneak into combat.

You could also have the "real invisibility" subspell not affect warriors, or something; heavy armor could block it. Etc. To prevent scouting by berserkers in full plate.

 

...

 

EDIT - I just did a very brief test, and I don't think EE opcode 363 can be used to cancel a stat or spell upon movement. Unless you were thinking of some other method, the movement thing is probably not possible. (I really like the concept, though.)

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...