# [Help Thread]ZZ and ZB Discussion

#### porkynator

##### Member
Another Idea for ZZ-d

Hi everyone.
I don't post often in this thread, although I'm a ZZ user, but I don't think this random idea deserved a new thread.
A few weeks ago I decided to find my own approach to the so-called "missing link", that is to say permuting the corners while finishing the Left Block (or the Right Block) to put yourself in a < R, U > move group.
I found a method which is mostly intuitive: it requires only two 5-moves algorithms.
I didn't make any image to explain this, mainly because I don't know any easy way to do it, and I didn't want to learn one only for this. To simplify, I named the corners this way:
FRD: 1
RBD: 2
URF: 3
UFL: 4
UBR: 5
ULB: 6
I use the number to refer both to positions and corner, so I might say "corner 1 and 2" or "position 3".
Obviously, corners orientation doesn't matter at all, so if I say "place corner X in position Y" I mean you can place it there with any orientation.
My approach works after finishing the first block (which in my explanation will be the Right Block).
Now, to the method, which is divided in two very easy steps:

Step 1: Place corners 1 and 2
This step is supa-easy and supa-fast: you simply have to place corners 1 in either position 1 or 2, and the corner 2 in the remaining D-layer position. To make it short, place the D-layer corners in the D-layer (either placed correctly or swapped).
This can be easily looked-ahead while finishing the right block. Back when i thought of it, I also did some brute-force math:
HTM:
Average: 1.8
Worst Case: 3
QTM:
Average: 2.4
Worst Case: 4

Step 2: Actually permute corners
Now the tricky part: you have to recognize the U-layer corners permutation. It can be one of 3 cases: permuted correctly, orizontal swap or diagonal swap.
Combining this 3 cases with the 2 possibilities of the D-layer (corners permuted or swapped) you have a total of 6 cases.
I use this code:
N = corners of the U-layer permuted correctly
O = corners of the U-layer off by an orizontal swap
D = corners of the U-layer off by a diagonal swap
n = corner of the D-layer placed correctly
s = corners of the D-layer swapped.
So for example Ns means that the corners of the U-layer are ok while the 2 corners of the D-layer are swapped.

Case 1 and 2: Nn and Ds
Nothing to do, Yay!

Case 3 and 4: On and Os
The algorithm to use here is L' U R U' L
For the case Ns place the two swapped corners in positions 3 and 5, use the alg, and here you go.
For the other one, place the swapped corners of the U-layer in positions 4 and 6, use the alg, and here you go.

Case 5 and 6: Dn and Ns
The algorithm is L' U R2 U' L
The position of the U-layer is irrelvant. Yay!

I did some math also here and, not counting the AUFs, the moves this step requires are:
HTM:
Average: 25/6 (~4.167)
Worst Case: 5
QTM:
Average: 13/3 (~4.333)
Worst Case: 6

Total
HTM:
Average: 179/30 (~5.967)
Worst Case: 8
QTM:
Average: 101/15 (~6.733)
Worst Case: 10

PROs:
-Mostly intuitive
-8 moves... let's 9 with the AUF it's, in my opinion, a good price for a 2GLL

CONs:
-Recognition it's still a pain. I don't know if will be any suitable for speedsolving.
-If you're used to solve the 2 blocks together, building one first and then the other one can be unexpectedly slower.

I played with this approach for a while, but I didn't get any nice result. I will try to improve with it, maybe with OH, but I'm not very optimist. If someone else wants to try, please tell me if you find it somehow nice or a total crap.

#### Pyjam

For the images, you could use Conrad Rider's Visualcube : http://cube.crider.co.uk/visualcube.php

Case 3 and 4: On and Os
The algorithm to use here is L' U R U' L
For the case Ns place the two swapped corners in positions 3 and 5, use the alg, and here you go.
For the other one, place the swapped corners of the U-layer in positions 4 and 6, use the alg, and here you go.

Case 5 and 6: Dn and Ns
The algorithm is L' U R2 U' L
The position of the U-layer is irrelvant. Yay!

#### mDiPalma

##### Member
porkynator, i'm not sure how to tell you this

but i hope this picture will suffice: click

#### Robert-Y

##### Member
That's quite an interesting idea porkynator. I was thinking of inverting your idea so that you place 4 and 6 first, so the algs for permuting the corners become D' R U R' D and D' R U2 R' D, but this way, recognition might become even more difficult

#### Athefre

##### Member
The idea isn't really new. The biggest problem with making ZZ-d work is that so often people want to rely on making it easy to recognize by placing a couple of corners then add on to that the five moves it takes to permute the corners. Niklas is only seven moves. An opposite swap isn't much longer.

#### porkynator

##### Member
porkynator, i'm not sure how to tell you this

