HarbourMasters / Shipwright

3.18k stars 482 forks source link

Rupee acquired on Purchase Behavior Change #736

Closed DouglasOwen closed 1 year ago

DouglasOwen commented 2 years ago

During a rando today I still had the small wallet, which was full, and purchased a mystery item from a deku scrub for 40 rupees. The item was a Gold Rupee, worth 100. Since my wallet was already full, and due to the vanilla behavior, the exchange resulted in me just losing 40 rupees. I can think of two ways this could be handled better:

  1. Transactions occur in a "net" fashion, where if you select to purchase something, mystery or not, if the item purchased is a rupee of x value, and your wallet has a value of w, and the rupee purchased is of value y, the exchange results in your new wallet being calculated as w + (x-y). For example, you have child wallet 80 rupees and purchase a red rupee (20) for 10 rupees. Currently, you would end up with 89 rupees, as the red rupee maxes your wallet at 99, then you lose 10 rupees for the purchase. Under a new calculation, you would have 99 rupees in child wallet, since you gain 10 rupees due it being calculated as a net gain of 10 rupees.

  2. Similarly to above, but perhaps less complicated, would be that if you select to purchase an item, instead of doing the item collection before the money is taken, somehow moving the payment to before the animation of link showing off the item. For example if you go into a shop and buy a stick when you've never had any, link shows the item off before the money is taken. If the trigger for money being taken gets moved forward to before that animation, perhaps it would resolve any behavior involving rupees being purchased, as money would be taken before any money can be gained.

Hope this helps.

briaguya-ai commented 1 year ago

@aMannus @garrettjoecox @leggettc18 do we want this?

garrettjoecox commented 1 year ago

@aMannus @garrettjoecox @leggettc18 do we want this?

My gut tells me no, it is an annoyance for sure but I'm not sure how I feel about changing the order of operations everywhere a rupee transaction is made for a check, while also supporting this change into the future

briaguya-ai commented 1 year ago

i agree with @garrettjoecox