Activity

M8000

Shipped this project!

Payout issue fix

M8000

Minor code cleanup

Attachment
0
M8000

Added a prettifier and diff checker

Attachment
0
M8000

Case converter working like a charm!

Attachment
0
M8000

Made the Encryption tab!
Might add RSA alongside AES in a future update.

Attachment
0
M8000

Added JWT utilities happi

Attachment
0
M8000

JWT functionality nearly done, still need to work on the colors.

Attachment
0
M8000

Shipped this project!

Hours: 15.46
Cookies: 🍪 334
Multiplier: 21.6 cookies/hr

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.

M8000

Fixed an error with downloading songs, and published version 2.1!!
Go check it out on github releases!

Attachment
0
M8000

Fixed the volume slider UI, and some code cleanups!!
Any comments or suggestions? I’d be glad to take them and improve BytBeat!

Attachment
0
M8000

Yet more scaling improvements! Window resize handling with pyqt is getting out of hand…
Anyways, added some more icons instead of using unicode emojis.

Attachment
0
M8000

Added animations and functionality to the play mode buttons! The modes are:

  1. Play Once
  2. Sequential
  3. Shuffle
  4. Repeat

Also did some minor bugfixes and scaling improvements.

Attachment
0
M8000

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!

Attachment
1

Comments

goelaashvik
goelaashvik 27 days ago

nice

M8000

Continuing on the player tab, I finished the basic fell of the sidebar, now working on the main window.

Attachment
0
M8000

Working on a player tab, which you use only for playing music, with a better UI

Attachment
0
M8000

Shipped this project!

Hours: 11.97
Cookies: 🍪 185
Multiplier: 15.42 cookies/hr

Jimbo is a chess engine, provided as a UCI-compliant binary.

To play against the bot

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.


To download the binary

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.

M8000
  1. Switched opening book to Cerebellum, which is WAY better than the previous one
  2. Fixed an issue in the time taken to play moves for the lichess bot.

Will ship soon!

Attachment
1

Comments

chefpenguino
chefpenguino about 1 month ago

this is so sick

M8000

Working on the JWT utils.

Attachment
0
M8000

Completed the password utilities! I’m particularly proud of the improve password function, where the code modifies your current password to make it more secure.
This uses zxcvbn for strength checking.

Attachment
0
M8000
  1. Internal logic improvement - use Unmake move, instead of storing a copy of each board.
  2. Use compiler intrinsic blsr, instead of the previous, inefficient alternative.
Attachment
0
M8000

Working on password utils

Attachment
0
M8000

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.

Attachment
0
M8000

Finally finished the Date & time utilities!!

Attachment
Attachment
Attachment
0
M8000

Working on the UI

Attachment
0
M8000

Shipped this project!

Hours: 31.58
Cookies: 🍪 697
Multiplier: 22.06 cookies/hr

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.

M8000

Built for windows & published to itch.io!
(The linux and mac builds were not fully tested, so I took them down temporarily)

Attachment
1

Comments

46009361
46009361 about 1 month ago

I can’t see the Linux and macOS

M8000

Completed the app, and now (nearly) ready for shipping, after just a few minor patches and build!
Updates:

  1. Added an export tap for FEN & PGN
  2. Added a captured pieces and points advantage section
  3. Now set player names, both for yourself and engine.
Attachment
0
M8000

Completed the functionality for Date time utils, even though output is in an unreadable format. Next - fix UI

Attachment
0
M8000

Added a chess timer! Has a red theme for time < 1 min.
This integrates with the move history, so if you go back into the game, the time also rewinds.

Attachment
Attachment
0
M8000

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!

Attachment
0
M8000

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.

Attachment
0
M8000

Finished the Lorem Ipsum generator, and now working on the Unit Converter.
UI design is proving to be much harder than expected…

Attachment
Attachment
0
M8000

Added game rewind!
Now you can select a move from the move history, and go back to that position. Playing a move from there will revert the game to that state, essentially acting like a rewind/takeback.

Attachment
0
M8000

GUI now handles promotions.

Attachment
0
M8000

Made the home screen layout and it looks AWESOME!!
Am going to add functionality to some tools tmrw.

Attachment
0
M8000

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

Attachment
0
M8000

Working on an engines config tab where you can add your own engines!

Attachment
0
M8000
  1. Cleaned up and reduced the file count
  2. Improvements in SPEEEEEED(therefore performance)!
  3. Outputs “Illegal command” when required, rather than ignoring.
Attachment
0
M8000

