Inspiration

I've always been fascinated by magnets and magnetism. I do a lot of science experiments with my two sons, and magnets are something we keep coming back to because their behavior is simple to understand but can produce surprisingly complex results. The three of us also thoroughly enjoy puzzles.

That became the inspiration for Polarize: a puzzle game where attraction and repulsion aren't just part of the theme—they are the rules of the game.

I wanted to create something that players could understand quickly, but that would still make them stop and think: What happens if I make this move?

What it does

Polarize is a strategic logic puzzle game built around magnetic attraction and repulsion.

Players move positive and negative magnets around the board and try to guide each one to its matching target. Magnets interact with each other, so a single move can trigger a chain reaction across the board.

As the puzzles become more challenging, additional mechanics such as polarity reversal, portals, obstacles, and other board elements change how magnets behave.

The goal is simple: move every magnet to it's anchor base.

Getting there is the hard part.

How we built it

I built Polarize as a native iOS game using Swift and SwiftUI.

At the center of the game is a deterministic puzzle engine that controls movement, attraction and repulsion, polarity changes, portals, collisions, anchoring, and win conditions.

I also built tools specifically for creating and validating puzzles, including a solver that can search for find/confirm solutions, replay them, verify that levels are solvable, and help evaluate different puzzle designs.

Automated tests are used heavily throughout the project so that adding a new mechanic or changing a rule doesn't unexpectedly break existing levels.

Challenges we ran into

The biggest challenge was making magnetic interactions predictable. I wanted the magnetic interactions to feel as realistic as possible, using real principles of attraction and repulsion, while still keeping the gameplay intuitive and fun. Real magnetism can become complex very quickly, so I simplified the physics where necessary to make the reactions predictable, understandable, and satisfying for players.

Attraction and repulsion sound simple until several magnets start affecting one another during the same turn. I had to define exactly what happens when movement, reactions, polarity changes, portals, and completed magnets all interact.

Even changing the order of two rules could completely change the outcome of a puzzle.

Level design was another major challenge. A computer can tell me that a puzzle is solvable, but that doesn't mean the puzzle is fun. I still needed to create all levels myself, playtest and refine them so that solutions felt clever and satisfying instead of random or frustrating.

Accomplishments that we're proud of

I'm especially proud that Polarize became much more than a collection of hand-built puzzle boards.

The game now has a reusable rules engine, automated testing, solution replay, hint support, and a solver capable of validating puzzles before they ever reach a player.

I'm also proud of how much depth came from such a simple idea. Attraction and repulsion create situations where players have to think several moves ahead and predict how the entire board will react.

Watching an idea that began with experimenting with magnets with my sons grow into a complete puzzle game has been one of the most rewarding parts of the project.

What we learned

One of the biggest things I learned is that puzzle games depend heavily on consistency.

Players are willing to tackle difficult puzzles when they trust the rules. If the rules are predictable, complexity becomes a challenge. If they aren't predictable, complexity just feels frustrating.

I also learned how useful solvers and automated testing can be as creative tools. I originally thought of them primarily as ways to find bugs, but they became an important part of designing, evaluating, and experimenting with puzzles.

Building Polarize also reinforced something I enjoy about software development: sometimes a very small idea can produce a surprisingly deep system once you start exploring it.

What's next for Polarize - A Magnetising Puzzle

The next step is to keep expanding the puzzle system without losing the simplicity of the original idea.

I plan to add additional chapters with new puzzles and mechanics that create different kinds of magnetic interactions and gameplay, while continuing to improve the difficulty progression and level-design tools.

I'm also looking forward to getting Polarize into the hands of more players. Real player behavior will help show which puzzles are satisfying, which mechanics need clearer teaching, and where the game can be improved.

The long-term goal is to spark curiosity about magnets and the physics behind them, while sharing some of the excitement I’ve always found in science.

Built With

Share this project:

Updates

Submission history