We generally think about events in our games as straightforward cause and effect situations. You call your shot, you roll your dice, you move your mice. You swing the sword, you hit your guy, and roll for damage.
Slow down a second, because there is a brief moment where we recognize that the game state hangs in the balance. What was declared quite happened yet, and we are waiting to find out the resolution. Maybe while we’re stuck in that quantum state of uncertainty, new information becomes available, and the declaration has to be changed. Or maybe there’s room for conditional declaration of the “if he does this, then I’ll do that“.
Maybe you only thought a resolution was complete, but that new information kicks the game state from resolved back into uncertain, and you have to roll back the clock to the quantum state for further analysis. This is what we all do when we want to make sure that the canonical events complied with player intention and the rules of the game.
Hey, it happens. No big deal, right?
On the small scale side of things, let’s say you’re running a combat at breakneck speed, miscalculate a number, and catch it a few moments later. “Yo, DM, we forgot that the bless potion had one more turn on the clock. With that extra +2 I hit that guy for [rolls dice] six damage.”
Sometimes, you’ll realize it too late. The round had ended, your target should be dead, but he already damaged a friend who used a spell to – and there’s just too many steps to make it worthwhile to rewind the clock. You as a player mention it, to remind everyone that rule should have been, and still is, in effect, but you don’t demand a full retcom. Or maybe the impact of that forgotten rule is one of campaign-breaking import, so you lobby for a full reset. As with all complex situations, you plead your case, hope the rest of the table supports you, take the DM’s decision, and either flounce out or move on with the game.
This sort of decision making process happens in every game and at all levels.
You can even apply that same process to macro-level decision making.
In fact, if you’re playing the game properly – with Jeffrogaxian timekeeping and multiple independent DMs – you’ve got to repeat that process on the macro-scale. Opening up the game to its original purpose, the management of large scale marshalling and marching of forces, requires you to repeat the process. Alex orders his caveman armies to march to the Valley of A and once there set fire to the place. But Brian orders his pugmen to raid to Bville. The DM declares valley burnt, town raided, and that troublemaker Jon runs the numbers and points out those forces will bump into each other in hex 14,92. That precipitates a reset and an encounter that takes a few real-time days to resolve and both Valley and Village receive a reprieve. Maybe short term, maybe permanent.
Or maybe too many decision have been made and we need to rationalize a justification as to why those two forces crossed paths without incident. There are a host of post-hoc rationalizations that can be agreed upon, and as always, you’ve got an impartial and neutral DM standing by to ensure the process is brought to a conclusion in a reasonable amount of time.
This is the process working as intended, and it doesn’t involve paradoxes. It doesn’t limit player agency any more than saying “you should have remembered that to-hit bonus three combat rounds ago, buddy”.