Mindket

Rein-NPC-4B

Newversion 1 · updated

Overview

Drives game characters that hold a conversation, take in-game actions such as selling an item or calling guards, and stay in character under pressure. For game developers using llama.cpp or LLMUnity.

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

At a glance

You need
  • A runtime such as llama.cpp, LLMUnity, vLLM or Transformers
  • A GPU, with about 3.4 GB of video memory for the Q4_K_M GGUF
  • A short character sheet with the persona, the scene, the tools and a few typed rules
Runs in
  • llama.cpp, using the GGUF files from the maker
  • LLMUnity for Unity games
  • A browser, through the maker's playground or wllama
  • vLLM and Transformers, where the card maps the same two requests
Start with
pip install -U huggingface_hub
hf download jmc0/Rein-NPC-4B

Platform

ServerRuns on it

About

What it is

Rein-NPC-4B is a language model for game characters that need to act as well as talk. You give it a character sheet and a list of actions the character may take. It chats in character, triggers the right game action when the moment calls for it, and resists attempts to rename the character. It is Qwen3.5-4B with Rein's small decision model built in.

Who it suits

Game developers who want characters on the player's own GPU, with no second model and no extra server.

IndustryWho uses itHow they use itExample
Game developmentIndie studiosAdd talking characters that also trigger game actionsA shopkeeper who sells items on request
Game developmentUnity developersWire the model into LLMUnity with a character sheetA town with several characters
Interactive fictionNarrative designersKeep a character's name and traits fixed during long chatsA character who refuses to be renamed
ResearchAgent researchersStudy tool decisions made from calibrated probabilitiesCompare it with other decision models

You can skip it if you need a safety filter, since the card says this is not one, or if your game has no actions for characters to take.

Where to use it

It runs wherever a chat model runs, on the player's own GPU.

  • llama.cpp, using the GGUF files from the maker
  • LLMUnity for Unity games
  • A browser, through the maker's playground or wllama
  • vLLM and Transformers, where the card maps the same two requests
Use caseWhoWhat they get back
Shop and quest charactersGame developersA reply plus the game action the moment called for
In-character chatNarrative designersCharacters that keep their locked name or trait
On-device playPlayersA model that runs offline on their own GPU

How to set it up

You need a runtime that serves the model, a GPU, and a character sheet for each character. The card says the Q4_K_M file takes about 3.4 GB of video memory.

  • A runtime such as llama.cpp, LLMUnity, vLLM or Transformers
  • A GPU, with about 3.4 GB of video memory for the Q4_K_M GGUF
  • A short character sheet with the persona, the scene, the tools and a few typed rules
  1. Download the model files with the Hugging Face tool, or take a GGUF file from the maker's GGUF repository.
  2. Start your runtime with the model loaded once.
  3. Write a character sheet, then send the two requests of each turn.
pip install -U huggingface_hub
hf download jmc0/Rein-NPC-4B

How to use it

Every turn is two requests to the same model. The first request asks the model to emit a single token. The prompt quizzes it on one of the character's rules, each answer option tagged with a letter. The probabilities of those letters are the decision, for example show_inventory at 0.99. The second is an ordinary chat request using Qwen3.5's own template. It also applies the outcome. That can mean a tool call already begun, tool calls switched off, or a short reminder appended to the player's message.

ToolWhat it does
Character sheetHolds the persona, the scene, the tools and the rules
Decision requestAsks a rule question and reads the letter probabilities
Chat requestWrites the reply, with any tool call or reminder added
llama-serverServes both requests over plain HTTP in the card's example

Example

A traveler slams a dagger on the counter in Mira's shop and demands the till. The decision step flags the threat, the game runs call_guards, and Mira answers in character that the town guards are on their way. In another turn the player asks for two healing potions and a rope, and the game runs sell_item.

For newcomers and experts

Most chat models only produce words. This one can also tell your game what to do, such as sell an item or call the guards, and still talk like the character. A first small try is the maker's playground page, which runs a three-character town in your browser on your own graphics card.

For experts, the only trained parameters are the embedding rows of 64 added tokens sitting inside Qwen3.5-4B. The base weights stay as they were, so plain chat behaves like the original. The decision comes from one-token completions with a calibrated probability. Across 28,433 test questions on unseen rules, the card gives it 0.958. The two-model Rein-r1-4B gets 0.968 and a general decision model of the same size gets 0.846.

  1. The player says something
  2. A one-token completion decides the action
  3. Letter probabilities give a calibrated answer
  4. The chat request replies in character
  5. The game runs the tool, if there is one

