Author Topic: [Discussion] Lasering out of a cloned stacker pit: Intended behaviour?  (Read 2137 times)

0 Members and 1 Guest are viewing this topic.

Offline Minim

  • Posts: 1724
    • View Profile
So, I'm thinking about doing a re-run of the new skills challenge thread after the deadline passes. I need to consider one more thing I just stumbled across right now during the level "Patience".

If the lemmings are grouped in a cloned stacker pit, and you use a right-side laserer to set them free, the lemmings will enter out to the left and die. I tried selecting lemmings in the majority AND minority of that pit, and there's no difference, because if a laserer hits terrain in a severely crowded space then it also destroys terrain behind them. This is a nuisance if you're going for 100%, especially if one side's a deadly fall, because there aren't enough stacks to turn those lems into the intended direction.

I've uploaded the level I've modified (which has some new skills added) and the replay. If anyone wants me to draw diagrams then let me know. I'll put it in the OP.
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

Offline WillLem

  • Posts: 3384
  • Unity isn't sameness, it's togetherness
    • View Profile
This almost seems like a bug. NeoLemmix removed the behaviour of Bashers (and Miners?) removing terrain behind them in the first stroke, so it could be that Laserers should follow suit.

Having said that, a skill which destroys in both directions (albeit minutely) could come in very handy at certain times.

Offline namida

  • Administrator
  • Posts: 12399
    • View Profile
    • NeoLemmix Website
This is ultimately an expected (if unintuitive) effect of how the laserer works, but I can see why it might be desirable to change this. I'm going to leave this open for input.

As a refresher on how the Laserer works: Each frame, the lemming looks for terrain starting at the tip of the laser-pointer, and going in a diagonal line. There is a distance limit on how far it will go. Visually, this line is the laser itself. If the laser encounters terrain, a blast occurs at the point where terrain was found; this blast removes terrain. If the laserer fails to remove any terrain (either due to hitting steel / a wrong-direction one way arrow, or due to not finding any terrain within the distance limit) for a certain number of consecutive frames - 10 IIRC, but I might be remembering wrong on the exact number - it reverts to a walker. To be clear, except for the "stop after certain number of no-destruction frames" check, each frame is completely independent of the previous one, and does its own terrain check from scratch.
« Last Edit: June 09, 2021, 08:12:06 PM by namida »
My Lemmings 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)

Offline WillLem

  • Posts: 3384
  • Unity isn't sameness, it's togetherness
    • View Profile
This is ultimately an expected (if unintuitive) effect of how the laserer works, but I can see why it might be desirable to change this

Could the check be modified to include "any terrain to be removed must be in front of the lemming's positional dot"?

Offline namida

  • Administrator
  • Posts: 12399
    • View Profile
    • NeoLemmix Website
That is most likely how I'd fix it if we did decide to make any changes.

At this point I am leaning towards "don't allow it", but I'm not completely set on that yet.

Another question that arises - if we prevent the laserer removing terrain behind him, should the same be done for terrain under him? (if it's still possible to hit this - not sure if it actually is; it was at one point during development if you used the laser right up against a wall)
My Lemmings 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)

Offline Dullstar

  • Posts: 2092
    • View Profile
    • Leafwing Studios Website (EXTREMELY OUTDATED)
I think the behavior is most intuitive and clear if the laserer can only remove terrain in the direction it appears to be going, i.e. up and to the direction the lemming is facing. I'm in favor of additional rules internally if they make the behavior more intuitive - the exact details of how the game decides exactly which terrain stays and which terrain goes aren't something a player who isn't trying to TAS levels should have to worry about.

Offline IchoTolot

  • Global Moderator
  • Posts: 3612
    • View Profile
After thinking about it, I would agree with Dullstar here.

All the other destruction skills do not destroy terrain behind the lemming and it would be fitting if the laserer would also just destroy terrain in front or upwards.

Quote
Another question that arises - if we prevent the laserer removing terrain behind him, should the same be done for terrain under him? (if it's still possible to hit this - not sure if it actually is; it was at one point during development if you used the laser right up against a wall)

I would also agree here. It is not really fitting and expected that a skill that aims at destroying terrain in front and above can destroy the floor.

Offline namida

  • Administrator
  • Posts: 12399
    • View Profile
    • NeoLemmix Website
Yeah, the more I think about this, the more I'm feeling that this is the right answer. I'm going to change it so that the Laserer can only destroy pixels above and in front of him. This will be determined by the foot position, and will include the position itself on the X axis but exclude it on the Y axis (due to it being 1px inside the terrain inb4Simonrant).
My Lemmings 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)

Offline namida

  • Administrator
  • Posts: 12399
    • View Profile
    • NeoLemmix Website
Change implemented in commit 2efc360. The skill shadow has also been adjusted to account for this change, as it was easy enough to do so.
My Lemmings 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)