Think of regular chess, but with upgrades! In Upgraded Chess, you gather gems to level up your pieces and unleash new abilities.
Development Process
The game was built in Godot. I started by programming the classic rules of chess, and once that foundation was complete, I added new mechanics: gems, a shop to purchase abilities, and a window for activating abilities during a turn. After that, I focused on quality-of-life improvements, such as a settings menu where players can choose which abilities are included in a match, and an “Affected Pieces” button that highlights which pieces are influenced by a given ability.
Inheritance proved especially useful in this project because it allowed me to keep the code organized and reusable. For example, I created a base "piece" class that all chess pieces inherit from, and an "ability_in_shop" class that different abilities inherit from. This structure made it much easier to expand the game without rewriting large chunks of code.
Gameplay Overview
Before starting a match, in the settings menu, you can customize which abilities will be available.
At the start of every turn, both players gain a gem, and every three turns, new gems spawn across the board. Capture one with a piece, and you’ll add even more gems to your collection.
On your turn, you can use your gems to purchase abilities from the shop. Certain abilities take effect right away, while others need a few turns to charge up before they can be used. Each ability’s details are clearly displayed in the shop.
When it’s time to activate an ability, you can do so from the "Abilities to Activate" window on the right side of the screen. If you ever forget which pieces are affected, just use the "Affected Pieces" button to highlight them.
The game ends when a player captures their opponent’s king.
Want to try it out? You can play the game here.