I was looking for a way to procedurally handle haggling in my games (I’d like to buy some plate mail. I’ve got this shiny set here - how about 300g? 300g! That’s outrageous, I’d give you 10g for that beat up scrap…)
Courtney Campbell in On Downtime and Demesnes provides a procedure on p105-106!
The Procedure
Step 1: Create a factor by reading 1d4 and 1d10 as {1d4}.{1d10}, so 1d4=3 and a 1d10=7 would be a 3.7.
Step 2: If the merchant is buying the item, divide the true price by the factor. If the merchant is selling, multiply the true price by the factor. Using the above 3.7 factor, a merchant might buy plate armor (60g) for 16g, or try to sell it for 222g.
Step 3: The players state their desired price.
Step 4: Reaction Roll:
2: Merchant gets upset and walks.
3-5: Merchant refuses to budge.
6-8: Merchant moves toward the player’s price by 10%.
9-11: Merchant moves toward the player’s price by 25%.
12: Merchant agrees to the player’s price.
Step 5: The player accept’s the merchant’s price or moves 10% towards the merchant’s price and rerolls.
Issues
The initial price seems tough without a calculator. Quick! What’s 1300g / 2.7? What’s 700g • 1.6?
The price movements seem tough (though less so) without a calculator. The merchant wants 600g and the Player wants 2188g and the merchant moves toward the player by 25% - what’s the new price? 600 + (2188 - 600)/4 = 997, but that’s not easy mental math.
We go into detail describing the lowest/highest a merchant will offer (4.9x), but not describing what a merchant will find as outrageous. Can the player offer 5x the true price? 10x? 20x?
The expected value is wonky!
Price factors are unintuitive. Say that a merchant offers 1/3 price for an item and the player offers 3x price. They’d meet in the middle, right? No! 1/3 of 300 is 100. 3x of 300 is 900. The middle is 500g!
The Expected Value is Wonky
It’s relatively easy to run a monte-carlo here. Say we want to sell some ancient statuary worth 1000g. What happens?
Let’s say the player always offers a factor of 3x, so 3000g in this case. Say the player accept’s the merchant’s offer if it’s within 5% of the item’s true value to the player’s price, so in this case within 50g.
Here are some simulations:
factor 3.4. merchant = 294g, player = 3000g
roll 9. merchant = 970g, player = 2797g
roll 7. merchant = 1153g, player = 2633g
roll 6. merchant = 1301g, player = 2500g
roll 9. merchant = 1601g, player = 2410g
roll 12. merchant = 2410g, player = 2410g
price: 2410g
factor 1.8. merchant = 556
roll 7. merchant = 800g, player = 2780g
roll 10. merchant = 1295g, player = 2632g
roll 9. merchant = 1629g, player = 2532g
roll 7. merchant = 1719g, player = 2451g
roll 7. merchant = 1792g, player = 2385g
roll 10. merchant = 1940g, player = 2341g
roll 7. merchant = 1980g, player = 2305g
roll 6. merchant = 2012g, player = 2276g
roll 9. merchant = 2078g, player = 2256g
roll 6. merchant = 2096g, player = 2240g
roll 5. merchant = 2096g, player = 2226g
price: 2096g
factor 3.7. merchant = 270g, player = 3000g
roll 8. merchant = 543g, player = 2754g
roll 3. merchant = 543g, player = 2533g
price: 543g
On average, the merchant walks ~9% of the time, and the player is able to sell the item for 1157g, which is a ~16% hike. That’s with no charisma bonus! At a +1 bonus, the merchant never walks (because now a 2 is impossible), and the player is able to sell for ~1637g (60% hike). At a +2 bonus, they’re selling for 2163g. At +3, 2561g.
On the flip side, without a charisma bonus, a merchant selling a 1000g item is going to sell it for ~2258g. With a +1 bonus, 1750g. +2, 1206g. 785g.
So the players should be trying to haggle on everything they sell and nothing they buy (until they have +3 charisma).
The book doesn’t specify what kind of player price is reasonable, and 3x being the player’s limit seems conservative. At 5x, things are much wilder!
A (+0, +1, +2, +3) player sells a 1000g item for (1734g, 2588g, 3514g, 4221g). They buy a 1000g item for (2223g, 1692g, 1116g, 678g) respectively.
Solutions
Same Same But Different
Here’s an improvement! I still don’t like the “move 10% or 25% toward the other side” mechanic; takes a lot of re-calculating. It does model the fantasy of haggling well though.
A natural 2 on the dice means that the players get a CHA-in-6 chance to keep the merchant from walking (but they won’t budge). This keeps the chance of failure alive, but makes it so that higher charisma players will keep them more. This gives a 9% of walking with +0 CHA, 8.5% of walking at +1 CHA, 7% of walking at +2 CHA and 4% of walking at +3 CHA.
For buying things from the merchant, roll d10% for the merchant’s factor (so a 3 means that the item is 30% more expensive). This is easier math, and tamps down on the crazy inflation. It makes bartering on the buying side reasonable.
For selling things to the merchant, roll 1d3+1 for the merchant’s factor (so a 2 means the merchant wants to pay 1/3 price). This, again, is easier math and changes very little.
Start the player-side at either 1/2 price (buying from merchants) or 2x price (selling to merchants).
All of this together produces:
+0 CHA: Buying a 1000g item for 1172g. Selling a 1000g item for 864g.
+1 CHA: Buying a 1000g item for 978g. Selling a 1000g item for 1189g.
+2 CHA: Buying a 1000g item for 781g. Selling a 1000g item for 1528g.
+3 CHA: Buying a 1000g item for 636g. Selling a 1000g item for 1772g.
I like these numbers much better!
Abstract Resolution
2d6 + CHA:
5-: Merchant buys at 1/2x price and sells at 1.5x price
6-10: Merchant buys and sells at regular price.
11+: Merchant buys at 1.5x price and sells at 1/2 price.
This makes it so a +0 CHA character will have a ~28% chance of getting a bad deal, 64% chance of getting a neutral deal, and 8% chance of getting a good deal. Expected value of 0.9x.
A +1 CHA character will have a ~17% chance of getting a bad deal, ~66% chance of getting a neutral deal, and a ~17% chance of getting a good deal. Expected value of 1x.
A +2 CHA character will have a ~8% chance of getting a bad deal, ~64% chance of getting a neutral deal, and a ~28% chance of getting a good deal. Expected value of 1.1x
A +3 CHA character will have a ~3% chance of getting a bad deal, ~55% chance of getting a neutral deal, and a ~42% chance of getting a good deal. Expected value of 1.2x.
This is much quicker at the table, both in terms of mental math and number of rolls. It purposefully gives +1 CHA characters a straight gamble (there’s someone with +1 CHA, right?).