Inspiration

We were inspired by other tower defense games like the Bloons series and Kingdom Rush for gameplay. For sound design, we were inspired by Reese's background in metal music as well as The Binding of Isaac. We decided to eschew the medieval aspects of royalty and instead have the main character be a child playing king of the hill pretending to be royalty. This idea was put forth by Jason, and we rolled with it.

What it does

Our original plan was to create a menu, two shops, and a gameplay screen. The gameplay would consist of the player standing in a stationary tower in the middle of the screen shooting projectiles at enemies that come from either side. There would be three waves, each consisting of successively stronger enemies with the final wave being the "boss fight". Shops appear after each wave with powerups available to purchase. There is an OST for the title screen, main game, and boss wave, along with sound effects for each weapon and getting hit.

How we built it

We built this game using the Pygame modules in Python with Visual Studio Code. No AI was used.

Challenges we ran into

This is our first hackathon, and we also came with only a basic knowledge of Python. In addition, we came in with an aggressively ambitious idea and we didn't want to compromise to make it simpler. As time went on in the competition, we continued to consult various YouTube tutorials to help us along. We encountered issues with every single class and module we attempted to use, but we overcame some of those challenges. On Sunday morning we decided to focus solely on the game state manager to have a functional product to show at judging.

Accomplishments that we're proud of

We are proud of Jason's work on drawing all of the sprites, backdrops, and buttons from scratch. We're also proud of Emma's work with making our code functional. Finally, just being here and sticking with our concept to the end instead of giving up and vibe coding the project is a reward in itself. If we had gone the vibe coding route, we would not have learned nearly as much!

What we learned

We learned how to create an effective game state manager, place images on the screen, create collisions between enemies and the main character's tower, how to play audio in Python, and how to create a physics engine, although the latter ended up not being used due to time constraints. Nearly every piece of code we wrote was learned from Pygame documentation and YouTube videos; we all had only a basic knowledge of Python before coming to this competition.

What's next for Kid of the Hill

We will be finishing this game in our spare time as a passion project, and release the files to the GitHub repository.

Share this project:

Updates

Submission history