Skip to content

Feature Request: Drill from Analysis Position #185

@maddavid123

Description

@maddavid123

I really like the drilling feature in the Openings tab. I think it's a really intuitive way of understanding a position through repetition, however today it has a somewhat tricky extension problem:
If you wish to add a new opening, or a drill from a custom position you must manually add your chosen drill to openings.json. For advanced users willing to run the platform locally this is doable. However for non-technical users, or users who cannot run the platform locally for one reason or another, it somewhat limits the potential of this feature.

I propose the ability to drill from a custom position, using the analysis page to setup the drill. I've been looking at this locally, so I'll be using screenshots from my local build to demonstrate how I expect the feature to be used:

  1. User loads up a position in the Analysis page, and a new button "Drill from this position" is displayed:
Image
  1. A variation of the existing Modal for drilling appears to configure which Maia engine, number of drills and number of moves per drill. (I currently do not have this implemented on my build, instead it jumps straight to the page with hardcoded drill number, number of moves and maia strength), colour is determined based on FEN.

  2. You are on the drill screen with the right pgn and fen.

Image

Potential Use Case:
After playing a game on Lichess where an opponent plays a completely offbeat line in the opening that you were unable to refute, you load up the analysis tool on the Maia web platform, load the game, navigate to the position where your theory ends (due to the offbeat move) and start drilling there to better understand the position.


Potential Pitfalls:
Because we load the entire PGN up to the drill position in, the analysis at the end of a drill results in the entire game preceding the drill to be analysed as well. This could be excessive and needs to be considered during implementation

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions