Salk Posted January 6, 2018 Share Posted January 6, 2018 (edited) Hello!Anyone has some experience with this trigger? IESDP reports it to be not working on non EE engine but ToBEx should supposedly restore its functionality. Enable PickpocketFailed Trigger=1 My tests were negative though so I wonder if there is something I am missing? Thanks! Edited January 6, 2018 by Salk Quote Link to comment
Jarno Mikkola Posted January 6, 2018 Share Posted January 6, 2018 An alike thing that is not entirely related...Look at Rogue Rebalance v4.91's rr/lib/thvry.tph -file, and rows, 119 onwards... well, it's actually a part of a larger action_for_each from above, but that's besides the point. ACTION_IF FILE_EXISTS_IN_GAME ~%file%.bcs~ BEGIN COPY_EXISTING ~%file%.bcs~ ~override~ // =============================================================================== PATCH_IF SOURCE_SIZE > 0x01 BEGIN DECOMPILE_AND_PATCH BEGIN REPLACE_TEXTUALLY EXACT_MATCH ~StealFailed([ANYONE])~ ~False() StealFailed([ANYONE])~ // Disable the default anti-steal script block END END BUT_ONLY EXTEND_TOP ~%file%.bcs~ ~RR/RR_CORE/COMPILE/RR#STEAL.BAF~ // extend the script with the new anti-steal behaviour // =============================================================================== END END It also has this in rr/rr_core/compile/pickp.baf: IF PickPocketFailed([PC]) Allegiance(Myself,NEUTRAL) General(Myself,HUMANOID) !StateCheck(Myself,CD_STATE_NOTVALID) See(LastTrigger) !Allegiance(LastTrigger,FAMILIAR) THEN RESPONSE #100 StartDialogOverride("RR#PICKP",LastTrigger) END ... so ... Quote Link to comment
CamDawg Posted January 6, 2018 Share Posted January 6, 2018 I know it works. One thing that may be tripping you up is that it's an instant trigger like OnCreation or Die--it's only true in the immediate script cycle after it occurs. You can't even pass it along as a dialogue trigger because it will have expired. Quote Link to comment
Salk Posted January 7, 2018 Author Share Posted January 7, 2018 Yes, I read about it being an instant trigger but I did test it in dplayer2.bcs: IF InParty(Myself) PickPocketFailed([PC]) THEN RESPONSE #100 Kill(Myself) END and nothing happened. Quote Link to comment
Jarno Mikkola Posted January 7, 2018 Share Posted January 7, 2018 Yes, I read about it being an instant trigger but I did test it in dplayer2.bcs:With ? As the code has to be extended into it, it doesn't just pop up. And you are sure that's the FIRST script term in the whole of the script. Besides the dplayer2.bcs is not the override script. So maybe it never got to be excecuted. And why the reverse order ? Quote Link to comment
Avenger Posted January 7, 2018 Share Posted January 7, 2018 The trigger is only sent to the store owner creature. So, you can only use it in the shopkeeper's script. Quote Link to comment
CamDawg Posted January 7, 2018 Share Posted January 7, 2018 The trigger is only sent to the store owner creature. So, you can only use it in the shopkeeper's script. I think you're thinking of StealFailed(). Quote Link to comment
Roxanne Posted January 7, 2018 Share Posted January 7, 2018 The trigger is only sent to the store owner creature. So, you can only use it in the shopkeeper's script. Ninjaed, just saw CamDawg's post... Quote Link to comment
Salk Posted January 8, 2018 Author Share Posted January 8, 2018 Case closed. I tested this morning using another saved game and everything is working fine. Quote Link to comment
Salk Posted January 8, 2018 Author Share Posted January 8, 2018 (edited) One more thing, somewhat related... It seems the EE engine uses the SLTSTEAL.2DA file to set the difficulty for pickpocketing but what does the old engine uses? Thanks! Edited January 8, 2018 by Salk Quote Link to comment
Avenger Posted January 8, 2018 Share Posted January 8, 2018 The trigger is only sent to the store owner creature. So, you can only use it in the shopkeeper's script. I think you're thinking of StealFailed(). yep Quote Link to comment
Ardanis Posted January 8, 2018 Share Posted January 8, 2018 It seems the EE engine uses the SLTSTEAL.2DA file to set the difficulty for pickpocketing but what does the old engine uses? Target's pickpocket value, I think? Quote Link to comment
Avenger Posted January 8, 2018 Share Posted January 8, 2018 It seems the EE engine uses the SLTSTEAL.2DA file to set the difficulty for pickpocketing but what does the old engine uses? Target's pickpocket value, I think? EE also checks the target's pickpocket value. The difference is, the old engine either disabled or enabled certain slots while the EE allows setting a difficulty adjustment for the slots. Quote Link to comment
Miloch Posted January 9, 2018 Share Posted January 9, 2018 Yeah, in the old engine, items are unpickpocketable in certain slots. Quote Link to comment
Frenzgyn Posted November 28, 2023 Share Posted November 28, 2023 Sorry for the necroposting, but can anyone confirm that in PSTEE PickPocketFailed() still doesn't work as intended, passing by an Attackedby? Quote Link to comment
Recommended Posts
Join the conversation
You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.