When I steal from someone, I expect them to react in some way. At least, NPC should notice that his pockets became lighter. But nothings happen, even if i roll 1 (Critical fail in DnD).
This feels like an exploit, because even if something needs a 20 roll, it's just a matter of time before I get it. And because the NPC doesn't do anything at all when the roll fails, I have endless attempts.
Also, because their inventory are refilled after a long rest, I can get an infinite amount of gold.
My suggestion here:
1. Pickpocket roll should have 3 stages -
Success,
Fail and
Critical Fail- Success - get the item that you try to steal
- Fail - fail to get this item, but NPC doesnt notice your hand in his pocket
- Critical fail - NPC call the police and tries beat your ass (The behavior should vary depending on the specific character. The tiefling blacksmith must attack you, the Halfling must run to the guards, and so on)
2. NPC should start looking for the thief some time after the theft. Perhaps ask the guards to find him, or ask the nearest characters about items (May be interesting mechanics if you steal something and give it to another character)
3. Sellers should notice if you are trying to sell them their own items that you have stolen from them
4. The relation of NPC to character must change if he was caught pickpocketing