Don't we all love the retro beauty of gaming classics? So here we go - a brand new old recreation of Space Impact. Who needs boring keyboards these days? Let's funk up the game play and use ultrasonic sensors!

All for jacobsHack2018!

What it does and how it is built

SenseThePoke has a new, better, shinier physics engine. It is written in Javascript using Phaser3 and Matter.js. The controller is an ultrasonic sensor which the player hoovers over a tabletop, driving the game controls proportional to the sensor's distance to the table. The sensor's data is processed via an ESP32 unit into a web interface sending the control signals via websockets on wifi to the gaming computer. The ESP32's firmware has been written in Arduino.

Challenges we ran into

One major challenge we ran into was a particularly slow wifi connection introducing problematic latencies into the data channel of the ultrasonic sensor. Due to the wifi infrastructure at the venue this problem could only partly be solved. All of this included lots of troubleshooting with Wireshark, playing TCP and UDP against each other. Nonetheless the game is more than playable!

Accomplishments that we are proud of

Physics, b***!! It just looks and feels so awesome!

What we learned

None of us ever tried professional game development before. Phaser, Matter.js and low-latency network communication were completely new to us. This project was a hell of a learning curve!

Built With

Share this project: