sug -- builder queueing

Started by mobius, November 19, 2017, 03:40:08 AM

Previous topic - Next topic

0 Members and 3 Guests are viewing this topic.

mobius

an (easy?) thing to implement: builder/platformer cueing like Lix has. You click builder multiple times on a single lemming and that lemming will automatically build X times. Thus allowing you to do that then FF a long time without worrying about builder running out of steps; or cueing then moving away and doing something else while they build.

I didn't mention stackers because they behave differently; well you can't keep stacking with one lemming in succession.
everything by me: https://www.lemmingsforums.net/index.php?topic=5982.msg96035#msg96035

"Not knowing how near the truth is, we seek it far away."
-Hakuin Ekaku

"I have seen a heap of trouble in my life, and most of it has never come to pass" - Mark Twain


Nepster

Unfortunately it's not really that easy to implement, basically because this means changing the code at a lot of different places:
- I have to add a new variable for lemmings, that store how many builders are queued
- I have to save this additional variable when saving the game state, so that they will still occur after backwards framesteps
- I have to change the replay code, because now it always saves a skill assignment when the lemming changes his work, not when the player clicked on it. This would mean that when loading a replay and modifying it, no skill queuing will ever happen.

So overall: A good suggestions, but not as simple to implement as one might think. I will certainly add this at some point, but don't expect it any time soon.

namida

At least for now, could it not work similar to how skill assignments in general get queued? Perhaps even as simple as "don't clear a queued builder assignment if the lemming is currently building".
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)

Colorful Arty

If people like this feature, I'm cool with it, but personally, I don't like builder queuing because I often find it very hard to assign builders to other lemmings when they are near any builder, as the game pretty much ALWAYS assigns the builder to one already building. That's been my experience with Lix anyways.
My Youtube channel where I let's play games with family-friendly commentary:
https://www.youtube.com/channel/UCiRPZ5j87ft_clSRLFCESQA

My Twitch channel: https://www.twitch.tv/colorfularty

My levelpack: SubLems
For New formats NeoLemmix: https://www.lemmingsforums.net/index.php?topic=4942.0
For Old formats NeoLemmix: http://www.lemmingsforums.net/index.php?topic=2787.0
For SuperLemmini: http://www.lemmingsforums.net/index.php?topic=2704.0

My levelpack: ArtLems
For New formats NeoLemmix: https://www.lemmingsforums.net/index.php?topic=4583.0

Proxima

You can use priority invert to assign builder to a different lix.

Nepster

Quote from: namida on November 20, 2017, 12:18:19 AM
At least for now, could it not work similar to how skill assignments in general get queued? Perhaps even as simple as "don't clear a queued builder assignment if the lemming is currently building".
This is kind of problematic, because this only allows queueing one builder, not multiple ones. So this would produce rather a lot of special-casing in the code without any real gain.

PS: Sorry for replying only now. I totally forgot about this topic.

namida

Quote from: Nepster on November 22, 2017, 06:36:15 PM
Quote from: namida on November 20, 2017, 12:18:19 AM
At least for now, could it not work similar to how skill assignments in general get queued? Perhaps even as simple as "don't clear a queued builder assignment if the lemming is currently building".
This is kind of problematic, because this only allows queueing one builder, not multiple ones. So this would produce rather a lot of special-casing in the code without any real gain.

PS: Sorry for replying only now. I totally forgot about this topic.

True, it doesn't fully solve the issue, but it may be a good temporary measure. I don't know exactly how queueing skills is implemented so won't comment on ease of implementation of this.

However, one other thought that comes to mind - this (overall I mean, not just specifically my suggested temporary measure) should probably apply to Platformer as well as Builder, and possibly even to combinations of the two (eg. you could have a builder and queue a second builder, two platformers then a third builder). EDIT: I see that Platformer was already mentioned; my bad.
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)

Proxima

Quote from: namida on November 22, 2017, 08:33:26 PMHowever, one other thought that comes to mind - this (overall I mean, not just specifically my suggested temporary measure) should probably apply to Platformer as well as Builder, and possibly even to combinations of the two (eg. you could have a builder and queue a second builder, two platformers then a third builder).

The trouble with allowing cross-skill queuing is that we mustn't disallow assigning builder to a platformer to make him switch immediately. If both are allowed, how do we distinguish them?

namida

Good point. On that note though, I'd say there should be a way in general to cancel the queued assignments.
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)

namida

I've made a decision that NL will not be getting this feature. As nice as it is, it's quite a bit of work to implement, especially considering the need is also there to cancel the queue; and NeoLemmix has enough quality-of-life features that I think we can live without this one.
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)