• Welcome to the Speedsolving.com, home of the web's largest puzzle community!
    You are currently viewing our forum as a guest which gives you limited access to join discussions and access our other features.

    Registration is fast, simple and absolutely free so please, join our community of 40,000+ people from around the world today!

    If you are already a member, simply login to hide this message and begin participating in the community!

Drilling algs with the GiiKER cube and briefcubing.com

pjk

Administrator
Staff member
Joined
Mar 13, 2006
Messages
6,686
WCA
2007KELL02
SS Competition Results
Awesome stuff. On briefcubing.com it defaults to CMLL, but when you visit the page, it doesn't say it is on CMLL until you open the menu. Adding "CMLL" to the top center would be a small change so users know where they are starting. Otherwise it looks great, will play with it more later.
 

AshleyF

Member
Joined
Dec 1, 2018
Messages
13
Awesome stuff. On briefcubing.com it defaults to CMLL, but when you visit the page, it doesn't say it is on CMLL until you open the menu. Adding "CMLL" to the top center would be a small change so users know where they are starting. Otherwise it looks great, will play with it more later.

Done :)
 

dbeyer

Member
Joined
Sep 12, 2006
Messages
396
Location
Harrington, Delaware
Hey, I love the hint section. Would it be possible for individual users to create their own personal algorithm list?

I would say it would definitely be a use at your own risk feature. So, if an algorithm was not put in correct,the user could not blame you for not double-checking for errors.

Like for example, CmLL D2-D5 I have two algorithms per case to account for different AUF.

Perhaps individuals can be been publicly list their profile to share their algorithm list.

I really like to create a subset of 4-6 cases to flip through like flashcards.

What do you think about advanced Roux techniques like EOLR or non matching CmLL?
 

AshleyF

Member
Joined
Dec 1, 2018
Messages
13
These are great suggestions! I may work on this over the holidays...

I should point out that, although the "hint" shows *an* alg for a given case, you're free to use whatever alg you know. For example, for the simple CMLL H case with vertical "columns" it shows R U2 R' U' R U R' U' R U' R', but when the columns are horizontal I use R U R' U R U' R' U R U2' R' and avoid the AUF. The tool doesn't care. In fact, you're free to make mistakes and undo them during the alg. All that maters is that you arrive at a "solved" state (which in the case of CMLLs means oriented & permuted top corners [with first two Roux blocks maintained]).

On the other hand, you're right, being able to add your own algs would be excellent. I may do it in the form of some general community contribution mechanism and/or some locally stored personal custom set. I think, for now, I want to avoid profiles and logins and a central database, etc. Right now, all your preferences and selected algs are just in local storage.

Technically, it's not that difficult to allow custom algs. It's literally all driven by this single file. The catch is that baked into the code is knowledge of various scrambling strategies and the meaning of "solved" for each set (e.g. CMLL scrambles the M slice while COLL doesn't and "solved" means CO + either F2L or F2B maintained). Also the kind of diagrams to show (e.g. top face only or top/front as in EO and L4E sets... and I'll be adding a 3/4 view [top/front/right] for F2L/SB cases soon). So anyway, I'll need to make all of that driven by the data as well and provide a user-friendly way of submitting.

For a less user-friendly way, it *is* all open source: https://github.com/AshleyF/briefcubing

Have fun!
 
Last edited:
Joined
Jan 7, 2019
Messages
1
Pretty much joined this forum to tell you how great a tool this has been for me as pretty much a total beginner and to thank you for the time you put into producing this.

As a kid I had a cube never really got into it and went through my life seeing other people solve cubes and thinking that I should get around to learning that. Finally I picked up a cheap cube mid December and can't put it down. I found a good video for the beginner method and got that down in a couple of hours and immediately moved on to look at F2L and 2-Look OLL/PLL and was finding drilling the algs to be problematic. Waiting for them to show up during a solve meant I never really got to practice them very well more just copying them from a sheet and no real learning. Trying to drill them on a cube with no feedback meant you think you're learning the right moves but you can quite easily switch to a wrong turn and never really know it.

I bought a second cube so I could leave one on my desk at work and pretty much as soon as that arrived I discovered the Giiker ordered it and decided to check around for alternative software because I knew there would be something and then found this forum. It arrived over the weekend and I've been drilling algs on and off since then and have made great progress.

Now I'm neither a great cuber or coder but having done some basic coding in the past I can read code to a certain extent. So please forgive me if I've misinterpreted something in the following.

On one of the algs (all_edges3 oll I think) I always get an orange screen, looking at the code I assume this is actually a partial match but I'm not really sure why. Can you explain what is considered a partial match in such a situation?

I've copied an offline version onto my phone for an upcoming transatlantic flight and decided to play around with it a bit.
I managed to edit the algs.js and add my own 4LLL section comprising all the algs needed but I noticed that there is a kind parameter which I have left as pll or oll based on the alg this is different from every other section that looks to use the setname also as the kind. Looking at the code I assume the way I have done it is actually correct as ui.js looks to be using those to choose a pattern match for verification. Can you confirm?

Would it be an easy change to allow brackets in the alg to allow highlighting of triggers this is would really only be cosmetic for when the hint is displayed.

Also a toggle to show the hint on every drill could be helpful when initially learning cases.

Could the timeout for failure be a settings value? Also if set to 0 (zero) possibly a repeated move of the top layer say 4U 4U' (Which I'm pretty sure should never happen normally) could be a 'I give up" signal to trigger the failure
 

stickfigure02

Member
Joined
Feb 5, 2019
Messages
1
Drilling algs is so much simpler with a GiiKER cube and this free site: briefcubing.com
No more setup. Instant feedback/gratification. Recognition and execution timing...
It currently has OLL, PLL & COLL for CFOP as well as CMLL and EO for Roux.


This has been a weekend project for a while. Any feedback, bugs, feature request welcome!
This is so awesome!!! Thanks for making this. Any way to add in some sort of F2L training? Something like this https://speedsolvingtrainer.com/trainer-f2l ?

Cross would be cool too but not sure how you would implement that. My biggest gain in time would be F2L which is why I would love to have something that would help me drill those over and over again....

This is so awesome!!! Thanks for making this. Any way to add in some sort of F2L training? Something like this https://speedsolvingtrainer.com/trainer-f2l ?

Cross would be cool too but not sure how you would implement that. My biggest gain in time would be F2L which is why I would love to have something that would help me drill those over and over again....

Also if there would be a way to save progress in some sort of way. Like create some sort of login that would allow times of each case to be stored so you know what you need to work on the most.....So many ideas....hahaha
 

RobertBB

Member
Joined
Feb 7, 2019
Messages
7
Hello Ashley

This has been a weekend project for a while. Any feedback, bugs, feature request welcome!

Is i3S version supported by your program? Or it is only for i3 version?
Are M-slices recognized by your program?
Also I would like to ask if you plan to update colors, so we can choose colors on left or right side of the cube?

Thanks
Robert
 

abunickabhi

Member
Joined
Jan 9, 2014
Messages
6,687
Location
Yo
WCA
2013GHOD01
YouTube
Visit Channel
https://briefcubing.com/ is a cool app.

This piece of software will be useful to me to drill 5-style algorithms which are used blindsolving a 3x3.
Can I mail the alg sheet to you? It is without the picture of the cube since 5-style algs affects all the 12 edges of a 3x3 cube for edge comms, and just having a face put up on the screen might not be ideal for recognizing the case from the app.

Any GitHub links to this project, you can share?
Also is the issue of M move, S move and E inner slice recognition by the Giiker cube solved via software, or it may need an upgrade in its next version.
 

AshleyF

Member
Joined
Dec 1, 2018
Messages
13
Hello Ashley



Is i3S version supported by your program? Or it is only for i3 version?
Are M-slices recognized by your program?
Also I would like to ask if you plan to update colors, so we can choose colors on left or right side of the cube?

Thanks
Robert

The i3S version works. I have and test with both.

Yes, M-slices are recognized - indirectly. In that the program doesn't care at all about orientation (in fact, I removed all my stickers). It plays the moves you execute forward in all 24 orientations and if *any* result in a "solved" (e.g. corners oriented, or whatever the goal is for the alg set) then it's done. So when M-slices cause a "flip" of the up center that doesn't confuse the program at all. Under the covers, it's registered as L R' or L' R etc. but since this is never shown or used for comparison, it doesn't matter.

I'll add specifying side colors (probably expressed as up & front) in addition to up color to the TODO list. That *does* matter for EO & L4E... Thanks for the suggestion!

https://briefcubing.com/ is a cool app.

This piece of software will be useful to me to drill 5-style algorithms which are used blindsolving a 3x3.
Can I mail the alg sheet to you? It is without the picture of the cube since 5-style algs affects all the 12 edges of a 3x3 cube for edge comms, and just having a face put up on the screen might not be ideal for recognizing the case from the app.

Any GitHub links to this project, you can share?
Also is the issue of M move, S move and E inner slice recognition by the Giiker cube solved via software, or it may need an upgrade in its next version.

Certainly, feel free to mail [email protected]. I can look into adding it. Not sure how to present diagrams and the scale of the alg set may force me to improve perf (e.g. dynamically generating diagrams for all, etc.)

M/S/E slice should be no problem. The way solutions are recognized is playing moves forward in all 24 orientations and it's the state of the resulting cube that matters rather than the particular moves. The cube reports slice moves as pairs of outer moves, but this doesn't confuse anything.

It *is* in fact all up on github: https://github.com/AshleyF/briefcubing

https://briefcubing.com/ is a cool app.

This piece of software will be useful to me to drill 5-style algorithms which are used blindsolving a 3x3.
Can I mail the alg sheet to you? It is without the picture of the cube since 5-style algs affects all the 12 edges of a 3x3 cube for edge comms, and just having a face put up on the screen might not be ideal for recognizing the case from the app.

Any GitHub links to this project, you can share?
Also is the issue of M move, S move and E inner slice recognition by the Giiker cube solved via software, or it may need an upgrade in its next version.

Yikes! It's 5000+ algs?!

I've added them as an experimental/hidden feature for the time being. To enable, you have to use the flag ?enable-5-style. For example: http://briefcubing.com?enable-5-style
It takes some tens of seconds to load!

The menu is pretty unwieldy with so many algs as well!

For diagrams, I'm just showing the memo letters. Do you have a better idea there? Or is this what you'd want? Also, any better ideas around grouping or something to make the menu more manageable?

Anyway, have fun!
 

SolvingRubik

Member
Joined
Jan 24, 2019
Messages
16
This looks great. I'm curious what you used to generate the cube SVG images. It looks like visualcube.php images. I'm wondering because I spent some time making a javascript port of visualcube, but I didn't know if anythink like that was already done. I hope I didn't do a bunch of redundant work! ha. I see roofpig was included but didn't see anything rendered with roofpig.

Anyway, great job! I need to get a Giiker cube now that all these usefull tools have been popping up.
 
Last edited:

AshleyF

Member
Joined
Dec 1, 2018
Messages
13
This looks great. I'm curious what you used to generate the cube SVG images. It looks like visualcube.php images. I'm wondering because I spent some time making a javascript port of visualcube, but I didn't know if anythink like that was already done. I hope I didn't do a bunch of redundant work! ha. I see roofpig was included but didn't see anything rendered with roofpig.

Anyway, great job! I need to get a Giiker cube now that all these usefull tools have been popping up.

Ah, very nice! I see that you recently ported visualcube. That's awesome!

The static/hard-coded SVGs at briefcubing.com are tweaked versions of what comes out of visualcube and some from roofpig (should add credit!) From there, they're just static with only colors changing. Super-simple. All the alg parsing and such was already there.

These are great suggestions! I may work on this over the holidays...

I should point out that, although the "hint" shows *an* alg for a given case, you're free to use whatever alg you know. For example, for the simple CMLL H case with vertical "columns" it shows R U2 R' U' R U R' U' R U' R', but when the columns are horizontal I use R U R' U R U' R' U R U2' R' and avoid the AUF. The tool doesn't care. In fact, you're free to make mistakes and undo them during the alg. All that maters is that you arrive at a "solved" state (which in the case of CMLLs means oriented & permuted top corners [with first two Roux blocks maintained]).

On the other hand, you're right, being able to add your own algs would be excellent. I may do it in the form of some general community contribution mechanism and/or some locally stored personal custom set. I think, for now, I want to avoid profiles and logins and a central database, etc. Right now, all your preferences and selected algs are just in local storage.

