Jump to content
skellytz

Issues with Spell Casting Sound Effects

Recommended Posts

Hi!

 

I've found a bunch of minor issues that have probably never been addressed by any of the available community fixpacks. These typically involve incorrect casting animations, schools and effect parameters. I don't think it would be a good idea to spread these fixes across multiple mods; BG2 Fixpack is their right place.

 

I've double-checked everything to make sure the issues haven't already been covered by the new version of the fixpack, but naturally I may have missed something. Apologies for any false alarms and your wasted time.

 

Here we go.

 

1. Incorrect spell casting animation & associated hardcoded sound effect

 

- Holy Power (SPPR412) should be Invocation.

 

- Farsight (SPPR415) should be Divination.

 

- Lesser Restoration (SPPR417) should be Necromancy.

 

- Repulse Undead (SPPR515) should be Abjuration.

 

- Insect Plague (SPPR517) should be Conjuration.

 

- Creeping Doom (SPPR717) should be Conjuration.

 

- NPC Symbol, Death (SPWI897) should be Conjuration.

 

- NPC Symbol, Stun (SPWI898) should be Conjuration.

 

- NPC Symbol, Fear (SPWI899) should be Conjuration.

 

- Wild Surge Repulse Undead (SPWM101) should be Abjuration.

 

- Wild Surge Symbol, Fear (SPWM123) should be Conjuration.

 

2. Incorrect spell primary casting school

 

- Restore Full Health (SPIN746) should be Necromancer.

 

- Cutscene Flesh to Stone (SPIN950) should be Transmuter.

 

- Cutscene Power Word, Kill (SPIN951) should be Conjurer.

 

- Negative Plane Protection (SPPR413) should be Abjurer.

 

- Lesser Restoration (SPPR417) should be Necromancer.

 

- Conjure Animals (SPPR604) should be Conjurer.

3. Incorrect spell sound effect parameters

 

- Innate Larloch's Minor Drain (SPIN104) plays EFF_M07 with wrong target type (should be 2), timing mode (should be 1) and duration (should be 0). Compare with the Mage variant (SPWI119).

 

- Innate Horror (SPIN105) plays EFF_E05 with wrong duration (should be 18) or horror effect duration should be 60 like in the fixed Mage variant (SPWI205). There also seems to be a morale break effect which isn't present in the Mage variant; its parameters should be adjusted accordingly.

 

- Innate Protection from Evil (SPIN121) plays EFF_E04 with wrong target type (should be 2), timing mode (should be 4) and duration (should be 60).

 

- Grease (SPWI101) shouldn't have the hostile flag on. This causes the unfortunate battle music loop. No other AoE-stopping spells have this flag on.

 

- Mage Remove Curse (SPWI410) plays wrong visual effect (should be SPRMCURS). Compare with the Priest variant (SPPR307).

 

- Time Stop (SPWI909, SPWISH17) plays EFF_M91 with wrong duration (should be set to half of the Time Stop effect duration due to the quirks of opcode 231).

 

And that's it! (That is, at least when it comes to the non-arbitrary stuff.) Thanks ;)

Edited by skellytz

Share this post


Link to post

Looks solid, thanks for this. A few initial thoughts:

 

- [unused?] Repulse Undead (SPWM101) should be Abjuration.

 

- [unused?] Symbol Fear (SPWM123) should be Conjuration.

SPWM spells are wild surges. However, I'm pretty sure that when a wild surge occurs it still uses the original spell's casting animation, but I'll double check.

 

- Cutscene Flesh to Stone (SPIN950) should be Transmuter.

 

- Cutscene Power Word, Kill (SPIN951) should be Conjurer.

I'll take a look, but cutscene spells are often deliberately different from their underlying spells to make sure they always work. I don't think that's the case here, though.

Share this post


Link to post

SPWM spells are wild surges. However, I'm pretty sure that when a wild surge occurs it still uses the original spell's casting animation, but I'll double check.

Yeah, but it looks like SPWM101 really isn't used in-game due to a bug. If you take a look inside the exe, the hardcoded wild surge table lists SPWM102 twice in a row:

SPWM102 SPWM102 SPWM103 SPWM104 SPWM105 (...)

This initially even carried over to the externalized table in BGEE:

           SPELL      STRREF
1          SPWM102    31718
2          SPWM102    31718
3          SPWM103    31719
4          SPWM104    31720
5          SPWM105    31721

You know, when it comes to Nahal's Reckless Dweomer, Chaos Shield, Improved Chaos Shield along with all the Wild Surges, the intention might have been to mess up the casting animation and sound effect on purpose. It's wild magic after all. It's hard to tell, what with all the other spells that have incorrect schools.

 

Still, I'd go for consistency here, even if it only applies to what Near Infinity displays in the fields.

Share this post


Link to post

Yeah, the table got copied from gemrb which had the values from the exe.

Share this post


Link to post

Thank you for including the fixes in Beta 3/4!

 

I've gone through them in NI and it seems Lesser Restoration (SPPR417) still has wrong casting animation (should be Necro).

Share this post


Link to post

No, thank you for providing fixes. :) I'll get Lesser Restoration sorted for the next release.

Share this post


Link to post

I think there's place in the fixpack for these two as well:

1. Priest variants of hold spells should use EFF_P11.wav instead of EFF_M15.wav.

EFF_M15.wav is only the wizard variant. This is how hold spells were originally designed in BG1; however, the sound was moved from SPL effects to a single VVC in BG2. They simply never created a separate VVC for the priest variant.

// create separate priest vvc based on wizard variant
COPY_EXISTING ~spmindat.vvc~ ~override/cdmindap.vvc~
  WRITE_ASCII 0x78 ~eff_p11~ #8 // starting sound
