[SUG] New skill - Ballooner

Started by WillLem, July 10, 2023, 10:27:56 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Strato Incendus

Okay, then I'd also advocate for leaving it as it is. :D

I kind of foresee player complaints if somebody makes a level where everyone has to be assigned a Ballooner out of the hatch, rather than them all being pre-assigned.

Then again, I'm not a fan of levels with splat-height hatches, where you have to spend time assigning Floaters while simultaneously trying to build a splatform with some worker lemming. Usually, these levels only require a certain number of lemmings to be assigned Floaters (in this case, Ballooners) before the splatform is finished.

In contrast, I mainly use splat-height hatches if breaking the fall factors into the main solution somehow — rather than just being thrown in there as an additional challenge.
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

WillLem

For 2.7, the Ballooner collision detection has been improved considerably.

The top 4 vertical pixels of the balloon are now the "poppable" area, leaving "bounce-and-turn" to only the extreme left and right edges. Previously, only the top 2 pixels were poppable, which led to the lem occasionally turning when popping was more reasonably expected. The checks are also fine-tuned to the exact shape of the top of the (low-res) balloon.

Here's a graphic to show the updated collision checks:



The changes have been tested against all of my existing Ballooner levels/replays; all 15 levels worked as before, none were broken.

With that said, if you have levels featuring Ballooners, it will definitely be worth double-checking to make sure they're still playable in 2.7.

Implemented in Commit c62f1a87e.

EDIT: Commit 3825b5e4d also adds a preference for popping in the event that both side and top collision returns true simultaneously - it's a rare occurrence, but it does happen. In this case, the lem shouldn't turn if the balloon has popped on the same frame.

WillLem

#47
After much tinkering and experimentation, I think I've found the sweet spot for Ballooner assignability and collision! 8-)

At the point of assignment, Ballooners now check for 9 vertical pixels - if they find 9 or less, they "ascend" along it until their feet meet the top, then the balloon pops and they begin walking - ideal for getting a lem up shorter pillars/steps/blocks.

If they find 10 or more vertical pixels, the effect is now that the Ballooner is turned and pushed away from the wall as the balloon inflates. What this means in practice is that Ballooners can now be assigned whilst lems are adjacent to vertical walls without the Balloon immediately popping due to contact with the wall:



This means that assigning Ballooners to Climbers and Sliders now results in the lem Ballooning away from the wall, which is perhaps the most reasonable expectation for this interaction. Yes, we lose the ability to use a Ballooner to cancel a Climbing or Sliding lem, but since Jumpers and Shimmiers can both be used for this particular purpose, it seems a waste to limit Ballooners to this as well.

I tried various iterations of this behaviour, with different interactions for Hoisters/Dehoisters (these were scrapped due to bugs/inconsistency), different terrain checks, etc, and this is the most consistent, predicatable and well-behaved version I could settle on. It's been tested for bugs and alongside various different terrain setups, and I'm about 99% confident that this is the one! :lemcat:

Let's give it a good try out in 2.7 and see if we like it!

(Commit 4c15b8918 implements the final version of this behaviour after several experimental commits)

Strato Incendus

Hi, just a quick question: Is it intentional that a Ballooner can float through a Ladderer's ramp from below? :lem-shocked:

It's a cool trick, and I recall discussions about this - but I just discovered it by accident, and it certainly wasn't what I would have expected.
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

WillLem

Quote from: Strato Incendus on June 25, 2024, 07:44:34 PM
Hi, just a quick question: Is it intentional that a Ballooner can float through a Ladderer's ramp from below? :lem-shocked:

That depends. If the Ballooner was entirely (i.e. including the balloon itself) below the platform on approach, then no - that's a bug and needs to be fixed. If they approached slightly from the side, then... I'd need to see, ideally.

Do you have a level + replay with this behaviour included by any chance?

Strato Incendus

I didn't save a replay yesterday, but I've been able to recreate the phenomenon on the level where I first discovered it.
(For the record, the attached level is probably not solvable yet - I was just trying out things last night.)

The Ballooner through the Ladderer's ramp is the last skill assignment in this replay. Not that passing through the Ladderer's ramp does pop the balloon, but with the lemming ending up on top of the ramp.
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

WillLem

#51
Quote from: Strato Incendus on June 26, 2024, 06:02:55 PM
Note that passing through the Ladderer's ramp does pop the balloon, but with the lemming ending up on top of the ramp.

Yes, this is intended: a Ballooner stops ballooning if they have terrain at their feet. The ability of the lem to "pass through" the ladder is also not a bug, due to a decision made regarding a similar "should the Ballooner find terrain in this situation" question here.

I've made a gif of the behaviour currently in question for ease of discussion:



This is happening because we only start checking for overhead terrain once the balloon is fully inflated. I'm currently about 50/50 on whether this should be allowed, since a player can't reasonably be expected to guess that assigning a Ballooner here will allow the lem to ascend above the platform. Then again, here's a simplified version of exactly what's happening, which could arguably be expected behaviour:



So... do we want this? Should the terrain checks organically grow with the size of the balloon (an easy enough fix to implement), or should we only care about the balloon itself once the Ballooner has actually begun to move?

Please also see this topic. I think that whatever we decide here should be consistent across all movement-based skills.

Strato Incendus

Thanks for the confirmation! ;) Indeed, I recall us having discussed this, and me advocating for leaving things as they are, earlier on this page. I guess this was just the first time I saw this behaviour in action myself, on one of my own levels.
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

WillLem

@Strato

I'd be interested to know what you think of this, this and this, whilst we're on the subject of physics updates.