• Welcome to SpeedSolving.com — the world’s largest puzzle community!

    You’re currently browsing as a guest, which means you have limited access to discussions, resources, member profiles, and community features.

    Join 50,000+ cubers and puzzle enthusiasts from around the world to ask questions, share solves, improve faster, and be part of the community.

    Registration is free, fast, and easy — create your account today.

    Already a member? Log in here to hide this message and start participating.

ZBLL trainer

I just started learning ZBLL again, and was curious about the updates. I have to say, they are amazing! Thanks a lot! Especially the 'recap each case once' feature is going to save me a lot of time.
You're welcome!

Expect some new features to come.

Right now, the zbll trainer is far from the ideal tool one might use to learn ZBLL. I want to change that. And then extrapolate the code to turn it into a trainer for OLL, PLL and even non-LL alg sets like WV or ZBF2L.

So far I've added "Setup" and "Algs" when you hover over a case in select mode, and also in the timer:

2023-06-16_15-09.png

2023-06-16_15-13.png


This may still be useless because different people use different algs, and your alg might not even be among these top three. But I'd rather make small incremental changes and collect more feedback and suggestions (make sure to provide them here!).
 
You're welcome!

Expect some new features to come.

Right now, the zbll trainer is far from the ideal tool one might use to learn ZBLL. I want to change that. And then extrapolate the code to turn it into a trainer for OLL, PLL and even non-LL alg sets like WV or ZBF2L.

So far I've added "Setup" and "Algs" when you hover over a case in select mode, and also in the timer:

View attachment 24847
View attachment 24848

This may still be useless because different people use different algs, and your alg might not even be among these top three. But I'd rather make small incremental changes and collect more feedback and suggestions (make sure to provide them here!).
Consider using the algs Daniel Egdal has selected. Iirc around 90-95% of his algs have been timed to sub1.
 
All these changes are wonderful!
I have a suggestion that I know would be useful for me, dunno if it's something others would make use of: an option to set custom names for different cases, and to have a hotkey to reveal the name of the current case without revealing the algorithm. I learn ZBLL algorithms by assigning every case to a character, and recalling the moves based on that character, which I know isn't a common practice. Maybe other people could set their case names to be small hints or something. What do you you all think?
 
All these changes are wonderful!
I have a suggestion that I know would be useful for me, dunno if it's something others would make use of: an option to set custom names for different cases, and to have a hotkey to reveal the name of the current case without revealing the algorithm. I learn ZBLL algorithms by assigning every case to a character, and recalling the moves based on that character, which I know isn't a common practice. Maybe other people could set their case names to be small hints or something. What do you you all think?
Yeah, I thought about adding custom input field to cases where you can enter just anything related to this case, like a link to the execution video or general notes on how do you memorize the case.

It's not hard to do; the biggest problem I see is how easy it will be to loose these changes without the proper login system and saving to the server. Although I can add the export/import option, that'd be a good start.

Thanks for the suggestion!
 
Would it be possible to have the choice to have to hold the timer for at least a certain amount of time before releasing it actually starts the timer, like on cstimer? I regularly accidentally start the timer for the next case while stopping the previous one, which messes the whole thing up when doing the 'recap each case once' thing

Also, would you be interested in a Dutch translation? I could probably make one if you'd like
 
Yeah, I thought about adding custom input field to cases where you can enter just anything related to this case, like a link to the execution video or general notes on how do you memorize the case.

It's not hard to do; the biggest problem I see is how easy it will be to loose these changes without the proper login system and saving to the server. Although I can add the export/import option, that'd be a good start.

Thanks for the suggestion!
I would think cookies with import/export would be ideal, like csTimer. Thanks for the response!
 
Would it be possible to have the choice to have to hold the timer for at least a certain amount of time before releasing it actually starts the timer, like on cstimer? I regularly accidentally start the timer for the next case while stopping the previous one, which messes the whole thing up when doing the 'recap each case once' thing

Yep, I'll add this.

Just so you know, if you've messed up (e.g. started the timer accidentally or started with the misscrambled the cube), you can just stop it and hit `Delete`, `Ctrl+Z` or `Alt+Z`, and as the last result will be deleted, the recap will be restored (added this recently).

Dutch - ok, gonna ask ChatGPT to generate this translation as well.
 
Dutch - ok, gonna ask ChatGPT to generate this translation as well.
I sent you a PM about it.


A bug I came across (not very important but I thought I'd mention it): when you have for example 2 cases in a certain set of 12 algs selected and then you press 'all', it says there are 14 cases selected when there really are 12 (all cases from that set, but it adds the two that were already selected counting them twice). When you then click recap each case once, it still says 14 cases selected, but it does say 12 cases left to recap, so that number is correct.
 
A bug I came across (not very important but I thought I'd mention it): when you have for example 2 cases in a certain set of 12 algs selected and then you press 'all', it says there are 14 cases selected when there really are 12 (all cases from that set, but it adds the two that were already selected counting them twice). When you then click recap each case once, it still says 14 cases selected, but it does say 12 cases left to recap, so that number is correct.
Nice catch! Fixed it. Also added timer delay.
 
Out of curiosity, what made you decide to start working on this again so much after a bit of a hiatus?
I learned VueJS. And for the "test project", just to test my knowledge and to check how easy it is to make a medium-sized app with it, I picked the ZBLL trainer almost at random.

Then, unrelated to that, an interest for 3x3 (not blind!) woke in me for some reason 😆 I thought I could make some great trainers (e.g. OLL trainer) based on this VueJS ZBLL trainer codebase and use them myself as well as sharing with the community. Will see where it will lead.
 
I have an idea of a training process that doesn't require you to ever scramble the cube, and yet can be done without the smart cube. After selecting the cases and clicking "start", practicing every case goes in these 5 steps:

1) You are presented with an image of a cube:

1687500833575.png


2) Your job is to pretend it's what you see on your non-smart, solved cube and apply the solution;

