As a team of four newcomers to hackathons, we had little experience in game development. Our first few hours were very difficult. We found deciding on a library/framework to build our game to be a challenge that presented several large problems. We had to learn audit quickly to avoid wasting time on a technology we wouldn't use while also carefully investing that auditing time to learn. Ultimately, we had to choose between Godot, a Python similar language, and Pygames, a Python library.
Our decision to use Pygames was based on the familiarity and ease of its syntax, numerous features. While using Godot's interface was more attractive to us because of its features, we struggled to get a footing in the development process due to its unfamiliar interface. As a result, in order to save time, we switched to Pygames as we could allocate time from learning the interface towards more productively learning game development.
Culling Card is an endless, turn-based card game where the player's goal is to survive as long as they can against increasingly strong opponents.
One thing to note about the game's deck system is that the deck is reshuffled back into the playing field. This means that when the deck is empty and the player needs to draw cards, the discard pile will be shuffled back into the deck so that the player can continue to draw cards.
HP (Health Points)/SH (Shield) /EN (Energy)
The player starts with 25 and can not regenerate.
The player has the chance to deflect at most six damage. Any damage in excess of this amount is applied to their HP.
Each card costs one unit of energy while the player can have at most three energy points. The player replenishes their energy after their turn, but can not regenerate during a turn.
Mobs and cards have three types which are red, green, and blue. The types form a triangle where red beats green, blue beats red, and green beats blue. This type triangle was inspired by the Pokemon franchise where fire beats grass, water beats fire, and grass beats water. For artistic purposes, the card types are card(red), ice(blue), and dagger(green). On the other hand, the enemy types are fire(red), ice(blue), and poison(green).
The first features we implemented were attaching images to objects and have those objects do an action when clicked on by the mouse. We chose to focus on these features because the game revolves around clicking cards in order to combat enemies. We then focused on creating a functional deck where the player can draw and discard cards from their hand. After finishing the deck mechanics, we focused on the combat of the game through creating enemies, and allowing the player to attack those enemies. Throughout the process, we simultaneously worked on adjusting the user interface and creating the art assets for the final product.
Challenges We Faced
The biggest challenge we faced was rendering the interface in terms of scaling sprites and properly displaying the information given to the player.
We named our game "Culling Card" based on the phrase "Calling Card" to evoke a sense of simultaneous destiny and doom since culling connotes to select from a group by decimation.
We would like to recognize HackUCI and TeaRiot for making this project possible. Credits to @ansimuz at https://ansimuz.itch.io/ for the background image used in the game.