Shimmier: NeoLemmix experimental version available

Started by Nepster, December 29, 2018, 11:58:54 AM

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.

Nepster

The shimmier experimental release is now out for about 2 months. So far no big issues have been reported (or barely anyone tried it out :-\), which is a good sign (or not?). So I would like to release an official version around end of march. This should give everyone enough time to look over the shimmier behavior again and tell me what they don't like.

namida

I haven't had a look at this yet, but I'll give it a try over the next few days. Most likely, I'm going to be more focused on "what puzzle uses can I find for this" than specifically trying to find bugs, though of course I'll report any I do find.

Would you prefer reports of shimmier bugs be posted in this topic, or in the Bugs / Suggestions board as usual?
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)

Nepster

Quote from: namida on March 03, 2019, 08:23:02 PM
Would you prefer reports of shimmier bugs be posted in this topic, or in the Bugs / Suggestions board as usual?
Either way is fine for physics bugs, because I will have to fix them before releasing the stable version anyway. For low-priority bugs that may not even have anything to do with shimmiers, or suggestions for UI-improvements, I would prefer to have a separate thread, which can be closed independantly from this shimmier thread.

namida

#18
Found a case that I'm unsure about. Maybe it's fine, but I would like to draw attention to it either way, so that whether it should be allowed or not can be considered.

Let's suppose we have a tunnel that's vertically *just* too short for a shimmier (or maybe even shorter than that), followed by a drop (but the ceiling continues). If you assign a shimmier to a lemming on the last pixel before he drops off the edge, he can shimmy from that point.

Also, I'm really not sure about the Shimmier's placement in the skill order. I know in general there's an intention to overhaul the order altogether, but as far as the current system goes - I feel it should come either between Disarmer and Bomber, or between Blocker and Platformer, with me leaning a bit more strongly towards the latter. Reasoning: It's a short-term ability that's used instantly and is gone once the lemming stops performing the action, but doesn't modify the terrain in any way, similar to the blocker. Reasoning behind between Disarmer and Bomber: It gives a lemming a movement ability, like permanent skills do; but unlike them it is not permanent so shouldn't be in the middle.
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

Quote from: namida on May 15, 2019, 08:17:41 AM
we have a tunnel that's vertically *just* too short for a shimmier (or maybe even shorter than that), followed by a drop (but the ceiling continues). If you assign a shimmier to a lemming on the last pixel before he drops off the edge, he can shimmy from that point.

############
............
.....|...... where | is a walker facing right
######......
######......

My hunch would be to disallow (shimmying if the ground at current place is too high), even when (the ground at the next pixel is low). Reason 1: Personal expectation from the even terrain and everywhere else it wasn't possible to shimmy here. Reason 2: Avoid pixel-precision.

-- Simon

IchoTolot

I would agree with Simon here that shimmying should not be possible in this corner case for the exact same reasons he mentioned.

Strato Incendus

Yes, I agree, the minimum height needed to assign a Shimmier should be constant (=high enough to shimmy through basher tunnels).

Another thing I've noticed: When a Shimmier gets towards a piece of terrain that is slightly higher than the position of his feet, he performs the Hoister animation (like a Climber does when he's done), without actually being a Climber.

I actually find this pretty neat - I just wanted to ask whether it was intended or not? It seems to be the Shimmier equivalent of the "six-pixel jumps" that Walkers can perform.

I also don't see any other way to do this, because the core rules say that every 1-pixel gap should be enough for a lemming to slip through. And since transitioning from a Climber into a Shimmier is possible, but not from a Shimmier into a Climber, the Shimmier needs to gain some height automatically when shimmying towards a platform that lies lower than the ceiling he's holding on to (=i.e. there is a gap he can slip into), but higher than the position of his feet.
My packs so far:
Lemmings World Tour (New & Old Formats), my music-themed flagship pack, 320 levels - Let's Played by Colorful Arty
Lemmings Open Air, my newest release and follow-up to World Tour, 120 levels
Paralems (Old Formats), a more flavour-driven one, 150 levels
Pit Lems (Old Formats), a more puzzly one, 100 levels - Let's Played by nin10doadict
Lemmicks, a pack for (very old) NeoLemmix 1.43 full of gimmicks, 170 levels

Nepster

Quote from: namida on May 15, 2019, 08:17:41 AM
Let's suppose we have a tunnel that's vertically *just* too short for a shimmier (or maybe even shorter than that), followed by a drop (but the ceiling continues). If you assign a shimmier to a lemming on the last pixel before he drops off the edge, he can shimmy from that point.
Good find! Totally agree that this should be changed.

Quote from: namida on May 15, 2019, 08:17:41 AM
Also, I'm really not sure about the Shimmier's placement in the skill order. I know in general there's an intention to overhaul the order altogether, but as far as the current system goes - I feel it should come either between Disarmer and Bomber, or between Blocker and Platformer, with me leaning a bit more strongly towards the latter. Reasoning: It's a short-term ability that's used instantly and is gone once the lemming stops performing the action, but doesn't modify the terrain in any way, similar to the blocker. Reasoning behind between Disarmer and Bomber: It gives a lemming a movement ability, like permanent skills do; but unlike them it is not permanent so shouldn't be in the middle.
Yeah, I should probably start on the whole skill reordering business soon. I have a few free days this week, so chances are decent that I might finally find some time for it.

Quote from: Strato Incendus on May 15, 2019, 01:32:46 PM
Another thing I've noticed: When a Shimmier gets towards a piece of terrain that is slightly higher than the position of his feet, he performs the Hoister animation (like a Climber does when he's done), without actually being a Climber.

I actually find this pretty neat - I just wanted to ask whether it was intended or not? It seems to be the Shimmier equivalent of the "six-pixel jumps" that Walkers can perform.