Technically, it's not that difficult to allow custom algs. It's literally all driven by this single file. The catch is that baked into the code is knowledge of various scrambling strategies and the meaning of "solved" for each set (e.g. CMLL scrambles the M slice while COLL doesn't and "solved" means CO + either F2L or F2B maintained). Also the kind of diagrams to show (e.g. top face only or top/front as in EO and L4E sets... and I'll be adding a 3/4 view [top/front/right] for F2L/SB cases soon). So anyway, I'll need to make all of that driven by the data as well and provide a user-friendly way of submitting.

For a less user-friendly way, it *is* all open source: https://github.com/AshleyF/briefcubing

Have fun!

3/4 view diagrams type and F2L and SB has been added.

Everything is now consolidated to the single alg.js file; scrambling strategies, meaning of "solved", diagram types, etc. One step closer to allowing custom user-supplied alg sets.

Any way to add in some sort of F2L training? Something like this https://speedsolvingtrainer.com/trainer-f2l ?

F2L (and SB for Roux) has now been added :)
 

bardamatic

Member
Joined
Feb 19, 2019
Messages
3
This is fantastic! Thanks for creating this. Beyond my appreciation, of course I comment to ask for something...I have just started, a few weeks in only, but am definitely taken with roux. I see that you have Kian's roux algs up, which is great, but for now I am still working on the 2 look CMLL (2LCMLL?) using the "Quick start algorithms" of lubixcube.com CMLL and similar set (and equal in result) to those recommended by Waffle 2LCMLL. It is a small set of algs (7 Os + 2 Ps) most if not all of which are already contained in algs.js.

For example:
Lubixcube's Headlights (U): = "u_back_row", alg: "U' F R U R' U' F'"
Lubixcube's Bruno (Pi): = "pi_right_bar", alg: "F R U R' U' R U R' U' F'"
Lubixcube's Double headlights (H, & Double sune):= "h_rows", alg: "F R U R' U' R U R' U' R U R' U' F'"
Lubixcube's L case (Bow tie, Triple sune): = "l_pure", alg: "R U2 R' U' R U R' U' R U R' U' R U' R'"
Lubixcube's Anti-Sune: = "as_1", alg: "R' U' R U' R' U2 R"

I can edit the algs.js doc and send it to you if you like, but I am not sure how it works. I assume it would use the same 'case' parameters of cmll, but the problem would come in the consideration of the solve state. Once I completed the first look, I wouldn't be able to start the second look until the app caught up to the current state of the cube, only then would I know which perm to use. Personally this would be fine with me, but for those looking to quickly drill both sets it would slow them down. But then again if the point is to drill based on recognition, then it would still serve its purpose.

Again, thanks for the work!
 

AshleyF

Member
Joined
Dec 1, 2018
Messages
13
I'll look into adding these! Maybe I'll also add 4LLL algs for CFOP.

For the moment, you can select the below cases. Those are the "orientation only" or "permutation only" CMLLs. Despite what the "hint" in the app may say, you can solve them using the Lubixcube or Waffle's algs. For example, the second one there (middle top row) shows
r2 D r' U r D' R2 U' F' U' F but Y-perm (six extra moves though) from Lubixcube works too F R U' R' U' R U R' F' R U R' U' R' F R F'. The app will accept *any* alg that reaches a solution.

Also, BTW, when solving the normal CMLLs, if you orient the corners without permuting them the app will show a yellow "partial" solve and update the diagram to let you then permute them to complete. So you can actually practice 2-look that way as well.

Have fun!

2l-cmll.png
 

thewagneroca

Member
Joined
Sep 22, 2013
Messages
9
Very nice website! It's very useful for learning algs.
One feature I find especially nice is the ability to use an U after finishing the alg to go to the next one.
One feature I'd like to see added is the possibility of seeing how much time you spend on each alg, like in a stat page that shows how much time you take to recognize and execute each alg.. That way you can know which algs you need to practice more. Also, maybe you could have a "hardcore" mode, where you have to recognize the alg from only two sides of the cube, like in https://www.cubeskills.com/tools/pll-recognition-trainer. Lastly, I'm having issues mainly with OLL, where I execute an alg but the site doesn't recognize the cube as solved. Maybe it needs an increased alg list?
These are just some suggestions.
Thanks!
 

AshleyF

Member
Joined
Dec 1, 2018
Messages
13
Alg stats is on the TODO list; maybe even next.
A "hardcore" mode would be easy to do. Good idea! Let me think about it a bit.

