Jump to content

Spellhold cutscenes can cause permanent paralysis


jmerry

Recommended Posts

From a report here: https://forums.beamdog.com/discussion/86971/lose-control-of-a-character-in-asylum-after-finding-imoen

Basically, if a character other than the protagonist has spell protections (deflection/turning/trap/immunity) against generic 1st level spells, the Spellhold cutscenes between Irenicus capturing the party and dumping them in the dungeon will paralyze that character and then fail to cure them. The paralysis is permanent, so you can't wait it out; only a Remove Paralysis effect or possibly killing and reviving the character cures it.

Here are relevant excerpts from the cutscenes involved:

CUT41G (Party captured and taken to the experiment room):

Spoiler
		CutSceneId(Player1)
// Other actions
		ActionOverride(Player2,ForceSpell(Player2,HOLD_PARTY))  // SPIN863.SPL (No such index)
		ActionOverride(Player3,ForceSpell(Player3,HOLD_PARTY))  // SPIN863.SPL (No such index)
		ActionOverride(Player4,ForceSpell(Player4,HOLD_PARTY))  // SPIN863.SPL (No such index)
		ActionOverride(Player5,ForceSpell(Player5,HOLD_PARTY))  // SPIN863.SPL (No such index)
		ActionOverride(Player6,ForceSpell(Player6,HOLD_PARTY))  // SPIN863.SPL (No such index)

 

CUT41I, returning from the dream, has a functionally identical segment:

Spoiler
		CutSceneId(Player1)
// Other actions
		ActionOverride(Player2,ReallyForceSpell(Myself,HOLD_PARTY))  // SPIN863.SPL (No such index)
		ActionOverride(Player3,ReallyForceSpell(Myself,HOLD_PARTY))  // SPIN863.SPL (No such index)
		ActionOverride(Player4,ReallyForceSpell(Myself,HOLD_PARTY))  // SPIN863.SPL (No such index)
		ActionOverride(Player5,ReallyForceSpell(Myself,HOLD_PARTY))  // SPIN863.SPL (No such index)
		ActionOverride(Player6,ReallyForceSpell(Myself,HOLD_PARTY))  // SPIN863.SPL (No such index)

 

Then CUT41J, sending the party to the dungeon, tries to release the party:

Spoiler
		CutSceneId(Player1)
// Other actions
		ApplySpell(Player2,NOHOLD_PARTY)  // SPIN862.SPL (No such index)
		ApplySpell(Player3,NOHOLD_PARTY)  // SPIN862.SPL (No such index)
		ApplySpell(Player4,NOHOLD_PARTY)  // SPIN862.SPL (No such index)
		ApplySpell(Player5,NOHOLD_PARTY)  // SPIN862.SPL (No such index)
		ApplySpell(Player6,NOHOLD_PARTY)  // SPIN862.SPL (No such index)

 

This last cutscene is the problem. To see why, first examine exactly what the spells do. HOLD_PARTY paralyzes (109) its target with timing mode 1 and power 1. No save, no MR. NOHOLD_PARTY removes paralysis (162) from its target, also with timing mode 1, power 1, no save, and no MR. Neither spell has a primary or secondary type, and neither is flagged as hostile.

Since the cutscenes have each player "cast" HOLD_PARTY on themself, that spell ignores any spell defenses that may be active. The same is not true for NOHOLD_PARTY; player 1 "casts" that spell on each other player. This means it can be blocked by spell defenses, preventing any protected character from being freed. Oops.

This issue is unlikely to come up in most games, simply because the problematic cutscene is preceded by a considerable noncombat section and spell defenses don't usually have terribly long durations. The report came from a game in which a mod item granted "while equipped" protection against level 1 spells, something that isn't an option in the base game.

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