← Back to projects
Apps · Published

BasketRogue

A basketball roguelike on the App Store: draft a squad, cross the country city by city, and win games one possession at a time — where every move you make is answered by a defender reading you.

A possession in progress — your action, and the defender's read of it.
A possession in progress — your action, and the defender's read of it.1 / 4

BasketRogue is on the App Store for iPhone, Mac and Vision Pro. You draft a squad, pick an X-Factor that defines the run, and play your way across a map of American cities — three choices of where to go next after every win, the route reversing direction each time you finish a league, bosses every fifth game, and the odd rivalry night where every opponent is a point better at everything.

A game is three possessions each, most points wins, overtime if it is tied. That is deliberately short, because the interesting part is not the scoreline — it is that every offensive action is answered. Shoot and the defender picks how to contest it. Pass and he decides whether to sit on the receiver or gamble on the lane. Drive and he chooses to cut you off, absorb the contact, or reach in. Each possession gives you an energy pool, nearly everything costs some of it, and at zero your only choices are a rushed shot or a turnover.

Underneath it is a probability model rather than an animation. A three starts around 36%, a mid-range 52%, a layup 75%, and then everything moves it: the shooter against that defender, strength in the post, whether you built an advantage, whether the shot was rushed, whether he is on a streak. Players run hot and cold — two makes and a shooter gets better, two misses and he gets worse, four hard actions in a row and he tires until you pass out of it. Bosses change a rule rather than just having better numbers: no threes at all, passing and driving cost extra, no fakes, or rebounds nearly impossible to get. From the eleventh round on, your own players start degrading, so a run ends eventually whatever you do.

There is not a single image or sound file in the project. Every sprite is drawn in code and every sound is generated as the game runs — about thirteen thousand lines of it, in Godot.

What it does

  • On the App Store for iPhone, Mac and Vision Pro
  • Every offensive action is answered by a defender choosing how to respond
  • Three possessions each, most points wins, overtime if tied
  • An energy pool per possession — at zero, you rush a shot or turn it over
  • Shooters run hot and cold, tire out, and lock in on defence
  • A map of US cities, three choices after each win, direction reversing every league
  • Bosses every fifth game that change a rule, not just the numbers
  • Rivalry nights: double reward, and every opponent a point better at everything
  • A pregame gamble before roughly one game in five
  • Your own squad degrades from round eleven, so no run lasts forever
  • No art or audio files at all — every sprite drawn and every sound generated in code

Built with: Godot 4, GDScript, iOS, macOS, visionOS