Skip to content

hundred

Town simulation in which Jev chooses the next action for each of 100 NPCs while game rules handle everything else.

Projectprototype

Overview

Hundred is one of two apps in the Jev Lab monorepo, alongside Jev Shogi. One hundred NPCs live in a tiny town with hunger, money, jobs, relationships and memories. The engine keeps all the rules; Jev answers only one question per NPC: what should this person do next? The story emerges from the world applying those choices.

It is a showcase for game and simulation developers of the principle stated in the README: Jev only answers the next choice, engines keep the rules. The apps run locally with pnpm and start in a Rules mode that needs no API key; Jev is opt-in via a key in .env. The repo includes a pinned Nix development shell, a pnpm check command and Playwright browser tests.

What the decision model decides

TypeQuestionAnswers
ChoiceWhat should this person do next?—

How it works

  1. Simulation builds each NPC's state (needs, money, job, relationships, memories)
  2. Jev chooses the next action from the engine's allowed options
  3. Engine applies the action and updates the town
  4. Without a key, local rules make the choice instead

Strengths

  • Actions are always legal because the engine supplies the options
  • Runs without a key in Rules mode for comparison
  • Shows per-agent decisions at a scale of 100 NPCs

Caveats

  • Demo project, not a game framework
  • Jev mode requires an API key and makes many calls per tick
  • No licence stated

Getting started

`git clone https://github.com/jammaru/jev-lab.git && cd jev-lab && pnpm install && pnpm dev`, then open http://127.0.0.1:5188 for Hundred.

At a glance

Type
Project
Status
prototype
Language
TypeScript
Runtime
browser (Vite)
Has code
yes
Has tests
yes

Use cases and integrations

How curated lists describe it

  • 100 AI NPCs live in a tiny town. Jev chooses the next action; the world writes the story.

    hellogumbo/awesome-jev

Frequently asked questions

What does Jev decide in Hundred?

Each NPC's next action; everything else is handled by the simulation's rules.

Can I run it without a TypeSafe key?

Yes. It starts in local Rules mode and only uses Jev if you opt in.

What else is in Jev Lab?

Jev Shogi, where Jev picks the computer's reply from engine-legal moves.

Related projects

  • Real-time bot battles where you write a fighter's strategy in plain English and a System One model pilots it several times a second.

    ProjectbetaTypeScript
  • Bot that plays Red Alert 2 web skirmishes, with code handling mechanics and a decision model making stance, threat and timing calls.

    ServicebetaPython
  • Multiplayer 3D science-fantasy version of Houston's River Oaks District with Jev-powered NPC companion, chauffeur and smart drive.

    ProjectbetaTypeScript
  • Browser 3D planetary rover sandbox where a TypeSafe controller chooses the next action from complete candidates, versus a baseline.

    ProjectbetaTypeScript
  • Doom runs as a spacecraft payload over real flight software; Jev pilots from the ground every half second while Claude reviews.

    ProjectprototypePython
  • Minecraft agent where Hermes plans, Jev picks one bounded action at a time and a Mineflayer harness validates and executes.

    ProjectprototypeJavaScript