Skip to content

[(BG1) INCONSISTENCY] Master Thread of Portrait Icons Not Showing Up (0813)

2»

Comments

  • CamDawgCamDawg Member, Developer Posts: 3,438
    edited July 2012
    One more fix, tangentially related: the cursed scroll of clumsiness sets spell failure to 100%, but does not show the icon to go with it. (Also: the included WeiDU macros could have shaved a couple thousand lines out of the Fixpack. Seriously.)
    COPY_EXISTING ~scrl11.itm~ ~override~
    LAUNCH_PATCH_FUNCTION ~ADD_ITEM_EFFECT~ INT_VAR
    opcode = "142" // display portrait icon
    target = "1" // target self
    resist_dispel = "1" // dispel/bypass MR
    duration = "600" // duration
    parameter2 = "83" // spell failure
    header = "1" // add to first header only
    resist_dispel = "1" // dispel/bypass MR
    END
    BUT_ONLY
    Post edited by CamDawg on
    AndreaColombo
  • WispWisp Member Posts: 1,102
    edited July 2012
    You can shave even more lines off by using the functions instead of the macros. They come with pre-initialised values, so you only need to specify the values that matter (or need to be different from the defaults).
  • CamDawgCamDawg Member, Developer Posts: 3,438
    edited July 2012
    Ah, kids these days! Never learning the sheer tedium of the triple WHILE loops.
    Bhryaen
  • SethDavisSethDavis Member Posts: 1,812
    @CamDawg - I'm having trouble adding the cursed icon to the remainder of the cursed scrolls (the appropriate ones anyway). Is the opcode not the only part I need to add to get the icon?
  • CamDawgCamDawg Member, Developer Posts: 3,438
    edited July 2012
    Here, these should work, with a caveat below:
    // add cursed icon to cursed scrolls
    COPY_EXISTING ~scrl10.itm~ ~override~ // cursed scroll of weakness
    ~scrl11.itm~ ~override~ // cursed scroll of clumsiness
    ~scrl12.itm~ ~override~ // cursed scroll of foolishness
    ~scrl13.itm~ ~override~ // cursed scroll of ugliness
    ~scrl17.itm~ ~override~ // cursed scroll of ailment
    LAUNCH_PATCH_FUNCTION ~ADD_ITEM_EFFECT~ INT_VAR
    opcode = "142" // display portrait icon
    target = "1" // target self
    resist_dispel = "1" // dispel/not bypass MR
    duration = "600" // duration
    parameter2 = "35" // cursed
    header = "1" // add to first header only
    END
    BUT_ONLY

    // add spell failure icons
    COPY_EXISTING ~scrl11.itm~ ~override~ // cursed scroll of clumsiness
    ~scrl12.itm~ ~override~ // cursed scroll of foolishness
    LAUNCH_PATCH_FUNCTION ~ADD_ITEM_EFFECT~ INT_VAR
    opcode = "142" // display portrait icon
    target = "1" // target self
    resist_dispel = "1" // dispel/bypass MR
    duration = "600" // duration
    parameter2 = "83" // spell failure
    header = "1" // add to first header only
    END
    BUT_ONLY

    // add cursed icon to cursed scrolls
    COPY_EXISTING ~scrl16.itm~ ~override~ // cursed scroll of petrification
    LAUNCH_PATCH_FUNCTION ~ADD_ITEM_EFFECT~ INT_VAR
    opcode = "142" // display portrait icon
    target = "1" // target self
    resist_dispel = "1" // dispel/not bypass MR
    timing = "1" // instant/permanent
    parameter2 = "35" // cursed
    header = "1" // add to first header only
    END
    BUT_ONLY

    // add cursed icon to cursed scrolls
    COPY_EXISTING ~scrl18.itm~ ~override~ // cursed scroll of ailment
    LAUNCH_PATCH_FUNCTION ~ADD_ITEM_EFFECT~ INT_VAR
    opcode = "142" // display portrait icon
    target = "1" // target self
    resist_dispel = "1" // dispel/not bypass MR
    duration = "45" // duration
    parameter2 = "35" // cursed
    header = "1" // add to first header only
    END
    BUT_ONLY
    I missed the miscast effect on scrl12, so it's been added. scrl18 was separated for its different duration. scrl17 also has a different duration, but since the scroll kills the reader in 12 seconds, I'm not worried about the duration going on another 588 ticks.

    I actually would not patch scrl16 to use a curse icon, though I included the code should you choose to do so. Since it petrifies the reader permanently, the party will need to use stone-to-flesh, which does not remove curse icons--meaning a character who reads it and later gets S2Fd will carry a curse icon until they also get a (purely cosmetic at this point) remove curse cast on them.

    edit: Actually, I'm not positive remove curse does anything other than remove curse-flagged items. Maybe this is why these were never patched to have curse icons to begin with.
  • TanthalasTanthalas Member Posts: 6,738
    @SethDavis

    I'm not moving this one to one of the A, B, C, D folders because it looks like you're already working on it.
  • SethDavisSethDavis Member Posts: 1,812
    @Tanthalas - I'm out of the office for 30 minutes and we have folders named after letters?

    @CamDawg - Thanks ^^
  • AndreaColomboAndreaColombo Member Posts: 5,524
    edit: Actually, I'm not positive remove curse does anything other than remove curse-flagged items. Maybe this is why these were never patched to have curse icons to begin with.
    In this case, I vote for making Remove Curse also remove the cursed portrait icon.
  • CamDawgCamDawg Member, Developer Posts: 3,438
    It's not that simple, though. Remove curse doesn't reverse any of the effects of these scrolls, so all we'd be doing is removing the icon. There's no way to make remove curse work against these scrolls short of turning it into a (much more powerful) dispel magic.
  • TanthalasTanthalas Member Posts: 6,738
    @SethDavis

    Is this one being worked on?
  • SethDavisSethDavis Member Posts: 1,812
    @Tanthalas - Completely forgot about it >.<. I'll get to it as soon as im done elsewhere.
  • TanthalasTanthalas Member Posts: 6,738
    @SethDavis

    Just wanted to know if it should be moved to "Being worked on", its no big deal.
  • SethDavisSethDavis Member Posts: 1,812
    Actually, it's looking safer to leave off the scrolls. If anyone objects I'll move it back out of found and fixed.
  • TanthalasTanthalas Member Posts: 6,738
    I can confirm that all the items mentioned in AndreaColombo's opening post now give icon portraits when equipped.

    @CamDawg, @SethDavis

    Didn't really understand what you guys decided to do with the cursed scrolls but when I used them no portrait icon appeared. (Except for the one that inflicts poison that had the poison icon)

    However there is one minor issue that might require changing. SCRL18 (Cursed scroll of Stupity) seems to have 3 effects:

    1. Set INT to 4
    2. Set WIS to 3
    3. Inflict Feeblemind

    Perhaps the character should get the Feeblemind icon portrait and Feeblemind text on the Records page so the player can know why they can't select and move their character. Though, it is true that the effect doesn't last long so it might not be worth wasting time on it.

    One last thing: are the cursed effects of these scrolls supposed to be impossible to cure? Neither Remove Curse at temples or the Cleric Remove Curse works on them. But again, these effects don't last long so its probably unimportant.
    Bhryaen
  • CamDawgCamDawg Member, Developer Posts: 3,438
    edited August 2012
    Remove curse is the single most useless spell in the game, and I say that with full knowledge that Infravision exists. The one and only thing that remove curse does is remove cursed items. I don't like adding the cursed icon here because it implies remove curse will work.

    The problem with remove curse is that many of the effects of curses, such as the aforementioned scrolls, are often legitimate effects or have sources from non-curses. The IE doesn't have a lot of tools that can be used to, say, block an INT change from a cursed scroll while not blocking an INT change from a ring or tome or illithid attack. It's like using a hammer to do surgery.

    I'm for adding other icons as appropriate, as they'll be removed (or not) with the rest when hit with a dispel. Feeblemind effects should always be paired with the portrait icon; any others you want to suggest here?
    Avenger_teambg
  • TanthalasTanthalas Member Posts: 6,738
    @CamDawg

    I tested all the scrolls between SCRL10 and SCRL18. SCRL18 was the only one that had that Feeblemind effect, the other ones just reduced attributes, inflicted Posion->Death or Petrified. Are there any other cursed scrolls to test? If not, I think only SCRL18 needs that minor fix.
  • Avenger_teambgAvenger_teambg Member, Developer Posts: 5,862
    edited August 2012
    CamDawg said:

    Remove curse is the single most useless spell in the game, and I say that with full knowledge that Infravision exists. The one and only thing that remove curse does is remove cursed items. I don't like adding the cursed icon here because it implies remove curse will work.

    The problem with remove curse is that many of the effects of curses....

    This could be fixed, as remove curse also removes the '#283 (0x11B) apply effect as curse' effect.
    You just have to rewrite every scroll to apply their effect as curse... OUCH. Why isn't there an 'apply spell as curse' :)

    AndreaColombo
  • BhryaenBhryaen Member Posts: 2,874
    edited August 2012
    [nvm] heh
  • CamDawgCamDawg Member, Developer Posts: 3,438
    edited August 2012
    And our final wrapup for this... miscast magic (not spell failure, it's only 50%) icons for Cursed Scroll of Clumsiness and the Cursed Scroll of Foolishness, feeblemind icon for the Cursed Scroll of Stupidity, and one bugfix: the Cursed Scroll of Foolishness induces spell casting failures for divine but not arcane magic. (The only place you see arcane/divine spell failure not paired is in the special abilities of the wizard slayer.)

    edit: no miscast icon for the Curse of Foolishness. It already sets a feeblemind icon, so a miscast magic is superfluous.

    And a quick ping for @SethDavis for this.
    // add miscast icons
    COPY_EXISTING ~scrl11.itm~ ~override~ // cursed scroll of clumsiness
    LAUNCH_PATCH_FUNCTION ~ADD_ITEM_EFFECT~ INT_VAR
    opcode = 142 // display portrait icon
    target = 1 // target self
    resist_dispel = 1 // dispel/bypass MR
    duration = 600 // duration
    parameter2 = 105 // miscast magic
    power = 4 // power
    END
    BUT_ONLY

    // add miscast icon, arcane spell failure
    COPY_EXISTING ~scrl12.itm~ ~override~ // disable arcane spells, too
    LAUNCH_PATCH_FUNCTION ~ADD_ITEM_EFFECT~ INT_VAR
    opcode = 60 // spell failure
    target = 1 // target self
    duration = 600 // duration
    resist_dispel = 1 // dispel/bypass MR
    parameter1 = 50 // 50% spell failure
    power = 4 // power
    END
    BUT_ONLY

    // add feeblemind icons
    COPY_EXISTING ~scrl18.itm~ ~override~ // cursed scroll of clumsiness
    LAUNCH_PATCH_FUNCTION ~ADD_ITEM_EFFECT~ INT_VAR
    opcode = 142 // display portrait icon
    target = 1 // target self
    resist_dispel = 1 // dispel/bypass MR
    duration = 45 // duration
    parameter2 = 48 // feeblemind
    power = 4 // power
    END
    BUT_ONLY
    Post edited by CamDawg on
    TanthalasAndreaColombo
  • SethDavisSethDavis Member Posts: 1,812
    Potentially fixed - @CamDawg's new fix has been applied
    Tanthalas
  • TanthalasTanthalas Member Posts: 6,738
    Confirmed Fixed for the last issues in Build 0815

    scrl11 -> displays the Miscast magic icon.
    scrl18 -> displays the Feeblemind icon.

    scrl12 -> now can cause spellcasting failure to both Arcane and Divine magic.
  • Avenger_teambgAvenger_teambg Member, Developer Posts: 5,862
    edited August 2012
    ...
  • TanthalasTanthalas Member Posts: 6,738
    It doesn't look like anyone else will be checking this one.

    Moving it to fixed.
  • AndreaColomboAndreaColombo Member Posts: 5,524
    Poking @SethDavis to add the "Fire Resistance" portrait icon to item SW1H15 (Scimitar +3, Frostbrand).
Sign In or Register to comment.