Author Topic: [FIXED] Walkers allow passing wrong One-Way-Fields/Blockers [BUG] [PLAYER]  (Read 3068 times)

0 Members and 1 Guest are viewing this topic.

Offline Nepster

  • Posts: 1829
    • View Profile
The following glitch happens both in V1.43 and the experimental version:
Assume a one-way-field faces left and let a lemming walk into it facing right. On the first frame the lemming turned around and faces left, assign a walker. In the next frame, the lemming will have moved one pixel to the right, though facing still left! So we can assign another walker to move him another pixel to the right, and so on...
The same happens when a lemming meets a blocker (though one has to be careful not to assign the walker to the blocker).

I am not yet sure about the best was to fix this. Here are a few possibilities:
1) Disallow assignment of walkers in one-way-fields or blocker fields.
2) If a walker is assigned inside a one-way-field or blocker field, the lemming just doesn't move at all for this frame (but will still end up facing into the direction of the field, nevermind that a walker was assigned).
3) Let one-way-fields and blocker fields push lemmings one pixel outwards. This can be abused to speed up the walker speed and will likely break lots of replays, because all lemmings hitting blockers will be affected.
« Last Edit: June 15, 2016, 05:34:54 PM by Nepster »

Offline IchoTolot

  • Global Moderator
  • Posts: 3614
    • View Profile
Re: Walkers allow passing wrong One-Way-Fields/Blockers [BUG] [PLAYER]
« Reply #1 on: April 04, 2016, 04:43:03 PM »
Definitely Option 2).

It is a little extra rule, but it stops the little glitch and is replay friendly. :)   Also the player most likely will see nothing of this and won't be affected.


1) is a restriction which can be felt by the player in some circumstances, so it has too big of an impact to the gameplay for just a little thing.

I don't have to tell why I would never choose 3) here ;P

Offline namida

  • Administrator
  • Posts: 12403
    • View Profile
    • NeoLemmix Website
Re: Walkers allow passing wrong One-Way-Fields/Blockers [BUG] [PLAYER]
« Reply #2 on: April 04, 2016, 05:00:36 PM »
I would assume that the first rule applies only to assigning the walker skill to a lemming who is already a walker (so for example, you could still use a walker inside a one-way field to, eg. cancel a builder). If this is the case, this is the one I would be in favor of. (or alternatively, making it do nothing in this case)

However, with that being said, I'm not entirely sure (based simply on quick thinking and the description here, rather than any actual testing / examining of code) that #1 would actually fix the problem completely. Although it would prevent passing through altogether, it would not prevent going somewhat inside it, because the first such walker would be assigned one pixel outside of the field (the next one would then be inside it, and prevented). This could still essentially be used as a delay tactic, or to squeeze one pixel extra distance for the starting point of the next skill you use. Of course, this could be sorted out with a special rule that checks at the new position too.
« Last Edit: April 04, 2016, 11:31:54 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 Nepster

  • Posts: 1829
    • View Profile
Re: Walkers allow passing wrong One-Way-Fields/Blockers [BUG] [PLAYER]
« Reply #3 on: April 04, 2016, 05:07:23 PM »
In all NeoLemmix versions walkers (and all other skills) already go one pixel into one-way-fields and turn around once they are inside. Only for going deeper inside the one-way-field one needs the walkers. So the possible starting positions for skills would not change at all.

Offline IchoTolot

  • Global Moderator
  • Posts: 3614
    • View Profile
Re: Walkers allow passing wrong One-Way-Fields/Blockers [BUG] [PLAYER]
« Reply #4 on: April 11, 2016, 02:18:58 PM »
As this is still undecided due to Nepsters post in the Experimental topic, I still want to vote for Option 2.

This won't restrict the player as with Option 1 (which would be my 2nd choice here)
+ It won't mess up a huge amount of stuff as Option 3 (which I consider a 100% no-go  :devil:)

Offline Proxima

  • Posts: 4571
    • View Profile
Re: Walkers allow passing wrong One-Way-Fields/Blockers [BUG] [PLAYER]
« Reply #5 on: April 11, 2016, 03:54:20 PM »
I agree, for the same reasons.

Offline namida

  • Administrator
  • Posts: 12403
    • View Profile
    • NeoLemmix Website
Re: Walkers allow passing wrong One-Way-Fields/Blockers [BUG] [PLAYER]
« Reply #6 on: April 11, 2016, 10:27:09 PM »
Alright then, go ahead with option #2. :)
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)