Shipped this project!
Payout issue fix
Minor code cleanups, payout issue fix ship.
Minor code cleanups
Log in to leave a comment
Welcome to BytBeat, a desktop app that manages your playlist! Its main feature is that it maintains a list of songs with their YouTube URL, so you can download your songs from YT right in the app.
Moreover, BytBeat automatically downloads the song’s thumbnail from YouTube, and adds that as the cover art. This can be edited too. You can also edit metadata from the app.
For instructions, please refer to the readme, and check out the demo video in the GitHub release.
Fixed an error with downloading songs, and published version 2.1!!
Go check it out on github releases!
Log in to leave a comment
Player tab finally looking good!!! YAY!
Sorry for the delay in updates, I was off flavortown for a week as I had a competitive programming competition I needed to grind for.
Anyways, imma continue with UI improvements in the coming days before shipping.
Cheers!
Jimbo is a chess engine, provided as a UCI-compliant binary.
Challenge the lichess bot, same as the demo link. WARNING: The bot may not always be online, since it runs on the free version of google colab. You can wait for it to come online, or you could directly download the engine binary(CLI), as described below.
Download a suitable version from the latest Github release. Please read the release notes, it has detailed instructions on which binary to download for your specific machine. The app itself is a UCI-compliant CLI, it can accept UCI commands. It is not meant to be used by users directly - usually, you’d use the binary in a chess GUI/Lichess bot. You can still try it out manually by writing UCI commands, as described in the readme.
Will ship soon!
Log in to leave a comment
Engine now stops search after it finds a forced checkmate, cutting out the delay in those situations.
Currently getting my bot rated on lichess, so it’s playing matches against as many other bots as possible. Will enable rated matches soon.
Log in to leave a comment
WARNING: The GUI scale breaks at any aspect ratio other than 16:9. If your aspect ratio is different, please change the resolution from settings temporarily.
This is a desktop application that lets you play chess offline, with all features, like going back moves to review your game, playing against an engine, exporting FEN and PGN, etc. To set up an engine, download a UCI compatible engine of your choice(mostly stockfish), and from the Engines tab, navigate to the downloaded executable, and add it. You can now select this engine as your opponent while playing.
Completed the app, and now (nearly) ready for shipping, after just a few minor patches and build!
Updates:
Log in to leave a comment
Made move searching a separate thread, so now you can pass the UCI “stop” command to terminate the search at that point and return the best move!
Log in to leave a comment
Forgive me for the absolutely horrible screenshot, but I’ve finished working with this project for today, so I must post a devlog.
Im not gonna work on the unit converter for a while, as I’m sick of trying to fix the UI. Till then, the date and time utils is 50% functionally complete, but the UI is still(clearly) barebones. I hope to finish off both the functionality and the UI of this tool by tomorrow.
Log in to leave a comment
Added an engine selector dialog where you can browse for your own downloaded UCI chess engine!
All added engines get stored in the game configuration, which is loaded on startup. These engines can be selected as an opponent in the New Game dialog
Log in to leave a comment
Log in to leave a comment
Refactored code to use a standard build (with .h header files) instead of my old “unity” build method.
Log in to leave a comment
Welcome to BytBeat, a desktop app that manages your playlist! Its main feature is that it maintains a list of songs with their YouTube URL, so you can download your songs from YT right in the app.
Moreover, BytBeat automatically downloads the song’s thumbnail from YouTube, and adds that as the cover art. This can be edited too. You can also edit metadata from the app.
For instructions, please refer to the readme, and check out the demo video in the GitHub release.
Uploaded version 2.0 on github!! Go check it out @ https://github.com/abhijato-c/BytBeat/releases/
Please refer to the demo video below for an idea on how to use.
Log in to leave a comment
#IMPORTANT NOTE FOR SHIPWRIGHTS
##(and anyone who wants to try this)
If you want to play against the bot, you can click on the demo link which will take you to lichess, and you can challenge the bot from the popup. The bot runs on google colab, and I will try to keep it online as long as possible. However, the bot being online is not guaranteed (especially at night, eastern time zone), as google colab doesn’t run code indefinitely. You can try sending a challenge again later, when the bot comes online.
If you wish to try out the UCI engine yourself on your machine, go to https://github.com/abhijato-c/Chess-Engine/releases/tag/v2.0.0 and download the appropriate binary(details in the release log). To run the binary, the readme has details on what commands the engine accepts. The readme also has instructions on how to get this running as your own lichess bot.
Completely refactored and revamped the Lichess bot code! Now with -
Log in to leave a comment
Updated the Lichess Bot script for better usability.
Log in to leave a comment
Added builds for windows and macos, go check out the latest release @ https://github.com/abhijato-c/Chess-Engine/releases !
Log in to leave a comment
Added magic bitboards implementation, so now it can compile on CPU’s without BMI2 architecture!
Now working on compiling all binaries and releasing them in a manner similar to how stockfish releases.
Another match won against stockfish level 4, this time with the new magic bitboard implementation! (I should seriously start playing against higher levels now)
Added a few lines that will allow this to compile (mostly)everywhere. All it needs now is support for magic bitboards, as the pext instruction(current implementation) is available only on certain cpu’s.
Will work on that tomorrow.
Attached screenshot below of Jimbo crushing Stockfish lvl 4!(after many losses, that is)
Log in to leave a comment
Added a file MakeOpeningBook.py that parses all PGN files in the ‘pgns’ directory, and makes an opening book from them.
I have downloaded around 250 PGN files for cow, containing a whopping 500K games from pgn mentor! This makes my opening book go from around 10mb to ~30mb, and I hope this version is more comprehensive.
Attached yet another screenshot of matches against stockfish for testing.
Log in to leave a comment
Minor speed & efficiency improvements. I’m burned out working on this engine, so I will now spend some time improving the opening book, and working on other projects.
Log in to leave a comment
Officially the longest I’ve spent hunting down a bug. A verry tiny and nearly insignificat bug in the evaluation code took me 6 entire hours to resolve. The original plan was for me to add castling to the bot(yes, the bot can’t castle yet), but looks like that’s postponed to tomorrow. For now, at least, the bot plays ever so slightly better.
Attached below is the one of dozens of games I made the bot play trying to debug…
Log in to leave a comment
Edited the bot to accept only unrated correspondence challenges. Code is now running on google collab, so it should be online more often.
Working on making it accept more time controls.
Challenge at https://lichess.org/@/M8000_bot with correspondence time control and casual, not rated.
Log in to leave a comment
Made board setup script
Realized I hadn’t touched the Lichess API bot code for a while, so I improved it a bit, and made it more readable!
Also ran some additional tests, and realized that tho it wins pretty consistently against stockfish level 4, it loses REALLY bad against lvl 5 ;c
I know exactly why this is happening(Static evaluation needs to be done using positional advantages, not just absolute material advantages), but fixing it makes my engine perform much WORSE as it reduces performance.
Log in to leave a comment
lichess? did u build it in java
Love the idea of a chess bot for a project haha.
The bot is written in python, and the engine is in C++. Also sorry for anybody who challenged me and didn’t get to play, I have now hosted the code on google colab so it can be online for longer.
Made train and test code, but model barely learns.
Log in to leave a comment
Added some UCI support to make it standardized!
The support is still minimal, and it only handles a fraction of commands, but I will keep adding more commands in the future.
Log in to leave a comment
Found bug that was causing engine to play bad. The move generation code for knights had a typo in it, causing it to not generate all possible moves for the knight. This caused the engine to “forget” that the knight can move in a certain way, therefore missing crucial moves.
Now can beat stockfish level 4 consistently when given 3 seconds per move.
Pasted image of a game that it had previously blundered away, but now won(when given the position where it started losing pieces)
Log in to leave a comment
Cleaned up some buggy code and got the engine running on Lichess, it performs decently well. Beat Stockfish level 4 at 3 seconds per move, but otherwise, performance is underwhelming. Looking into ways to make the engine stronger. Possible inefficiencies in iterative deepening code.
Log in to leave a comment
This is an old, buggy project that I recently started fixing. It is a really basic chess engine that can play on lichess bot API via python.
Log in to leave a comment