fuzziqersoftware / newserv

Phantasy Star Online game server, proxy, and reverse-engineering tools
MIT License
159 stars 35 forks source link

[Blue Burst] Attempting to sell an item ends with `Your wallet is full` error while having less than 999999 mesetas after clearing a quest. #538

Closed nolrinale closed 2 months ago

nolrinale commented 2 months ago

Describe the bug Clearing a quest while having in your wallet close to the meseta cap for example 999980 and the quest rewards you with 500 you will return to the lobby with 999999, however if you go into another room and for example you drop 50 mesetas on the floor and attempt to sell an item to recover your 999999 mesetas the game will simply say your wallet is full when clearly is not anymore at that point.

image

To reproduce Fill in steps to reproduce the behavior, such as:

  1. $edit meseta 999980
  2. Create a game
  3. Start quest and finish it
  4. get the meseta reward making sure you still have 999980 mesetas at the moment you speak to the NPC
  5. After returning to lobby you should have 999999 mesetas now
  6. create another room
  7. go to a shop area and drop a little stack of mesetas on the floor for example 50
  8. attempt to sell any item in your inventory to recoup that dropped meseta amount and recover your 999999
  9. the game will tell you that your wallet is full already (when clearly is not like in the attached picture)

Game version(s) (choose one or more of the following): BB

Server log output MesetaQuestRewardConflictFullWallet.txt

fuzziqersoftware commented 2 months ago

This behavior is correct since it matches what PSO GC does; it's unintuitive, but it appears to be intended by Sega. The game allows you to pick up more Meseta off the ground than you should be able to and then discards the excess above 999999, but the behavior is different when in the shop. In the shop, you can't sell any item if it would put your total Meseta above 999999.