Inspiration
This project was inspired by the games HangMan and Connect 4. The idea of the hack was to combine the two simply iconic games to create a more interesting experience.
What it does
Connect4Man at a glance is a 6x7 Connect 4 game flanked on either side by 2 games of HangMan. At the start of the game each player chooses a string of up to 12 characters for their opponent to guess. A player can only place a chip in the Connect4 board when they guess one of the letters on their HangMan game correctly. The players then alternate guessing letters for their respective HangMan game. When a correct letter is guessed, the HangMan games are paused, until the player makes their Connect 4 move. If a player finishes their word, the other player is prompted again to enter in a word for their opponent. When their move is completed, the players continue alternating turns and this continues until either a player loses all their lives in HangMan in which the other player would win by default, or until the game of Connect 4 is won. When one of these end conditions is met, the game is terminated.
How we built it
We built Connect4Man using Python. We used a class based implementation, where we created a Connect 4 class and a HangMan class, and then combined them into a Connect4Man script in which an instance of Connect 4 and two instances of HangMan games were called.
Challenges we ran into
One big challenge that we ran into was implementing the timing factors and combing out bugs, especially in the HangMan parts of the game. We ran into some trouble freezing the HangMan games as a Connect 4 play was being made and ran into some race conditions when dealing with the situation when a player ran out of lives. We also had to cut down some features based on time constraints, such as simultaneous keyboard input. Despite these challenges, we were still able to make Connect4Man a fully functional and entertaining game.
Accomplishments that we're proud of
We are proud that we managed to join together two separate classic games from our childhoods in a way that increases the amount of game strategies you can implement in a fun way. Additionally, we are proud we managed to overcome the challenges outlined above.
What we learned
In this project we learned how to improve our skills in modular programming, and learned alot about debugging and implementation choices. We also learned a lot about collaborative programming using Git and GitHub, as well as different python library implementations.
What's next for Connect4Man
Connect4Man can be improved by allowing both players to be able to play simultaneously instead of taking turns. This could be done by implementing localized keyboard input so both players can navigate the game at the same time. Additionally, by introducing simultaneous play mode we can introduce new rules/gimmicks to raise the stakes. Lastly, we can implement more UI options, LAN multiplayer and with enough time, online multiplayer.
Built With
- python
- tk
Log in or sign up for Devpost to join the conversation.