NeoLemmix > NeoLemmix Main

[Suggestion][Skill] Some proposals for Shimmier mechanics/checks

(1/7) > >>

IchoTolot:
While meeting up with Simon yesterday, we had a short discussion about the shimmier and I've came up with some easy to understand mechanics/rules for it, that I find are share worthy and maybe lead to an interesting discussion.

The starting/ceiling catching part, as it was discussed earlier, was pretty clear: A jump that goes straight up for a few pixels and catches up to a ceiling if it hits one. Otherwise it could also be used as a delaying skill. The only thing left here is the jump height. Maybe 1 or 2 times stacker/basher etc height or something in that region would be reasonable.

The main discussion I want to start here are the ceiling checks! 

My simple and intuitive rule I popose for the top check:  The Shimmier can go forward if the ceiling height changes <= 1 pixels going forward.

This would lead to the Shimmier being able to go up/down to 45 degree slopes. This feels a bit steep, but still reasonable. Also it's very easy to understand even for new players: If they see a 2 pixel high step on the ceiling -- this means a stop.
Allowing only a not so steep slope would need something like a counter that counts the up/down height changes: Only X steps up/down allowed in the last X moves. This is not as intuitive and can also lead to weird cloner interactions where a cloner could be able to cheat itself further forward if the counter goes on incorrectly.

The most reasonable proposal for a milder slope would maybe be miner tunnel  ---> only 1 pixel ceiling height difference allowed every 2 pixels.

As I said I would prefer the steeper variation as it may seem a bit more extreme, but easier to understand.
It also allows the Shimmier to do more things and therefore being easier to implement into a solution, leading to more usage.

There would still be the question of the bottom check: Through how narrow tunnels can the shimmier go on?

1 pixel, as it is the case with walkers, floaters and climbers (even though it would be somewhat consistent) wouldn't be a great choice here I feel. It would seem weird seing the Shimmier go throw a 1 pixel high tunnel.
What what height to choose otherwise?
Maybe 5 pixels high as a minimum as a bashers that want to go on? I don't know, but this seems like a somewhat reasonable line to draw. We need more ideas and opinions here.

So let's here more about this topic: Do you agree with me? If not why not and do you have a better proposal? Let's hear it! :)

Nepster:

--- Quote from: IchoTolot on September 28, 2017, 12:19:22 PM ---The starting/ceiling catching part, as it was discussed earlier, was pretty clear: A jump that goes straight up for a few pixels and catches up to a ceiling if it hits one. Otherwise it could also be used as a delaying skill. The only thing left here is the jump height. Maybe 1 or 2 times stacker/basher etc height or something in that region would be reasonable.

--- End quote ---
I definitely want to catch a ceiling that is 16 pixels above the ground and have a few pixels spare to make it obvious that whit will work. So the total height to cover will most likely be around 18-20 pixels.
With a lemming height of 9 pixels, this means jumping 9-11 pixels above the ground. Perhaps slighly less if we count the arms reaching upwards.


--- Quote from: IchoTolot on September 28, 2017, 12:19:22 PM ---My simple and intuitive rule I popose for the top check:  The Shimmier can go forward if the ceiling height changes <= 1 pixels going forward.

--- End quote ---
This might work, though I worry slightly about the graphics, when they have to work both for 45° upwards and 45° downwards slope.


--- Quote from: IchoTolot on September 28, 2017, 12:19:22 PM ---Allowing only a not so steep slope would need something like a counter that counts the up/down height changes: Only X steps up/down allowed in the last X moves. This is not as intuitive and can also lead to weird cloner interactions where a cloner could be able to cheat itself further forward if the counter goes on incorrectly.

--- End quote ---
Cloners will not be a problem, if I don't make a mess with the implementation.


--- Quote from: IchoTolot on September 28, 2017, 12:19:22 PM ---The most reasonable proposal for a milder slope would maybe be miner tunnel  ---> only 1 pixel ceiling height difference allowed every 2 pixels.

--- End quote ---
We will have to relax this a little bit to allow shimmying along the top of miner slopes.


--- Quote from: IchoTolot on September 28, 2017, 12:19:22 PM ---There would still be the question of the bottom check: Through how narrow tunnels can the shimmier go on?

1 pixel, as it is the case with walkers, floaters and climbers (even though it would be somewhat consistent) wouldn't be a great choice here I feel. It would seem weird seing the Shimmier go throw a 1 pixel high tunnel.
What what height to choose otherwise?
Maybe 5 pixels high as a minimum as a bashers that want to go on? I don't know, but this seems like a somewhat reasonable line to draw. We need more ideas and opinions here.

--- End quote ---
I want the shimmier to stop if his feet touch ground. As Raymanni's test sprite is 7 pixels high and looks pretty neat, I don't think 5 pixels space should be enough. My current idea is:
- If >7 pixels air: Continue shimmying.
- If 5-7 pixels air: Transition to walker on the terrain.
- If 4-1 pixels air: Transition to a hoister (i.e. the final animation of a climber). I don't know whether this will look good, but jumping 6 pixels higher with the whole body within one frame will certainly not look good.
And of course transition to faller if one hits terrain.

Simon:

--- Quote ---- If >7 pixels air: Continue shimmying.
- If 5-7 pixels air: Transition to walker on the terrain.
- If 4-1 pixels air: Transition to a hoister (i.e. the final animation of a climber). I don't know whether this will look good, but jumping 6 pixels higher with the whole
--- End quote ---

How would you tiebreak when you reach this comb-like terrain?

###################
..|./..............
..O/.......########
..|..==>...........
..|........########
./.\...............
...........########

-- Simon

Nepster:
I would search for the lowest pixel (within the 7 pixels of the lemming sprite) that satisfies the following condition: The pixel itself is solid, but the pixel above is air.

Another edge case is the following:

............#####
############.....
..|./.......#####
..O/.............
..|..==>.........
..|..............
./.\.............
.................

In that situation I propose to continue shimmying along the lower part of the ceiling.

Nice ASCI-Art, btw. :)

Simon:
I agree with the comb proposal. That leaves you with 4 cases: Continue shimmying, hit solid wall, walk onto ledge, hoist onto ledge. This is a lot of possible outcomes, but when we know that he scans from the bottom upwards, it should be reasonably easy to guess the behavior.

I also agree with preferring the lower path when checkerboarding. This doesn't seem consistent with the walker's checkerboarding, who sticks inside his surface and ignores bumps when there are gaps. But I consider the walker's checkerboarding problematic in the first place, it may well be good to decide this freely for the shimmier, ignoring the walker.

-- Simon

Navigation

[0] Message Index

[#] Next page

Go to full version