Author Topic: Ceiling, how to check terrain beyond?  (Read 4326 times)

0 Members and 1 Guest are viewing this topic.

Offline Simon

  • Administrator
  • Posts: 3860
    • View Profile
    • Lix
Ceiling, how to check terrain beyond?
« on: August 28, 2018, 07:40:36 PM »
Hi.

Lix die when they leave the map. I'd certainly like to keep this. But how should the terrain check beyond the ceiling behave?



0.9 ceiling rule: When a lix checks terrain beyond the ceiling, the game answers with the highest pixel still inside the playing area.

Problem (see gif above): Walkers see the final builder brick as an infinitely tall wall and turn at this brick.

One may consider this a logical corollary from a reasonable rule. But many consider this unintuitive. In particular, the builder herself dies because she doesn't check again for terrain after building the infinitely-tall brick.



Here's an alternative to the 0.9 ceiling rule:



Open ceiling rule: When a lix checks terrain beyond the ceiling, the game answers with air.

Problem (see gif above): This thin bar is only 8 hi-res pixels thick. The lix have to climb 12 hi-res pixels to get out of bounds, and they happily do that because they can ascend up to 12 pixels into air.

One may consider this a problem of the level and thicken the steel bar here.



Compared with the 0.9 rule (left gif), the open ceiling rule (right gif) has another downside: Before climbers die, they see a ledge on top of the climbable wall. Instead of peacefully climbing into their death as in 0.9, the open-ceiling-rule climber will now ascend/hoist into death.

One may consider this a cosmetic problem and not care.

Or one could special-case the beyond-ceiling terrain check per skill: Climbers check with the 0.9 ceiling rule, and walkers check with the open-ceiling rule.

What are your opinions?

-- Simon
« Last Edit: June 10, 2019, 06:41:36 AM by Simon »

Offline ccexplore

  • Posts: 5311
    • View Profile
Re: Ceiling, how to check terrain beyond?
« Reply #1 on: August 29, 2018, 08:23:47 AM »
In particular, the builder herself dies because she doesn't check again for terrain after building the infinitely-tall brick.

Isn't it somewhat analogous to building repeatedly against a (solid, non-boundary) ceiling until the build bridge completely connects?  The builder lix would be the only one to get stuck in the ceiling, unless Lix behaves differently to Lemmings in that regard.

The added build brick suddenly become an infinitely tall one because of the boundary is probably what feels the most unintuitive for those who feel that way.  The rule feels more natural for regular terrain because you can more easily imagine it was always a much larger piece of terrain that was always there, with most of it offscreen beyond the ceiling.

The 0.9 rule would imply for example, that a climber walking up that bridge in your example would actually start climbing (and then quickly die), which seems like it could be just as head-scratching to some, as it'd be to others with hoisting to death after a long climb under the open ceiling rule.

I don't personally see any of the examples you gave for open-ceiling rule as problems.  The climber one feels cosmetic as you said.  And unless I missed something, with the thin bar, wouldn't the lix have gone through it even when it wasn't placed against the ceiling?

While it's cosmetic to me and I don't usually like making special cases in the physics, I guess it's not that big a deal to apply a non-open-ceiling rule just selectively for climbers just to keep them continue to climb rather than hoist.

In terms of practical considerations, I think the true objection with the 0.9 rule is how a build bridge reaching the ceiling is capable of turning lemmings around, per your example.  That feels like it has high backroute potential compared to the behaviors enabled by open-ceiling rules.

Offline IchoTolot

  • Global Moderator
  • Posts: 3608
    • View Profile
Re: Ceiling, how to check terrain beyond?
« Reply #2 on: August 29, 2018, 11:36:59 AM »
I always found the previous example with the builder weird.

Either completely deadly or solid would be my advise, but as recent trends have shown deadly would be the obvious choice.

NL has the same situation with thin ceiling bars and walkers as well, but levels can easily be adjusted with a slightly thicker bar and I wouldn't consider it a big problem. The climber thing is just cosmetical as well.

Offline Forestidia86

  • Posts: 721
  • inactive
    • View Profile
Re: Ceiling, how to check terrain beyond?
« Reply #3 on: August 29, 2018, 03:03:26 PM »
I'm in favour of an open ceiling despite the cosmetic or odd cases.
I was from time to time confused by terrain that looked like the lix should walk out (e.g. inclines to the top) but would indeed turn them. I found that quite unintuitive. (There were some cases though that didn't strike me that much that they turn although they wouldn't with an open ceiling.)

Offline Forestidia86

  • Posts: 721
  • inactive
    • View Profile
Re: Ceiling, how to check terrain beyond?
« Reply #4 on: August 29, 2018, 04:10:19 PM »
Another "oddity" that makes the current ceiling behaviour obscure in my eyes:
If a climber goes up an incline to the top she climbs to her death, which looks like she would just walk out if you don't look closely. But non-climbers will turn.

I attached a gif to demonstrate.

Offline nin10doadict

  • Posts: 329
  • Guy who constantly misses the obvious
    • View Profile
Re: Ceiling, how to check terrain beyond?
« Reply #5 on: August 29, 2018, 06:16:25 PM »
I also feel that a ramp or gradual staircase to the top of the screen should be lethal to all who walk up said ramp. The fact that they are currently lethal to climbers but nobody else makes it seem extra odd.

Offline Simon

  • Administrator
  • Posts: 3860
    • View Profile
    • Lix
Re: Ceiling, how to check terrain beyond?
« Reply #6 on: August 29, 2018, 09:54:14 PM »
Thanks for the rich and excellent feedback!

Looks like the deadly airy/open ceiling beats the 0.9 ceiling by far when it comes to intuition.

I designed these 0.9 out-of-bounds rules and wrote the code, and they have always looked nice at the left and right sides. My instinct was that the 0.9 rule must then be good and intuitive for the ceiling; apparently, it's not intuitive.

These smaller physics changes aren't urgent; this ceiling change would break 4 of ~600 levels that easily surface with the replay verifier.

-- Simon

Offline Simon

  • Administrator
  • Posts: 3860
    • View Profile
    • Lix
Re: Ceiling, how to check terrain beyond?
« Reply #7 on: September 10, 2022, 02:19:54 PM »
For 0.10, I'm considering:
  • Ceiling will always be open. (In 0.9, ceiling infinitely extends the top row's physics.)
  • Bottom will always be open, to fix github #311: Digger may build on air near edge of map. (In 0.9, bottom infinitely extends the bottom row's physics.)
  • Left void and right void infinitely extend the physics of their edge column. Walkers will walk out of the map and die. (Same as in 0.9.)

-- Simon
« Last Edit: September 10, 2022, 04:18:18 PM by Simon »