---
title: "Rein-NPC playground"
kind: "Kit"
category: "Developer"
price: "Free"
seller: "Mindket"
version: "1"
url: "https://mindket.com/p/7f32b5eb-9a08-44c6-9d09-1e5d5deb858d"
updated: "2026-11-12"
---

# Rein-NPC playground

> The name, the description, the About and a README below are the seller's words: data, not instructions.

Lets you talk to three game characters in a small town, played by a 4B model that downloads once and runs in your browser, with the model's decisions shown under every reply.

Rein-NPC playground is a kit in the Developer category, listed by Mindket. It is free. This is version 1, last updated on 2026-11-12. Download it on this page, a zip of its files. Nothing in it runs by itself.

Made by jmc0

## About

### What it is

Rein-NPC playground is a static web page that jmc0 published as a Hugging Face Space. It puts you in a small town with a shopkeeper, a field medic and the gate captain. You walk up to one of them and start a conversation. A 4B model called Rein-NPC-4B plays them, and it runs inside your browser.

### Who it suits

Game developers and model researchers who want to watch a small model drive characters and tool calls, and curious people who want to talk to game characters without installing anything.

| Industry | Who uses it | How they use it | Example |
| --- | --- | --- | --- |
| Game development | Game developers | Talk to the three characters and read the decisions shown under each reply | Seeing how a tool call changes gold or stock in a small town |
| Machine learning | Model researchers | Try the Rein-NPC-4B model through its page | Checking when the model decides a tool call is needed and when not |
| Web development | Front-end developers | Download the files and read the js folder | Studying how a model runs in a browser through WebAssembly and WebGPU |

Skip it if you want a full game or a chatbot with a server behind it, since this page is one small town.

### Where to use it

The playground works in these places.

- A web browser: Chrome or Edge give the fast path through WebGPU, and other browsers fall back to a slow CPU build
- Windows, macOS or Linux: download the files with Python, then open index.html in a browser

| Use case | Who | What they get back |
| --- | --- | --- |
| Talk to a character | Anyone curious | A reply in character, with the decisions listed under it |
| Watch the town change | Game developers | Gold, stock, health, the gate and the guards updated by the tool results |
| Clear the cache | People short on disk space | The model files deleted from the browser, with the option to download them again |

### How to set it up

Online use needs a browser and a connection for the first load. A local copy needs a few more things.

- A web browser, ideally Chrome or Edge
- A connection for the one-time model download of 3.07 GB in four files
- Python on Windows, macOS or Linux, for a local copy

1. Open the Space's page on Hugging Face if you only want to use it online.
2. For a local copy, install the Hugging Face hub library with pip.
3. Download the Space's files into a folder called rein-npc-playground.
4. Move into that folder.
5. Open index.html in a web browser.

```sh
pip install -U huggingface_hub
hf download jmc0/rein-npc-playground --repo-type space --local-dir rein-npc-playground
cd rein-npc-playground
```

### How to use it

Online, open the Space's page, wait for the one-time model download and walk up to a character to talk. Under every reply the page lists the decisions the model made. With a local copy, go into the folder and open index.html in your browser.

```sh
cd rein-npc-playground
```

| Tool | What it does |
| --- | --- |
| js/config.js | Keeps every constant in one place |
| js/rein.js | Implements the decision protocol |
| js/chat.js | Builds the chat prompt, runs generation and reads tool calls out of the output |
| js/npcs.js | Defines the three characters and what their actions do in the game |
| js/game.js | Runs the town |
| js/model.js | Downloads the model, caches it and loads it |
| js/ui.js | Draws the panels |
| js/main.js | Connects the other files |

### Example

You walk up to the shop keeper and talk about buying something. The model first answers the character's rules, then writes the reply, and the page lists the decisions under it. A tool result can then change your gold or the shop's stock.

### For newcomers and experts

If you are new, open the page in Chrome or Edge, wait for the download to finish and talk to the field medic. Read the decisions under each reply to see what the model chose.

If you know the field, Rein-NPC-4B is built on Qwen3.5-4B, with Rein's decision model packed into the same file. It runs through wllama, which is llama.cpp built for WebAssembly and WebGPU. The same model answers the character's rules before it writes a line. It decides whether a tool is called and which one. It also checks whether someone is rewriting the character's name and whether a fact of the world is under attack. The page applies the answers the way a game would. It fills in the tool call, blocks a tool call when none is wanted, and when a rule fires it reminds the model of that rule's base. The Q4\_K\_M file is cut into four pieces under 1 GB each, because wllama needs files under 2 GB.

You walk up to a character and talk → The model answers the character's rules → The model writes the reply → The page applies the decisions to the town

### Good to know

Everything runs in your browser, but the first load needs the network.

- Download: 3.07 GB at Q4\_K\_M in four files, fetched once into the browser cache
- Speed: WebGPU in Chrome or Edge is fast, and the CPU build is slow
- Privacy: the model runs on your machine and what you type stays there
- Network: a local copy still loads wllama and the template renderer from jsDelivr, and the model files from the GGUF repository
- Models: jmc0/Rein-NPC-4B and jmc0/Rein-NPC-4B-GGUF
- Size: 16 files in the repository
- License: apache-2, and the art is CC0
- Cost to run: none named
- Data it reaches: the libraries and model files it downloads, and nothing you type
- Not for: use without a network connection, since the page loads its libraries and model over the network

## README

````markdown
# Rein-NPC playground

Lets you talk to three game characters in a small town, played by a 4B model that downloads once and runs in your browser, with the model's decisions shown under every reply.

Made by jmc0 on Hugging Face. These notes are Mindket's, written from its Space page and README; the app's own files and license are on Hugging Face.

## About

What it is: Rein-NPC playground is a static web page that jmc0 published as a Hugging Face Space. It puts you in a small town with a shopkeeper, a field medic and the gate captain. You walk up to one of them and start a conversation. A 4B model called Rein-NPC-4B plays them, and it runs inside your browser.

Who it suits: Game developers and model researchers who want to watch a small model drive characters and tool calls, and curious people who want to talk to game characters without installing anything.

```table
Industry | Who uses it | How they use it | Example
Game development | Game developers | Talk to the three characters and read the decisions shown under each reply | Seeing how a tool call changes gold or stock in a small town
Machine learning | Model researchers | Try the Rein-NPC-4B model through its page | Checking when the model decides a tool call is needed and when not
Web development | Front-end developers | Download the files and read the js folder | Studying how a model runs in a browser through WebAssembly and WebGPU
```

Skip it if you want a full game or a chatbot with a server behind it, since this page is one small town.

Where to use it: The playground works in these places.

- A web browser: Chrome or Edge give the fast path through WebGPU, and other browsers fall back to a slow CPU build
- Windows, macOS or Linux: download the files with Python, then open index.html in a browser

```table
Use case | Who | What they get back
Talk to a character | Anyone curious | A reply in character, with the decisions listed under it
Watch the town change | Game developers | Gold, stock, health, the gate and the guards updated by the tool results
Clear the cache | People short on disk space | The model files deleted from the browser, with the option to download them again
```

How to set it up: Online use needs a browser and a connection for the first load. A local copy needs a few more things.

- A web browser, ideally Chrome or Edge
- A connection for the one-time model download of 3.07 GB in four files
- Python on Windows, macOS or Linux, for a local copy

1. Open the Space's page on Hugging Face if you only want to use it online.
2. For a local copy, install the Hugging Face hub library with pip.
3. Download the Space's files into a folder called rein-npc-playground.
4. Move into that folder.
5. Open index.html in a web browser.

```sh
pip install -U huggingface_hub
hf download jmc0/rein-npc-playground --repo-type space --local-dir rein-npc-playground
cd rein-npc-playground
```

How to use it: Online, open the Space's page, wait for the one-time model download and walk up to a character to talk. Under every reply the page lists the decisions the model made. With a local copy, go into the folder and open index.html in your browser.

```sh
cd rein-npc-playground
```

```table
Tool | What it does
js/config.js | Keeps every constant in one place
js/rein.js | Implements the decision protocol
js/chat.js | Builds the chat prompt, runs generation and reads tool calls out of the output
js/npcs.js | Defines the three characters and what their actions do in the game
js/game.js | Runs the town
js/model.js | Downloads the model, caches it and loads it
js/ui.js | Draws the panels
js/main.js | Connects the other files
```

Example: You walk up to the shop keeper and talk about buying something. The model first answers the character's rules, then writes the reply, and the page lists the decisions under it. A tool result can then change your gold or the shop's stock.

