Grocery Game

A grocery store role-playing game.

Back to Basics

Why do we torture ourselves?

I’ve been asking this question a lot lately, spending the better part of two years wrestling with nobody. It has been very difficult to internalize the gaps in my innate skills.

I am not a 3D artist.

See Back to Basics to skip the following case study.

Adventures in Scope Creep

The original vision for this game was way too ambitious.

“You're too smart to go down any not-so-good-street.”

Dr. Seuss, “Oh, the Places You'll Go!”, 1990.

On the contrary, I’ve fell into one rabbit-hole after another letting the projects scope balloon into what it has become today: A dizzying array of branching dependencies[1] and half-baked ideas:

  • A brand new game engine, including three of its’ ports for C#, D, and Deno… 😬
  • A myriad of wgpu-native wrapper implementations in:
  • Wrappers for libfive in D and Deno
  • A multitude of prototypes, including:
    • Experimental ports in Godot and Luxe
    • Many experiments in CSG and playing with libfive Studio
  • etc.

All of this, not to benefit the end-goal, but my ego. This is hell. 🔥

The Scope Creep

“[Scope creep occurs] when the scope of a project is not properly defined, documented, or controlled.”[2]

Scope Creep web comic

The scope creep coming is coming for Johnny; it'll eat him alive!

Scope Creep, Agile Strip web comic

Unclear Objectives

“[A] lack of clarity paves the way for scope creep to slip in and do what it does — derail the project from its purpose.”

Scope Creep: Causes, Examples, and How to Avoid It (Naomi Chopra for Hatica, dev.to)

How to Avoid Scope Creep

Case Studies in Broad Expectations

Citybound

Citybound is an ambitious game from Anselm Eickhoff.

In all honesty, it’s really an overly-complicated prototype of an incredibly complex microscopic agent-based city simulation of thousands of individuals. A cursory skim of the project’s website makes clear just how complex its goals really are.

Much to the chagrin of its many fans, this game succumbed massive scope creep.

Grocery Game

Again, much as Citybound, because the project’s goals are overly broad in scope , the creep has bludgeoned it’s way into my world. This creep is insidious and as persistent as any of your baser instincts.

It’s as if the scope creep has set up camp and will not leave. This creep will go the way of Pennywise.

Put another way, I have wasted far too much time wrangling GPUs to no avail.

Back to Basics

Spreadsheet Games

Spreadsheet games are those in Excel, as well as games that involve parsing and sifting through a lot of data, e.g. the SimCity franchise, many extant Fantasy RPGs, World of Warcraft, and Fire Emblem. Think about the sorts of complex statistical models employed by video games in the last twenty years.

StoreOps™️

Screenshot of StoreOps Prototype
StoreOps™️, a spreadsheet-like role-playing game.[3]

StoreOps™️ is a new prototype to bring my dream back to basics.

Goals

The game uses agent-based models[5] to create an emergent system of fine-grained statistical models to represent the player’s grocery store.

Agents

  1. People
  2. Floorplan, a collection of agents, including:

See the SMART[4] goal-setting criteria.

People

  • Staff, including, but not limited to:
    • Managers
    • Stockers
    • Bakers
    • Clerks, and
    • Cashiers
  • “Families”, a.k.a. Customers

Introspection

To help players visualize the game’s complex systems, the game will include dashboards and a lot of tables, graphs, and charts built on D3.

Planning Mode

In planning mode players will paint the floorplan for a store.

Rooms, representing indoor spaces, will be automatically detected and include Public and Private rooms.

A floorplan is edited using a 2D floorplan editor, representing Walls (a graph of adjacent walls), Rooms, Shelves, Bathrooms, Checkstands, Departments (e.g. Deli, Bakery, Meat & Seafood, Quick-Service counters, and specialty counters), Offices (including, but not limited to, break rooms and security offices), Warehouses, and Stock rooms.

Soundtrack

The game may also include an expansive, procedurally generated soundtrack.

The music will be responsive to the player and their store, for example:

Stretch Goals

  • An embedded spreadsheet editor for nerds
  • Isometric or 3D store floorplan editor

Conclusion

Let's make it happen, captain!

Support the Game

If you’d like to play the game:

Subscribers of $5 or more on Patreon and other donors will also receive access to an Alpha version of the game.

Patreon PayPal Logo

Citations

Written on October 17, 2024