3) By doing that, you actually set up a different ZBLL on your cube. The image of this case is displayed on the screen as the second picture:

1687500847953.png


4) By looking at this second picture, you apply the solution to this second case on your cube as well.

5) You should now have a solved cube. If not, you've made a mistake and might want to try again, but this time comparing your cube to the pictures on every step to find out what you did wrong.

Few caviats:
- Upon solving the 1st case, you must do the correct AUF in a way that it will solve the imaginary cube.
- It might turn out that you haven't learned the 2nd case yet. This can be mitigated by displaying the solution underneath the 2nd picture, which on one hand defeats the essence of this training process (no manual scrambling, remember?), but on the other hand can be used to learn new cases by their pairs.
- You should correctly identify the case and the AUF by two sides. Though there could be options to make it easier, like additionally display the TOP-view or give alg.cubing.net-like image:

alg-cubing-net.png

EDIT:
- if your solution contains regrips or wide moves, so that the cube ends up being in the wrong orientation after it, you also have to restore the orientation

Thoughs?
 
Last edited:
I have an idea of a training process that doesn't require you to ever scramble the cube, and yet can be done without the smart cube. After selecting the cases and clicking "start", practicing every case goes in these 5 steps:

1) You are presented with an image of a cube:

View attachment 24950

2) Your job is to pretend it's what you see on your non-smart, solved cube and apply the solution;

3) By doing that, you actually set up a different ZBLL on your cube. The image of this case is displayed on the screen as the second picture:

View attachment 24951

4) By looking at this second picture, you apply the solution to this second case on your cube as well.

5) You should now have a solved cube. If not, you've made a mistake and might want to try again, but this time comparing your cube to the pictures on every step to find out what you did wrong.

Few caviats:
- Upon solving the 1st case, you must do the correct AUF in a way that it will solve the imaginary cube.
- It might turn out that you haven't learned the 2nd case yet. This can be mitigated by displaying the solution underneath the 2nd picture, which on one hand defeats the essence of this training process (no manual scrambling, remember?), but on the other hand can be used to learn new cases by their pairs.
- You should correctly identify the case and the AUF by two sides. Though there could be options to make it easier, like additionally display the TOP-view or give alg.cubing.net-like image:

View attachment 24953
EDIT:
- if your solution contains regrips or wide moves, so that the cube ends up being in the wrong orientation after it, you also have to restore the orientation

Thoughs?
I thought of this when working on my own trainer a few years back. To solve that 2nd caviat, you can have the resulting image be generated on the spot rather than being pre-generated. This way, the program can use that resulting image as the new base, and perform the next algorithm on top of it, et cetera. After each solution, the screen would show what your cube should look like now, in addition to an image for the next algorithm to do. Assuming the user doesn't make any mistakes in their case solving, they should never have to do a scramble or equivalent.

The issue with this is that the virtual cube URLs would get really long really fast, which might be an issue. The only real solution to this would be for the virtual images of the cube to be generated by the trainer website itself based on a data structure keeping track of the current state of the cube, so it wouldn't have to fetch a new image from a virtual cube generator website every time.

For the other caviats, I think the solution is simple: let the user choose for each of the 7 ZBLL sets which angle they want to see the case from. For example, I always recognize my Pi cases with headlights on left (and I only look at F, R, and U), and while the alg I use to solve the case might include a pre-AUF (which I would factor into my custom alg on the site so that the resulting image is accurate), I would be able to recognize the case from the screen alone. For those who can't identify a case using only two sides, having a top view of the cube is likely enough.

I hope this all makes sense, let me know if there's something I need to explain more clearly.
 
New website looks great! I've been using the old version to train my ZBLLs for a while so I'm very happy to see an update to it, UI definitely got a lot cleaner. Previously I had a problem with the scrambles loading, after 100-150 solves in the average I would have to reset the session because it would take upwards of a second for the next scramble to load and it would just get worse the more solves I did but that problem is no more! I don't know if it was the new code or scramble database that did it but it's great.

I don't know if I'm missing something but I can't find the session mean in the stats section anymore, or any of the other average/single stats. If they got removed can I suggest adding them back? Also I like the addition of the algs because that has made me realise how outdated my algs are.

If you plan on adding more alg sets, I would love to see a couple 1LLL sets added. I know adding the whole thing would be a lot so maybe just the most useful sets. I made this sheet a while ago that basically ranks the OLLs by the most worth it to learn for 1LLL so if you were to only add a few starting from the top of this list (the one on the last tab) would be best. If I think of any other suggestions or things to add I'll make sure to bring it here.
 
This is awesome :) Easily the best trainer to learn ZBLL cases.
If/when you add smart cube support, I'll definitely switch from Tao's trainer for practicing large sets of ZBLL.
 
Back
Top