[DISC] Rewind button?

Started by WillLem, August 17, 2026, 09:44:18 PM

Previous topic - Next topic

jkapp76, Flopsy and 3 Guests are viewing this topic.

WillLem

Should RetroLemmini have a Rewind button? I'm currently about 50:50 on this.

On the one hand, RetroLemmini has a replay system which can be used to backtrack when the player makes a mistake anyway; from one point of view, it seems unnecessary for the player to have to wait for the replay to fast-forward to the part of the level they're trying to get to.

On the other hand, RetroLemmini currently represents the best way to experience the original games on a modern PC (in my opinion), and the replay feature is there as a pleasant bonus rather than an integral part of the way the game is played, like it is in NeoLemmix. I'd be wary of beginning to introduce the ability to fine-tweak replays, and essentially ending up with yet another 'Lemmings replay editor'.

If we do include any sort of 'Rewind' feature, it certainly shouldn't be a frame-by-frame backstepping sort of feature. The possibilities I imagine are these:

1) 'Fast-rewind' (similar to the current fast-forward but moving in reverse)

2) A checkpoint system, which allows the player to jump back to the most recent checkpoint

3) Jump back to the last skill assignment

All of the above provide a way to quickly undo mistakes without introducing the kind of granular replay editing that NeoLemmix and Lix offer (which, again, I'd much rather avoid).

I'm very hesistant to do even this to be honest, because I like the fact that RetroLemmini has higher gameplay stakes. However, it's difficult to ignore the fact that the replay system already exists and already means that players can just fast-forward to the part of the level that they need to redo. Why not, then, allow them to get there a bit more quickly.

One other possibility here is to implement a super-fast-forward, which allows the player to advance very quickly through the replay; as fast as the rendering will allow, I imagine.

Please share your thoughts.

I need feedback on this. If I don't hear back from anybody, I'll assume that people are happy with RetroLemmini as it is and I won't take any action.

ericderkovits

I vote yes on a rewind button. The thing I dislike about SL/RL is having to start the level over from the beginning when making mistaks especially on large levels or levels where precise skill assignement have to be done. This would be nice to have so I can get the precise skill assigments done quicker without restarting the level from the beginning.

Flopsy

I don't think a Rewind feature is completely necessary, I don't want to ruin the classic feel of this engine either and I think it should be preserved.

I think having to restart when making mistakes about 4-5 mins deep into a level is a little bit annoying because the fast forward is currently not fast enough to get there quickly and it occasionally results in me having to restart the level again because I don't even notice the fast forward reaching the point where I need to re-attempt. This has only become apparent today when making solve replays for my tougher SEB Lems converted levels for RetroLemmini.

1. Faster Fast Forward - this is the feature I'd support most, it kind of addresses the slowness of the current fastest fast forward speed.

2. Checkpoints - this is kind of moot if you are saving your replays at regular points anyway in case you accidentally click to cancel the replay too early or right at the start of the replay. This is probably a separate thing and it's never really been an issue for me personally.

3. Rewind to last assignment - this is the 2nd best option for me, there was a level where precision was ultra high and I think diggers are harder to place precisely on RL than on NL. Being able to return to the last assignment is a useful feature personally.

Again, I'll re-iterate. I am a native NL/Lix player but I don't wish the NL/Lix editing/frame stepping features to be brought into this. Rather something to fast forward through replays faster.

jkapp76

I vote YES for a rewind button!
...Jeremy Kapp

Mindless

I don't play RetroLemmini, but here's my opinion:

Once you've added action replay, you've already removed most of the punishment for making a mistake.  All that's left is for the player to replay and fast forward, which does not require any skill.  It's just tedious, and that doesn't make for a good game.

WillLem

Many thanks for the responses!

Maybe we could implement this in stages.

We could start off with a checkpoint system. The game state could auto-save at some arbitrary interval (15 seconds?). 'Rewinding' would then simply jump back to the most recent checkpoint.

If we can get this working, there may be the possibility of then utilising the checkpoints as places to jump forward from to reach a particular frame, similar to NeoLemmix's savestate-based framestepping system.

To be clear though: such a measure would be used as the basis of a fast-rewind control rather than a backwards framestepping system, which I do not want to add to RetroLemmini (for the reasons given in the OP). The goal here is simply to make it quicker for the player to move back to some point in the level before a mistake was made, not to grant fine-tuning control over the replay.

Also, this is a long-term goal. There are a few other things that need to be sorted out in RetroLemmini before we can get to this.

It's good to have the feedback, though. Thanks again :lemcat:

hrb264

Perhaps it could be a box that you tick that adds it or not, i dont think id use it and dont really like the idea but i'd probably be ok if it was added as a mode you could turn on and off

Simon

#7
Lix savestating/rewinding internals from today.
Golems savestating/rewinding by Mindless from 2024.

These backbones/algorithms are interesting regardless of how much power you'll eventually expose to the user.



RetroLemmini supports assignments during pause that keep it paused. You can also advance by 1 physics update and keep it paused, even without assigning a skill. This is already full control that removes all execution difficulty. Given full control, if you withhold precise rewinding even though you could offer it, you'll introduce artificial annoyance. That won't feel well.

The game design sets the entire stage. Execution difficulty yes or no during forward-only play? Timed bombers suggest yes, the existing control features say no.

The appropriate rewinding power follows from that and shouldn't be a standalone design decision.

-- Simon

WillLem

#8
Quote from: Simon on August 22, 2026, 11:37:03 AMThe game design sets the entire stage. Execution difficulty yes or no during forward-only play? Timed bombers suggest yes, the existing control features say no.

The appropriate rewinding power follows from that and shouldn't be a standalone design decision.

Agreed, but I don't want RetroLemmini to become another replay editing machine. If anything, it's a shame that forwards framestepping was added. I accept it because even Amiga Lemmings has a pseudo 'forwards-framestep' (pressing and holding pause causes the game to repeatedly step forward one frame at a fixed rate).

Adding the ability to step backwards one frame at a time allows replays to be finely edited (thus inviting all of the UI quirks we're currently wrestling with in NLCE), and - worse - allows for levels which require framestepping shenanigans as part of their solution. RetroLemmini demands that levels can be solved in real-time, with a minimum of player-assist tweakery. I'd prefer to keep it that way.

Having said that, a way to hop backwards to a point before a mistake is a good compromise that most users do seem to want. Having said that, hrb264 has expressed that she would prefer RetroLemmini not to go down this route, and as an actual user her viewpoint is of particular importance.

I'm still 50/50 on it. And, having looked at the code briefly to see if the replay system could be leveraged to make Rewind possible, it's not trivial given the current state of the Lemmini codebase. Yes, it could be offered, but at present it would take a lot of work and the question of whether or not we should do it at all hasn't been fully resolved.

Simon

Quoteto step backwards one frame at a time [...] allows for levels which require framestepping shenanigans as part of their solution.

That's allowed already from the forwards framestepping after a restart (= a rewind to the beginning of the level). It's merely annoying to see how different variants of an assignment play out.

How does the culture demand/reward unassisted solving? Might be worth investigating the design issue from this side instead? I'd imagine everybody still pauses all the time.

Quote from: WillLem on Today at 01:43:12 AMit's a shame that forwards framestepping was added. I accept it because even Amiga Lemmings has a pseudo 'forwards-framestep' (pressing and holding pause causes the game to repeatedly step forward one frame at a fixed rate).

You're aware of the game design issues, and you're aware of the costs of implementation. I agree that there is no clear route forward.

-- Simon

Flopsy

I'm still of the mindset that rewind is not needed. Just having a faster fast forward option is preferable for me.

I like that RetroLemmini preserves the classic Windows 95 Lemmings which I experienced and allows custom content, I couldn't ask for much more from this engine.

WillLem

#11
Quote from: hrb264 on August 20, 2026, 08:00:17 PMi dont think id use it and dont really like the idea but i'd probably be ok if it was added as a mode you could turn on and off

Quote from: Flopsy on Today at 10:50:27 AMI'm still of the mindset that rewind is not needed. Just having a faster fast forward option is preferable for me.

I like that RetroLemmini preserves the classic Windows 95 Lemmings

Yes, preservation of this gameplay style should be RetroLemmini's main goal, given that the other engines/clones already provide a wealth of player assist tools to make the game easier and significantly refocus the play style.

I can think of 2 possibilities (of a Rewind system that preserves traditional gameplay style):

1) Don't add Rewind, just add a 'Nitro' fast-forward speed which can be used to blast through the replay to the desired point. This is essentially what backwards framestepping actually does, but we add it as a manual control for the player to master.

2) Add Rewind, but lock it behind a 'Modern Mode' along with forwards Framestepping (which Charles made optional in SuperLemminiToo for some of the same reasons that are being discussed here; he saw the need to preserve the traditional gameplay style). A player must complete the level at least once in 'Classic Mode' before the modern controls are unlocked for that level. The player can choose to keep them locked, if desired.

(2) is much more work. I'd prefer to go ahead with (1) for now. We can trial this in the next RetroLemmini update and see if it's sufficient enough that we don't need (2).

Proxima

Quote from: WillLem on Today at 04:35:28 PM2) Add Rewind, but lock it behind a 'Modern Mode' along with forwards Framestepping [...] A player must complete the level at least once in 'Classic Mode' before the modern controls are unlocked for that level.

This seems like very much a "worst of both worlds". You put yourself to all the trouble of coding the feature and you prevent the player from using it. What's the point?

QuoteAdding the ability to step backwards one frame at a time allows replays to be finely edited (thus inviting all of the UI quirks we're currently wrestling with in NLCE), and - worse - allows for levels which require framestepping shenanigans as part of their solution.

There is, of course, no such thing as a level that requires framestepping shenanigans. Rubix has a Lix level that requires text-editing the replay file, because there is no other possible way of inputting 95 climber assignments in a single frame (unless this has changed in later Lix versions; I haven't been keeping up with developments), but if same-frame assignments are forbidden then anything that can be done with framestepping can be done without.

I'm not trying to be snarky; this is leading into a serious point. I think what you meant was on the lines of: "We don't want levels that are really annoying and fiddly to play without framestepping." And I approve of that thought. But there is no system in place that stops people creating such levels. People did create such levels, back in the Cheapo/CustLemm days before any engines had framestepping. And people came up with challenges on the original levels that required incredible precision. Besides, what counts as "too annoying and fiddly" is hugely subjective.

QuoteI can think of 2 possibilities

What happened to the checkpoint and jump-to-previous-skill possibilities mentioned in the first post? Unless those have been taken off the table for some reason, we have at least four possibilities (five if we count the "add nothing" option).

I don't play RL so I'm not going to vote for my preferences, but I'd like to suggest one more option: instead of time-based checkpoints, add a savestate key so that if a level is 8 or 9 minutes long, you don't have to go all the way back to the beginning for every mistake. Restart + fast forward achieves a similar thing but is a more annoying way of doing it; as Flopsy mentioned, it's easy to FF past the point you wanted and have to start again.

WillLem

#13
Quote from: Proxima on Today at 05:03:53 PMThis seems like very much a "worst of both worlds". You put yourself to all the trouble of coding the feature and you prevent the player from using it. What's the point?

It's basically a reward system (many games lock features behind progress - this is normal), and one which specifically says 'we want you to solve the level without using framestepping', which - let's be really clear about it - is what we're aiming for here. Other player-assists could be encompassed here as well, although I'd probably draw the line at just framestepping; even Windows '95 Lemmings has assign-whilst-paused and direction select.

Quote from: Proxima on Today at 05:03:53 PMThere is, of course, no such thing as a level that requires framestepping shenanigans...

The first Lemminas pack and (particularly) Lemmings Recurring both feature levels which are basically impossible to complete in real-time. I've tried.

After making those packs and realising that I actually disliked playing that way (and that NeoLemmix's player assist tools had made such levels possible to create and solve in the first place), I resolved to only ever create levels that can be solved without even using assign-whilst-paused. Obviously, all levels are made easier with the player assists, but when a level more or less demands that you use them, it's a bad thing (IMO).

Quote from: Proxima on Today at 05:03:53 PManything that can be done with framestepping can be done without.

A level that requires assignments on frames X, X+2, X+4, X+6, X+8, etc. would be near enough impossible to complete without using framestepping.

Quote from: Proxima on Today at 05:03:53 PMI think what you meant was on the lines of: "We don't want levels that are really annoying and fiddly to play without framestepping." ... what counts as "too annoying and fiddly" is hugely subjective.

You're right that opinions will differ on this. IMO, if a level requires an assignment on frame X, and another at frame X+n where n is less than about 10, it's too fiddly and annoying. Obviously, the closer to 1 n is, the more fiddly and annoying it is.

Quote from: Proxima on Today at 05:03:53 PM
QuoteI can think of 2 possibilities

What happened to the checkpoint and jump-to-previous-skill possibilities mentioned in the first post?

I meant 2 possibilities of a Rewind system that could possibly preserve traditional gameplay (as opposed to a Rewind system in general). I've updated my previous post to reflect this, apologies for the miscommunication. At this point, all ideas being discussed in this topic are still on the table (including, of course, "do nothing").

Quote from: Proxima on Today at 05:03:53 PMadd a savestate key

Yes, this is another possibility for sure. If anything, any Rewind system that's implemented would need to be savestate-based anyway, so this step would arrive sooner than a Rewind button anyway.

Proxima

Quote from: WillLem on Today at 05:37:36 PMIt's basically a reward system (many games lock features behind progress - this is normal)

Features, yes. Solve the hard level, get the snazzy new costume or ability card or wave gun or whatever.

But not quality-of-life features. If the purpose of adding a feature is to improve quality of life, then it should not be locked.

QuoteThe first Lemminas pack and (particularly) Lemmings Recurring both feature levels which are basically impossible to complete in real-time. I've tried.

That proves that the task is difficult. You wouldn't have attempted it if it were impossible.

QuoteI resolved to only ever create levels that can be solved without even using assign-whilst-paused. [...] If a level requires an assignment on frame X, and another at frame X+n where n is less than about 10, it's too fiddly and annoying.

Right, that's where you have decided your threshold for "too annoying" is, and you have decided that all your levels will be solvable without assign-while-paused.

Are you going to set up a vetting system so that levels by other designers must pass this threshold before they're allowed to be published?

If not, then levels that don't meet your standards will continue to be made, and "I'd rather they didn't get made" isn't a good answer to the question of whether the engine should have better quality-of-life features.

(Sorry if this comes across as aggressive. I'm mostly annoyed at myself for not having expressed my point well enough in my previous post.)