Inspiration
The main issue with Chess was the prevalence of need of skill rather than just resurrecting your queen with magic (cough Lazarus project).
Our inspiration for this was Magic the Gathering, Slay the Spire, Balatro, Chess and the two minutes of the Doctor Who episode that we watched on 2x speed.
What it does
1v1 Mini-Chess game with deck building. You start with a draft of 22 cards and then play a round of the game, playing cards and then making a chess move. You repeat this until the king is taken (no check/mate as the cards may allow the king to avoid what would normally be a checkmate). When a round is over you can either choose to bring your units back from the dead or choose one of 6 new cards to add to your deck. Repeat this until someone has won 3 game and they are the ultimate evil chess world overlord champion.
How we built it
It was developed in Godot (using GDScript) and managed with GitHub To design all the pixel art for the project we Uused a variety of software, including GIMP, ms-paint and Asesprite.
Challenges we ran into
Most of us had not participated in projects with multiple developers so learning to use GitHub caused a few headaches, particularly around the first couple of merge conflicts. We learnt how to partially avoid these however and deal with them when they arose.
None of us have really used Godot before to a serious extent. Since we were both trying to work on the card portion of the game and the chess aspect simultaneously, it made coming back together and merging within git very tedious at times. At times our poor documentation of what we had written made expanding our code to include more features quite difficult. For a few of our features what should have been simple implementations took hours to implement and debug.
None of us had programmed seriously with either python or GDScript (the language used in Godot which is similar to python). This lead to a steep initial learning curve as we had to wrestle with not only the differences between our preferred languages and GDScript but also with the design philosophy of Godot which was substantially different to engines we had used in the past. Over the course of the weekend this became less of an issue however as we grew acquainted with the language and the intricacies of Godot.
Accomplishments that we're proud of
The beautiful works of art that are the pixel art on the cards as well as the ground shaking idea of evil magic chess.
What we learned
Mainly how to manage GitHub project files for a group properly and just generally how to use Godot.
What's next for Evil Magic Chess 3! (there is no 1 or 2)
Evil Magic Chess 3: 2 and its prequel Evil Magic Chess 7 are being worked on with great toil and will be available Q3 2077
HIghlights of our Brilliant code and exceptional foresight
- Two completely independent implementations for cards, one is for visual and one is for the actual object/logic
- selected_piece vs selectedPiece (these two are completely different and WILL crash if you use the wrong one). Bonus points, selectedPiece is for some reason an array, mostly of size one
- At Least 3 ways to move a piece (all implementations are used)
- We have 3 different implementations to check where the mouses location is and if it is touching something (independent for cards and chess pieces because why not)
Built With
- asesprite
- blood
- gdscript
- gimp
- godot
- ms-paint
- sweat
- tears


Log in or sign up for Devpost to join the conversation.