Skip to content

[(BG2, BGEE) BUG] Protection from normal missiles

CamDawgCamDawg Member, Developer Posts: 3,438
edited August 2012 in Fixed
Both the mage (spwi311) and ranger version (spra303) of the spell have some issues. The spell can be cast on anyone, the sound effects are always attached to the caster instead of the preset target.

More importantly, it blocks arrows +1 (arow02), Eldoth's poisoned arrows (arow14), and throwing axe +2 (ax1h05, ax1h06 (unused?)). In these cases, the projectile on the items needs to be changed--for the arrows use projectile value 2 and for the axes 7.
Post edited by Bhryaen on
AndreaColomboIgneousBhryaen

Comments

  • CamDawgCamDawg Member, Developer Posts: 3,438
    // bad targets for pfnm sound effect targeting
    COPY_EXISTING ~spra303.spl~ ~override~ // avenger
    ~spwi311.spl~ ~override~ // generic arcane
    READ_LONG 0x64 "abil_off"
    READ_SHORT 0x68 "abil_num"
    READ_LONG 0x6a "fx_off"
    FOR (index = 0 ; index < abil_num ; index = index + 1 ) BEGIN // cycle thru abilities
    READ_SHORT ("%abil_off%" + 0x1e + (0x28 * "%index%")) "abil_fx_num"
    READ_SHORT ("%abil_off%" + 0x20 + (0x28 * "%index%")) "abil_fx_idx"
    FOR (index2 = 0 ; index2 < abil_fx_num ; index2 = index2 + 1) BEGIN
    READ_SHORT ("%fx_off%" + (0x30 * ("%index2%" + "%abil_fx_idx%"))) "opcode"
    PATCH_IF ("%opcode%" = 174) BEGIN
    WRITE_BYTE ("%fx_off%" + 0x02 + (0x30 * ("%index2%" + "%abil_fx_idx%"))) 2 // target: preset target
    END
    END
    END
    BUT_ONLY_IF_IT_CHANGES

    // missile weapons using wrong projectiles and being blocked by protection from normal missiles
    COPY_EXISTING ~arow02.itm~ ~override~ // arrows +1
    ~arow14.itm~ ~override~ // eldoth's arrows
    ~ax1h05.itm~ ~override~ // throwing axe +2
    ~ax1h06.itm~ ~override~ // throwing axe +2
    READ_LONG 0x64 "abil_off" ELSE 0
    READ_SHORT 0x68 "abil_num" ELSE 0
    FOR (index = 0 ; index < abil_num ; index = index + 1) BEGIN
    READ_BYTE ("%abil_off%" + ("%index%" * 0x38)) "type"
    PATCH_IF ("%type%" = 2) BEGIN
    READ_SHORT ("%abil_off%" + 0x2a + ("%index%" * 0x38)) "proj"
    PATCH_IF ("%proj%" = 5) BEGIN // normal arrow projectile
    WRITE_SHORT ("%abil_off%" + 0x2a + ("%index%" * 0x38)) 2 // magic arrow
    END ELSE
    PATCH_IF ("%proj%" = 10) BEGIN // normal axe projectile
    WRITE_SHORT ("%abil_off%" + 0x2a + ("%index%" * 0x38)) 7 // magic axe
    END ELSE
    PATCH_IF ("%proj%" = 20) BEGIN // normal axe projectile
    WRITE_SHORT ("%abil_off%" + 0x2a + ("%index%" * 0x38)) 17 // magic bullet
    END
    END
    END
    BUT_ONLY_IF_IT_CHANGES
    AndreaColomboIgneousBhryaen
  • CorianderCoriander Member Posts: 1,667
    I'll put it in.
  • NathanNathan Member Posts: 1,007
    Verified, this has been integrated internally and should be present in the next build.
  • TanthalasTanthalas Member Posts: 6,738
    edited August 2012
    Confirmed Fixed

    Protection from Normal Missiles no longer protects against:
    - arrows +1 (arow02)
    - Eldoth's poisoned arrows (arow14)
    - both throwing axe +2 (ax1h05, ax1h06)


    However:

    I don't know exactly how I can distinguish this:
    CamDawg said:

    The spell can be cast on anyone, the sound effects are always attached to the caster instead of the preset target.

    And I also couldn't test the Stalker spell since it requires level 12.

    @CamDawg, @Nathan

    I also detected some other problems:

    The problem is that Protection From Normal Missiles isn't protecting against normal arrows, normal bolts, normal darts or normal throwing daggers (all these were bought from Winthrop).

    It currently does protects against normal throwing axes (CLUAConsole'd ax1h04), normal bullets (bought from Winthrop).

    Not sure if there are other normal missile weapons or not.
    Post edited by Tanthalas on
    Bhryaen
  • Avenger_teambgAvenger_teambg Member, Developer Posts: 5,862
    edited August 2012
    Confirmed messed up.
    1pp brought in several new projectiles, did the projectile overhaul update this spell?
    [edit]
    to answer my question, no. The spell protects against old projectiles.
    For example arow01 has a projectile type of 277 (1arow01)
  • TanthalasTanthalas Member Posts: 6,738
    @Avenger_teambg

    Oh-oh.

    *cough*

    I didn't actually spawn all those projectiles with CLUAConsole. I bought the arrows, bolts, darts, throwing daggers and bullets from Winthrop.

    The only ammo I spawned was the Throwing Axes. I better change that in my post.
  • Avenger_teambgAvenger_teambg Member, Developer Posts: 5,862
    @Tanthalas when i wrote "projectiles" i meant the .pro fileformat. The arrows are 'items'. All spell and item has a projectile (as in .pro) attached to its ability. The 1pp graphics upgrade moved away from several hardcoded projectiles (as in .pro) and defined their own. See projectl.ids for a list (the new stuff is on its end).
  • TanthalasTanthalas Member Posts: 6,738
    @Avenger_teambg

    So basically Protection from Normal Missiles doesn't detect the item being launched, it detects that projectile settings in the ammo? Why woud 1PP change that?
  • CuvCuv Member, Developer Posts: 2,535
    edited August 2012
    shesh... was that supposed to be support for new animation bams or something?

    Edit: I already see mod conflicts with this. One of my own mods add to the PROJECTILE.ids and will need to be changed.
  • WispWisp Member Posts: 1,102
    @Cuv
    Can you elaborate? There is nothing inherently conflict-y about adding projectiles that I can think of. Lots of mods do it.
  • CuvCuv Member, Developer Posts: 2,535
    edited August 2012
    @Wisp I have been away from the WeiDU thing for quite a while and much has changed.

    Edit: Nevermind:P I misunderstood what was happening there.
  • TanthalasTanthalas Member Posts: 6,738
    The issues with the new projectiles have their own discussion now.

    Moving this one to Confirmed Fixed.
Sign In or Register to comment.