tobspr-games / shapez.io

shapez is an open source base building game on Steam inspired by factorio!
https://get.shapez.io/gh
GNU General Public License v3.0
6.38k stars 1.23k forks source link

Final Shape construction #313

Closed TheTrueSCU closed 4 years ago

TheTrueSCU commented 4 years ago

The final shape is defined as RuCw--Cw:----Ru--. This implies that combining a RuCw--Cw with ----Ru-- should produce the expected result. However, it seems my stackers are producing RuCwRuCw. I have tried passing in different combinations of partial squares, and none are producing the correct results (extra Ru quadrants show up in the design). I have tried reversing the input order for my stackers which has no change in result. I understand that stackers also merge where they can (i.e. joining --Cw------ and ------Cw to make --Cw--Cw and then joining Ru------ to make the first layer), so this is obviously what is going on in this last stack. How does one actually construct the final shape if the single, corner square cannot have companions?

lipki commented 4 years ago

Never leave the little square alone. to prevent it from regaining its size.

Cw------:--Cu---- + ----CwRu

TheTrueSCU commented 4 years ago

So the first layer being --Cw------ + ------Cw to make --Cw--Cw and then + Ru------ to make RuCw--Cw makes sense to me as all these pieces merge together. However, if I try to join anything other than ----Ru--, I get RuCw--Cw:--??Ru--. Wouldn't throwing a Cu in with the Ru just add a little Cu to the mix?

The problem I'm having is that the expected result and my understanding of how the merging works prevents me from getting to the correct answer via a set of known steps. The shape generator tool doesn't have a text box any more for me to enter shape descriptions to play around with (may just be me). The issue is that it doesn't serve as a merge tool as it shows the expected result and not the result of any given merge.

Can someone provide a set of steps that actually produces this shape? e.g. Cw------ + --Cw---- = CwCw----

All the other mixed shapes have made perfect sense. Take a yellow star and stack on top of white circle and stack the result on top of a red star. I guess the combination of merger/stacker produces confusing output when you want to stack instead of merge.

lipki commented 4 years ago

I think the difficulty of this step is voluntary. As it is the last level, it allows to extend the lifespan, while waiting for the tobspr to finish the continuation.

So, yes it's against intuitive. In addition, the operation of the stacker is not very logical. And there is a bug in some people, which makes the resolution impossible.

In short the method: RuCw---- Ru----Cw Ru--Ru--

Ru----Cw + Ru--Ru-- = Ru----Cw:Ru--Ru--

cut = ------Cw:----Ru--

------Cw:----Ru-- + RuCw---- = RuCw--Cw:----Ru-- the order of entries in the stacker is important.

If you get RuCwRuCw: ---- Ru-- You have a bug.

For this kind of question, it is better to use discord.

TheTrueSCU commented 4 years ago

I have a new appreciation for the challenge of this shape if you have to stack and cut to make it work. I am certainly a fan of the simplicity of the order of operations for the prior shapes, so perhaps this was the first one which didn't follow the rules and patterns I had established. The stacking and merge logic isn't too bad although I would argue that a cut Ru----Cw:Ru--Ru-- where you keep ------Cw:----Ru-- to stack/merge into RuCw---- should still yield RuCwRuCw as there is nothing to prevent the small square merging into the same level as the other quadrants due to no conflict.

lipki commented 4 years ago

In the stacker. The size of the shape of the first entry is kept unchanged. Only the shape of the second entry are reduced, only if the space it occupies is used by the first shape.

TheTrueSCU commented 4 years ago

So Ru------ + --Ru---- becomes RuRu---- whereas RuCw---- + --Cw--Ru becomes RuCw----:--Cw--Ru due to the two Cw's in the second quadrant. Therefore, it is best to think of any shape as welded metal components and not as stacked building blocks. However, this metaphore still fails when you try to apply it to ------Cw:----Ru-- + RuCw---- as there is nothing preventing the Ru in the third quadrant from collapsing into the same layer as there is in Ru----Cw + Ru--Ru-- = Ru----Cw:Ru--Ru--.

I like the design of the shape, and I have created a rather magnificent factory to produce it, but it still feels like the logic is inconsistent and/or not complete.

I do enjoy this game, and I'm very tempted to clone the repo just to play around with a couple different things.

tobspr commented 4 years ago

https://trello.com/c/IcL69eaa/272-level-18-stacker-bug