Rubik's cube F2L solver

circular

Member
Here is my lastest program. It is a Rubik's cube program that solves the first two layers using the F2L method.

You can turn the cube in 3D and move faces using F, U, L, B, D, R, with Shift and Alt. Also you can use M, E, S for slice moves, and x,y,z to rotate the cube with the keyboard.

http://consume.o2switch.net/rubik_f2l.zip

Here is a screenshot : circular

Member
I am still wishing to do some kind of optimal OLL and optimal PLL solver. That's why I didn't go directly toward automatic application of these algorithms. But if I can't find out how to do it, well I suppose I can do some automatic recognition of cases and rotation of those algorithms.

I am also thinking about generating more fingertrick-friendly sequences, for example using Dw instead of U if it is better, etc. But I do not know yet how to do this.

circular

Member
Here is a new version :
- bug fix about orientation of additional sequences (combobox dropdown)
- solving of OLL using moves of length 8 or less

circular

Member
Cool circular

Member
There is new version, where you can choose the aspect of the cube (classic, white, stickerless...) circular

Member
Yes, if you use Alt key. And if you use Shift key, it turns the middle slice too.

circular

Member
I've done the optimization of sequences for grip (by adding rotations and using double moves instead of simple moves).

The scrambe can also be grip-optimized.

Here is an example :

B2 L2 B' R' B' U' L2 R2 D' B2 L2 F' B' L2 U D' B' R L2 U D R2 L' F2 L'

is optimised in :

y R2 x' U2 R' u' f' U' r2 R2' U' F2 r2 F' f' u2 R r' u' R r2' F f y z' R2 r' U2 r'

The F2L solver finds (for the bottom cross) :

B D F2 R' F D / U2 B' U' B / U2 R' U2 R / U2 F R U2 R' U2 F' / U F' U' F U' R U R' (29f)

with grip optimization, it finds instead :

f r U2 z2 x' u' r D / U2 R' U' R / U2 x' u' R2 D / R2' F D R2 u' y' r2' F' / r U' r' F z U' R U R' (29f)

The OLL solver finds

z U R b U' F' r' / r U' R' U x r' U' R (11f)

We get a J-perm

U'

Solver finds
L2 D L D' L B2 R' U R B2(3572 ms)

Optimized in

r2' d F U' y r U2 R' F R U2 x

Moves weights may not be very good for now and may need some adjustments.

Member
Which language you used?

Looks great, btw.

circular

Member
It's done in Pascal (using Lazarus).

Thanks.