Welcome to the Hangar Open Beta. Please report any issue you encounter on GitHub!
AINPC β AI-Powered Conversational NPCs
Turn villagers into living characters. Walk up, say hi, and they answer β with real personality, real memory, and real actions. Works with every LLM provider: OpenRouter, Ollama, LM Studio, OpenAI, Groq, DeepSeek, Gemini, Anthropic, or anything OpenAI-compatible.
β¨ What can they do?
- π¬ Chat naturally β no commands needed. Walk within 10 blocks and type in chat. The NPC turns to face you, shows π while thinking, and answers for everyone nearby.
- β‘ Streaming replies β answers appear sentence-by-sentence as the model types.
- π World-aware β they know the time of day, weather, biome, your health, what you're holding, and who else is around. Ask a villager about the thunderstorm β they noticed.
- π οΈ They actually DO things (function calling):
- Hand you bread when you say you're hungry π
- Sell items and haggle over the price β payment taken from your inventory π°
- Show emotions with particles and sounds ππ
- Hand out quests, check your items, and pay rewards π
- π Greet you first when you walk up to them.
- π§ Remember you β per-player conversation memory, and they reply in your language.
π Make characters, not chatbots
/ainpc create Bob
/ainpc persona Bob a grumpy old blacksmith who secretly loves cats
That's it. Bob now stands there, greets passers-by, complains about his back, and will sell you an iron ingot for 2 emeralds β if you're polite.
π Bring your own AI
Every provider works. Run free local models with Ollama or LM Studio, or plug in OpenRouter/OpenAI/Anthropic/Groq/Gemini keys. Mix per-NPC: your quest-giver can run Claude while your random villagers run a local llama.
providers:
ollama: # free, local
type: openai
base-url: http://localhost:11434/v1
api-key: "ollama"
model: llama3.2
π Server-safe by design
- NPCs only give/sell whitelisted items β players can't sweet-talk them into free diamonds
- Amount caps, per-player cooldowns, one in-flight request per player
- All API calls run off the main thread β zero TPS impact
- NPCs are invulnerable, can't be traded with, can't turn into zombies
π¦ Quick start
- Drop the jar in
plugins/, restart - Edit
plugins/AINPC/config.ymlβ pick a provider, paste your key /ainpc reload, then/ainpc create <name>and start talking!
Full documentation, https://ainpc.programmer.in.th
Pinned Versions
Pages
Members
Owner