Supply-chain gaming on Polkadot

Hello everyone,

I am building Endstate, a game on Polkadot and would like to gauge the interest of the community about simulation gaming and how I can improve the UX.

why it’s cool ?

You create and name a tribe of one of the 16 space fantasy species on a map of a ringworld with hex tiles containing biomes on it.
As a player, you optimize its supply chain to help your tribe win by giving roles to the tiles of your tribe.


First, you have to choose your starting position on a frontier before coaching your first cell.

Then, you spawn a tribe on it with a role like producer, logistic, military or explorer. The cell will decide to move, scout, raid, gossip and divide, depending on the biome and the surrounding.
Once conquered, a hex is yours and you can assign a role to it. The goal is to create some sort of supply-chain to optimize the efficiency of your tribe.

The dapp listen the events of the parachain and generate tags to explain to the player what is happening by categorizing events or situation.

How it works ?

The rules of the game look like this :

  • species are constituted of cells on a map ;

  • each cell want to prosper and can move, scout, attack, divide and gossip (resources and data) ;

  • 16 biomes, each species have an optimal one, represented through the coordinate on a triangle (a TCT) ;

  • all 16 species are defined by the coordinates of their favorite biome ;

  • depending on the situation and the equilibrium of the species on its optimal biome, the cells will react differently to optimize it’s growth’s projection ;

  • 3 resources, bio, mineral and flux, each a vertex of the triangle ;

  • each resources contribute differently the growth of the species, that produce population, economy, science and wear on the tile;

  • species’s military archetypes are defined as swarm, fortress and elite, same thing as the coordinate on the triangle ;

  • swarm beats elite who beats fortress who beats swarm (Lanchester model)

I designed the game starting from onchain constraints, the rules are on a crate, this is mostly maths for defensive coding, a turn for a tile is around 100 microseconds.
The guild war decision model (IAUS) was adapted inside the reliakit crate so each species react differently depending of its coordinates in no_sdt.
There is an autoturn that use the hook on the on_initialyze each block and executes 1 000 actions of hexes occupied on the map, so scalability is not an issue, completing a turn will just takes more blocks the bigger the map.
Each turn, the hook read the hex, send its content to the decision model, then if needed read the target of the gossip and get the result of the simulation to apply the effects to the tiles and possibly its target (2R +2W).

Through gossiping, there is osmosis and it organize the cells representing species

The next steps

I’m developing the diplomacy module for player decision through the gossiping between the cells, it will allow local modification of the comportment of the hex for non-aggression or inter species exchange.

After that, probably adding buildings on the hexes to reinforce the supply chain and its visibility by removing roles.

However it’s not as fun as it should be, I’m looking to improve that and look for feedback about what can be fun in a hungry cells simulation before the testnet.

About me :
I am vibecoding hard, did a Jam Implementation in Common Lisp and try to do useful and cool web3 things to bring more people to use crypto.
Before that I was a pencil pusher in the army, so excuse my enthusiasm.

Hey polykrate, this sounds like a big and cool undertaking - especially the way you are handling the on-chain math and the Lanchester combat models. Regarding making the ‘hungry cells’ simulation more fun, here are a few thoughts:

Make the “Supply Chain” visually satisfying - maybe adding clear visual indicators of the resources (Bio, Mineral, Flux) flowing between the hexes. Players love watching pulsating lines, glowing borders, or little moving particles that show their logistics network working optimally. If a cell is “hungry” or a supply line is cut, it should flash red or look visually withered so the player instantly knows where to intervene.

Make Disrupting Supply Chains as fun as Building them - perhaps emphasizing the fragility of the supply chain. If a player uses a “Swarm” to raid and cut off an enemy’s key “Logistic” hex, watching the enemy’s front-line “Fortress” cells slowly starve, weaken, or shrink due to lack of resources could be satisfying. It turns the game from just a “growth simulation” into tactical warfare.

Personify the “Gossip” - maybe turning the “gossip” into a dynamic UI element. Instead of just a dry tag like [Cell 44: Low Bio], have the cells generate mini status-bubbles or an in-game “chatter” ticker. E.g., “Sector 7 is starving for Flux!” or “Swarm cell mutating due to high Mineral osmosis.” Giving the hungry cells a tiny bit of personality or urgency might make the player care more about their survival.

Introduce “Mutations” or Visual Upgrades - Before adding traditional buildings, maybe the cells “mutate” when their specific coordinate on the TCT (triangle) is perfectly optimized. If a cell gets the perfect ratio of Bio/Mineral/Flux, it visually evolves or grows larger on the hex. This gives the player a micro-reward (a cool visual upgrade) for mastering the supply chain math.

Tools to Manage the “Auto-Turn” Chaos - maybe adding “Pause/Plan” mechanics or customizable alerts. For example, the player could set a tripwire: “Halt auto-turn and alert me if my Capital Cell is raided.” This allows the player to step back and manage the macro-strategy without feeling overwhelmed by the micro-speed of the blockchain simulation.

My $0.02 :man_shrugging:

Keep up the vibecoding!

Hello,

Thanks for your answer and ideas !

I’m gonna improve the visualization of the cells on the map. Right now I’m using tags and sliders, these data should be used to infer visual elements on the map, maybe directly buildings, the cell has this comportment, so it is composed of the following buildings.
There should be more stuff that blinks.

Also, I didn’t think about the tactical decisions that could be taken by the cells.
A cell consist of a species and :

  • Dwarves have coordinate near the mineral vertex, they play tall, move slowly, have low pop can grow old, low science and high eco, they fight as fortress ;
  • Gobelins have coordinate near the bio vertex, they play wide as a blob, can’t grow very old, move fast, have high pop low science and low eco, they fight as swarm ;
  • Elves have coordinate near the flux vertex, they play wide but dispersed, can grow old, move fast, have low pop high science and low eco, they fight as elite ;

The rock paper scissor is swarm > elite > fortress > swarm , at the operative level resources committed by the cells for war are injected into the Lanchester model to decide the issue.
Below, there is the tactical level I didn’t exploited yet, there is probably tactical decisions that could by taken by the cell to make it more interesting during combat, in complement of is Lanchester profile.
There is probably described in military litterature the tactical declinaison of the 3 lanchester archetypes and it should be doable to represent that in a nice way in the UX.