A maze game for the curious, Shamaze3D.

🌀 Find your way out, or get lost in the fun!!!

Featured image

The Inspiration.

To quench my curiosity, I often visit Github’s Explore page to explore and discover cool projects shared by developers from around the world. It’s like a digital treasure hunt, and every so often, I stumble on something that sparks my curiosity.

One day, that ‘something’ was Astray. A maze game running in the browser, built with Three.js and Box2dWeb. I played it, loved it, and my first thought was “This should be on mobile!” That spark lit the path for what eventually became Shamaze3D logo

Playing with code.

I forked the code and began tinkering. My first attempt was adding an on-screen joystick to control the ball. It worked, but something about it felt… clunky (fixed and covering part of the maze).

So, I tried something different. Swipe-based control. Now you can click anywhere on the screen and drag in the direction you want the ball to roll. Like steering with invisible strings. It feels natural, fluid, and keeps the screen clean so the maze itself takes center stage.

Next, I added game sounds, polished the visuals, tweaked the game physics, and layered in a few extra features like high score and a splash screen.

Enter the maze.

Only one rule: Find the exit and escape the maze! Shamaze3D

To control the ball

It’s not timed… but your pride is on the line 😎 Shamaze3D

📦 Tech Stack

Shamaze3D

Fork It, Play It, Break It

You can play Shamaze3D right now in your browser. However, if you’re feeling adventurous, feel free to grab the code and play twist it into your own creation.

👉 Play Shamaze3D here 👉 Fork the GitHub repo here

Stay curious,

Sham.