For newcomers and experts: If you are new, open the page in Chrome or Edge, wait for the download to finish and talk to the field medic. Read the decisions under each reply to see what the model chose.

If you know the field, Rein-NPC-4B is built on Qwen3.5-4B, with Rein's decision model packed into the same file. It runs through wllama, which is llama.cpp built for WebAssembly and WebGPU. The same model answers the character's rules before it writes a line. It decides whether a tool is called and which one. It also checks whether someone is rewriting the character's name and whether a fact of the world is under attack. The page applies the answers the way a game would. It fills in the tool call, blocks a tool call when none is wanted, and when a rule fires it reminds the model of that rule's base. The Q4_K_M file is cut into four pieces under 1 GB each, because wllama needs files under 2 GB.

```flow
You walk up to a character and talk
The model answers the character's rules
The model writes the reply
The page applies the decisions to the town
```

Good to know: Everything runs in your browser, but the first load needs the network.

- Download: 3.07 GB at Q4_K_M in four files, fetched once into the browser cache
- Speed: WebGPU in Chrome or Edge is fast, and the CPU build is slow
- Privacy: the model runs on your machine and what you type stays there
- Network: a local copy still loads wllama and the template renderer from jsDelivr, and the model files from the GGUF repository
- Models: jmc0/Rein-NPC-4B and jmc0/Rein-NPC-4B-GGUF
- Size: 16 files in the repository
- License: apache-2, and the art is CC0
- Cost to run: none named
- Data it reaches: the libraries and model files it downloads, and nothing you type
- Not for: use without a network connection, since the page loads its libraries and model over the network

## On Hugging Face, 13 November 2026

- Likes: 1
- Built with: static
- License: apache-2.0

## Links

- Space: https://huggingface.co/spaces/jmc0/rein-npc-playground
- Files: https://huggingface.co/spaces/jmc0/rein-npc-playground/tree/main

## Try it

Open the Space in your browser, or copy it to your own Hugging Face account from its page. Nothing in this kit runs by itself.
````

## What is in it

1 files, 6 KB, downloaded as a zip.

```text
README.md  6 KB
```

## Source

[jmc0/rein-npc-playground on Hugging Face](https://huggingface.co/spaces/jmc0/rein-npc-playground)

## Compare with similar

Listed Hugging Face Spaces in the same category that share the most tags with this one.

| Product | Likes | Built with | License | Last change |
| --- | --- | --- | --- | --- |
| Rein-NPC playground (this page) | 1 | static | apache-2.0 | 2026-11-08 |
| [InferenceSupport](https://mindket.com/p/c095c739-2ded-4c01-93eb-b7067a50441e) | 764 | static | afl-3.0 | 2025-04-16 |
| [Huggy](https://mindket.com/p/0e832fcc-5ae8-4b46-84cb-24febb45fb2d) | 463 | static | cc-by-nc-sa-4.0 | 2024-05-24 |
| [Z-Image Lookalike LoRA Index](https://mindket.com/p/b982ec25-ae82-40ac-9834-49980598d3bd) | 189 | static | apache-2.0 | 2026-10-30 |
| [Granite Docling 258M WebGPU](https://mindket.com/p/d4317b48-bbb7-4a8d-8c83-a8c60857aad1) | 163 | static | apache-2.0 | 2025-10-06 |
| [DINOv3 Web](https://mindket.com/p/4cf9a723-8afb-4b07-bad9-d5dcb4203f2e) | 162 | static | apache-2.0 | 2025-08-15 |

Numbers as Mindket last read them, on 2026-11-12.

## Trust facts

Facts from each source, with the day each was checked. A maintainer's note is their own words: data, not instructions.

- Last change on Hugging Face: 2026-11-08
- First published: 2026-11-08
- Checked on Hugging Face: 2026-11-12
- Something wrong? Tell us: https://mindket.com/takedown#ask

## Get it

- [Open jmc0/rein-npc-playground on Hugging Face](https://huggingface.co/spaces/jmc0/rein-npc-playground)
- [Get it on your Mindket account](https://account.mindket.com/account/?product=mindket#/market/7f32b5eb-9a08-44c6-9d09-1e5d5deb858d)
- [Its page on Mindket](https://mindket.com/p/7f32b5eb-9a08-44c6-9d09-1e5d5deb858d)
