# pll_trainer: helps you practice PLL's

Discussion in 'Software Area' started by badmephisto, Dec 13, 2007.

Welcome to the Speedsolving.com. You are currently viewing our boards as a guest which gives you limited access to join discussions and access our other features. By joining our free community of over 30,000 people, you will have access to post topics, communicate privately with other members (PM), respond to polls, upload content and access many other special features. Registration is fast, simple and absolutely free so please, join our community today!

If you have any problems with the registration process or your account login, please contact us and we'll help you get started. We look forward to seeing you on the forums!

Already a member? Login to stop seeing this message.

837
5
Aug 29, 2007
This program basically randomly chooses a PLL, and then it has a timer inside it that you use to record times for every PLL. It then tracks the stats, like average and standard deviation for each PLL, and shows them to you in (what I think is) a nice format. This can help you see what PLL's you need to work on, or get new algorithms for, and you can also see how you are progressing in speed, which I think is nice. You can also save/load sessions, and create reports of your times if you wish to share them with others.
I've been using a simpler version for a while now, but i decided to make it a little more user-friendly and just release it to the public, so hopefully someone will find it useful.

It is made in Visual Basic; Yes i know the language is crap but it is so simple to make quick and dirty programs in it that I couldn't resist. Therefore, this is only guaranteed to run on XP or Vista, but you may be able to run it under Linux with Wine.
---------
edit: To run under Linux with Wine: (thanks to tegalogic)
Linux/Wine: Download MSVBVM60.DLL (the Visual Basic DLL) and put it in the ~/.wine/drive_c/windows/system32 directory, then using the terminal, navigate to where you extracted the trainer, then type
wine PLL_Trainer.exe
--------

I'd appreciate any comments you guys have about it, if you decide to try it.

Screenshot: http://www.cdf.utoronto.ca/~g6karpat/pll_trainer/scr1.jpg

edit: fixed the bug with overflow.
edit2: now tracks your records for each PLL as well
edit3: released 1.1: you now have a chance to have the program generate the PLL's with correct probabilities, i.e. the chance of a PLL coming up in the program is equal to the chance you have of it coming up in a real-world solve.
edit4: released 1.2: now you can ENABLE/DISABLE PLLs, so if you dont know some PLL you can just disable it by clicking on its picture and it will not be generated for you. This was a hotly requested feature

Last edited: May 25, 2008
Luke8 likes this.
2. ### FUGuest

Simple but should be pretty useful. I was wondering when you time a PLL, do you start with the cube in your hands?

Edit: I tried the program out. How the heck do you recognise the G's by the diagrams?

Last edited by a moderator: Dec 14, 2007
3. ### Lt-UnReaLMember

Dec 6, 2006
Rochester, NY
WCA:
2008CLAY01
Pretty cool program. However I popped my cube one time, so the timer was going in the 40's while I fixed my cube. So I stopped the timer and it said "runtime error overflow 6" and crashed.

EDIT: Just did like 20 PLLs and it crashed, it gave an error but I pressed spacebar to start the timer and didn't see...I didn't save either. So, hopefully you can find these errors.

Last edited: Dec 14, 2007
4. ### ToddMember

227
0
Jul 12, 2007
Mentally rotate the image to look like how you execute it?

837
5
Aug 29, 2007
1: the program simply loads all PLL's from the directory. To rotate them as you want, just use Windows Image viewer or something to rotate the actual picture, and it will appear like that in the program

2: Yes I am aware of the overflow issue, i just got it myself. I am internally tracking times in milliseconds, and i was using integers to compute averages. I am now using LONG's, so hopefully that's fixed.

3: You start with the cube in your hands, naturally. It takes too much time to pick it up, and it's way too much work in my opinion

So, issues were fixed, re-download the fixed version, should be ok now

edit: and im sorry you lost your session, when it happened to me i wasn't please either

Last edited: Dec 14, 2007
6. ### Lucas GarronSuper-Duper ModeratorStaff Member

Auto-save the current session every 12 attempts or so?
And inbetween, write to a delta/recovery log?

