Jump to content

Fixpack Causes Bug w/Deva & Fallen Deva


Recommended Posts

Although I'm a bit mixed on the Fixpack, I'm trying to support both it and Baldurdash. Testing on an installation with only SoA, ToB, the official patch, and the BG2 Fixpack installed, I encountered the following:

 

Devas and Fallen Devas take a small amount (3-6) of damage when summoned.

 

AND

 

Summoned Devas and Fallen Devas turn hostile when either the attack button (sword shaped button for ordering multiple characters to attack) or the equipped weapon (mace) button is clicked.

 

It's weird... I skimmed the scripts for both creatures and didn't notice anything amiss. I'll check them again with an eye to detail, but I thought it best to post and see if anyone else encountered this issue.

 

aWL

 

EDIT: changed title to draw attention (and hopefully encourage fix)

Link to comment

Here are the results of my investigation:

 

SoA, ToB, official patch: Bug NOT present

SoA, ToB, official patch, BG2 Fixpack Core Fixes: Bug IS present

SoA, ToB, official patch, BG2 Fixpack Core Fixes & Beta Fixes: Bug IS present

 

The Fixpack is causing this issue. I don't see any issues with baldur.bcs or the creature scripts. The damage (probably 3-8 is a more accurate range) is repeated when the attack/weapon button is pressed, so I'm thinking that perhaps this is an issue with the Deva/Fallen-Deva mace weapon. At a glance, I didn't notice anything amiss with the item file. I'll take a closer look a bit later.

 

Please look into this issue. The Fixpack completely breaks any spell (including mod spells like my Fallen Paladin HLA in Morrow Gate) that summons Devas or Fallen Devas.

 

aWL

 

EDIT: clarity

Link to comment

Got it! :(

 

The Fixpack is adding a self-targeting "Use EFF file" effect to DEVA.itm.

 

The EFF file in question, MACEDISR.eff, deals 2+1d6 crushing damage to a preset target (in this case, it's set to self by the effect in DEVA.itm).

 

When the Deva/Fallen-Deva and its mace weapon are created, and when the attack/weapon button is pressed, the damage is dealt to the mace's wielder (the Deva/Fallen-Deva). Because you control the Deva/Fallen-Deva, whose weapon is dealing the damage via the EFF file, the engine thinks that you have attacked the Deva/Fallen-Deva and the creature becomes hostile.

 

Please fix this!!!

 

aWL

Link to comment

Confirmed for Fixpack v6.

However, the bug is not in v4 and the changes to deva.itm are most likely unrelated. Besides, copying the deva.itm + devagood.cre from v6 to v4 override does not reproduce the bug either. So there is probably something else involved here.

Link to comment
Confirmed for Fixpack v6.

However, the bug is not in v4 and the changes to deva.itm are most likely unrelated. Besides, copying the deva.itm + devagood.cre from v6 to v4 override does not reproduce the bug either. So there is probably something else involved here.

 

Hmm... So you're saying that it's not the EFF file? That's what it seems to be... It's been a while since I've played with EFF files, but it sure looks wrong to me. When I get home I'll delete the EFF file from the item and see if that fixes the issue. Expect another report later.

 

aWL

 

EDIT: Also, did you copy the v6 MACEDISR.eff file to the v4 override directory, too? If not, then you'll need to do so for a reliable test.

Link to comment
Since the deva isn't undead, it wasn't affected before.

 

The 'Use EFF file' effect and EFF files themselves are tricky things. Before (in v4), the mace was supposed to do additional damage against undead enemies (I'm not sure, but I think that this type of effect needs to be applied under the melee effect of a weapon... not in the general effects section... but again, these are tricky things; I might have it backwards).

 

Now (in v6), the mace simply deals damage to its wielder (which leads to the creature turning hostile).

 

aWL

Link to comment

Yeah, this is there because Damage vs. type doesn't use the dice fields (i.e., your mace of disruption was doing only +2 to undead in all versions of the game). MaceDisr has been in every fixpack version (it simply corrects the damage bonus to +1 for a total of 1d6+4 bonus as per the upgraded mace's description).

 

Apparently, the code is wrong. For now, just delete DEVA.ITM (DEVAEVIL should be unused). They would turn hostile when clicking the attack button because the engine uses that as a cue to reapply all the equipped effects on the CRE (just in case the weapon switched, so they always do it).

Link to comment
Yeah, this is there because Damage vs. type doesn't use the dice fields (i.e., your mace of disruption was doing only +2 to undead in all versions of the game). MaceDisr has been in every fixpack version (it simply corrects the damage bonus to +1 for a total of 1d6+4 bonus as per the upgraded mace's description).

 

Apparently, the code is wrong. For now, just delete DEVA.ITM (DEVAEVIL should be unused). They would turn hostile when clicking the attack button because the engine uses that as a cue to reapply all the equipped effects on the CRE (just in case the weapon switched, so they always do it).

 

Hmm... tough choice... a fixed +2 damage against undead... or devas that turn hostile... lol. Sorry. Couldn't resist. On the serious side of things, the 'Use EFF file' effect and MACEDISR are definitely the culprits. The bug disappeared when I removed the effect from the item.

 

aWL

Link to comment
Apparently, the code is wrong. For now, just delete DEVA.ITM (DEVAEVIL should be unused). They would turn hostile when clicking the attack button because the engine uses that as a cue to reapply all the equipped effects on the CRE (just in case the weapon switched, so they always do it).

Deleting the ITM won't help, since the 'Use EFF file' is in vanilla DEVA.ITM and not added by fixpack.

Didn't know about that reapplication of the equipped effects. It looks like it only happens when the value in CLASS is one of the PC classes (e.g. <= 20).

 

So it's a combination of these two fixes that cause this bug:

// change from damage v type (179) to damage (12); see blun12.itm
COPY_EXISTING ~macedisr.eff~ ~override~
 WRITE_LONG  0x10 12 // opcode: damage
 WRITE_LONG  0x1c  2 // fixed damage
 WRITE_SHORT 0x20  0 // straight butter, baby
 WRITE_SHORT 0x60  0 // param3 not needed
 BUT_ONLY_IF_IT_CHANGES

// devas need to be a spellcasting classs, otherwise dispel magic cast at level 1 and fails
COPY_EXISTING ~devagood.cre~ ~override~
		  ~devaevil.cre~ ~override~
		  ~devast01.cre~ ~override~
		  ~devmon01.cre~ ~override~
 PATCH_IF (SOURCE_SIZE > 0x2d3) THEN BEGIN // protects against invalid files
WRITE_BYTE 0x273 3 // cleric
 END
 BUT_ONLY_IF_IT_CHANGES

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...