Spielerando

Quest rewards are paid twice when the player reloads after turning in

The player hands in a quest, gets the reward, and then loads an older save or closes the game at the wrong moment. Now the reward comes again, or the quest is finished and the reward is lost. Here is how to make a payout happen exactly once.

Why this works

Two facts that must agree should never be written at different moments. If the sign that a reward was taken and the reward itself change together, no save can catch them out of step, and asking whether a quest is done has only one source of truth.

When not to use it

Do not use it for quests that are meant to repeat, such as daily jobs or endless bounties. There the reward should come again, so track the day or the count instead. It also does not help when the reward comes from another player.

In the full entry

  • What to build, step by step
  • Starting values and the reason for each
  • 3 common mistakes and the fix
  • 23 lines of example code with 3 checks that pass
  • How your AI shows you that it works

Say this to your AI

Use the Spielerando entry "Quest rewards are paid twice when the player reloads after turning in" (read_entry rpg-quest-reward-claimed-once) in my game. Build it step by step, and show me how you checked that it works.

Or skip this and connect the MCP: your AI then finds all of this by itself.Connect the MCP