I also don't see any other way to do this, because the core rules say that every 1-pixel gap should be enough for a lemming to slip through. And since transitioning from a Climber into a Shimmier is possible, but not from a Shimmier into a Climber, the Shimmier needs to gain some height automatically when shimmying towards a platform that lies lower than the ceiling he's holding on to (=i.e. there is a gap he can slip into), but higher than the position of his feet.
Yes, this is totally intended. It was the only decent-looking way (I found) to transition from shimmier to a walker on a high ledge.

Strato Incendus

QuoteYes, this is totally intended. It was the only decent-looking way (I found) to transition from shimmier to a walker on a high ledge.

Good to know that this is not going to change! :thumbsup: I just wanted to be sure that I don't create any levels with such elevated platforms of terrain that might end up not working later on in case this would be changed. But I guess if it's intended this way, it's going to remain as it currently is. ;)
My packs so far:
Lemmings World Tour (New & Old Formats), my music-themed flagship pack, 320 levels - Let's Played by Colorful Arty
Lemmings Open Air, my newest release and follow-up to World Tour, 120 levels
Paralems (Old Formats), a more flavour-driven one, 150 levels
Pit Lems (Old Formats), a more puzzly one, 100 levels - Let's Played by nin10doadict
Lemmicks, a pack for (very old) NeoLemmix 1.43 full of gimmicks, 170 levels

namida

QuoteYes, this is totally intended. It was the only decent-looking way (I found) to transition from shimmier to a walker on a high ledge.

I probably wouldn't've thought of this myself, but I really like this idea! :thumbsup:
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)

Nepster

Quote from: namida on May 15, 2019, 08:17:41 AM
Let's suppose we have a tunnel that's vertically *just* too short for a shimmier (or maybe even shorter than that), followed by a drop (but the ceiling continues). If you assign a shimmier to a lemming on the last pixel before he drops off the edge, he can shimmy from that point.
Fixed now.

Once we have the remaining shimmier sprites, I would merge the shimmier code in the main master branch for the official release.

namida

#26
Commit cc169b8 adds the ability to have pre-placed shimmiers. They must be exactly 9px below a ceiling.

EDIT: Commit 437c421, on the "feature/preassigned-shimmier" branch (it's the only commit on that branch - and a very simple one at that) implements editor support for this.
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)

Strato Incendus

Oh, that's a great idea, namida! :thumbsup: Hadn't thought of that yet!

That begs the question though: Would there be any need to make the vertical option viable as well? i.e. placing a pre-placed climber on a wall in a state of already-climbing.

For the other permanent skills, this works already anyway (meaning floater, glider, and swimmer). I guess it's even possible to pre-place a disarme on a trap trigger to have it disarm rigjt at the start of a level, even though that would render the trap pretty pointless to begin with :) .
My packs so far:
Lemmings World Tour (New & Old Formats), my music-themed flagship pack, 320 levels - Let's Played by Colorful Arty
Lemmings Open Air, my newest release and follow-up to World Tour, 120 levels
Paralems (Old Formats), a more flavour-driven one, 150 levels
Pit Lems (Old Formats), a more puzzly one, 100 levels - Let's Played by nin10doadict
Lemmicks, a pack for (very old) NeoLemmix 1.43 full of gimmicks, 170 levels

namida

QuoteThat begs the question though: Would there be any need to make the vertical option viable as well? i.e. placing a pre-placed climber on a wall in a state of already-climbing.

That's actually a very good point. Although, this would also be a bit trickier to implement, as the question arises of what pixels should be checked to determine "currently climbing" vs just "has the climber skill" - I'm sure a logical answer is 100% possible, but it's trickier than the shimmier which firstly, is not ambiguous (as Shimmier is not a permanent skill), and secondly, only needs to check a single pixel - in this sense, a pre-assigned shimmier is more comparable to a pre-assigned blocker, than a pre-assigned climber.

Do you have any specific use cases in mind that can't (easily) be done without such a feature?
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)

Strato Incendus

QuoteDo you have any specific use cases in mind that can't (easily) be done without such a feature?

Well, first of all there would be the obvious timing-based applications (climber has to get to place XY before crowd does, or the crowd has to get to place XY before the climber does). I for one used to regard that as "execution madness", but I've come to find out the hard way that timing-based puzzles are actually a thing. Since constructive skills can be used to make shimmiers carry on where they normally wouldn't, pre-placed shimmiers definitely seem to call for such timing-based stuff as well (get to gap XY and close it with a builder or platformer before the shimmier gets there, because you don't have any new shimmiers to assign to the lemming).

Second, you could probably come up with scenarios in which a climber is attached to a wall that, once the climber has fallen down / climbed up, can't be climbed again from below. For example, if the wall isn't straight at the bottom, but a pre-placed climber is stuck to it in a higher position. Maybe you want to force the player to do whatever the climber is supposed to do at the start of the level, rather than having the climber come around and do its part later.

Third, if there are zombies in the pit from which the pre-placed climbers otherwise would have to start. You can't place it on the ground because it would get infected right away, but you still want a climber to be pre-placed in this area of the level - simply stick it to the wall!

That's just off the top of my head; I'm pretty sure other, more genius players can come up with even wittier examples ;) .
My packs so far:
Lemmings World Tour (New & Old Formats), my music-themed flagship pack, 320 levels - Let's Played by Colorful Arty
Lemmings Open Air, my newest release and follow-up to World Tour, 120 levels
Paralems (Old Formats), a more flavour-driven one, 150 levels
Pit Lems (Old Formats), a more puzzly one, 100 levels - Let's Played by nin10doadict
Lemmicks, a pack for (very old) NeoLemmix 1.43 full of gimmicks, 170 levels