# New Approach to ZZ-d



## porkynator (Jul 30, 2013)

It is almost a year since I published this post; that approach isn't bad, but I wasn't fully satisfied. So I recently started working again on ZZ-d, and tonight I finished. Now I am satisfied with this method, I think it can be suitable for speedsolving (although probably useful only for OH) and I think it deserves a new thread (unlike the old approach).

*What's new?*
With my old method, you permuted corners by doing an average of 9 moves after building the first 3x2x1 block. With this new method you will achieve the same result by adding *fewer moves* (I haven't calculated anything this time, but the average movecount should be around 5 and the worst case 7) *while completing the first 3x2x1 block*. It may be only 1 move better than the old method, but some of the new permuting algs are super-fast (like U R' or R U R') and I think they are way better for OH. Moreover, with this new method you solve CP before finishing the first block, which is how zz-d was originally meant.
There are 24 different patterns to recognize and 18 algorithms (1 to 3 moves long) to learn. This isn't a big problem, but it more difficult than my old approach.

*Before we begin...*
...I want to "expand" my old method.
If you have built a 2x2x1 block on LBD and the LFD corner is already placed (not caring about orientation) you may want to use my old approach to solve corners' permutation now. But there's a problem: your LF edge may be stuck on RF, RD or RB after you are done with the permutation. This is a problem. But I've "generated" more algorithms, so that you can choose which one to use to avoid the edge getting stuck. Here we go:
For the "nothing to do" case you can do any R* move to free your edge.
For the L' U R U' L case you can also use U L' U R' or R2 L' U R2.
For the L' U R2 U' L case you can also use R2 L' U R or L' U' R.

*The method*
First of all, place the DR corners on DR, as in the old method. Then, if the DLF corner is in place you use the "expanded" old method, otherwise you put it in ULB. Now you are ready to recognize the corners' pattern (you can do it by looking only at 3 corners, URB, URF and ULF).
In the spoiler the table with the cases.
Instead of numbers or letters I gave the 6 different cases the name of 6 random pokemons.


Spoiler




PatternDR corners OKDR corners SWAPPEDPicture 1Pikachu CaseSquirtle CasePicture 2Bulbasaur CaseMachamp CasePicture 3Pidgey CaseDragonite CasePicture 4Machamp CaseBulbasaur CasePicture 5Pikachu CaseSquirtle CasePicture 6Dragonite CasePidgey CasePicture 7Pidgey CaseDragonite CasePicture 8Bulbasaur CaseMachamp CasePicture 9Machamp CaseBulbasaur CasePicture 10Dragonite CasePidgey CasePicture 11Machamp CaseBulbasaur CasePicture 12Pidgey CaseDragonite CasePicture 13Machamp CaseBulbasaur CasePicture 14Pidgey CaseDragonite CasePicture 15Squirlte CasePikachu CasePicture 16Dragonite CasePidgey CasePicture 17Squirtle CasePikachu CasePicture 18Bulbasaur CaseMachamp CasePicture 19Pikachu CaseSquirtle CasePicture 20Dragonite CasePidgey CasePicture 21Bulbasaur CaseMachamp CasePicture 22Squirtle CasePikachu CasePicture 23Pikachu CaseSquirtle CasePicture 24Squirtle CasePikachu Case



In the next spoiler I listed 3 algs for each case. Note that 3 algs are enough to cover all possible "last edge saving" cases.


Spoiler



Pikachu Case L' U2 R2 _or_ L' U R' _or_ L' U' R
Squirtle Case R2 _or_ R' U R' _or_ L' U R
Bulbasaur Case R _or_ R' U' R _or_ R2 U' R'
Machamp Case R' _or_ U R' _or_ R U' R
Dragonite Case U' R2 _or_ U2 R _or_ R U' R2
Pidgey Case R U R' _or_ R U' R' _or_ R2 U' R _or_ Do nothing (yay!)


Once you performed the permuting algorithm, you can solve the remaining pair of the left block using only L and U moves (you can obviously use also L2, L', U2 and U'). After completing the first block this way, you can solve the whole cube 2-gen (using only R and U moves).

*UPDATE*
When one of the DR corners is in DLF setup moves can be long. So I decided to find algorithm even for this case(s). I only did it for when the two DR corners are in DLF and DBR, thinking that when one of them is in DFR recognition can be so bad that you may just want to R' to see the hidden corner.
Considering that when DRF is in DLF the DR corners are OK, and that when DRF is in DBR they are swapped, you can use the same recognition system (thinking of the corner in DRF as if it was in DFL) and apply these transformations:

Pikachu becomes Machamp and Machamp becomes Pikachu.
Squirtle becomes Dragonite and Dragonite becomes Squirtle.
Bulbasaur becomes Pidgey and Pidgey becomes Bulbasaur.

*Minor Update*
The mysterious "Charmander Case" did not actually exist: it was a Bulbasaur case. I don't know how it happened, maybe I was setupping the case in a wrong way, but it seemed to me that the Bulbasaur algs did not work for that one. But they did. So, no more Charmander and all makes way more sense now.
Thanks to collins for finding this out.
______________________________________________
I haven't tried this method yet, but I hope I can find enough time to learn it.
What do you think about this approach to ZZ-d? Was it a waste of time for me to think of it or will it be called the "not-missing-anymore"-link?
______________________________________________
EDIT (2021-03-10): all of the pictures broke because I let my old website die, so I re-uploaded them. Since the forum now has a 20 image per post limit I replaced them with links. It's probably better if you refer to the pdf attached below.
______________________________________________
EDIT 2 (2021-03-16): N's-cvt proposed a better recognition system that relies on looking at just 3 last layer corners, see this file and his post.


----------



## mDiPalma (Jul 31, 2013)

This is very good. I completely understand it! Excellent explanation!

I'm going to learn all the cases right now. It's like using visual memory for 3x3 BLD corners.

What do you plan to call it? ZZ-Grumpig?


Edit: You should also sort the cases by the destination of DLF. For example, group cases 1, 2, 7, 13, 16, and 22 together. It seems to make it easier to learn.


----------



## mDiPalma (Jul 31, 2013)

Sorry for the double post.

I learned a few cases and filmed a 41.25 without the algorithm table! UWR? 






You can hear me muttering the Pokémon in the background. My family must think I'm crazy. :fp

Your move, Porkynator! :tu

Edit: 38.65

Edit2: 33.89. it might be a better idea to organize the algorithms in groups of whichever pokemon they involve. A lot of the N and V shaped cycles, for example, involve Machamp/Bulbasaur. It might help for memorization.

Edit3: 32.48

Edit4: 25.95 on camera. EPLL skip. This is a very good method. I like starting with the same 2x2x1 block every time. It makes transitioning from EOL to F2L very easy. By the way, whenever I get DLF solved, I do L' U L U, just to practice the harder cases.

Do you think there is a better Last-Block/Last-Layer combination than Block+2GLL? Is there some direct-solving method for the last 13 pieces that doesn't involve building an F2L block first?

What about solving the 2x2x1 at DRB and another at ULB (any U-layer 2x2x1)? Then the cube is reduced to 7 pieces instead of 8. There would be less cases. But I do not know how the efficiencies will compare.

Edit5: Some preliminary testing of that on cubeexplorer suggests an average movecount (in 2gen htm) of around 14. 

But can you imagine doing a solve where the last algorithm is just R U' R' ?

Man, I wish you weren't on CEST. I feel like I'm talking to myself!


----------



## porkynator (Jul 31, 2013)

mDiPalma said:


> What do you plan to call it? ZZ-Grumpig?


Nice idea!



mDiPalma said:


> Edit: You should also sort the cases by the destination of DLF. For example, group cases 1, 2, 7, 13, 16, and 22 together. It seems to make it easier to learn.


I will do something when I start learning it. But I also wanted to see if it's possible to recognize per CP case only looking at the corners on U, like 2-side PLL recognition. Well it is possible, but I don't know if it will be suitable for speedsolving.



mDiPalma said:


> it might be a better idea to organize the algorithms in groups of whichever pokemon they involve. A lot of the N and V shaped cycles, for example, involve Machamp/Bulbasaur. It might help for memorization.


I'll try also learning them by pokemon cases instead of by shape and which system is better.



mDiPalma said:


> Do you think there is a better Last-Block/Last-Layer combination than Block+2GLL? Is there some direct-solving method for the last 13 pieces that doesn't involve building an F2L block first?


I'd love to know it too. Possibly a reduction system <R,U> -> <R,U2> -> <R2,U2> can be more efficient, but it sounds awful for speedsolving. In my last FMC no time limit solve I solved 2x2x3 + EO + CP in 12, but couldn't find a decent ending. This might be the next thing I'll work on.



mDiPalma said:


> What about solving the 2x2x1 at DRB and another at ULB (any U-layer 2x2x1)? Then the cube is reduced to 7 pieces instead of 8. There would be less cases. But I do not know how the efficiencies will compare.
> 
> Edit5: Some preliminary testing of that on cubeexplorer suggests an average movecount (in 2gen htm) of around 14.
> 
> But can you imagine doing a solve where the last algorithm is just R U' R' ?


It doesn't seems like a big improvement from F2L+2GLL to me... but it can be an idea to start from (grammar?).



mDiPalma said:


> Man, I wish you weren't on CEST. I feel like I'm talking to myself!


When I finished the post it was 1 am here  And I suppose it's like 4 am in New York now? (Too lazy to check).


----------



## Hypocrism (Jul 31, 2013)

After you've permuted with DFL on UFB using the algs, and you don't have your DFL pair solved, how do you then go about solving it without mixing up the permutation of the remaining corners? After all you need to make L moves to solve that last DFL pair and once you use an L move you've changed the corner permutation..

There might be something very obvious that I'm completely missing.


----------



## porkynator (Jul 31, 2013)

Hypocrism said:


> After you've permuted with DFL on UFB using the algs, and you don't have your DFL pair solved, how do you then go about solving it without mixing up the permutation of the remaining corners? After all you need to make L moves to solve that last DFL pair and once you use an L move you've changed the corner permutation..
> 
> There might be something very obvious that I'm completely missing.



You're right, there is a missing part that isn't obvious.
After you performed the algorithm, you have to solve the remaining left pair with only L or U moves. From this point you can solve the cube using only R and U.
I'm going to edit the first post, thank for noticing this.


----------



## Hypocrism (Jul 31, 2013)

porkynator said:


> You're right, there is a missing part that isn't obvious.
> After you performed the algorithm, you have to solve the remaining left pair with only L or U moves. From this point you can solve the cube using only R and U.
> I'm going to edit the first post, thank for noticing this.



That definitely solves it, I should have been able to work it out!
Now I just need to decide whether phasing or corner perm is going to work better for me in learning ZZ


----------



## porkynator (Jul 31, 2013)

*Attention please!*
I corrected a terrible mistake: the two charmander cases were actually different ones. So now there's a new case, the Mew Case.
There may be still some mistake in there; if anyone finds something wrong, please let me know.

EDIT: that new case was actually a pikachu case :fp
I've also added a missing ' in the third pidgey case

EDIT 2: One last (I hope) thing: the fifth case with DR corners swapped was listed as a Bulbasaur case, but was actually a Squirtle.


----------



## mDiPalma (Jul 31, 2013)

porkynator said:


> I'd love to know it too. Possibly a reduction system <R,U> -> <R,U2> -> <R2,U2> can be more efficient, but it sounds awful for speedsolving. In my last FMC no time limit solve I solved 2x2x3 + EO + CP in 12, but couldn't find a decent ending. This might be the next thing I'll work on.



The hard part is going from <R,U2> to <R2,U2>. Do you have any ideas for this?



porkynator said:


> *Attention please!*
> I corrected a terrible mistake: the two charmander cases were actually different ones. So now there's a new case, the Mew Case.
> There may be still some mistake in there; if anyone finds something wrong, please let me know.
> 
> ...



I was wondering why some of my solves ended with COLL+EPLL. I just blamed myself, thinking I recognized the corner cycle incorrectly!

Edit: 24.64

Edit2: 22.79


----------



## elrog (Jul 31, 2013)

mDiPalma said:


> The hard part is going from <R,U2> to <R2,U2>. Do you have any ideas for this?



Since there are so few cases in <R2,U2> wouldn't it be more efficient to go straight from <R,U2> or <U,R2> to solved?



Hypocrism said:


> After you've permuted with DFL on UFB using the algs, and you don't have your DFL pair solved, how do you then go about solving it without mixing up the permutation of the remaining corners? After all you need to make L moves to solve that last DFL pair and once you use an L move you've changed the corner permutation..
> 
> There might be something very obvious that I'm completely missing.



Use key-holing before you do the other block? To preserve Edge orientation you must do an E2 instead of E'.


----------



## mDiPalma (Jul 31, 2013)

I got a 20.34.



elrog said:


> Since there are so few cases in <R2,U2> wouldn't it be more efficient to go straight from <R,U2> or <U,R2> to solved?



But since there are so MANY <R,U2> cases, it pays to reduce to <R2,U2>.



elrog said:


> Use key-holing before you do the other block? To preserve Edge orientation you must do an E2 instead of E'.



The algorithms that Porkynator published "store" a solved permutation with respect to the left side. So when you use <LU> moves to solve the DFL pair, you do not destroy the corner permutation. 

Keyhole would destroy cp, if I'm not mistaken.


----------



## elrog (Jul 31, 2013)

Since there are so many <R,U2> cases and it is such a restricted move set, you'd basically have to make algorithms for each case to get it into the <R2,U2> group. So why not just solve it? I generated a couple of solved for the <R2,u> group and they were pretty long solutions. I'm not sure reducing like this is the best way to go.


Key-holing shouldn't mess up the CP if your key-holing edges. Example:
To place the FL edge to finish a 2x2x3 block (in the LD position) after you did CP and EO, you could place in edge in the UF position and preform Uw' R' Uw.


What if you solved two 2x2x1 blocks in the R and U layers then solved the rest with algs? You do have to build 1 more edge with your blocks, but you have more options for your blocks.


----------



## mDiPalma (Jul 31, 2013)

elrog said:


> Since there are so many <R,U2> cases and it is such a restricted move set, you'd basically have to make algorithms for each case to get it into the <R2,U2> group. So why not just solve it? I generated a couple of solved for the <R2,u> group and they were pretty long solutions. I'm not sure reducing like this is the best way to go.



There are 12 (6 unique) cases for the <R2,U2> move set. By reducing from <R,U2> to <R2,U2>, you can divide the amount of algs you need by a factor 12. And after the alg, you are only a max of 6 moves away from solved. That's reasonable.



elrog said:


> Key-holing shouldn't mess up the CP if your key-holing edges. Example:
> To place the FL edge to finish a 2x2x3 block (in the LD position) after you did CP and EO, you could place in edge in the UF position and preform Uw' R' Uw.



Doesn't this break EO?



elrog said:


> What if you solved two 2x2x1 blocks in the R and U layers then solved the rest with algs? You do have to build 1 more edge with your blocks, but you have more options for your blocks.



Lol, scroll back like 10 posts.


----------



## elrog (Jul 31, 2013)

mDiPalma said:


> There are 12 (6 unique) cases for the <R2,U2> move set. By reducing from <R,U2> to <R2,U2>, you can divide the amount of algs you need by a factor 12. And after the alg, you are only a max of 6 moves away from solved. That's reasonable.



It would only half the alg count if you worry about where the 1x1x3 blocks go, and if you don't recog is crazy bad.

If your looking for something reasonable, you should go with solving corners and then edges after getting the into the <R2,U> move set. Corners can be done intuitively leaving you with 5 edges requiring 60 algs.

Instead of Uw' R' Uw, it should be Uw2 R' U R Uw2


----------



## mDiPalma (Jul 31, 2013)

Or after getting into <R2,U>, you could just solve the F2L and do an EPLL. But this is no more efficient than F2L+2GLL.

To be honest, the best approach is likely F2L+2GLL.


----------



## porkynator (Aug 1, 2013)

Isn't it really bad when one of the DR corners happens to be stuck in DLF before when you have to setup it to DR? Yes, it is. But don't worry, I've found a solution and I've updated the first post!


----------



## aznanimedude (Aug 1, 2013)

I don't always zz-d but when I do, I blame porkynator for making these approaches


----------



## mDiPalma (Aug 1, 2013)

I hate to do this again, but...

If you place the DR corners and isolate the Left block pieces to the U and L faces before completing the first 2x2x1 block, you only need 2 algs for each pokemon case. Right?


----------



## porkynator (Aug 1, 2013)

mDiPalma said:


> I hate to do this again, but...
> 
> If you place the DR corners and isolate the Left block pieces to the U and L faces before completing the first 2x2x1 block, you only need 2 algs for each pokemon case. Right?



I think so (I would have to check each case), but I also think it's way easier to just learn those 7 algorithms.


----------



## TheNextFeliks (Aug 6, 2013)

Wow. I prefer this over other zz-porky a lot. Any tips for remembering which case is which Pokemon? Just learn them like algs?


----------



## porkynator (Aug 6, 2013)

You can assign a number (or a letter) to each U corner, and memorize the numbers/letters order of the three corners in ULF, URF and URB. This can be useful to learn the cases, but I think it will be a slower recognition method in the long run.
EDIT: you would also need a fixed orientation to use this recognition system


----------



## mDiPalma (Aug 6, 2013)

I recommend learning the Pokémon algs first. This should only take 5 minutes.

Then just memorize which Pokémon are used for each case. 

To recognize the cp, I just trace the corner cycle with my fingers, and memorize the shape (V, N, 2 lines, ribbon, swirly, etc).

The worst part of this method is placing the 3 fixed corners. Sometimes it takes me 4-5 moves! This could be simplified if you applied ZZ-rainbow isolation after eoline.


----------



## porkynator (Aug 6, 2013)

Doesn't that step require 4 moves at most? Have you noticed that I have added the cases for when one of the two DR corners is in DLF?


----------



## mDiPalma (Aug 6, 2013)

You are right, but I am a purist! 

I'll learn the new algs. Thanks.


----------



## mDiPalma (Aug 7, 2013)

My first sub-20! 19.04! Skip haha!

Also, I don't know what to say about the ~1 second inspection. I was in the zone lol.


----------



## TDM (Aug 7, 2013)

Looks very good, but there's too many cases/algorithms to learn. The algs are short, but it'll be difficult trying to learn them and identify which pattern is which Pokémon and then learn 30 2GLL algorithms before my next competition in just over two weeks. I'll continue with ZZ-porky v1 for now.


----------



## ryn ball (Aug 8, 2013)

Hello fellow zz-d solver I would like to share my recognition pattern in porky v1 esp. the 4 corners of the U face (I know it's late) but I want to share it and I dont know where exactly so I pasted here. I also used this recognition in http://www.speedsolving.com/forum/s...ink-for-ZZ-d-(it-sucks-but-it-still-works!-D). and also I proposed this in http://www.speedsolving.com/forum/showthread.php?20834-ZZ-ZB-Home-Thread/page123

Convention notation:
UFL: 1
UFR: 2
UBR: 3
UBL: 4
I numbered every corner so any corner may sits at position 1 or 1.

Few terms (Y/B orientation for the examples)

1) good means 2 corners are in good position with each other in terms of color both corners have 1 same color(ignore top color).
Ex.
red-green-yellow at 3 and red-blue-yellow at 2
red-green--yellow at 2 and red-blue-yellow at 1

2) bad means 2 corners are swap with each other in terms of color both corners have 1 same color(ignore top color).
Ex.
red-blue-yellow at 3 and red-green-yellow at 2
red-blue-yellow at 1 and red-green-yellow at 2

