The road to ruin is shorter than you think.
-- Yasuo
Previous scramble procedure always handles basic twists clockwisely. A simple way to enrich the scramble result is that we can apply more random numbers for twists as the pure rotations do. The scramble for twists now becomes
2020 if (op < 8) {
2021 for (var j = 0; j < Math.floor(Math.random()*2) + 1; j++) {
2022 twist(app.puzzle, op);
2023 }
2024 } else if (op == 8) {
Then, let's try to take a tougher challenge. Scramble of depth 4.
Well, this is tough. The cells other than W- are a mess right now. The only good news is that W- remains pink, so it is most likely that the scramble gives us 4 twists messing up each other.
I prefer the view from O3, but now we do need different angles to look at this. The followin one is from O1,
I don't know how your feel about this puzzle but it is not as friendly as 2x2x2x2, isn't it? I found myself just pressing A
and it just keeps rotating like a ballet dancer. Anyway, from the above two angles, I find the first view from O3 is good for a first move, because we can see Z-O3 is a whole green tetrahedron, which can fit back to Y+O3 perfectly. Y+O3 is mostly blue with a yellow edge, which is not so obvious but can fit X-O3: the yellow can fit X-O3-O0 edge, and others can join the blue stickers there. X-O3 tetrahedron is a good fit for Z-O3 for the similar reason.
But! But my implementation didn't offer such kind of twist. Each of the 3 mentioned tetrahedra has a triangular adjacent to W- cell, while the program supports tetrahedra 3-cycle only when they point their sharp corner to W-. Sorry for the inconvenience, but in this case, we can do a O6 twist. It twists the opposite tetrahedron to that of O3.
Then it becomes obvious now. O1 twist(s) should be able to fix this situation.
This time we have this from O3,
and this from O1,
This one, the pink cell remains untouched but moved, so there was actually only one twist in this rotation. We can just resume the position of pink and do an O1'
twist, as the following clip,
O3 looks good because the 4 blue stickers join other blues in Y+. Y+O0 has 3 oranges and 1 yellow, which can move the 3 yellows and one green away from X-. So let's do 2 O3 twists,
and O1 view,
This time, O1 twist looks good. After one O1 twist,
From this view, now it becomes obvious that two O2 twists should be able to solve the situation.
Since the complexity is still low, we can often see many tetrahedra in good shape. In the previous trials, I just trty to merge separated stickers as much as I can. Previously broken tetrahedra may re-form themselves again along the way.
We won't always be so lucky. So far, the geometry unit I mentioned has been a tetrahedron. A tetrahedron is actually 3 edge stickers and 1 center regular tetrahedron. As the scramble gets more complexy, eventually there will be no any single complete tetrahedron for us to start with. Even if there is, the seemingly complete tetrahedron may not be reliable because it is highly unlikely stay untouched through the scramble process.
Once we get to a point where it is impossible to reverse the scramble, we can start all over again like what we did back in Part II. First we should be able to complete a cell in the correct way, and we may need algorithms for this goal only. After that, the constraint will always be there, so appropriate algorithms become a must. In the best case, we find some algorithms that affects only a few stickers, so that we can easily control the state shift of the puzzle.
The other challenge is waiting for us as well. In 2x2x2x2 there was a second type of cubie, but now we have a non-trivial center octahedron, 8 center regular tetrahedron and the edges. Is finishing a cell first and try to solve by algorithms still a viable strategy? Or should we follow the experience from skewb, that maybe we can try finishing one type of the piece and then other types? If so, what should we go first? More fundamentally, are these questions making sense? I have no answers right now.
Anyway, let's keep pushing.
熟悉 scramble 亂度為 4 時的 4D skewb 解法。