but i hope this picture will suffice: click
That made me laugh, I didn't expect this kind o reaction! I'm waiting for some feedback if you want to try this method...
That's quite an interesting idea porkynator. I was thinking of inverting your idea so that you place 4 and 6 first, so the algs for permuting the corners become D' R U R' D and D' R U2 R' D, but this way, recognition might become even more difficult
I knew I couldn't be the first to think of such an easy idea, but I couldn't find anything about it... placing 1 and 2 first seemed more natural to me, and I went on with finding algs and movecounts because I knew that I could easily brute-force all the cases to find the average moves.
The idea isn't really new. The biggest problem with making ZZ-d work is that so often people want to rely on making it easy to recognize by placing a couple of corners then add on to that the five moves it takes to permute the corners. Niklas is only seven moves. An opposite swap isn't much longer.
That was the reaction I expected! Yes, this is not more efficent than a Niklas at the end of the solve, but maybe with may approach you can look-ahead some moves for the second block while you do the algorithm... or maybe you can't, and this is just a bad idea. But it's still an idea.

#### Athefre

##### Member
Yeah, I don't mean to seem harsh. This stuff needs to be explored and there are very few doing it.

#### porkynator

##### Member
It's me again, but on a different topic this time.
I've done an avg100 in a linear-FMC style to see what my movecount for EOL+F2L was.
Here it is:

number of times: 100/100
best time: 20.00
worst time: 46.00
best avg5: 28.33 (σ = 1.53)
best avg12: 30.30 (σ = 4.06)
best avg100: 33.22 (σ = 4.08)

These are obviously number of moves, not times. I didn't keep track of the EOL movecount, but I think I'm around 7 moves on average. I think 33 moves on average isn't that bad, but I hope I can be sub30 with some practise. What do you think about it?

#### uvafan

##### Member
I'm going to try that. Did you give yourself a time limit? One try or something?

Also, what is linear FMC?

Last edited:

#### porkynator

##### Member
Linear FMC basically means that you cannot undo a move once you did it, or if you do you have to count it twice. So no insertions, no premoves or anything.

#### Pyjam

I good idea. I start immediately.

#### uvafan

##### Member
Ok, thanks. I'll do an average of 50 and post it. I think my average is slightly above yours.

#### Pyjam

I open 2 sessions. One for EOL alone, one for EOL+F2L.

#### mDiPalma

##### Member
my "rushing" zzf2l movecount :

number of times: 20/20
best time: 28.00
worst time: 40.00

current avg5: 32.33 (σ = 0.47)
best avg5: 29.33 (σ = 0.94)

current avg12: 32.70 (σ = 1.95)
best avg12: 31.30 (σ = 1.90)

session avg: 32.00 (σ = 2.24)
session mean: 32.20

#### uvafan

##### Member
I did an average of 50 for F2L:

number of times: 50/50
best time: 24.00
worst time: 45.00

current avg5: 35.00 (σ = 4.00)
best avg5: 30.33 (σ = 5.86)

current avg12: 33.70 (σ = 4.90)
best avg12: 33.00 (σ = 4.35)

current avg50: 33.95 (σ = 3.56)
best avg50: 33.95 (σ = 3.56)

Sub34 movecount, .73 above porkynator's

#### Pyjam

EOL :
number of times: 50/50
best time: 4.00
worst time: 10.00

current avg5: 7.33 (σ = 0.58)
best avg5: 6.00 (σ = 0.00)

current avg12: 7.70 (σ = 1.49)
best avg12: 6.90 (σ = 0.88)

session avg: 7.52 (σ = 1.21)
session mean: 7.48

EOL + F2L with phasing :
number of times: 50/50
best time: 22.00
worst time: 43.00

current avg5: 34.33 (σ = 3.06)
best avg5: 26.67 (σ = 3.51)

current avg12: 33.70 (σ = 3.80)
best avg12: 30.80 (σ = 4.66)

session avg: 34.02 (σ = 4.28)
session mean: 33.90

#### uvafan

##### Member
EOL :
number of times: 50/50
best time: 4.00
worst time: 10.00

current avg5: 7.33 (σ = 0.58)
best avg5: 6.00 (σ = 0.00)

current avg12: 7.70 (σ = 1.49)
best avg12: 6.90 (σ = 0.88)

session avg: 7.52 (σ = 1.21)
session mean: 7.48

EOL + F2L with phasing :
number of times: 50/50
best time: 22.00
worst time: 43.00

current avg5: 34.33 (σ = 3.06)
best avg5: 26.67 (σ = 3.51)

current avg12: 33.70 (σ = 3.80)
best avg12: 30.80 (σ = 4.66)

session avg: 34.02 (σ = 4.28)
session mean: 33.90
Nice movecount with phasing. Are you learning/have you learned ZZLL?