I have now thought out a way to handle this case:
oskarwiksten wrote:
1) Player plays v0.6.9.
2) Player buys N quickstrike daggers for 512gc each.
3) Player upgrades to v0.6.10
4) Player sells N quickstrike daggers for 3129gc each.
5) Profit!
The basic hypothesis for this is that there is never a need for the player to have more than one of certain equippable items (such as the quickstrike dagger).
When loading a savegame from earlier than v0.6.10, all items in the player inventory and in loot bags will be scanned for items that are "refundable". A refundable item is one whose price has been raised with the automatic price calculation (*). If the game detects
more than one refundable item, all items but one
will be automatically removed. In return, the player will be
given back the amount of gold that was removed, based on the old item price. For example, if someone would have happened to buy 6 quickstrike daggers, the game would remove 5 of them but refund the player with 5*512 = 2560gc. Worn items are not considered, so the player could have 2 worn rings of +6 dmg and one in the inventory, and still keep all three of them.
(*) Does not include quest-, legendary- or extraordinary items. Also, minor- and major healing potions and meat are also excluded.
The list of items that are considered refundable are the following:
My thought is that this wouldn't even be triggered for "normal" gameplay styles, since normal gameplay rarely requires more than one of these items.
What are your thoughts on this? Is this fair enough? Are there any edge cases where a "normal" player would be affected by this?