Refactored code to use a standard build (with .h header files) instead of my old “unity” build method.

Attachment
0
M8000

Shipped this project!

Hours: 16.76
Cookies: 🍪 477
Multiplier: 28.43 cookies/hr

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.

M8000

Now automatically detects if ffmpeg(crucial dependency) is installed or not, and installs it for you!

Attachment
0
M8000

Shipped this project!

Hours: 2.98
Cookies: 🍪 84
Multiplier: 28.26 cookies/hr

#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.

M8000

Added a volume slider.
Plus some scaling improvements for better dynamic resizing.

Attachment
0
M8000
  1. Added a timer to the player
  2. General GUI improvements
  3. Dynamic scaling
Attachment
0
M8000

FINALLY ADDED A LIVE MUSIC PLAYER!!!
Now working on design, volume control, and features like loop, shuffle etc.

Attachment
0
M8000

Updates:

  1. Now you can bring up the “song” menu by right clicking on selected songs!
  2. Added options to update individual images, and redownload images.
  3. Split up monolith to make it cleaner.
Attachment
0
M8000

Completely refactored and revamped the Lichess bot code! Now with -

  1. Proper logs with python logging
  2. Handle multiple games without freezing
  3. Accept all time controls
  4. Use streaming instead of polling, comes with massive latency improvements.
  5. Use the standard chess.SimpleEngine to handle engines, so multiple engines work with it.
Attachment
0
M8000

Updated readme

Attachment
0
M8000

Added a menu option to change the default format files are downloaded in!

Attachment
0
M8000

Moved the action buttons to a topbar!
This makes the UI much cleaner and less cluttered, so imma go ahead and add more features now accessible from the topbar!

Attachment
Attachment
0
M8000

Added an option to change the download folder!
Now comes with a function that autodetects songs that are downloaded, and fills it in the status column.

Attachment
0
M8000

Added an option to autofill song details, like title and artist from URL!

0
M8000

Added a sort function, and sorts by title by default!
Plus some general bugfixes and UI improvements.

0
M8000

Complete app revamp, now using PyQT which has TONS of more options for design! Adding features and changing layouts is not vastly easier, not to mention the dark mode!!

Attachment
0
M8000

Updated the Lichess Bot script for better usability.

Attachment
0
M8000

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)

Attachment
1

Comments

aloyak
aloyak about 2 months ago

ngl this is pretty cool fr

M8000

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)

Attachment
0
M8000

Added support for castling!
Next - UI improvements(animate pieces moving, flip board to active player’s side), multiple engine support

1

Comments

locoexe49
locoexe49 about 2 months ago

Nice, I like it

M8000

Added New Game buttons, and engine integration! (please don’t comment on Jimbo’s moves, ik it is pathetic)
Next - castling support, and board flips to active player’s side.

0
M8000

Added UI for starting a new game, now working on the functionality.

Attachment
0
M8000

Added basic game logic and piece movement!
No detection for concepts like check/checkmate, so you can just capture someone’s king! (as in the video)

0
M8000

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.

Attachment
0
M8000

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.

Attachment
0
M8000

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…

Attachment
0
M8000

Added piece rendering, board setup and fen parsing!

Attachment
0
M8000

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.

Attachment
0
M8000

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.

Attachment
3

Comments

Legndary26
Legndary26 2 months ago

lichess? did u build it in java

Picklerick
Picklerick 2 months ago

Love the idea of a chess bot for a project haha.

M8000
M8000 2 months ago

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.

M8000

Made train and test code, but model barely learns.

Attachment
0
M8000

Now you can edit the song’s URL and redownload! Also fixed functionality issues regarding metadata.

Attachment
1

Comments

Duckers
Duckers 2 months ago

love this!!

M8000

Fixed a bug where the app would download the first song in a playlist instead of the one given in the URL. Also added functionality for selecting and deleting multiple entries at once.

Attachment
0
M8000

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.

Attachment
Attachment
0
M8000

Finally got the GUI to be functional!
Uploaded first release on github, but I expect there still to be a few bugs.

Attachment
0
M8000

Added a really basic UI, will continue to improve design after adding more functionality!

Attachment
0
M8000

Finished the backend utilities, now designing a GUI for accesibility

Attachment
0
M8000

This was a collection of unorganized codes(command line) that downloaded songs from youtube for a local playlist. Now making it into a fully functional GUI app

Attachment
0
M8000

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)

Attachment
0
M8000

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.

Attachment
0
M8000

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.

Attachment
Attachment
0