Skip to content

Instantly share code, notes, and snippets.

@jcmorrow
Created February 4, 2019 14:09
Show Gist options
  • Save jcmorrow/2933638dd69695ca89b235312029d4c9 to your computer and use it in GitHub Desktop.
Save jcmorrow/2933638dd69695ca89b235312029d4c9 to your computer and use it in GitHub Desktop.

Li Chess Development Notes

OK, Puzzle development is hard to setup! Here's how you do it: Get a local setup, and a user! Upload this puzzle document to the puzzle collection:

{
    "_id" : 61053,
    "gameId" : "khzYI5hN",
    "history" : "h7h6",
    "fen" : "8/1p3rkp/6p1/1b6/4PnPP/5P2/3Q4/6K1 b - - 0 38",
    "lines" : {
        "lj" : {
            "23" : {
                "jH" : {
                    "UM" : true
                }
            }
        }
    },
    "depth" : 2,
    "white" : true,
    "date" : ISODate("2017-07-31T21:19:03.859Z"),
    "perf" : {
        "gl" : {
            "r" : 1500.0,
            "d" : 350.0,
            "v" : 0.06
        },
        "nb" : 0
    },
    "vote" : {
        "up" : 2,
        "down" : 0,
        "nb" : 2,
        "ratio" : 100
    },
    "attempts" : 10,
    "mate" : false
}

It's important to note that the ID of that puzzle is a bit of a magic number, so it's important to keep it as is. The game that goes with it, upload this to the game5 collection:

