Skip to content

TobEx: 31

DanBoulosDanBoulos Member Posts: 146
edited July 2012 in Fixed
Current Behaviour:

Effect #20 “Invisibility” modifies the base stats when parameter 2 is 1 and the timing is 1

Expected behaviour:

Effect #20 “Invisibility” modifies the derived stats when parameter 2 is 1 and the timing is 1

Revision:

Modify derrived stats rather then base stats twice (copy and paste?)
Post edited by Bhryaen on

Comments

  • BhryaenBhryaen Member Posts: 2,874
    @Wisp, @CamDawg
    Can you make sense of this? I'm afraid that the distinction between base and derived stats loses me. Not that I know what parameter 2 is either, but still... Does this refer to the modifier to AC while Inviso? That tends only to apply to Improved Invisibility though, so... Not sure if DanBoulos was just not being specific enough about the issue or if I just don't have the skill I need to tackle this.
  • CuvCuv Member, Developer Posts: 2,535
    @Bhryaen don't feel too bad, I was just looking at this and trying to figure out what it means:P I dont know which stats it is referring to, nor what timing is going on. Is that the active time of the effect? Time of 1 would seem almost useless in that regard.
  • BhryaenBhryaen Member Posts: 2,874
    @Cuv
    Well, if he's referring to Timing = 1 the way @Wisp was- i.e., setting the effect Timing Mode to Instant/ Permanent until death (1)- then ok, but when is Inviso set to permanent until death? Except maybe on an Invisible Stalker. Really not sure what the background of this ToBEx fix is...
  • CamDawgCamDawg Member, Developer Posts: 3,438
    Yeah, I think this is a timing fix. The entirety of the TobEx docs on this reads "TobEx fixes the application of improved invisibility under permanent until death timing".
    Bhryaen
  • CuvCuv Member, Developer Posts: 2,535
    @Bhryaen and @CamDawg Oh! alright, will try to verify that then. cheers
  • CuvCuv Member, Developer Posts: 2,535
    Somewhat confirmed! If below is what is supposed to happen.

    I took the potion of invisibility and changed parameter 2 to 1 (Improved Invisibility), set Duration to Instant/Permanent (1) and had Imoen drink the concoction.

    She remained Improved Invisible for our trip down to Naskell, and through several nights sleep. I finally Ctrl+Y'd her and she only became visible upon death.
    Bhryaen
  • Avenger_teambgAvenger_teambg Member, Developer Posts: 5,862
    Simple rule of thumb:
    Base stats are those that get saved. Derived stats are those that you see displayed.
    Usually, timing mode 1 modifies base stats then goes away.

    The original engine source had 2 exact lines that modified the base stat (invis state), but didn't modify the derived stat. I'm not sure if this had any visible result, i always thought improved invis with timing mode 1 works :)
    BhryaenGalactygonlolien
  • Ascension64Ascension64 Member Posts: 560
    By code, this issue was an inconsistency in the behaviour of Invisibility (param2=0) and Improved Invisibility (param2=1). One example of where this should fall down is when the engine looks at the derived stats to check the state.
    You should be able to test this by using a StateCheck(Myself, STATE_IMPROVEDINVISIBILITY) trigger in a test script. In vanilla, drinking Imoen's modified concoction of Improved Invisibility (timing = permanent until death[1]) should not evaluate the StateCheck() trigger to true. In the fixed BG:EE, this should happen. The StateCheck() trigger checks the derived stats of the target creature only.
    AndreaColombo
  • BhryaenBhryaen Member Posts: 2,874
    @Ascension64
    I've tried that function as written- StateCheck(Myself, STATE_IMPROVEDINVISIBILITY)- but I just get the usual "call expression not a function" with empty "Active Stack" lines. I also tried it by preceding it with "CLUAConsole:" and by surrounding the "STATE_IMPROVEDINVISIBILITY" in quotation marks... Same result. That would be helpful in other situations as well. How is it used in-game?
  • Ascension64Ascension64 Member Posts: 560
    edited July 2012
    It is not a console function. Make a test player script (.bs).
Sign In or Register to comment.