BUT_ONLY

// create separate priest eff based on wizard variant
COPY_EXISTING ~cdhdb60.eff~ ~override/cdhpb60.eff~
  WRITE_ASCII 0x30 ~cdmindap~ #8 // vvc
BUT_ONLY

COPY_EXISTING ~sppr208.spl~ ~override~ // Hold Person (priest)
              ~sppr305.spl~ ~override~ // Hold Animal (priest)
  LPF ALTER_EFFECT INT_VAR silent = 1 STR_VAR match_resource = ~cdhdb60~ resource = ~cdhpb60~ END
BUT_ONLY

// remove duplicate sound from wild magic variant
COPY_EXISTING ~spwm122.spl~ ~override~ // Hold Person (wild)
  LPF DELETE_EFFECT STR_VAR match_resource = ~eff_p11~ END
BUT_ONLY

The same applies to BGEE. (The EFF filename is different: cdhd60b.eff)

2. Web should have a disentanglement sound.

There's no sound when the target untangles. EFF_M22A.wav should be played -- just like Entangle.

// Web: add disentanglement sound
COPY_EXISTING ~spdr201.spl~ ~override~ // Web (druid)
              ~spin566.spl~ ~override~ // Mimic Web
              ~spin683.spl~ ~override~ // Web Tangle
              ~spwi215.spl~ ~override~ // Web (wizard)
              ~wand14.itm~  ~override~ // Web Sack
  LPF CLONE_EFFECT INT_VAR silent = 1 match_opcode = 157 opcode = 174 timing = 4 STR_VAR resource = ~eff_m22a~ END
BUT_ONLY

Thanks.

Edit: added Mimic Web, Web Tangle and Web Sack to the disentanglement sound patch.

Edited by skellytz

Share this post


Link to post

Cam, are you interested in reports like the ones in the previous post at all? I could probably have more, but I'm not sure if you consider them fixes.

For example:

Psionic Domination (SPIN975) has a wrong expiration sound (EFF_M16 -- duplicates the target-hit sound); should be EFF_E05 (enchantment expiration sound).

Share this post


Link to post

Absolutely, yes, and keep reporting them! I usually don't start processing through reports until I'm actually working on the next version, so please don't take a lack of reply as a sign of disinterest.

Share this post


Link to post

1. Charm spells (opcode #5) have inconsistent target-hit sounds.

Some spells carry over EFF_M16 from BG1 as an effect, some use SPNWCHRM.vvc (with EFF_P73), and others use both playback methods stacking the two sounds.

- EFF_M16 is different in BG2 and matches confusion-based spells only (SPCONFUS.vvc).

- For consistency, all charm spells should play SPNWCHRM.vvc and, if present, have the redundant target-hit sound effects removed.

- Most of these spells have missing expiration sounds. Should be EFF_E05 (enchantment expiration sound).

- BG2 Fixpack is a bit inconsistent in putting the VVC in EFFs, e.g., BEGUILE.spl (Beguiling Gaze).

I'm not listing spells, because it'll probably be easier to filter through them in Near Infinity using your preferred approach.

Charm items affected by the same issues:

- REGISAMU (Ruby Pendant)

- RING03 (Ring of Animal Friendship)

- RING30 (Ring of Human Influence)

- STAF09 (Staff of Command)

Charm items with both SPNWCHRM.vvc and expiration sound (EFF_E05) missing:

- CLCK07 (Nymph Cloak)

- MISC9X (Control Circlet)

2. Some confusion spells (opcode #128) play redundant and stacking target-hit sounds.

EFF_M05 got carried over from BG1 as an effect, but the devs forgot to remove it after adding SPCONFUS.vvc (with EFF_M16).

Confusion spells playing double target-hit sounds:

- SPIN674 (MIST_CHAOS)

- SPIN704 (NYMPH_CONFUSION)

- SPIN839 (HULK_CONFUSION)

- SPPR983 (TRAP_CONFUSION)

Confusion items with missing expiration sound (EFF_E05):

- WAS2H.ITM (Joril's Dagger +3)

3. Some invisibility spells (opcode #20) have missing or mismatched expiration sounds.

EFF_M10 is reserved for Dispel Magic. EFF_E01 is the proper illusion expiration sound.

Invisibility spells with mismatched expiration sound (EFF_M10, should be EFF_E01):

- SPDR401 (Improved Invisibility)

- SPIN544 (PSIONIC_SUPERIOR_INVISIBLITY)

- SPIN687 (Create Shadows)

- SPWI307 (Invisibility 10' Radius)

- SPWI405 (Improved Invisibility)

- SPWI721 (Mass Invisibility)

Invisibility spells with missing expiration sound (EFF_E01):

- SPIN118 (Invisibility)

- SPPR516 (Pixie Dust)

- SPWI206 (Invisibility)

- SPWI607 (Mislead)

Invisibility items with missing expiration sound (EFF_E01):

- POTN10 (Potion of Invisibility)

Invisibility items with missing on-use sound (CAS_M01) and expiration sound (EFF_E01):

- DAGG21 (Dagger of the Star +4)

- DAGG22 (Dagger of the Star +5)

- RING39 (Ring of Gaxx)

- RING42 (Ring of Improved Invisibility)

- ROSSLAND (Ring of Invisibility)

Edited by skellytz

Share this post


Link to post

4. Some spells lose casting sounds because of casting speed tweaks.

BG2 Fixpack sets the casting speed of certain spells to 0. This prevents these spells from playing their casting sound, e.g., Minsc's berserk (SPIN117) won't play the famous MINSC02.wav.

Share this post


Link to post
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...