{
    "_id" : "khzYI5hN",
    "is" : "VLYSgZH8",
    "p0" : {
        "na" : "Mohammad_h2017 (1888)"
    },
    "p1" : {
        "na" : "Cristian70 (1919)"
    },
    "s" : 31,
    "t" : 95,
    "c" : { "$binary" : "BQAAAAEAAAI=", "$type" : "00" },
    "cw" : { "$binary" : "", "$type" : "00" },
    "cb" : { "$binary" : "ABw=", "$type" : "00" },
    "ca" : ISODate("2019-02-03T21:49:25.577Z"),
    "ua" : ISODate("2019-02-03T21:49:25.577Z"),
    "so" : 7,
    "pgni" : {
        "pgn" : "[Event \"Rated Blitz game\"]\r\n[Site \"https://lichess.org/khzYI5hN\"]\r\n[Date \"2017.07.31\"]\r\n[Round \"-\"]\r\n[White \"Mohammad_h2017\"]\r\n[Black \"Cristian70\"]\r\n[Result \"1-0\"]\r\n[UTCDate \"2017.07.31\"]\r\n[UTCTime \"20:53:22\"]\r\n[WhiteElo \"1888\"]\r\n[BlackElo \"1919\"]\r\n[WhiteRatingDiff \"+11\"]\r\n[BlackRatingDiff \"-11\"]\r\n[Variant \"Standard\"]\r\n[TimeControl \"300+0\"]\r\n[ECO \"A01\"]\r\n[Opening \"Nimzo-Larsen Attack: Indian Variation\"]\r\n[Termination \"Normal\"]\r\n\r\n1. b3 { [%clk 0:05:00] } Nf6 { [%clk 0:05:00] } 2. Bb2 { [%clk 0:04:58] } d5 { [%clk 0:05:00] } 3. Nf3 { [%clk 0:04:54] } g6 { [%clk 0:04:59] } 4. e3 { [%clk 0:04:41] } Bg7 { [%clk 0:04:58] } 5. h3 { [%clk 0:04:39] } c5 { [%clk 0:04:56] } 6. c4 { [%clk 0:04:35] } dxc4 { [%clk 0:04:53] } 7. Bxc4 { [%clk 0:04:33] } O-O { [%clk 0:04:52] } 8. O-O { [%clk 0:04:31] } Nc6 { [%clk 0:04:51] } 9. d4 { [%clk 0:04:29] } cxd4 { [%clk 0:04:40] } 10. Nxd4 { [%clk 0:04:27] } Bd7 { [%clk 0:04:36] } 11. Nc3 { [%clk 0:04:23] } Rc8 { [%clk 0:04:31] } 12. Nd5 { [%clk 0:04:19] } Nxd5 { [%clk 0:04:29] } 13. Nxc6 { [%clk 0:04:17] } Bxc6 { [%clk 0:04:23] } 14. Bxg7 { [%clk 0:04:09] } Kxg7 { [%clk 0:04:21] } 15. Qd4+ { [%clk 0:04:02] } Kg8 { [%clk 0:04:18] } 16. Rad1 { [%clk 0:03:59] } Nb6 { [%clk 0:04:12] } 17. Bxf7+ { [%clk 0:03:44] } Kxf7 { [%clk 0:04:06] } 18. Qf4+ { [%clk 0:03:39] } Kg7 { [%clk 0:04:03] } 19. Qe5+ { [%clk 0:03:33] } Kg8 { [%clk 0:03:50] } 20. Rxd8 { [%clk 0:03:30] } Rcxd8 { [%clk 0:03:48] } 21. Qxe7 { [%clk 0:03:28] } Nd5 { [%clk 0:03:43] } 22. Qc5 { [%clk 0:03:23] } a6 { [%clk 0:03:37] } 23. Rd1 { [%clk 0:03:21] } Nf6 { [%clk 0:03:28] } 24. Rxd8 { [%clk 0:03:07] } Rxd8 { [%clk 0:03:26] } 25. Qe7 { [%clk 0:03:05] } Rf8 { [%clk 0:03:21] } 26. a4 { [%clk 0:03:01] } Ne4 { [%clk 0:03:20] } 27. f3 { [%clk 0:02:56] } Nf6 { [%clk 0:03:10] } 28. e4 { [%clk 0:02:53] } Nh5 { [%clk 0:03:01] } 29. b4 { [%clk 0:02:44] } Rf7 { [%clk 0:02:54] } 30. Qd8+ { [%clk 0:02:38] } Kg7 { [%clk 0:02:53] } 31. Qd4+ { [%clk 0:02:31] } Kg8 { [%clk 0:02:48] } 32. b5 { [%clk 0:02:14] } axb5 { [%clk 0:02:46] } 33. axb5 { [%clk 0:02:12] } Bxb5 { [%clk 0:02:40] } 34. g4 { [%clk 0:02:02] } Nf4 { [%clk 0:02:36] } 35. Qd8+ { [%clk 0:01:58] } Kg7 { [%clk 0:02:31] } 36. Qd4+ { [%clk 0:01:47] } Kh6 { [%clk 0:02:15] } 37. Qd2 { [%clk 0:01:44] } Kg7 { [%clk 0:02:11] } 38. h4 { [%clk 0:01:39] } h6 { [%clk 0:02:03] } 39. Qb2+ { [%clk 0:01:37] } Kh7 { [%clk 0:02:01] } 40. Qxb5 { [%clk 0:01:35] } Kg7 { [%clk 0:01:53] } 41. Kf2 { [%clk 0:01:33] } Nh3+ { [%clk 0:01:47] } 42. Kg3 { [%clk 0:01:31] } Nf4 { [%clk 0:01:46] } 43. Qb2+ { [%clk 0:01:26] } Kh7 { [%clk 0:01:43] } 44. e5 { [%clk 0:01:23] } Nd3 { [%clk 0:01:31] } 45. Qc3 { [%clk 0:01:19] } Nf4 { [%clk 0:01:22] } 46. Qb3 { [%clk 0:01:11] } Kg7 { [%clk 0:01:19] } 47. e6 { [%clk 0:01:08] } Re7 { [%clk 0:01:14] } 48. Qc3+ { [%clk 0:01:06] } 1-0\r\n\r\n\r\n",
        "h" : { "$binary" : "ebGY+IP1AWkI70gj", "$type" : "00" },
        "date" : "2017.07.31",
        "user" : "foobar",
        "ca" : ISODate("2019-02-03T21:49:25.577Z")
    },
    "hp" : { "$binary" : "sl5v6r4fUgNW1xGu3CiGlRnyRkuENQy9ocoTrhYrfueUWJAGontU+PoyhqeCzCIQ7llL1gA=", "$type" : "00" },
    "w" : true
}

Now you can go to /training on your local dev machine and start training! If you solve this puzzle you should see your rating go up!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment