Inspiration
One of our team members developed the CaCha app within a project at the OTH Regensburg. This is an outdoor game of catch in teams of two or three people with location information.
At the start, there is a single hunter team which receives the location of the prey teams every 5 minutes. Their goal is to catch them by touching them. Caught teams change their role to hunters. There are additional challenges for the prey teams - some of them tied to a specific location - that give the hunters an advantage make the game very exciting by forcing the prey to take risks.
We found the idea quite nice and thought of an automated video summary of the game, ready to share with your friends!
What it does
After a match the location data is used to generate a short and entertaining video of the gameplay. You can share your win with your friends and relive the match, including your closest encounters with other teams in slow motion and other statistics like total distance run or speeds.
Of course this connects the unconnected by bringing people together and making the teams explore the location.
How we built it and challenges we ran into
As we built the visualization on an existing - but still in development - app, one of the biggest challenges was, that the log data from the app was not optimized for our needs. We still managed to reconstruct the required data by scraping the logs. We also performed spline interpolation to smooth the video.
Additionally we did a test run right here at Hackaburg, but we noticed an error within the app, that prevented us from starting the game. Luckily this could be fixed on short notice!
But how did we generate a video from this data?
We went with two different approaches, drawing each frame via plotly, a python plotting library, and with an interactive map built with Maptalks, an open-source javascript library, which also generates a short animated video from the gameplay.
Accomplishments that we're proud of
We were able to provide a - in our opinion - nice replay of the game, creating lovely memories.
What's next for CaCha Animation
The next step is to automate and integrate the video generation into the app backend.
Additionally we documented our log requirements. The CaCha App team will implement this in near future which will significantly improve the video generation process.
We also thought about an overview screen at the end of the video, showing statistics like total distance run per team. The according data is readily calculated. Zooming in on events, where hunters and prey are close would also be a nice enhancement to the already existing slow motion.
Built With
- javascript
- maptalks
- plotly
- python

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