Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Todo / suggestions list #10

Open
48 of 64 tasks
rooklift opened this issue Jun 9, 2019 · 43 comments
Open
48 of 64 tasks

Todo / suggestions list #10

rooklift opened this issue Jun 9, 2019 · 43 comments
Labels
enhancement New feature or request

Comments

@rooklift
Copy link
Owner

rooklift commented Jun 9, 2019

Note that this is just for my own benefit, I'm not really asking for help. Also, some things in the second section I don't necessarily agree with.

My own thoughts

  • Work better on high resolutions (sort of done: everything needed can be configured).
  • At some point I'll need a legal move generator. How hard can it be?
  • Better CSS layout, I need to learn flex.
  • Proper persistent preferences.
  • PGN parser must handle variations that repeat the original move (e.g. 1. d4 (d4 Nf3 etc)
  • Performance improvements when handling large trees - the problem is the regeneration of the entire move list.
  • But until then, mitigation for all types of user input that can lag on large trees.
  • Delete node.
  • Automatically move the scroll bar on the main line if needed (e.g. this).
  • When moving manually, the ability to underpromote (already works for Leela moves).
  • Better visualisation of the internal move tree.
  • Read and write PGN trees (RAV format).
  • PV display as a board?
  • Winrate graph.
  • Pawn promotion moves should be displayed the colour of the best one. Maybe adjust the sort.
  • End of game detection.
  • Better PGN saving (e.g. player names if known, etc)
  • Properly support engines that don't accept UCI_Chess960
  • Initial isready / readyok cycle

User comments

  • Scroll bar for the infobox. Don't cap number of lines.
  • There's some issue in Linux with the file open dialogs, they open behind the main window.
  • Drag and drop functionality.
  • Show winrate on arrowheads.
  • A 'threats' command, where it flips side to move to show 'threats', kinda like making a pass move, which is often very useful in analysis.
  • Hover over arrow/arrow head highlights the PV.
  • Play out the PV when you hover over a move.
  • Hover over piece prioritizes their move arrows (sets them visually 'on top'), or maybe even turns off every other arrow after a small delay? This would be useful for when the move doesn't show under the current Move display setting.
  • Arrow alpha. (not really needed)
  • If FEN wasn't changed, don't reset analysis or PGN.
  • Show speed and total nodecount somewhere.
  • Mousewheel scrolls through move list.
  • Key rebinding? ctrl-H is a tough reach. (too many in use already)
  • Return to main line even when not in a PGN.
  • Show opening names.
  • Search from openings by name to immediately set up position.
  • Restart engine in app to get new weights/cpuct/whatever without needing to restart the application.
  • Load PGN from clipboard.
  • More useful info in the PGN chooser.
  • It should allow the engine path and weights to be configured by the GUI.
  • You could look for the engine in the system path. (a bit tricky, no real need)
  • Keyboard input for the moves.
  • Node limit for searches.
  • Option for decimal places.
  • Q-U ordering (showing the best move if we are pessimistic). (meaning of the maths unclear)
  • Live URL's such as Hiarcs Chess Explorer has.
  • Searchmove functionality... force Leela to ignore her top move and focus on the second one.
  • Coordinates.
  • Option to show raw Q.
  • Alignment of N, P, U in the list.
  • Sort list by Q, N, P, U options.
  • Highlight from list to board (currently board to list only).
  • After reaching the node limit, play the move.
  • Optionally, scores from White's POV
  • Infobox to clipboard
  • Make an option to have a new line between the PV and the listing of values
  • Change-in-winrate graph
  • Moves animation
  • Should display PGN comments
  • Save auto-eval to comments
  • Lock eval position
  • WDL graph
  • Time control
  • Board editor
  • Edit PGN comments
@rooklift rooklift added the enhancement New feature or request label Jun 9, 2019
@rooklift rooklift changed the title User comments Todo list Jun 10, 2019
@ghost
Copy link

ghost commented Jun 24, 2019

Any chance of board co-ordinates please - my eyesight/recognition not what it used to be.
Many thanks for Nibbler.

@rooklift
Copy link
Owner Author

rooklift commented Jun 24, 2019

Around the edges, or in the squares?

@ghost
Copy link

ghost commented Jun 24, 2019

Around the edges please but will be happy with whatever is easiest to code - if on the board maybe a little bolder than normal.

@ghost
Copy link

ghost commented Jun 24, 2019

Screen Shot 2019-06-24 at 12 29 24 PM

@ghost
Copy link

ghost commented Jun 24, 2019

You have a dark/black background so white co-ordinates will do nicely.

@koedem
Copy link

koedem commented Jun 25, 2019

Suggestion: Option to see score from White POV. (no matter who to move) Basically every GUI has that per default. (except for Arena I think, where it still is an option)

Maybe add a Q+U in the technical info bit, for the lazy who don't want to divide the score by 50 and then add it to U. :D

@ghost
Copy link

ghost commented Jun 25, 2019

Thanks for v0.6.1 !!

@rooklift
Copy link
Owner Author

Don't thank me too much, I didn't add coordinates, got a lot of things on the todo list as you see. :)

But I have a fairly frenetic release schedule.

@ghost
Copy link

ghost commented Jun 25, 2019

No worries - I can wait .. :)

@AlexisOlson
Copy link

Suggestions:

  1. Put N, P, U on a new line (or before move list) so they align with each other.
  2. Enable sort move list by Q, N, P, U.
  3. Cross-highlight the board when hovering over move in the right pane (like hovering on the board position cross-highlights the other way).

@ghost
Copy link

ghost commented Jun 30, 2019

Fast & Furious (maybe not furious) !!
Thanks !

@rooklift rooklift pinned this issue Jul 8, 2019
@rooklift rooklift unpinned this issue Jul 8, 2019
@mgemard
Copy link

mgemard commented Jul 23, 2019

I can do "Show opening names."

@mgemard
Copy link

mgemard commented Jul 23, 2019

I will look at "Search from openings by name to immediately set up position." as well since it is kinda related.

@rooklift
Copy link
Owner Author

Hmm - I'm not exactly soliciting pull requests, this is mostly for my own tracking. Not that everything listed here is gonna be done.

@rooklift
Copy link
Owner Author

@mgemard - I hope you saw that message... no guarantees on merging things...

@mgemard
Copy link

mgemard commented Jul 24, 2019

Yes I saw the message, thank you.

I came back because I have an idea for a new feature:

  • Add arrow controls for the game (go at the start of the game, go at the end of game, next move, previous move). Look at this picture if you dont see what I mean.

@rooklift
Copy link
Owner Author

rooklift commented Jul 24, 2019

It's probably not a feature I actually want - it seems like significant added work / code / complexity for not a huge amount of benefit...

[Edit: this was about your comment that somehow ended up below this comment.]

@mgemard
Copy link

mgemard commented Jul 24, 2019

For the list of opening name with FEN, you can look here: https://github.com/ornicar/scalachess/tree/master/src/main/scala/opening
It is what lichess is using.

Do you know if there exist a database available we could use that list all of the opening name with FEN?

@rooklift
Copy link
Owner Author

No I don't know of any such database. But to repeat, I discourage you from any course of action that depends on me accepting pull requests. Of course, you're free to have your own fork, and I might even accept PRs if you're lucky, but caveat actor.

@rooklift rooklift changed the title Todo list Todo / suggestions list Aug 3, 2019
@al75an
Copy link

al75an commented Aug 14, 2019

Hi,
Thank you very much for this fantastic chess Gui,
Could you please add the option to add a second engine ( like Stockfish) for analysis.
I love the Gui and lc0 but I have a weak GPU. I think this will help lots of people like me to get better Chess analyzes

@AlexisOlson
Copy link

@al75an Stockfish has a fundamentally different search algorithm not compatible with Nibbler. There are other GUIs better suited for Stockfish.

@al75an
Copy link

al75an commented Aug 14, 2019

Thank you Alexis, I am using Chessbase and Scid vs Pc but I am not happy with both GUI.
I love nibbler and I thought that could possible.
thank you for letting me know

@rooklift
Copy link
Owner Author

Thing is, traditional alpha/beta engines aren't able to give the sort of multi-variation output that Nibbler requires, without sacrificing their strength greatly.

@conqueran
Copy link

I know this isn't the place for comments but really love Nibbler. I like playing against the lower rated leelas and appreciate how easy it is to use.

@rooklift
Copy link
Owner Author

Thanks!

@kubiknubika
Copy link

kubiknubika commented Apr 30, 2020

suggestions:
add loop to selfplay.
add training to selfplay.
add tournament or serial games with pgn-pack.
add graph-save: jpeg/pgn-annotation.
add double-weight use for selfplay.
960-chess set seed.
sygyzy for self-play (or sf will play in 5+ eval positions to minimize the useless endgame moves by lc0, or autoresign).
preset openenings.
no-castle mode (you can do manually, but auto is better).
pgn-annotation for everymove with N and number of nodes (full+on played move).
autodraw in selfplay when eval=X for Y moves.
ability to create a new weight and train it (maybe too hard or useless).

