[PLAYER][SUGGESTION] Pause after short backwards frameskip

Started by namida, May 26, 2016, 04:19:19 PM

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.

namida

BitBucket: https://bitbucket.org/namida42/neolemmixplayer/issues/29/pause-game-after-a-backwards-frameskip

Something I'm seeing a lot in videos - and from time to time have encountered myself when playing - is that people will use the "back one frame key"; except that without the game being paused, the reversed frame immediately repeats itself.

I'm wondering if, following a short enough backwards frameskip (or perhaps any frameskip), the game should automatically activate pause mode?
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

Flopsy

I'm sure my videos are getting referred to here among others ;P

But yeah I think that would be a great thing to implement, I can't think of many cases where being unpaused after a short back frame skip is useful.

I would say after a long frame skip, leave it unchanged.

namida

If short and long skips are treated differently - the question also comes up, where should the cutoff point be?
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

IchoTolot

I think this would be a good addition as well :)      Actually I pause automatically when I do short backward skips :P

At 1 sec I would still want it to be paused, but at ~ 5 secs or so it can be unpaused as I don't have to react immidiately then.

Simon

I agree with Icho's judgement, 1 second back should pause still. Maybe every backskip.

Lix pauses after any backwards skip, and after the 1-frame-ahead. Lix doesn't pause after the 10-second-ahead, or after state load. I feel that 1-frame-skips should always pause, I have no strong feelings otherwise. I haven't gotten feedback about the longer backskips.

-- Simon

namida

Quote from: Simon on May 26, 2016, 07:16:42 PMI feel that 1-frame-skips should always pause, I have no strong feelings otherwise. I haven't gotten feedback about the longer backskips.

When deciding on this, it needs to be taken into account that NeoLemmix allows the user to set arbitrary lengths (in either direction) when defining a hotkey for a frameskip, right down to the 1 frame resolution. However, I believe many people don't actually bother to do so; meaning the most attention should be paid to the defaults - 10sec forwards, 5sec both directions, 1sec back and 1 frame both directions; as well as jumping to an earlier-saved position (which will in practice usually, but not always, be more than 10 seconds earlier; it could even be later in some cases).
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

Dullstar

Quote from: Simon on May 26, 2016, 07:16:42 PM
I feel that 1-frame-skips should always pause, I have no strong feelings otherwise. I haven't gotten feedback about the longer backskips.

I'd just like to note that I agree with this completely.  If you're using the one-frame skips, it's usually going to be to do something on an exact frame, so usually the only time it gets used without pause is when you forget to pause.

namida

I've added an option for future updates as to whether or not a backwards frame skip will lead to pausing. (For the purpose of this, instant restart is also considered a backwards skip; but I don't know if it should be now that I think about it more...)
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

Simon

No option. Pause on framestep back, restart becomes special and doesn't pause.

What use case are you trying to cover with the option? Who would want it any different than what Icho, Dullstar, and I suggest? I accept yourself as an answer. Otherwise, you can make the option when you get a complaint about our suggested impl. :-]

-- Simon

namida

It takes 5 lines of code to implement as an option. I've also set it as enabled by default.

I'd also say that yes, myself, I'd currently prefer this off. This may be just because I'm used to having it off, and after giving the new system a chance, I might change my mind.

The obvious argument for restart still counting is that one may assign a skill to a pre-placed lemming on a very early frame; without pausing in such a case, it would be very hard to overwrite this. I have some longer-term plans for dealing with this kind of matter and lots of other replay manipulation issues in general; but these are not going to make it into the next stable release.

For this upcoming release, I'll leave it as an option (with current behaviour), and based on feedback from people using it, I'll see what changes might be made for later versions.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

mobius

Quote from: namida on September 06, 2016, 07:10:49 PM
It takes 5 lines of code to implement as an option. I've also set it as enabled by default.

I'd also say that yes, myself, I'd currently prefer this off. This may be just because I'm used to having it off, and after giving the new system a chance, I might change my mind.

The obvious argument for restart still counting is that one may assign a skill to a pre-placed lemming on a very early frame; without pausing in such a case, it would be very hard to overwrite this. I have some longer-term plans for dealing with this kind of matter and lots of other replay manipulation issues in general; but these are not going to make it into the next stable release.

For this upcoming release, I'll leave it as an option (with current behaviour), and based on feedback from people using it, I'll see what changes might be made for later versions.

I understand the reasoning on keeping pause active on restart. But right now it's only causing me minor irritation. I'd prefer the game unpausing when restarting.
In general I don't think I like levels which require actions done within the first second of gameplay. With the exception of levels where you must assign floaters from the hatch.
everything by me: https://www.lemmingsforums.net/index.php?topic=5982.msg96035#msg96035

"Not knowing how near the truth is, we seek it far away."
-Hakuin Ekaku

"I have seen a heap of trouble in my life, and most of it has never come to pass" - Mark Twain


namida

Okay, I'll set it to specifically not pause when using the instant restart key. A backwards frameskip to frame 0 via any other means will still result in pause.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)