Inspiration
We took inspiration from the boss levels of Cuphead for our game. We wanted our 2D game to be set in space but invoke the same sense of urgency and difficulty that Cuphead has with its boss levels.
What it does
The game starts out with the player as a cat in a spaceship facing off against a giant Octopus. The Octopus stays to the right of the screen and shoots bullets at intelligent locations and at random intervals to confuse the player. The player can move about but not instantly due to the acceleration physics on the player and
How we built it
The main project was built in Unity. Art was made on Clip Studio Paint. Finally, the algorithm used to predict the player's movements was done separately in a Python script that was then integrated into the C# scripts by sharing data through CSV files.
Challenges we ran into
We initially wanted to design the intelligent path prediction algorithm with an AI model. However, we quickly realized that no pre-trained model we found would match well with our use case, and we were running low on time to train and test the model. We didn't know which type of model to use until we found Recurrent Neural Networks and long short-term memory networks too late into the project. So a hard pivot was made to use an optimization model instead.
Integrating the Python script into C# itself and getting the C# scripts to run the Python script presented its own challenges which required some workarounds. But we were not able to get those workarounds done in time.
Accomplishments that we're proud of
1) All of the art for the game was made in house during the duration of the hackathon 2) We still developed a more intelligent model for predicting player pathways in house using quadratic regression on position vs time. 3) The game feels smooth and fun to play!
What we learned
We learned that AI model development timelines are far longer and more involved than initially thought, requiring a lot resources and time to setup and even more resources to test and evaluate properly.
What's next
A minor next step would be to finish the integration for the quadratic regression model into the C# scripts. We are almost done; this would be about 15 minutes worth of dev work.
The main next step would be to develop, train, and test an LSTM system to further increase the boss's intelligence. We want to learn about how RNNs and LSTMs work and how to efficiently manage the data required to develop these models.
Log in or sign up for Devpost to join the conversation.