Jump to content

PickPocketFailed()


Salk

Recommended Posts

Posted (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 by Salk
Posted

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 ...

Posted

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.

Posted

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.

Posted

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 ?

Posted

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().

Posted

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...

Posted (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 by Salk
Posted

 

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

Posted
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?

Posted

 

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.

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...