3) diagonal means 2 corners are in diagonal relationship with each other in terms of color both corners have opposite colors(ignore top color).
Ex.
red-green-yellow at 3 and orange-blue-yellow at 2
red-green-yellow at 2 and orange-blue-yellow at 1

Here's my recognition:
Look at 1 and 2 determine if diagonal, bad, or good then look at 2 and 3 determine if diagonal, bad, or good.

1) Good case (1,2)
1.1) (1,2)-good+(2,3)-good
observation: correct corner perm.
1.2) (1,2)-good+(2,3)-diagonal
observation: 3 must be swap to 4 therefore it is a '3-4 swap'

2) bad case (1,2)
2.1) (1,2)-bad+(2,3)-bad
observation: 1 and 2 are swap also 2 and 3 therefore 2 must be swap with 4 then it is a 'diagonal swap'
2.2) (1,2)-bad+(2,3)-diagonal
observation: 2 must swap with 1 cuz 3 is diagonal relationship with 2 therefore it is a '1-2 swap'

3) diagonal case (1,2)
3.1) (1,2)-diagonal+(2,3)-good
observation: 2,3 are good therefore 1 must be swap to 4 then it is a '1-4 swap'
3.2) (1,2)-diagonal+(2,3)-bad
observation: 2 must go to 3 to retain diagonal relationship to 1 therefore it is a '2-3 swap'

