[BUG] [RC-PLAYER] Nuke (Timer Bypass) function doesn't work

Started by Minim, June 06, 2021, 03:58:00 PM

Previous topic - Next topic

0 Members and 3 Guests are viewing this topic.

Minim

Simply needs a little fix. The 'Nuke' works as normal because it's a different function and the F12 key works fine too, but the 'Timer Bypass' nuke fails to work.
Level Solving Contest creator. Anybody bored and looking for a different challenge? Try these levels!

Neolemmix: #1 #4 #5 #6
Lix: #2  #7
Both Engines: #3

namida

Confirming I can reproduce this (and that it wasn't just some oversight like trying to use it in the first 5 seconds).
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)

WillLem

Quote from: namida on June 06, 2021, 07:04:36 PM
like trying to use it in the first 5 seconds

Would this not work?

Potentially confusing! :XD: :o

Dullstar

It's a result of the compromise solution for timed/untimed bombers (well, nukes in this case), where the untimed option actually rewinds and inserts the action such that it completes on the current frame.

This is one of the reasons that it's better to commit to timed or untimed bombers; if we didn't do this, timed bombers wouldn't work on levels intending for an untimed bomber assignment within the first 5 seconds. But if we do this, then we can't have untimed bomber assignments within the first 5 seconds of a level. Here, we're using nukes instead of bombers, but the effect is the same.

Ideally, nuke would be changed to just trigger instantaneously for consistency with bombers - you'd still be able to do nuke solutions since the sequential explosion behavior of the nuke; some tweaking would be necessary because the nuke also stops lemmings from spawning, but I don't think it's anything that I expect couldn't be fixed.

WillLem

Quote from: Dullstar on June 06, 2021, 10:27:31 PM
Ideally, nuke would be changed to just trigger instantaneously for consistency with bombers

+1

IchoTolot

Quote, but I don't think it's anything that I expect couldn't be fixed.

That is the problem. I know quite a bunch of excellent levels where it 100% cannot be fixed in the case of an instant nuke.

--> During the countdown lemmings can still walk + exit.

The idea was already discussed in the past and regarded as a bad idea: https://www.lemmingsforums.net/index.php?topic=4966.0

For a new engine you would totally be right here, but I would have to side with existing content here.

Dullstar

It's too late for the suggestion since it's a physics change anyway, but for the record I don't agree with the notion that it would be unfixable - they can walk and exit while the countdown is inactive, too. Other than cutting off new lemming spawns, the nuke button changes nothing until the explosions start; just because you remove the 5 second countdown doesn't mean you'd also have to also remove the sequential detonation feature that currently exists, so for the most part only levels that rely on the hatch spawns immediately ceasing when the button is pressed would be affected, and that's something that should be fixable by adjusting save requirements. The only type of level I could imagine being unfixable would be levels that rely on it being impossible for the explosions to start within the first five seconds.

Basically, to clarify, by an instant nuke, I basically just mean that the 5 second countdown would be skipped (like, actually skipped, not the fake skip the timer bypass does), but other than that it would behave the same as it currently does - not that all the lemmings would simultaneously explode (at which point you may as well just cull the nuke completely, because it would be a glorified quit the level button). Currently, the lemmings don't all receive their 5 second timers simultaneously - they receive them one at a time (I believe one lemming gets a timer per frame, based on the spawn order?). It would hypothetically still work like that, except instead of receiving a 5 second timer they just explode. Looking through the thread the only real difference that I saw brought up was using a cloner within the 5 seconds. There was also a claim that any level requiring a skill assignment during the countdown would be broken, but I don't buy this claim for skills other than cloners: what's special about the countdown status specifically, rather than the fact that it's just time before the explosion occurs; i.e., why couldn't these assignments be made before the nuke is triggered? There was also disagreement regarding some of the examples of broken levels that was never noticed/addressed -- Icho claimed Supernova as an example of a level that would be broken by the change even if the sequential detonation was kept; Crane claimed it would still work as long as the sequential detonation was retained.

WillLem

Quote from: Dullstar on June 07, 2021, 10:53:38 PM
Icho claimed Supernova as an example of a level that would be broken by the change even if the sequential detonation was kept; Crane claimed it would still work as long as the sequential detonation was retained.

I suppose it depends on how sequential detonation works. If it has anything to do with the countdown timer, then I guess I can see how removing the timer altogether may cause issues.

If, however, the detonation has nothing to do with the timer at all (other than the obvious fact that the timer must have completed its cycle), then I agree that removing it shouldn't break any existing content as per Icho's concern.

IchoTolot

The main thing is you would have to still count in the lemmings that exited in the last 5 seconds to exactly replicate the correct detonation sequence.

Example:

You have 50 lemmings.

You assign the nuke.

Lemmings 5-30 exit during the 5 second countdown.

Lemming 1-4 explode first one after the other then a delay happens during lemming 5-30 would normally explode and only after that delay the rest of the lemmings explode giving them a window of opportunity to still do stuff.


If you say it should be fixable the fix would still need to look back 5 seconds and see which lemmings have exited in that period to replicate the explosion delay correctly.

On top of that we would have a communication problem:

Now the delay is shown to the player as they see the countdown timers getting applied to the lemmings, they see the lemmings exit and therefore how the delay is manufactured. As a result it is all visible and understandable.

Without the visual of the timer here the delay is invisible for the player and the nuke becomes even less intuitive und understandable.

WillLem

Quote from: IchoTolot on June 08, 2021, 03:14:23 PM
Without the visual of the timer here the delay is invisible for the player and the nuke becomes even less intuitive und understandable.

Just going to throw this out there: I've always thought that the nuke was completely random! And even if it isn't, I certainly don't have any idea how to gauge what will happen, where, and/or when.

So, maybe my opinion on this particular issue is slightly less valuable. I've also read the previous discussion which led to the idea of a timer bypass, so... there clearly is something else going on which I don't fully understand but which affects the nuke mechanic in the absence of a timer :shrug:

(We need a :shrug: lemoji... I might make one)

Turrican

Quote from: WillLem on June 08, 2021, 07:41:23 PM
Just going to throw this out there: I've always thought that the nuke was completely random! And even if it isn't, I certainly don't have any idea how to gauge what will happen, where, and/or when.

So, maybe my opinion on this particular issue is slightly less valuable. I've also read the previous discussion which led to the idea of a timer bypass, so... there clearly is something else going on which I don't fully understand but which affects the nuke mechanic in the absence of a timer :shrug:

(We need a :shrug: lemoji... I might make one)

The nuke is not random. It follows the rule : The lemming which entered the level first will explode first , the lemming which entered the level second will explode second etc... ( so the lemming which entered the level last , will explode last ). You can manipulate this rule , and do some very smart combos.

Here an example of a level that use this trick in a very smart way : https://www.youtube.com/watch?v=BFnLbLI8538

You will see here , how late the timer will begin on the lemmings that entered the levels late , compared to the lemmings that entered the level early , and how it helps you achieve the "release blockers" trick , that you need , in order to solve the level.

Also notice how high the save requirement is for a nuke level. These nuke levels are so well made , that you will have no idea , they are nuke levels , because of their very high save requirement.
My Youtube channel ( Turrican Lemm )  :
https://www.youtube.com/channel/UCYGFBOHdYITHlsqa203Tu8Q

namida

Okay, so I've tracked down this bug to being introduced in commit 8ed91de (the one that fixed the pause-during-load, then lod a replay bug). I've also confirmed that the nuke action in fact does get added to the replay, the issue is just that the game doesn't properly reload state afterwards (so ultimately, this is a replay/physics desync issue).

This means my gut feeling that I shouldn't include that fix in 12.11.3 was indeed correct.

It's fixed in commit cafd21c.
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)