Rewind as Undo: Still Preserve a Loaded Replay

Started by Simon, December 26, 2022, 05:29:07 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Simon

Hi,

Lix has a single binary option for how Lix's replay rewinding works: Keep replay after ◀▮. In the options menu, if you hover over this option, you'll see this description: "On framestepping back (◀▮), keep future replay actions until you click air. If not checked, replay actions are removed when you undo them by framestepping."

There are at least two styles of play here:
  • Rewind is browsing. You keep "Keep Replay After ◀▮" checked at all times. This is the default. You treat the replay functionality like a book, and use framestepping to browse through this book. Only when you're really sure, you cut content by clicking air or by assigning. You accept that Lix occasionally surprises you with unwanted assignments when you forget to cut the replay.
  • Rewind is undo. You've unchecked "Keep Replay After ◀▮", never re-check it, and treat rewinding as undo. Lix won't ever magically assign anything by itself when you continue after rewinding. You won't ever be surprised. At any time, what you see is exactly what's in the replay. Unless you've loaded a saved replay, you won't ever be replaying during your attempt. You like this consistency, and you accept extra work from re-assigning.
  • Undo your play, but browse replays. During your own play, you uncheck "Keep Replay After ◀▮", but you check it before watching saved replays. This offers the best of both worlds: You won't get surprived by maverick assignments after rewinding, and you can still browse existing replays backwards and forwards without dropping their content explicitly. To continue playing from a loaded replay, you click air.
Most players appear to prefer style 1. mobius prefers style 2, or possibly style 3. Forestidia prefers style 3. From a user-experience standpoint, I glean:

Support undo play, browse replay: Allowing style 2 (Rewind is always undo) as an option is really a misdesign, and it should have been style 3 all along (undo your play, browse replays). If Lix has a single binary option for these playstyles, it should be an option to toggle between styles 1 and 3.
  • The current option toggles between 1 and 2. I'm considering to change it so that it toggles between 1 and 3.
  • When you choose this (undo your play, but browse loaded replays), Lix won't cut anything from the loaded replay when you framestep back. When you play yourself, Lix will discard all rewound actions from the replay immediately.
  • You can still interrupt a loaded replay by clicking air. You can continue your own attempt at the level from there. New: From this point on, Lix will discard rewound actions from the replay. This is new and exciting because in existing Lix, when you use style 2 or style 3, even style 3 doesn't offer you this sudden switching into rewind-is-undo.
This looks to me like a much improved merge of the styles 2 and 3.

Would anybody be annoyed over losing style 2 in favor of this?

mobius: How do you feel about this proposed change? Undo your play, but browse loaded replays. When you click air during a loaded replay, Lix shall switch from rewind-is-browse to rewind-is-undo.

We can also improve style 1 (rewind is browsing), or possibly we can split it into several styles and support them all, by turning the single binary option into something multi-way. But that's meaty discussion for a separate next topic: Replay Insert Mode for Lix. :lix-grin:

-- Simon

Simon

We had Forestidia and mobius play with rewind-as-undo. I.e., rewinding (and restarting, which is the ultimate rewind) drops the rewound assignments from the replay flat-out.

Rewind-as-undo was also saxdude26's way of playing NeoLemmix: He likes saving/loading replays, and he likes rewinding mistakes, but he doesn't want replay after restarting.

Still hard to say: Did saxdude26 play like this because it's his objectively preferred way? Or is it merely the only bearable way of playing NL that he found? I.e., was it merely better than { playing with rewind-as-browse and not seeing that air clicks cut the replay }, which of course sucks?

-- Simon