Not recognizing OLLs as solved sounds like a bug! It shouldn't (in theory) depend at all on the alg you use; anything that achieves a solved state should work. If you could possibly narrow it down to a particular case and alg that's not working that would be excellent.
 

bardamatic

Member
Joined
Feb 19, 2019
Messages
3
I'll look into adding these! Maybe I'll also add 4LLL algs for CFOP.

For the moment, you can select the below cases. Those are the "orientation only" or "permutation only" CMLLs. Despite what the "hint" in the app may say, you can solve them using the Lubixcube or Waffle's algs. For example, the second one there (middle top row) shows
r2 D r' U r D' R2 U' F' U' F but Y-perm (six extra moves though) from Lubixcube works too F R U' R' U' R U R' F' R U R' U' R' F R F'. The app will accept *any* alg that reaches a solution.

Also, BTW, when solving the normal CMLLs, if you orient the corners without permuting them the app will show a yellow "partial" solve and update the diagram to let you then permute them to complete. So you can actually practice 2-look that way as well.

Have fun!

View attachment 10014
Thanks! Works perfect!
 

AshleyF

Member
Joined
Dec 1, 2018
Messages
13
Pretty much joined this forum to tell you how great a tool this has been for me as pretty much a total beginner and to thank you for the time you put into producing this.

As a kid I had a cube never really got into it and went through my life seeing other people solve cubes and thinking that I should get around to learning that. Finally I picked up a cheap cube mid December and can't put it down. I found a good video for the beginner method and got that down in a couple of hours and immediately moved on to look at F2L and 2-Look OLL/PLL and was finding drilling the algs to be problematic. Waiting for them to show up during a solve meant I never really got to practice them very well more just copying them from a sheet and no real learning. Trying to drill them on a cube with no feedback meant you think you're learning the right moves but you can quite easily switch to a wrong turn and never really know it.

I bought a second cube so I could leave one on my desk at work and pretty much as soon as that arrived I discovered the Giiker ordered it and decided to check around for alternative software because I knew there would be something and then found this forum. It arrived over the weekend and I've been drilling algs on and off since then and have made great progress.

Now I'm neither a great cuber or coder but having done some basic coding in the past I can read code to a certain extent. So please forgive me if I've misinterpreted something in the following.

On one of the algs (all_edges3 oll I think) I always get an orange screen, looking at the code I assume this is actually a partial match but I'm not really sure why. Can you explain what is considered a partial match in such a situation?

I've copied an offline version onto my phone for an upcoming transatlantic flight and decided to play around with it a bit.
I managed to edit the algs.js and add my own 4LLL section comprising all the algs needed but I noticed that there is a kind parameter which I have left as pll or oll based on the alg this is different from every other section that looks to use the setname also as the kind. Looking at the code I assume the way I have done it is actually correct as ui.js looks to be using those to choose a pattern match for verification. Can you confirm?

Would it be an easy change to allow brackets in the alg to allow highlighting of triggers this is would really only be cosmetic for when the hint is displayed.

Also a toggle to show the hint on every drill could be helpful when initially learning cases.

Could the timeout for failure be a settings value? Also if set to 0 (zero) possibly a repeated move of the top layer say 4U 4U' (Which I'm pretty sure should never happen normally) could be a 'I give up" signal to trigger the failure

Thanks for the ideas! I've implemented a few of them. Timeout is now adjustable with a settings slider from 0.5-10 seconds. Sliding past ten shows infinite/no timeout. U4/U4' are now supported as gestures equivalent to next/retry (when not complete/error, in which case single U/U' work). Parenthesis are now allowed in algs (used in the new F2L section for example). Also, alg.js has been consolidated to include all of the properties driving behavior.

BTW, I'm not able to repro the OLL bug where it always shows partial match (it may have been fixed in a recent cleanup pass). Let me know if you still experience it.

... 2 look CMLL (2LCMLL?) using the "Quick start algorithms" of lubixcube.com CMLL

A new section for two-look CMLLs (and for 2LOLL & 2LPLL) has been added. Have fun!
 

Attachments

  • 2LCMLL.png
    2LCMLL.png
    43.5 KB · Views: 12
  • 2LOLL.png
    2LOLL.png
    42.2 KB · Views: 11
  • 2LPLL.png
    2LPLL.png
    42 KB · Views: 10
Top