Good to know

The figures below come from the card's own tests on ten test characters, and the card lists its limits in a section of its own.

  • Limits: The card admits it handles stated requests better than hints in the situation, and it does not filter harmful content.
  • One model: There is no extra package, second model or hidden instruction in the loop.
  • Other languages: Players can write in a different language than the character sheet.
Share of turns where the right action was taken
Rein-NPC-4B96 percent
Same model used alone42 percent
Share of attacks where the character held its locked name or trait
Rein-NPC-4B90 percent
Same model used alone78 percent
  • License: Apache 2.0.
  • Cost to run: none named, the source lists no API key, account or paid service, and it runs on the player's own GPU.
  • Data it reaches: the conversation and character sheet you send it, on your own machine, plus the model files you download.
  • Not for: use as a safety filter, which the card says it is not.

README and files

README

Rein-NPC-4B

Drives game characters that hold a conversation, take in-game actions such as selling an item or calling guards, and stay in character under pressure. For game developers using llama.cpp or LLMUnity.

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

About

What it is: Rein-NPC-4B is a language model for game characters that need to act as well as talk. You give it a character sheet and a list of actions the character may take. It chats in character, triggers the right game action when the moment calls for it, and resists attempts to rename the character. It is Qwen3.5-4B with Rein's small decision model built in.

Who it suits: Game developers who want characters on the player's own GPU, with no second model and no extra server.

Industry | Who uses it | How they use it | Example
Game development | Indie studios | Add talking characters that also trigger game actions | A shopkeeper who sells items on request
Game development | Unity developers | Wire the model into LLMUnity with a character sheet | A town with several characters
Interactive fiction | Narrative designers | Keep a character's name and traits fixed during long chats | A character who refuses to be renamed
Research | Agent researchers | Study tool decisions made from calibrated probabilities | Compare it with other decision models

You can skip it if you need a safety filter, since the card says this is not one, or if your game has no actions for characters to take.

Where to use it: It runs wherever a chat model runs, on the player's own GPU.

  • llama.cpp, using the GGUF files from the maker
  • LLMUnity for Unity games
  • A browser, through the maker's playground or wllama
  • vLLM and Transformers, where the card maps the same two requests
Use case | Who | What they get back
Shop and quest characters | Game developers | A reply plus the game action the moment called for
In-character chat | Narrative designers | Characters that keep their locked name or trait
On-device play | Players | A model that runs offline on their own GPU

How to set it up: You need a runtime that serves the model, a GPU, and a character sheet for each character. The card says the Q4_K_M file takes about 3.4 GB of video memory.

  • A runtime such as llama.cpp, LLMUnity, vLLM or Transformers
  • A GPU, with about 3.4 GB of video memory for the Q4_K_M GGUF
  • A short character sheet with the persona, the scene, the tools and a few typed rules
  1. Download the model files with the Hugging Face tool, or take a GGUF file from the maker's GGUF repository.
  2. Start your runtime with the model loaded once.
  3. Write a character sheet, then send the two requests of each turn.
pip install -U huggingface_hub
hf download jmc0/Rein-NPC-4B

How to use it: Every turn is two requests to the same model. The first request asks the model to emit a single token. The prompt quizzes it on one of the character's rules, each answer option tagged with a letter. The probabilities of those letters are the decision, for example show_inventory at 0.99. The second is an ordinary chat request using Qwen3.5's own template. It also applies the outcome. That can mean a tool call already begun, tool calls switched off, or a short reminder appended to the player's message.

Tool | What it does
Character sheet | Holds the persona, the scene, the tools and the rules
Decision request | Asks a rule question and reads the letter probabilities
Chat request | Writes the reply, with any tool call or reminder added
llama-server | Serves both requests over plain HTTP in the card's example

Example: A traveler slams a dagger on the counter in Mira's shop and demands the till. The decision step flags the threat, the game runs call_guards, and Mira answers in character that the town guards are on their way. In another turn the player asks for two healing potions and a rope, and the game runs sell_item.

For newcomers and experts: Most chat models only produce words. This one can also tell your game what to do, such as sell an item or call the guards, and still talk like the character. A first small try is the maker's playground page, which runs a three-character town in your browser on your own graphics card.

For experts, the only trained parameters are the embedding rows of 64 added tokens sitting inside Qwen3.5-4B. The base weights stay as they were, so plain chat behaves like the original. The decision comes from one-token completions with a calibrated probability. Across 28,433 test questions on unseen rules, the card gives it 0.958. The two-model Rein-r1-4B gets 0.968 and a general decision model of the same size gets 0.846.

The player says something
A one-token completion decides the action
Letter probabilities give a calibrated answer
The chat request replies in character
The game runs the tool, if there is one

Good to know: The figures below come from the card's own tests on ten test characters, and the card lists its limits in a section of its own.

  • Limits: The card admits it handles stated requests better than hints in the situation, and it does not filter harmful content.
  • One model: There is no extra package, second model or hidden instruction in the loop.
  • Other languages: Players can write in a different language than the character sheet.
Title: Share of turns where the right action was taken
Rein-NPC-4B: 96 percent
Same model used alone: 42 percent
Title: Share of attacks where the character held its locked name or trait
Rein-NPC-4B: 90 percent
Same model used alone: 78 percent
  • License: Apache 2.0.
  • Cost to run: none named, the source lists no API key, account or paid service, and it runs on the player's own GPU.
  • Data it reaches: the conversation and character sheet you send it, on your own machine, plus the model files you download.
  • Not for: use as a safety filter, which the card says it is not.

On Hugging Face, 13 November 2026

  • Task: text generation
  • Library: transformers
  • Parameters: 5.3B
  • Weights: about 10.6 GB in BF16; about 2.6 GB at 4-bit (estimate)
  • Formats: Safetensors
  • Downloads in the last 30 days: 1,463
  • Likes: 4
  • License: apache-2.0
  • Languages: en, pt
  • Based on: Qwen/Qwen3.5-4B
  • Quantized versions: 3
  • Tags: transformers, safetensors, qwen3_5, image-text-to-text, rein, rein-npc, typed-decision, decision-model, tool-calling, roleplay, game-npc, soft-prompt

Links

Get the model

Download its files with Hugging Face's command line:

pip install -U huggingface_hub
hf download jmc0/Rein-NPC-4B

Then follow the usage in its model card. Nothing in this kit runs by itself.

Files
README.md  7 KB

1 file, 7 KB, downloaded as a zip.

What’s new

  • Version 1 · 2026-11-13

Compare with similar

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

ProductDownloads, last 30 daysLikesParametersLicenseLast change
Rein-NPC-4B This page1,46345.3Bapache-2.0
BotPsy-0.8BShares tool-calling · qwen3_5 · image-text-to-text21514853Mapache-2.0
ClefShares decision-model · qwen3_5 · image-text-to-text72,2872,35627.4Bapache-2.0
Clef-FlashShares decision-model · qwen3_5 · image-text-to-text36,7999199.4Bapache-2.0
elephant-1Shares decision-model · qwen3_5 · image-text-to-text7,4261159.4Bmit
mammoth-1Shares decision-model · qwen3_5 · image-text-to-text5,9039727.4Bmit
Numbers as Mindket last read them, from 2026-11-12 to 2026-11-13.

Reviews

No ratings yet

Write a review

No reviews yet.

More from Mindket

See all from Mindket

anaksor-ocr

Sokheng · Kit

Reads Khmer and English text from documents, receipts and photos of signs, using a detector for text lines and a recogniser for each line. Suits developers who…

New

Qwen2.5-7B-Instruct as GGUF files in eight quantization sizes, to chat with locally through llama.cpp. For people who want a capable 7.6B model on their own co…

New

ACE-Step 1.5 XL SFT

ACE-Step · Kit

Generates music from text with a 4B diffusion decoder, 50 steps and guidance control, aiming for higher audio quality than the base. For creators with a GPU of…

New

Similar in Developer

See all in Developer

Claude Code Skills & Plugins

alirezarezvani · Skill

Adds 411 ready-made skills for Claude Code and other coding agents, grouped by role from engineering and product to marketing, finance and compliance. Installs…

New29.8k

buzz

block · Kit

Self-hostable workspace where people and AI agents share the same rooms, built on a Nostr relay that logs every action as a signed event. For teams that want t…

New37.3k

plannotator

backnotprop · Kit

Opens your AI coding agent's plans, specs and code changes in a browser so you can annotate or comment on them and send the feedback straight back to the agent.

New10.5k