Inspiration

GridFront began with one question: what if a spreadsheet became an RTS battlefield?

Classic games such as Command & Conquer, Warcraft, and StarCraft inspired the economy, base building, and combat. Spreadsheets provided the interface: cells, formulas, keyboard navigation, and clipboard operations.

Instead of using traditional menus, players issue commands directly in the grid. To deploy a tank, select a valid cell and enter:

=TANK()

Formulas become commands, cells become territory, and spreadsheet skills become a tactical advantage.

What it does

The spreadsheet is the game map. Every base, worker, resource, building, defense, and combat unit occupies a cell.

Players can:

  • Deploy units and buildings through formulas.
  • Unlock technology and manage credits and power.
  • Build factories, power plants, walls, and turrets.
  • Copy, cut, paste, and relocate formations.
  • Let workers harvest and units fight autonomously.
  • Configure a preparation ceasefire.
  • Receive adaptive music, sound effects, and TTS alerts.
  • Play through direct peer-to-peer connections.

Power adds a strategic constraint:

$$ P_{\text{used}} \leq P_{\text{capacity}} $$

How we built it

GridFront uses:

  • Rust for the deterministic simulation, economy, pathfinding, combat, and multiplayer node.
  • Next.js and React for the spreadsheet battlefield and interactions.
  • Electron for desktop distribution on macOS, Windows, and Linux.
  • Iroh for peer-to-peer connectivity.
  • Web Audio and Speech Synthesis for procedural music, effects, and tactical announcements.

The simulation advances through deterministic ticks:

$$ S_{t+1}=F(S_t,C_t) $$

Given the same state and commands, every peer calculates the same result.

The prototype was developed iteratively with Codex and GPT‑5.6, covering product design, architecture, implementation, testing, packaging, UX, audio, documentation, and promotional material.

Challenges we ran into

The main challenge was making spreadsheet interaction feel fast enough for an RTS. We combined formula entry, keyboard navigation, cell selection, and clipboard operations with a continuously running simulation.

Workers initially blocked one another, so we introduced pathfinding with occupancy checks and destination reservations.

Construction also needed clear limits without feeling restrictive. Buildings now create a circular two-cell construction radius:

$$ (x-x_s)^2+(y-y_s)^2 \leq 2^2 $$

For multiplayer, deterministic Rust rules reduce divergence between peers. Procedural audio presented another challenge: musical intensity had to react to combat and danger without overpowering effects or spoken notifications.

Accomplishments

The first prototype includes:

  • A 576-cell battlefield.
  • Six formula-driven deployment options.
  • Six deterministic Rust tests.
  • Autonomous workers, tanks, and turrets.
  • Technology, power, construction, and ceasefire systems.
  • Spreadsheet-native navigation and clipboard tools.
  • Procedural sound, adaptive music, and TTS.
  • Electron packaging and Iroh P2P foundations.

What we learned

Spreadsheet mechanics can support much more than data entry: cells naturally represent territory, occupancy, range, and movement, while formulas provide a compact command language.

We also learned that separating deterministic game rules from presentation makes multiplayer synchronization, testing, and interface development significantly easier.

Most importantly, human–AI collaboration worked best when feedback was expressed as observable gameplay requirements. Each playtest exposed friction, and each issue became a concrete, testable improvement.

Built With

Share this project:

Updates