Inspiration
Tower defense is a great genre, but most of the action stays on a screen. We wanted to bring the battlefield into the physical world, so ARcher turns the player’s room into the map and their phone into a way to aim. Then we took the idea a step further with a custom glove that lets players draw and release a bow with their hand.
What it does
ARcher is an iPhone game where players scan a room and place a castle in augmented reality. They aim by pointing their phone and use the glove to draw and fire arrows at an enemy catapult and knights. Take out the catapult to win, and defend the castle from the knights or the siege is over.
How I built it
We built ARcher in Unity as a native iPhone AR game, using 3D assets for the castle, enemies, and battlefield. Players scan their room to place the castle, then use the phone’s camera to aim the bow. We connected a custom glove, built around a Seeed XIAO ESP32 and a flex sensor, to the Unity game with UDP over the phone’s hotspot.
Challenges I ran into
Connecting external custom hardware to a mobile game meant coordinating the glove’s sensor input, UDP messages, and Unity’s gameplay controls. The iPhone also needs local network permission to receive data from the glove. We’re testing the full ESP32-to-iPhone connection to make sure input arrives reliably during gameplay.
Accomplishments that I'm proud of
We built an AR tower-defense experience that places a playable castle in a real room. We integrated the glove input path into the Unity scene and added the iOS local network usage description. I’m proud that Siege AR brings together mobile AR, 3D game development, and a custom physical controller in one experience.
What I learned
I learned how software can connect digital experiences to the physical world through sensors, mobile devices, and real-time communication. That idea reaches beyond games: the same kinds of interactions could make software useful for training, education, accessibility, or hands-on tools. Building Siege AR gave me a better sense of how to combine hardware and software to make those experiences feel natural.
What's next for ARcher
We’re testing the glove connection on an actual iPhone and tuning how drawing and releasing feel in the game. Next, we want to refine the aiming and combat, and explore how the optional IMU data could add more natural control. Later, a VPS could support multiplayer coordination or shared game state.
Built With
- esp32
- flexsensor
- unity