Due to Heroku cancelling its free tier, the game was down for a while. Now I've migrated it to fly.io at http://flowgo-mini.fly.dev/!

------------------------------------------------------------------------------------------------

A game made for LowRezJam 2022. The challenge was to build a game in 64x64 resolution. It's called FlowGo Mini (迷你流棋) for the moment because it's a shrunken version of the complete game for the purpose of the lowrezjam. 

Introduction

FlowGo (流棋) is a 2-player abstract real-time strategy game. You play as mages who manipulate their individual Ods and do battle in the medium of the Luminaether. The object of the game is to have a greater Od presence on the game board (the Luminaether) by the end of the 60 second time limit. 

I was deeply inspired by the ancient game of Go (围棋), which had very simple rules but led to immensely deep strategy. In fact, FlowGo is my attempt at creating a real-time version of this great game. Using the Navier-Stokes equations in fluid mechanics to simulate the game board, one can imagine what it would look like for two armies to encircle each other, or for two individuals to be locked in a subconscious battle of wills. 

Since this version is a minified incarnation, you can think of it like 9x9 Go ;) I will make a version with bigger and more interesting boards after the jam finishes.

Controls 

  • Left Click - Drop Od    or Aethergel  in the Luminaether
  • Z - Od mode
  • X - Aethergel mode

Rules

  1. The Luminaether (game board) is divided into 48x48 = 2304 small cells. These cells are empty to start.
  2. FlowGo is played by 2 players, each injecting their individual Od (cyan for player, magenta for opponent) or the neutral Aethergel (yellow) into the Luminaether. The Od diffuses throughout the Luminaether medium.
  3. The object of FlowGo is to establish control over a greater number of the 2304 cells in the Luminaether than your opponent at the end of the 60 second time limit. 
  4. Control of a cell belongs to the player with a greater concentration of their Od in that cell. Visually, stronger concentrations will result in a more solid color. Aethergel is neutral and does not count toward control of either player.
  5. When two Ods of different color are in the same cell, the one with greater concentration will annihilate the other unless that cell contains Aethergel. When annihilation happens, the Luminaether will experience some turbulence and start pushing the ods and aethergel around.
  6. Injections are limited by your mana (at the top). Players begin with 100 mana. You cannot inject unless you have 5 mana or more. Mana recovers slowly over time.
    1. Od injections drain 5 mana at a time. 
    2. Aethergel injections drain 3 mana at a time.
  7. You may not inject in cells where your opponent's Od has significant presence. Your cursor will turn into an X to warn you.

Game Modes

FlowGo has both a single player mode and a multiplayer mode. 

Single Player 

In this mode you can play against AIs of various difficulty:

  • Neophyte: An AI prototype; pretty slow, indecisive and timid.
  • Adept: Adopts a mixed strategy, very bold but miscalculates as times
  • Master: An efficient machine. Calculates everything down to the individual cells and takes every chance it gets.

Multiplayer 

In this mode you will first join a lobby, from there the game server's matchmaking algorithm will find an opponent for you.

Technologies Used

  • javascript: Frontend, game logic
  • Colyseus: Backend, matchmaking
  • fly.io: Host server
  • Jos Stam's paper: Fluid simulation

Team

  • Game design & Programming: Radar 
  • SFX: FidelDelgado 
  • Music: LBere, FidelDelgado

Development log

Comments

Log in with itch.io to leave a comment.

(-1)

As someone who enjoys playing Go I liked this little game, though I feel the pace is a little to frantic to allow for proper strategic play. Ironically, it seems to me the AI actually gets worse with increased difficulty - I lost a couple of times against Neophyte before I got the hang of it, had only very few losses against Adept and absolutely crushed Master on my first try. Couldn’t really find a use for the Aethergel; I thought it might be useful for defense, but the only thing I managed to achieve was consistently losing whenever I used it.

(+1)

Super creative, love how it's a simple concept at a glance but there's actually so much complexity packed within it.

Atmosphere and music on point too.

Thanks! I'm glad you enjoyed it!

(+1)

Curious how you made it so "fluid". I love this game! 

(+1)

Thanks for playing! I basically used a discrete version of the Navier-Stokes equations in fluid mechanics. The algorithm is taken from Jos Stam's paper.

Thank you for making me smarter. Keep up the great ideas!