It should be as realistic as possible, hands down. As for how to implement it (and sorry if this has alreayd been said, there are a lot of replies)…
-
Differentiate between “fungible” (or stackable if you prefer) and “unique” items. A sword is unique. A tunic is unique. An apple is fungible. A loaf of bread is fungible. A dinning plate may or may not be unique/fungible, depending on it’s quality.
-
Give every kind of fungible item a “notorious threshold”. ie if apples are stolen, and you are found with apples, nothing happens, because it’s a fungible item. Unless 50 apples have been stolen and you have 50 apples (give or take), because that’s way over the unspoken threshold (which for apples we could say that having more than 10 makes you suspicious).
-
Create a flag system for characters that have had their unique (or fungible if they go over the notorious threshold) possessions stolen. Those characters keep doing their thing, and when they come across other npcs they “spread” the flag to them. In this fashion, a guard will only look for stolen items if he’s been informed of the robbery by the merchant, or by other guards to whom the merchant talked, and so on. Also, other villages won’t receive the news until much later (when some traveller gets there the news of the robbery). Obviously the first thing any npc should do when they notice the missing items is to go and talk to the guards, and they would also spread the flag to anybody else they “talked” to.
-
Receivers of stolen items who haven’t received the flag yet remember who sold them the stolen item once they receive the flag.
-
Both “rememberance” (4) and “searching culprit” (3) flags decay over time. The higher the value of the item(s), the longer it takes to go away.
-
As for how this would resolve: Once caught, the value of the “searching for culprit” flag and the “rememberance” flag would add up, minus the popularity of the character in that place. So let’s say that they have been searching for you for a long time but it was an item worth quite a bit (100 points remaining out of initial 1000), but since you’ve been caught right at the action of selling the item, the “rememberance” flag is fresh. This means that the witnesses remember your face clear as day, so another 1000 points. But you are quite popular in this town, because you singlehandledly saved it from a group of bandits while the guards were out in the woods looking for them, so it reduces the angriness of the town towards you by 500.
This would be compared against a table that goes like.
0-100 = minor fine
101-250 = regular fine
250-500 = major fine
500-750 = regular fine and physical punishment
and so on.
In this example, you have avoided capital punishment (or whatever) because people were tired of looking for you (possibly reducing at a pace of an inversal logaritmic function = very angry the first day, and rapidly cooling off, with low difference between the day 120 and the day 121), and they liked you quite a bit before, ending up with just a fine.
Of course, the values are completely arbitrary and made up (and should never, ever be presented to the player). This system could also be used with any other crime, equalling it to stealing a unique item.