NOTE FOR WEB USERS: SharedArrayBuffer support on itch.io currently only works properly with Chromium-based browsers. If the HTML5 build above does not work on your browser, check out this version instead which features no multi-threading support.

Source code available on GitHub!

A simple chess implementation in Godot. Supports all the rules of chess, including castling, en passant (HOLY HELL), promotion (currently, the UI only lets you promote to queen), and draws by insufficient material, fifty move rule, and threefold repetition. (Draws by fifty move rule and threefold repetition get auto-claimed, so there is no seventy five move rule or fivefold repetition.) Supports parsing and generating FEN strings, and generates the game's moves in SAN format as the game is played (similar to Lichess). Also, there is a really simple random move bot (to play against it, check the "Bot Enabled" box). Lastly, press F11 to toggle fullscreen if applicable.

This is my entry in Terry Cavanaugh's STOP WAITING FOR GODOT Jam! I had a lot of fun working on this project! I previously attempted to make chess in Godot some months ago but failed miserably. But after participating in the GMTK Game Jam 2021 and using Godot for that, I felt I had a better shot and that I could give it another go.

I learned a lot during this project, including how to use the built in drag and drop functionality, groups, singletons, and defining my own object classes! I documented some of the development process in the Log section of the GitHub README.md, go check it out if you're interested!

The full credits and attributions are in the game's Credits menu, but alternatively you can view them online here: CREDITS.md

Thanks for playing! (and please let me know if you find any bugs!)

- thearst3rd

StatusPrototype
PlatformsHTML5, Windows, macOS, Linux
Rating
Rated 5.0 out of 5 stars
(1 total ratings)
AuthorTerry Hearst
Made withGodot
TagsChess, Godot
Code licenseMIT License
Average sessionA few minutes
LinksSource code

Download

Download
stopwaitingforgodot-chess-v0.4-linux-x86_64.zip 15 MB
Download
stopwaitingforgodot-chess-v0.4-macos.zip 28 MB
Download
stopwaitingforgodot-chess-v0.4-windows.zip 14 MB

Development log

Comments

Log in with itch.io to leave a comment.

Why does the download for Linux indicate that it is a 64 bit version, but the Windows version does not? I use MX-15 Debian Jessie 32 bit and can play many 32 bit Windows games using Wine. I can't play your games.

I believe those are the default names exported from Godot. The Windows build is a 64 bit build so it’s likely not playable on 32 bit systems. My apologies.

If you want to play chess on a much better program than this one, visit https://lichess.org :)

Smooth, smooth experience. The engine looks very very polished, I really dig it. 

I am also planning to do a chess engine / game in the near future, did you have a lot of work to do for the rendering / UI / UX ?

Cheers on your game btw !

Thanks for the comments!

Making the UI felt pretty easy to do once I wrapped my head around things. I’m not totally sure I did everything the “right” way, but for the weekend game jam I think what I ended up with was pretty good. The source code is available on GitHub, feel free to check it out!

(+1)

Nice, I'll go check it out !

Wow, the UI and the drag drop is smooth. Almost like lichess or chess.com i would say. However, the AI moves seems to be random? I managed to checkmate in a few steps lol. But it's amazing to see Godot can make so many type of games! Cheers!

Thanks for the comments! I did in fact make this look like Lichess, in fact the piece graphics I used are one of the ones created specifically for Lichess (but that anyone can use under the Creative Commons license). I also made the SAN display on the right look pretty similar to Lichess.

And yep, as stated in the description the bot is simply a random mover :) I didn’t expect to have time to implement an actual chess AI, but I figured that there needed to be at least some kind of single-player experience so I added that in. A proper “AI” may be coming in the future :)

Thanks for playing!