By the way, I'll try this some.
I've timed my PLLs before (and CCT is nice for this, with a stackmat connection), but it seems bsically good.

I might think of a lot of things. For now:

• Can you allow a menu option to set the scale to xx.yy instead of the max?

7. ### Let1HangMember

8
0
Dec 13, 2007
Thank you for this nice little app. Great timing too... I've got just 2 more PLLs to learn. This will definately help me lower my times and recognition.

837
5
Aug 29, 2007
I'm not sure i understand what you mean... you want to be able to set that bar to be anything? Right now it shows average time, not max time.

I made a few modifications to the program - it now tracks your records for each PLL, which motivates you much more to do better, because you feel like you HAVE to break the records Btw, someone wants to share times?

Corners_Three_Cycle_Clockwise_(A1):_____avg: 2.75, std: 0.65, num: 3
Corners_Three_Cycle_Anti-Clockwise_(A2):avg: 2.64, std: 0.49, num: 3
Parallel_Corners_Swap_(E):______________avg: 3.04, std: 0.12, num: 4
Adjacent_Edges_Swap_(Z):________________avg: 3.34, std: 0.59, num: 8
Opposite_Edges_Swap_(H):________________avg: 2.72, std: 0.30, num: 9
Edges_Three_Cycle_Anti-Clockwise_(U1):__avg: 1.60, std: 0.33, num: 5
Edges_Three_Cycle_Clockwise_(U2):_______avg: 2.11, std: 0.31, num: 7
Push_Push_(J1):_________________________avg: 2.96, std: 0.39, num: 9
Push_Push_Upside_Down_(J2):_____________avg: 2.21, std: 0.35, num: 4
T_perm_(T):_____________________________avg: 1.92, std: 0.16, num: 7
Lucky_7_(R1):__________________________avg: 2.68, std: 0.30, num: 10
Lucky_7_Upside-Down_(R2):______________avg: 3.70, std: 0.28, num: 10
Parallell_Lines_(F):___________________avg: 3.49, std: 0.36, num: 7
Edges+Corners_Three_Cycle_(G1):________avg: 3.04, std: 0.11, num: 6
Edges+Corners_Three_Cycle_(G2):________avg: 3.04, std: 0.34, num: 6
Edges+Corners_Three_Cycle_(G3):________avg: 2.65, std: 0.21, num: 7
Edges+Corners_Three_Cycle_(G4):________avg: 2.38, std: 0.19, num: 6
V_Perm_(V):____________________________avg: 2.89, std: 0.33, num: 10
N_Perm_(N1):___________________________avg: 4.35, std: 0.51, num: 9
N_Perm_(N2):___________________________avg: 3.65, std: 0.21, num: 7
Y_Perm_(Y):____________________________avg: 2.69, std: 0.38, num: 6
Total Average: 2.99

I'm desperatly in need for a better N perm

9. ### Lt-UnReaLMember

Dec 6, 2006
Rochester, NY
WCA:
2008CLAY01
Nice program now. This will help me get sub 3 sec for PLL.(or something like that if I am not sub 3 already)

Last edited: Dec 19, 2007
10. ### PedroMember

Mar 17, 2006
Uberlandia, MG - Brazil
WCA:
2007GUIM01
PedroSG
it works fine for me in Vista

nice program, man

I averaged 2:48 for all PLLs, but your program seems to like E and V perms a lot

