raccrompton / BookBuilder

An automatic Chess opening repertoire Builder
GNU General Public License v3.0
126 stars 18 forks source link

Request: Custom sorting orders #7

Closed KeeghanM closed 2 years ago

KeeghanM commented 2 years ago

Adding the ability to change what sorting order the PGN's are outputted in, not just line length. For example, sort by play rates in either descending or ascending order. This would group the lines together for easier learning, whereas currently it's almost arbitrary and you end up jumping around the different lines and move orders making it harder to memorise.

Will take a look at implementing myself, although Python is certainly not my forte

raccrompton commented 2 years ago

Can you give an example of the sort you’d want?

Ie, sort by move 1 likelihood, then keeping the groupings, sort by move 2, then move 3?

On Thu, 21 Jul 2022 at 16:39, Keeghan McGarry @.***> wrote:

Adding the ability to change what sorting order the PGN's are outputted in, not just line length. For example, sort by play rates in either descending or ascending order. This would group the lines together for easier learning, whereas currently it's almost arbitrary and you end up jumping around the different lines and move orders making it harder to memorise.

Will take a look at implementing myself, although Python is certainly not my forte

— Reply to this email directly, view it on GitHub https://github.com/raccrompton/BookBuilder/issues/7, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABWBKZWLXZL7QWLLR2U3IYTVVFVMFANCNFSM54IDKWFA . You are receiving this because you are subscribed to this thread.Message ID: @.***>

KeeghanM commented 2 years ago

of course, so take 1.e4 as an example. Most popular reply (>2000, Blitz & longer) is 1...c5 So we should see all 1..c5 lines first. As an example: [Event "White 1.e4"]1. e4 c5 2. c3 d5 3. exd5 Qxd5 4. d4 [Event "White 1.e4"]1. e4 c5 2. c3 d5 3. exd5 Nf6 4. Qa4+ [Event "White 1.e4"]1. e4 c5 2. c3 Nf6 3. e5 Nd5 4. d4 [Event "White 1.e4"]1. e4 c5 2. c3 Nf6 3. e5 Ng8 4. d4 [Event "White 1.e4"]1. e4 e5 2. Nc3....

Etc etc.. so even though the 4th line of sicilian is less likely (cumulatively) than 1..e5 - we see it first because it's a child of a more likely root move.

Hope that makes sense

raccrompton commented 2 years ago

This makes absolute sense. I’ve been trying to implement a sort like this this AM but it’s hilariously fiddly for me right now due to missing values at different line lengths. Will update once I have something working.

On Thu, 21 Jul 2022 at 16:53, Keeghan McGarry @.***> wrote:

of course, so take 1.e4 as an example. Most popular reply (>2000, Blitz & longer) is 1...c5 So we should see all 1..c5 lines first. As an example: [Event "White 1.e4"]1. e4 c5 2. c3 d5 3. exd5 Qxd5 4. d4 [Event "White 1.e4"]1. e4 c5 2. c3 d5 3. exd5 Nf6 4. Qa4+ [Event "White 1.e4"]1. e4 c5 2. c3 Nf6 3. e5 Nd5 4. d4 [Event "White 1.e4"]1. e4 c5 2. c3 Nf6 3. e5 Ng8 4. d4 [Event "White 1.e4"]1. e4 e5 2. Nc3....

Etc etc.. so even though the 4th line of sicilian is less likely (cumulatively) than 1..e5 - we see it first because it's a child of a more likely root move.

Hope that makes sense

— Reply to this email directly, view it on GitHub https://github.com/raccrompton/BookBuilder/issues/7#issuecomment-1191658180, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABWBKZW7YJIVIIPVI7HX67LVVFW53ANCNFSM54IDKWFA . You are receiving this because you commented.Message ID: @.***>

raccrompton commented 2 years ago

done in latest version