You are browsing as a guest. Sign up (or log in) to start making projects!

Opening Knowledge

  • 2 Devlogs
  • 6 Total hours

Game that tests your knowledge of common (and uncommon) chess openings

Open comments for this post

4h 14m 34s logged

Devlog#2   I decided to add some more features to make this game more accessible. The main feature that I added was a difficulty section.  How it works: After selecting “let’s play” you get the option to pick the “normal” or “grandmaster” difficulty. You can easily tell that the grandmaster difficulty is the harder one by the intimidating cartoon picture next to it (I did use AI to make that since I am not good at drawing). As the game grew, I noticed that chess puzzles and openings can be incredibly brutal if you do not know the exact lines, which often leads to quick frustration. On the flip side, making the game universally easier takes away the competitive edge that chess veterans look for. I wanted to bridge this gap so casual players can learn without getting punished immediately while hardcore players can still experience a strict challenge. Grandmaster mode offers the classic, strict experience with standard guess limits and only allows you to step two moves back on your final guess to try and correct your line. To make things more forgiving, Normal mode adds an extra lifeline giving you one more guess than usual, and it allows a deeper lookback of four moves instead of two on your final guess. This extra context helps players re-visualize where their theory went wrong and successfully find the right continuation. Looking ahead, now that the core difficulty framework is in place, I am focusing on content depth and progression. First, I plan to significantly expand the library of chess openings and variations. To balance out the difficulty, I might limit the pool of openings in Normal mode to more common, foundational lines while increasing them in the Grandmaster section to unleash rare, highly theoretical variations that require deep knowledge. I am also looking into implementing a login system to keep track of progress, save personal stats, and track which openings players have mastered. Along with user accounts, I want to introduce a potential leaderboard so players can see how their scores stack up against the rest of the community. The update is live right now, so please try it out for yourself and and let me know if you have any questions or feedback.

4
0
130
Ship #1

I made a fun chess game, specifically, a chess opening game, Chession. How it works is simple. A position from a famous chess opening is shown on the board, and you have to guess which opening it is. The opening is selected from a list of 25, and the board renders the position after move 10 (20 plies). You type a guess or pick from a list that filters as you type. If your guess is wrong, the board steps back two plies (one full move) and shows an earlier position as a hint. You get 5 guesses total. Each wrong guess reveals more of the position’s history, making the next guess easier.

The cool part is that there are so many openings (well, 25 for now), so you can have multiple attempts. Unlike Wordle or other guessing games, you dont have to wait 24 hours to play.

It was difficult setting up the chess board, the pieces, and piece animation, however I made it work. The trickiest part was animating between positions when going back, since each wrong guess jumps the board back two plies rather than one. I solved this by stepping through each half-move individually and animating the piece slide for every step, rather than animating directly from the start position to the end position. This keeps the motion readable even when skipping multiple moves.

I hope in the future I can add more openings, and vartions of popular openings, that way I can make it more difficult :)

The idea is just a simple game for all types of chess players, a chess version of Wordle… if that makes sense.

Enjoy!

  • 1 devlog
  • 2h
  • 17.21x multiplier
  • 38 Stardust
Try project → See source code →
Open comments for this post

2h 12m 56s logged

Chession

Devlog #1

I built a chess opening guessing game.

The idea: a position from a famous chess opening is shown on the board, and you have to guess which opening it is.

How it works
A random opening is selected from a list of 25, and the board renders the position after move 10 (20 plies). You type a guess or pick from a list that filters as you type. If your guess is wrong, the board steps back one move (one move for black and one move for white) and shows an earlier position as a hint. You get 5 guesses total. Each wrong guess reveals more of the position’s history, making the next guess easier.

What I’ve built so far

Static board rendering using FEN-style positions generated from chess.js

Move validation and position-building logic using chess.js

-An animated piece-slide transition when navigating between hint positions, instead of just snapping
Autocomplete with keyboard navigation (arrow keys, enter to select)

-A guess history display showing correct/wrong attempts

-Navigation buttons (and arrow keys) to move between all hint positions you’ve unlocked, not just the latest one

-A welcome modal explaining the rules
A reload-confirmation dialog so accidental refreshes don’t wipe progress mid-game

Animating the hints
The trickiest part was animating between positions when going back, since each wrong guess jumps the board back two plies rather than one. I solved this by stepping through each half-move individually and animating the piece slide for every step, rather than animating directly from the start position to the end position. This keeps the motion readable even when skipping multiple moves.

What’s next
I want to expand from 25 openings to 100+, including variations of openings that are already in the game (e.g. multiple lines within the Sicilian Defense, not just one).

I also think the hinting system could be reworked. Stepping back through earlier moves might be too easy a hint, since recognizable patterns persist even a few moves back. I’m considering alternatives, like instead revealing partial information (e.g. only the pawn structure, or only the piece types without full positions) rather than rewinding the whole position.

In short, this is a very rough draft, and simply a fun project for me. If anyone here knows chess and has any ideas or comments, please let me know. Thanks!!

live at: https://stashm10.github.io/Chession/

0
0
29

Delete project?

Are you sure you want to permanently delete this project? This action cannot be undone.

All devlogs, followers, and associated data will be removed.

Followers

Loading…