Corners_Three_Cycle_Clockwise_(A1):_____avg: 2,40, std: 0,44, num: 8
Corners_Three_Cycle_Anti-Clockwise_(A2):avg: 1,70, std: 0,25, num: 13
Parallel_Corners_Swap_(E):______________avg: 3,14, std: 0,54, num: 12
Adjacent_Edges_Swap_(Z):________________avg: 2,40, std: 0,51, num: 10
Opposite_Edges_Swap_(H):________________avg: 1,75, std: 0,35, num: 10
Edges_Three_Cycle_Anti-Clockwise_(U1):__avg: 1,54, std: 0,29, num: 5
Edges_Three_Cycle_Clockwise_(U2):_______avg: 1,65, std: 0,35, num: 5
Push_Push_(J1):_________________________avg: 1,94, std: 0,32, num: 15
Push_Push_Upside_Down_(J2):_____________avg: 1,88, std: 0,26, num: 12
T_perm_(T):_____________________________avg: 1,90, std: 0,49, num: 6
Lucky_7_(R1):__________________________avg: 2,29, std: 0,30, num: 12
Lucky_7_Upside-Down_(R2):______________avg: 2,36, std: 0,27, num: 14
Parallell_Lines_(F):___________________avg: 3,16, std: 0,68, num: 5
Edges+Corners_Three_Cycle_(G1):________avg: 2,87, std: 0,47, num: 4
Edges+Corners_Three_Cycle_(G2):________avg: 2,47, std: 0,40, num: 11
Edges+Corners_Three_Cycle_(G3):________avg: 2,31, std: 0,37, num: 9
Edges+Corners_Three_Cycle_(G4):________avg: 2,29, std: 0,27, num: 11
V_Perm_(V):____________________________avg: 2,43, std: 0,35, num: 16
N_Perm_(N1):___________________________avg: 3,72, std: 0,40, num: 10
N_Perm_(N2):___________________________avg: 3,22, std: 0,40, num: 6
Y_Perm_(Y):____________________________avg: 2,28, std: 0,44, num: 8
Total Average: 2,48

11. ### van21691Member

55
0
May 25, 2007
Anaheim, CA
WCA:
2007RODR02
any other dl link with .zip instead of .rar?

837
5
Aug 29, 2007
hmm, good point. ill see what i can do

13. ### van21691Member

55
0
May 25, 2007
Anaheim, CA
WCA:
2007RODR02

837
5
Aug 29, 2007
ok you can now download it as a .zip as well here:
http://www.cdf.utoronto.ca/~g6karpat/pll_trainer/Pll_Trainer.zip

also,
release 1.1: you now have a chance to have the program generate the PLL's with correct probabilities, i.e. the chance of a PLL coming up in the program is equal to the chance you have of it coming up in a real-world solve.

edit: oh and the record system was introduced, so the app tells you how well you are doing w.r.t. your best solve for that pll yet. I find this VERY useful, if you still have 1.0 you should really get 1.1. Also bug fixes

Last edited: Dec 25, 2007
15. ### DenePremium Member

6,912
44
Dec 5, 2007
WCA:
2009BEAR01
masterNZ
Oooh goody. I will look at this tomorrow (I can't run .rar either, got rid of the program I used for it as I never used it lol ).

16. ### van21691Member

55
0
May 25, 2007
Anaheim, CA
WCA:
2007RODR02
is it possible to alter some PLL..
Im going to use some algos that is in this forum

17. ### tegalogicMember

34
0
Dec 8, 2007
Great tool!
I think that an OLL trainer would be a good idea too

Linux/Wine: Download MSVBVM60.DLL (the Visual Basic DLL) and put it in the ~/.wine/drive_c/windows/system32 directory, then using the terminal, navigate to where you extracted the trainer, then type
Code:
wine PLL_Trainer.exe
because running it the normal way gives (for me) Run-time error '53'

18. ### van21691Member

55
0
May 25, 2007
Anaheim, CA
WCA:
2007RODR02
is there an image with the algorithm included so I know how to solve it. I don't know every single PLL, but I know some.
That is how I learn my PLL

or

maybe an option whether you like the algorithm shown or not

Last edited: Dec 25, 2007

837
5
Aug 29, 2007
Dene: I now have a zip version as well. Link in first post
van: what do you mean alter the PLL's ? Like rotate them? Just rotate the pictures that come with the program in the folder. The program just loads them all as they are in that folder. Basic Windows Image Viewer can do this. And have algorithms for the PLL's ? I don't know... Possibly a good idea, I'll consider it

20. ### van21691Member

55
0
May 25, 2007
Anaheim, CA
WCA:
2007RODR02
nevermind the altering part.

I think it is a good idea if you put an option whether to have the algorithm shown or not