# HARCS (JARCS Replacement) - Cube Solver

#### mDiPalma

##### Member
Can you post pllalgs.txt that you used in the algsearch?
Code:
step oll
movegroup 1
prunedepth 1
searchdepth 1

step pll
movegroup 4
prunedepth 9
searchdepth 9

algsearch oll pll --NO-ISO

#### RazarTuk

##### Member
Is it possible to specify half turns in a custom method? I want to test a method for move count, but it involves passing through Thistlethwaite's G2, which is {L2, R2, F2, B2, U, D} as a generator.

#### mDiPalma

##### Member
I have made 2 quick changes. Click here to download v0.9d. A bug related to "algsearch" has been fixed (problem with edge orientations). Algorithms with unsolved centers still won't compute. Support for half-turn moves is implemented. Use should be obvious, or check the README.

Here is an input file for one of my old methods that demonstrates both changes.

Type:
Code:
 load portico apply F L2 U2 L2 B L2 R2 U2 B R2 B2 U' B D' U2 R2 U' B L'  # all view
( [ALT+SPACE]+E+P to paste into Windows command prompt )

You will see left and right block solutions that include F2 moves, because the input file contains: "movegroup <URLF2>"

Type:
Code:
 algsearch 1
It will generate and solve the 17 EP5 algorithms (16+solved) without a hitch. This wouldn't have worked on the previous version.

This input file won't work for most COLLs because it uses CMLL.txt as an alg source for convenience.

Is it possible to specify half turns in a custom method? I want to test a method for move count, but it involves passing through Thistlethwaite's G2, which is {L2, R2, F2, B2, U, D} as a generator.
Now it does.

#### AtlasTheGarbage

##### Member
You could also go a step further and allow the ability to have a move set that only does quarter turns with something like <M1U> where M can only be a quarter turn.

Furthermore, you could also go another step further and allow a move set that restricts it to just prime moves or just forward moves.

For example, you could make it so that something like <M'U> will restrict M to only be prime (as well as any U move), and maybe something like a double prime symbol OR a quotation mark for restricting it to only forward quarter turn moves like <M''U> or <M"U> so that M can only be a forward quarter turn (Allowing both '' and " as valid syntax options for forward moves would be neat)

#### frenzen

##### Member
For some reason whenever I go for xcross it does not give me the right movements, I thought maybe I scrambled it wrong or whatever, but when I go for the cross it gives me the right movements. I am using the latest version

#### mDiPalma

##### Member
<New version 0.9e> Fixed a bug for Mr. Taylor & Co. that was causing some problems generating algorithms.

Code:
step F2L-1
movegroup 8
prunedepth 1
searchdepth 1

step L5C
movegroup <rUD>
prunedepth 10
searchdepth 8

algsearch F2L-1 L5C --NO-ISO

Note the way I revised the input file. When analyzing methods and generating algorithms it's best to maximize your "prunedepth" (based on your RAM) so your CPU doesn't have to search as deep per state. 3 GB RAM for ~60 second analysis versus 1GB RAM for ~4 min analysis. Also isomorphs are removed.

You could also go a step further and allow the ability to have a move set that only does quarter turns with something like <M1U> where M can only be a quarter turn.

Furthermore, you could also go another step further and allow a move set that restricts it to just prime moves or just forward moves.

For example, you could make it so that something like <M'U> will restrict M to only be prime (as well as any U move), and maybe something like a double prime symbol OR a quotation mark for restricting it to only forward quarter turn moves like <M''U> or <M"U> so that M can only be a forward quarter turn (Allowing both '' and " as valid syntax options for forward moves would be neat)
I can't imagine a use case for this but okay. Maybe for OH or feet algs.

*1 for quarter turns clockwise, *2 for half turns, *3 for quarter turns anticlockwise.

For some reason whenever I go for xcross it does not give me the right movements, I thought maybe I scrambled it wrong or whatever, but when I go for the cross it gives me the right movements. I am using the latest version
It seems to work for me. Are you doing these commands?

"apply * #" applies a certain scramble. # ends the scramble
"xcross" provides some xcross solutions
"1" and "view" are optional, they just apply the first solution and view the cube

To try a new scramble, type "revert" and then apply your next scramble, as before. Maybe the commands evolved since I posted that old tutorial video, all the years ago. Maybe that's what threw it off for you.

#### mDiPalma

##### Member
I am trying to learn how HARCS works.

I use revert, apply -scramble here- #, and then any number of commands. eoline, all, etc. Even switching to cfop yields the same results
Seems to work for me. Is that 64-bit windows?

Code:
 zz apply L2 F2 R2 U F2 D' F2 R2 D B R' U' B F2 D R2 B U2 # eoline 1

#### mDiPalma

##### Member
Yes, it is. Is that bad?
It's good. I was just making sure.

Can you give me a list of commands (screenshot is fine) you used to generate the problem? (From when the program starts, please). Thanks,

#### Anjew

##### Member
Okay. So I have an idea for some software, and I’m wondering if this software can do it. So I’m the midst of solving a cube, you put the state of the cube in the software, that you tell it that you want to move piece A to where piece B is, then you tell it the pieces that cannot get messed up (the solved peices). Then the cube tells you if what you want is possible, and if it is it gives you the algorithm to solve it.

#### PapaSmurf

##### Member
Cube explorer. It's a very powerful tool. If you have a Mac, you can use wine to run it, otherwise just search cube explorer and it should turn up.