@rooklift
Copy link
Owner Author

rooklift commented Apr 30, 2020

@kubiknubika - the only one of those that already exists is "960-chess set seed." - if you know the number, just delete everything in the FEN box and type it in, e.g. 123, and press return. Otherwise, you can type the pieces, e.g. "RKRBBQNN"

This is a very hidden feature, admittedly.

@Debneil
Copy link

Debneil commented May 17, 2020

Feature request:

  1. auto-analysis of pgn-files with multiple games
  2. lichess-style inaccuracy / mistake / blunder counter and centipawn loss for both sides

@Debneil
Copy link

Debneil commented May 17, 2020

Feature request: store evaluations and save game as pgn file / append game to another pgn file.

@rooklift
Copy link
Owner Author

Well, it's already writing some stats (you can choose which) to a PGN when you save it.

@Debneil
Copy link

Debneil commented May 18, 2020

Ah, yes. Really no excuse why I missed that. Just consider the other half of the request, then.

@koedem
Copy link

koedem commented Jun 9, 2020

I've mentioned a similar idea in the discord some time ago, this would be an even more useful implementation (albeit probably quite a bit of work): For each search store the position and search results in some kind of database. A new search can overwrite the old results based on some criterion (e.g. more nodes searched), whenever the engine is halted and you switch to a new position, show database analysis if existing.

This would be really helpful for deep opening analyses, e.g. when building a repertoire for some opening. You could search a bunch, jump around and later recover all those search results. (including, importantly: the search results for transpositions, even if one didn't search them in this move order)

I realize this would be quite a lot of work, but if it could be added to some long term TODO list that would be great. :)

@leelanib
Copy link

Hi there, thank you for the nibbler v1.4.5 release which is almost perfect.
Though there is a tiny Beauty mistake. When I start nibbler 1.4.5 with lc0 v0.25.1 the Right part of the screen next to the chess board reads: "Loading Syzygy tablebases ….". The next line starts with "Found 0WDL...". It would be nicer and more consistent with the rest of the line with "0 DWL". The next line is RED and reads "Failed to download Syzygy tablebases!" How can I avoid the showing of this alert when I do not have the tablebases? Is there an Option in lc0.config or config.json? Thank you.

@rooklift
Copy link
Owner Author

Those messages are from Lc0 itself. Uh, to delete the Syzygy from Nibbler's own configuration, you can use the menu item Engine --> Syzygy --> Disable. Or if it's in your lc0.config file you'll have to edit that.

@leelanib
Copy link

leelanib commented Jun 10, 2020 via email

@leelanib
Copy link

Te above mentioned graphic is the following: x-axis = moves, y-axis = WDL

@surh
Copy link

surh commented Jun 14, 2020

Great app, would it be possible to graph the WDL probability? Something like the graphs in this blog post https://lczero.org/blog/2020/04/wdl-head/

@bakuldada
Copy link

just a thought based on comments and current wishlist, ability to edit board using drag drop looks clearly the most pressing and must have compared to others.

@ech1
Copy link

ech1 commented Jul 11, 2021

how about an option to load 2 different engines to battle each other ?
i know xboard has an option to load 2 engines

besides, since this is a leela-based client, how about having 'temperature for lc0-white temperature for lc0-black', the idea being to see how different elo levels destroy each other

also it would be nice to have the drawing arrows feature that lichess has
(right clicking to draw green arrows to help calculations)

@mbabigian
Copy link

How about automatically saving the current moves and position when you exit. I'm used to ChessGUI's I can just close and reopen to the same position / move list as before closing. Just autosave a pgn on close and reload on startup.

Very grateful for Nibbler, LC0 would be lost without it!

@mbabigian
Copy link

Also a graceful way to get back to displaying the board/analysis after clicking "Show error Log"

;)

@toddfreitag
Copy link

I'd like the ability to set per-move node limits.

For example, if I focus 3 different moves and set a limit of 100M nodes per move, after 300M total nodes, each of the 3 focused moves should end up with 100M nodes.

@yuzisee
Copy link

yuzisee commented Aug 13, 2023

I know Nibbler isn't really maintained right now, so I don't expect it to get reviewed/merged any time very soon — but for posterity: linking here, since it's based on one of the items in the list

Note also:

Also, some things in the second section I don't necessarily agree with.

"Coordinates" is in the second section, so @rooklift might end up not taking it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

16 participants