To summarize:
good-good = solve
good-diagonal = 3-4 swap
bad-bad = diagonal swap
bad-diagonal = 1-2 swap
diagonal-good = 1-4 swap
diagonal-bad = 2-3 swap

To integrate this to porky v1 we have 12 cases (6 swaps*2 DR corner perm)

Case 1: Nn (good-good)-n
Case 2: Ds (bad-bad)-s

Case 3: On 
we have 4 horizontal swaps and do auf 
(good-diagonal)-n
(bad-diagonal)-n
(diagonal-good)-n
(diagonal-bad)-n
Case 4: Os
we have 4 horizontal swaps and do auf
(good-diagonal)-s
(bad-diagonal)-s
(diagonal-good)-s
(diagonal-bad)-s

Case 5: Dn (bad-bad)-n
Case 6: Ns (good-good)-s

After we place the DR corners no need to auf just to find our favorite corner then determine the corner perm just after DR corners insertion look at 1 and 2 and 2 and 3.
I hope mDiPalma or anyone verify my recognition in v1


----------



## mDiPalma (Aug 9, 2013)

18.27 PB (I do not count the solves with ZZ-Porky v1 cases)


Spoiler











You are going to have to officially name this variant at some point. "Porkynator's second attempt at solving the missing link for ZZ-D" is too long for my video titles!

I will try OH now.


----------



## mDiPalma (Aug 9, 2013)

sorry for the double post

22.29 avg12



Spoiler










> Average of 12: 22.29
> 1. 20.87
> 2. (DNF(27.51)) sometimes I don't even look at the DR corners. FAIL.
> 3. 27.70
> ...


----------



## porkynator (Aug 9, 2013)

mDiPalma said:


> You are going to have to officially name this variant at some point. "Porkynator's second attempt at solving the missing link for ZZ-D" is too long for my video titles!


I have a dream that one day people will simply call this ZZ-d, recognizing it as THE approach to ZZ-d!
But seriously, "porky v2" or anything people call it will be fine for me.


mDiPalma said:


> I will try OH now.


I am waiting for it!

Today I learned the first 6 cases. I know, it's not much, but it isn't on the top of my to-do list at the moment.


----------



## mDiPalma (Aug 10, 2013)

porkynator said:


> Today I learned the first 6 cases. I know, it's not much, but it isn't on the top of my to-do list at the moment.



Here's the way I memorized the cases and algs:

The top line is the default Pokémon (assuming DR corners permuted correctly) and the corresponding algs. The second line is the "visualization pattern" of the U corner cycles that correspond to the Pokémon above. 

The patterns themselves are pretty obvious. You can reference the images in the OP to see what the "visualization patterns" correspond to.



> pikachu (L' U2 R2 or L' U R' or L' U' R)
> U's, 2 swap, X
> 
> squirtle (R2 or R' U R' or L' U R)
> ...



It is probably very confusing. If it doesn't make sense to you, then don't waste your time trying to interpret it, but if you can understand it, I hope it will help!


----------



## mDiPalma (Aug 11, 2013)

Does it still count as OH if I use my second hand to trace the corner cycles? 



Spoiler: 22.01 fullstep OH single


----------



## porkynator (Aug 11, 2013)

mDiPalma said:


> Does it still count as OH if I use my second hand to trace the corner cycles?



As long as you don't touch the cube with your other and


----------



## mDiPalma (Aug 12, 2013)

I hate to post so frequently with such small increments of improvement, but this method is starting to look suitable for speedsolving!



Spoiler: 16.83 pll skip











& 17.74 fullstep


----------



## aceofspades98 (Aug 12, 2013)

Can't you just use Niklas every time? Can make recognition easier and it is just one alg


----------



## mDiPalma (Aug 12, 2013)

aceofspades98 said:


> Can't you just use Niklas every time? Can make recognition easier and it is just one alg



The point of this variant is to solve CP before completion of the first block. Niklas would rarely help. Also, Niklas isn't as efficient and would make recognition even more complicated.



ANYWAY, I HAVE GOOD NEWS AND BAD NEWS, PORKYNATOR!!!

Good news: I got a


Spoiler: 13.48 2H single











Bad news: I will never break this record.  haha! Maybe you can though!


----------



## porkynator (Aug 12, 2013)

mDiPalma said:


> Good news: I got a
> 
> 
> Spoiler: 13.48 2H single
> ...


O_O I haven't learned all the cases yet, so it will take a while for me to do something like this

Are you (trying to be) L/R neutral?


----------



## mDiPalma (Aug 12, 2013)

I'm not L/R neutral. My camera simply inverts the image horizontally .

Also, I do not like the idea of solving the DBR block first. It is not so ergonomic to use <RU> for the first block, then <LU> for the second block, and then <RU> for the last layer.

I would rather solve the first block <LU> and then the rest of the cube <RU>. This is my personal preference.


On another note, I believe sub-10 2H and sub-15 OH averages are possible with this method. But the solver must be able to recognize the CP in under one second and apply the corresponding algorithm very quickly. Also, knowing full 2GLL is essential.


----------



## ryn ball (Aug 13, 2013)

@matt: nice! keep it up! You always broke your record in this method, well I love ZZ-d but I'm inconsistent sub-20 in normal ZZ although I want to join the fun.


----------



## aznanimedude (Aug 13, 2013)

awwwwwright, i got my word document cheat sheet ready, time for fun to begin \o/


----------



## elrog (Aug 13, 2013)

porkynator said:


> I have a dream that one day people will simply call this ZZ-d, recognizing it as THE approach to ZZ-d!



I consider it the best version of ZZ-d. And everyone knows the best variant should be the actual method. So I consider this THE ZZ-d method.


----------



## collins (Nov 20, 2013)

Hi fellow ZZ-users !
I'm very interested in the ZZ-d variation, so first thanks and congrats porkynator for your work on this method !
I've practised your first approach for about 2 months now and I think it's already a very decent approach (very few cases, recognition not that bad after some practise). Your second approach seems even better (lower movecount, closer to the original ZZ-d definition), but I think it can even be simplified without losing its efficiency. I indeed prefer using the following variant :

It begins exactly like yours except after having placed the DFL corner in the UBL spot, you do a L'.
This way you just have to recognise CP like in your first approach.
The algs you can use in that case are the following :

No swap on U + D corners swapped : nothing to do (yay !) / L R U' R' / L R2 U' R depending on the position of the FL edge (your Pidgey case)
Diag swap on U + D corners ok : the same as above
No swap on U + D corners ok : L R U' R2 / L U2 R / L U' R2 (your Dragonite case)
Diag swap on U + D corners swapped : the same as above
Adj swap on U + D corners ok : place the 2 swapped corners on the left and do U2 R2 / U R' / U' R (actually just your Pikachu case)
Adj swap on U + D corners swapped : the same as above except you place the swapped corners on the right.

This reduces the number of cases to 6 and the number of algs to 8 so it's much easy to learn quickly (no more difficult than porky v1 actually).
And I don't think this variation has a higher average movecount than yours. The most frequent case (adj swap) also happens to have the shortest algs (2 moves every time, AUF included). Sometimes you might do an unnecessary AUF or L move, but it's a fair price to pay in my opinion.

By the way if I'm not mistaken your Charmander case doesn't exist and IS a Bulbasaur case... At least I generated a Charmander case and it could be solved with a Bulbasaur case. (If not can you provide an example where the Bulbasaur alg doesn't work ?)

And also may I know how you generated the algs ? Just by trial and error, observing the effect of a few moves on corner permutation ? Or do you have a more efficient way of proceeding ?
I ask that because I was thinking of generating algs that solve CP + the FL pair at the same time ; sometimes after CP you are left with a really bad F2L case that takes like 10 moves to be solved, which ruins the effort to save moves that you did, and I think this could be avoided. Most of the time the best solution might be CP + solve the pair, but it might be worth it to learn algs for the few nasty ones...


Let me know what you think, if I made a mistake, if you think this is stupid or if it was already proposed somewhere else


----------



## porkynator (Nov 20, 2013)

The idea of a L' setup for easier recognition is nice, I don't know/remember if someone else has already thought of it (I didn't). Often you may _need_ an extra U* move after the L', but it may be a good compromise between porky-v1 and v2.

I don't know what to say about the "charmander" case. I honestly don't understand what happened to make me think it wasn't a bulbasaur case (I tried the algs now, they work). I'll edit the first post 

For the algs, I just wrote down all the possible 1 to 3 moves long ones and tried them to see what case they solved, then I chose the best ones for each case (I didn't know a better method for generating them, and with this I could get the work done within a hour or so).


----------



## collins (Nov 21, 2013)

porkynator said:


> The idea of a L' setup for easier recognition is nice, I don't know/remember if someone else has already thought of it (I didn't). Often you may _need_ an extra U* move after the L', but it may be a good compromise between porky-v1 and v2.


Yes, I think your approach indeed saves one move or two (in the adj cases it's almost the same movecount, but in the other cases I have to do L' L... Though there might exist shortest algs for these cases, I didn't look for such algs and just adapted yours... I'll try to find better ones !). But I definitely prefer sacrificing 2 moves for the sake of recognition. The way I do ZZ-d now is :
-I finish the left block completely if it's very easy (this way I'm sure I won't end up with a crappy left block finish)
-Otherwise I place the DFL corner in the easiest possible way (either at the right place, in DFL -> porky v1, or at the "wrong" place, in DBL -> porky v1.5 )



porkynator said:


> For the algs, I just wrote down all the possible 1 to 3 moves long ones and tried them to see what case they solved, then I chose the best ones for each case (I didn't know a better method for generating them, and with this I could get the work done within a hour or so).


Oh, ok, that's how I would have done it too. I was secretly hoping you had some special magical technique to find those algs quickly... 
It won't be easy to generate algs for CP + last pair of the left block then. It can be done by hand to find a few shortcuts, but this will not necessarily cover all possible cases (and probably won't be worth it in most cases anyway).
Unless someone comes up with a software that does that


----------



## collins (Nov 22, 2013)

Double post, but I found better algs for the "No swap on U + D corners swapped" case : (nothing to do) / R U2 R / R U R2.
(instead of (nothing to do) / L R U' R' / L R2 U' R)
Unfortunately I couldn't find 3-moves algs in R,U that solved the "No swap on U + D corners ok" case... This is now the only case for which a L move is required.

I also generated some algs to solve CP + the last pair of the left block at the same time.
I only treated the "No swap on U + D corners ok" case completely.

When the D sticker of the DFL corner (in the DBL spot) is on D :
If the FL edge is in BL do L U R U2 R2 L' U L. 
Else Position the FL edge in UR (with R/U moves) and do L U' R2 L' U' L.

When the D sticker of the DFL corner (in the DBL spot) is on L :
If the FL edge is in BL do L U R' U L' U R' U L.
Else position the FL edge in FR (with R/U moves) and do L U' L' U2 R U2 L,
OR : Position the FL edge in UB (with R/U moves) and do L U2 R U2 L' U' L.

When the D sticker of the DFL corner (in the DBL spot) is on B :
If the FL edge is in BL do L U' L' U L' U R U' L2. 
Else position the FL edge in FR (with R/U moves) and do L U2 L' R U2 L.

Consequence : in that case ("No swap on U + D corners ok"), CP + the end of the block can ALWAYS be done in 9 moves or less ! (not including placing the D corners of course, but this is still very nice !)

For the remaining cases, when the D sticker of the DFL corner (in the DBL spot) is on D or L, solving CP then the pair is quite efficient :
CP requires at most 3 moves and then solving the pair requires 5 or 6 moves, so the movecount for doing CP and finishing the block is no more than 9.

The other cases, when the D sticker of the DFL corner (in the DBL spot) is on B, are the trickiest ones. I couldn't find any alg shorter than 8 moves, and there are also some cases where I couldn't find anything decent... These cases result in a poor movecount (>10), so my advice is to avoid putting the DFL corner in that orientation when you first place it. (not sure if I'm clear here)


----------



## collins (Nov 29, 2013)

I just got a random idea for the extended porky v1 (when you place the DFL corner at its place but not necessarily oriented).
It seems quite efficient in that case to do :
-CP + solve DFL corner
-then solve the FL edge by placing it in FR and inserting it with u' R2 u (*which doesn't break CP*). This requires at most 5 moves and is very easy to execute (R/U/u moves).



Spoiler: Algs for the first step



D sticker of DFL on D :
No swap on U + D corners ok/Diag swap on U + D corners swapped : nothing to do
No swap on U + D corners swapped/Diag swap on U + D corners ok : L' U R2 U' L (classic porky v1 alg)
Adj swap on U + D corners ok : place the 2 swapped corners on the right and do L' U R U' L (classic porky v1 alg)
Adj swap on U + D corners swapped : the same as above except you place the swapped corners on the left.

D sticker of DFL on L :
No swap on U + D corners ok/Diag swap on U + D corners swapped : bring the FL edge on the U face then just solve the pair with L and U moves
No swap on U + D corners swapped/Diag swap on U + D corners ok : L' U R U R' U L
Adj swap on U + D corners ok : place the 2 swapped corners on the right and do L' U2 R' U L
Adj swap on U + D corners swapped : the same as above except you place the swapped corners on the left.

D sticker of DFL on F :
No swap on U + D corners ok/Diag swap on U + D corners swapped : bring the FL edge on the U face then just solve the pair with L and U moves
No swap on U + D corners swapped/Diag swap on U + D corners ok : L' U' R U2 L
Adj swap on U + D corners ok : place the 2 swapped corners on the front and do L' R U' R U2 L (just a R setup into the previous case)
Adj swap on U + D corners swapped : the same as above except you place the swapped corners on the back.


This approach gives an average movecount of 9.25 (5.5 + 3.75) which is really decent for such a limited number of algs.
(Worst case : 12 moves)

It's also possible to do this in "porky v1.5" (when you place the DFL corner in DBL) :



Spoiler: Algs for the first step



D sticker of DFL on D :
No swap on U + D corners ok/Diag swap on U + D corners swapped : L U' R2 L' U' L
No swap on U + D corners swapped/Diag swap on U + D corners ok : L U' L' U' L
Adj swap on U + D corners ok : place the 2 swapped corners on the front and do R L U' L' U' L (R setup into the previous case)
Adj swap on U + D corners swapped : the same as above except you place the swapped corners on the back.

D sticker of DFL on L :
No swap on U + D corners ok/Diag swap on U + D corners swapped : L U' R2 U' L' U L
No swap on U + D corners swapped/Diag swap on U + D corners ok : L U2 L' U L
Adj swap on U + D corners ok : place the 2 swapped corners on the front and do R L U2 L' U L (R setup into the previous case)
Adj swap on U + D corners swapped : the same as above except you place the swapped corners on the back.

D sticker of DFL on B :
No swap on U + D corners ok/Diag swap on U + D corners swapped : L U2 R L' U2 L
No swap on U + D corners swapped/Diag swap on U + D corners ok : L U' L' U2 L U L' U' L (*)
Adj swap on U + D corners ok : place the 2 swapped corners on the right and do L U' L' U R' U L
Adj swap on U + D corners swapped : the same as above except you place the swapped corners on the left.

* However here it is better to do CP with L R U' R2 / L U2 R / L U' R2 then solve the pair.


In this case the average movecount is about 10.5 (6.8 + 3.75), still decent.


----------



## supercavitation (Feb 16, 2014)

I'm fairly new to ZZ (I'm still at the stage where I'm making rapid time improvements despite getting limited practice, and averaging a slightly sub-minute solve), though not so new to cubing, but this seems like an incredibly useful and effective method. Would somebody be willing to make a tutorial video for it?


----------



## TDM (Feb 16, 2014)

supercavitation said:


> I'm fairly new to ZZ (I'm still at the stage where I'm making rapid time improvements despite getting limited practice, and averaging a slightly sub-minute solve), though not so new to cubing, but this seems like an incredibly useful and effective method. Would somebody be willing to make a tutorial video for it?


If you're new to ZZ, you should probably learn Porky's original version of the method. There are fewer algs to learn and fewer cases to deal with.


----------



## TDM (Jun 26, 2015)

Finally started learning this, though I probably won't finish for a while because of getting distracted with other things. Bumping to say the Pidgey, Dragonite and Machamp images no longer work.

Edit: here's a doc (which you can download as a PDF) with all the cases on, both for left handed people and right handed.


----------



## oll+phase+sync (Aug 5, 2015)

*Case Reduction 24 -> 6*

There are 24 cases how corners move, but only 6 names to it ... then there should be a recognition system that only has 6 cases, right? (formal context analysis is the math terminus I think)

Two *adjacent *corners can have exakty one of this three relations:

1. *Pair *- The corners are correctly permuted 
2. *Anti *Pair - The corners must be swapped
3. *No *Pair - The corners must be separated

No Pair is easily recognized by both side colors of both corners, being opposite colors.
Pair and Anti Pair have one side color in common, when twisting the corners in mind, that can be used to distinguish pair from anti pair.

Now we look at (FUL - FUR) and (FUR - BUR) there is a maximum of 9 combinations of our 3 relations, but (No, No) (Anti, Pair) (Pair, Anti) are impossible combos.

The six cases that remain:


(FUL - FUR)(FUR - BUR)DR-solvedDR-swapedPairPairPika (*L' U R')*Squirtle (R2)PairNoBulba (R)Macha (R')AntiAntiSquirtle (R2)Pika (*L' U R')*AntiNoMacha (R')Bulba (R)NoPairDrago (U'R2)Pidgey -NoAntiPidgey -Drago (U'R2)


----------



## TDM (Aug 5, 2015)

oll+phase+sync said:


> There are 24 cases how corners move, but only 6 names to it ... then there should be a recognition system that only has 6 cases, right? (formal context analysis is the math terminus I think)
> 
> Two *adjacent *corners can have exakty one of this three relations:
> 
> ...


This is very similar (it's actually the exact same but done earlier in the solve) to a recognition system I used to use for CPLS, but I didn't think of applying it to porky v2. Have you tried this yet? Does it work for all cases? I might practise this a bit since it will make recognition much easier to remember.


----------



## oll+phase+sync (Aug 6, 2015)

TDM said:


> ... Have you tried this yet? Does it work for all cases? I might practise this a bit since it will make recognition much easier to remember.



I checked all cases manually to correspopnd to my recognition system. There can also not be an additional case so the recognition system is complete.

I did only a few sample solves and found that after knowing the FUL-FUR relation just one sticker on URB is often enough to tell the FUR-BUR relation.

I also want to mention that the FDL-FUL relation could also be used for recognition, if someone prefers it to look there.

I think the next step stone could be a way to reconize cases where DRF and DRB are placed at UFL and UFR.

EDIT: I added the FDL-FUL column, because maybe someone finds a reasoning why a alg solves that cases.

(FDL-FUL)(FUL - FUR)
(FUR - BUR)
DR-solved
DR-swaped
AntiPair
Pair
Pika (*L' U R')*
Squirtle (R2)
NoPair
No
Bulba (R)
Macha (R')
PairAnti
Anti
Squirtle (R2)
Pika (*L' U R')*
NoAnti
No
Macha (R')
Bulba (R)
PairNo
Pair
Drago (U'R2)
Pidgey -
AntiNo
Anti
Pidgey -
Drago (U'R2)


----------



## mDiPalma (Aug 10, 2015)

oll+phase+sync said:


> ...



in my opinion, this is a very interesting simplification!


PS: LOL this is the thread that gave me my avatar


----------



## bilde (Aug 11, 2015)

I quite like this recognition system too.

I was also wondering if there is a way to modify this system, so that you can also build the left-front block first, and then permute the corners, in an attempt to reduce the movecount. I would try to generate the algs myself (some algs can already be remapped, but not all), but I have no idea how these were generated. Also, with zz-porky v1, is it possible to generate algs that free both corners and edges, so that the corner setup positions do not matter?


----------



## TDM (Aug 12, 2015)

bilde said:


> I would try to generate the algs myself (*some algs can already be remapped, but not all*)


Can't you just front-back mirror both recognition and algorithms?


----------



## bilde (Aug 12, 2015)

TDM said:


> Can't you just front-back mirror both recognition and algorithms?



Oh. It would appear that you actually can just do that, so that must have been a pretty silly mistake on my part. Recognition works pretty well too, I can just put the corner in the same place as I normally would, then recognize the right side first then the front, then to an U' before executing.

It might perhaps still be nice to have some porky v1 algorithms, so that the corners can be anywhere, but I don't know how many cases that would be.


----------



## mDiPalma (Aug 12, 2015)

bilde said:


> Oh. It would appear that you actually can just do that, so that must have been a pretty silly mistake on my part. Recognition works pretty well too, I can just put the corner in the same place as I normally would, then recognize the right side first then the front, then to an U' before executing.
> 
> It might perhaps still be nice to have some porky v1 algorithms, so that the corners can be anywhere, but I don't know how many cases that would be.



In my opinion, you can redefine these cases in terms of the positions of any corners

When I used to do porky v1, I would check if the 2 D-corners were easier to place at DR or UL (translate algs to {URD}). It is also possible to use any 2 "adjacent" corners in either of these positions. It just requires a little extra thought. However, it's tougher to intuitively apply this to porky v2, because I literally have no idea how the algs work, but I'm sure it's possible, in my opinion.


----------



## bilde (Nov 9, 2015)

Hello,

I was wondering if the setup moves are an absolute requirement for zz-porky v2. It seems to me that the algorithms and case count would still be the same, but the recognition would be drastically worse. Does there exist a way to recognize the CP without doing setup moves, or am I completely wrong and the case count is actually really high?


----------



## shadowslice e (Nov 9, 2015)

bilde said:


> Hello,
> 
> I was wondering if the setup moves are an absolute requirement for zz-porky v2. It seems to me that the algorithms and case count would still be the same, but the recognition would be drastically worse. Does there exist a way to recognize the CP without doing setup moves, or am I completely wrong and the case count is actually really high?



You can just do a 3-cycle or a 2 swap to correct CP but recognition is much harder.

https://www.speedsolving.com/forum/showthread.php?55156-Briggs-(3x3x3-method)
This is my attempt at doing CP without setup moves in one step but you use inspection time because otherwise you would have to pause for too long.


----------



## bilde (Nov 9, 2015)

shadowslice e said:


> You can just do a 3-cycle or a 2 swap to correct CP but recognition is much harder.
> 
> https://www.speedsolving.com/forum/showthread.php?55156-Briggs-(3x3x3-method)
> This is my attempt at doing CP without setup moves in one step but you use inspection time because otherwise you would have to pause for too long.



That's a lot more moves though. With porky v2 the algs are only 1 to 3 moves, and I'm wondering if it's possible to decipher one of those algs or of the case count is not just 6 after all.


----------



## shadowslice e (Nov 9, 2015)

bilde said:


> That's a lot more moves though. With porky v2 the algs are only 1 to 3 moves, and I'm wondering if it's possible to decipher one of those algs or of the case count is not just 6 after all.



The movecount for my CP is 8 but that's so you can also plan more than just CP. If you deconstruct the algs, it will probably around 4.

I might gen those algs in future though I'm currently working on another method and sorting through the stuff for that. The case count can be reduced to 3 essentially (or 2 discounting solved). I have 27 that are essentially 3-cycles with 1 setup move. The main issue is recig is not nice for 6 corner CP.


----------



## N's-cvt (Mar 15, 2021)

I've done some work on organizing the algorithms as well as a second recognition system and with @porkynator approval to submit it here. Basically to recognize CP, you just have to recognize the three corners of URB/URF/ULF on the U layer instead of tracing around the cube to discover what pokemon case you get. Basically every CP case is rooted from 6 different solved/Adj/diag corners and becuase the DR corners are in DR or DLF it is easy to see what CP case we get by numbering the U corners 1234 and when we get to CP we use addition/subtraction from what corners we see in each of the 3 spots. A person can look at the corner in URB and say that's #4 then look at URF and say that's #2 then look at ULF and say that's #1 so the equation would look like -2-1 or +2-1 and that's what CP case it is. Then you can correspond the equation to a pokemon and the algs associated with them.
The Pokemon are color coded to know the case when the DR corners are swapped.


----------

