一个仅依赖标准库的Python shim,将CMaNGOS + playerbots的AI聊天路由到本地Ollama,为机器人赋予真实个性、记忆和相互调侃能力,全部在本地GPU上运行。

Stars

17

7 天增长

暂无数据

Fork 数

5

开放 Issue

0

开源协议

MIT

最近更新

2026-07-19

AI 仓库情报摘要
FR-AI / ANALYSIS

为什么值得关注

它让任何人都能运行经典魔兽服务器,其中数百个机器人拥有独特且持久的个性,并能互相闲聊——使用一个小巧、无依赖的脚本和本地LLM,无需外部服务即可让游戏世界充满生机。

适合谁使用

  • CMaNGOS服务器运维人员及魔兽私服爱好者
  • 对基于角色的NPC交互感兴趣的AI/LLM爱好者
  • 希望为游戏运行本地AI服务的家庭实验室玩家
  • 追求沉浸式机器人行为的角色扮演服务器管理员

典型使用场景

  • 在经典魔兽服务器中为AI控制的队友赋予独特个性
  • 启用机器人之间的闲聊,使NPC在队伍频道中互相打趣
  • 在实时游戏环境中测试和原型设计LLM角色提示词
  • 为旧游戏服务器模组运行私有、低延迟的AI后端

项目优势

  • 零外部依赖(仅标准库,无需pip安装)——可在原生Python上运行
  • 为数百个机器人提供确定性程序化个性,无需手动编写文件
  • 基于每(机器人,说话者)对的作用域会话记忆,避免跨玩家泄露
  • 出错时静默返回空行以及广泛的输出清理机制

使用前须知

  • 需要预先配置好的CMaNGOS + playerbots服务器(不包含在本仓库中)
  • 仅适用于该特定playerbots分支中的KoboldCpp格式LLM钩子
  • 默认未审查模型可能生成不当内容,运营商需自行管理安全

README 快速开始

wow-llm-personas

A tiny (~230-line, stdlib-only) Python shim that gives CMaNGOS + playerbots AI playerbots real personalities by routing their in-game "ai chat" through your local Ollama.

Party bots roast you in character, remember the last few things you said, and banter with each other, all on one consumer GPU, nothing leaving your LAN.

This is the shim behind [that r/homelab post] about ~1,800 vanilla-WoW bots with AI personalities. The bots and the server are stock projects; this repo is the glue that gives them a voice: the persona injection, the per-bot memory, and the bot-to-bot banter tuning.

Prerequisites

This shim only handles the personality layer. You need a working CMaNGOS 1.12 + playerbots server first (the one with the native LLM-chat hook). The fastest path, and the one I used, is the prebuilt Eluna-CMaNGOS-Classic Windows builds, which bundle the bots, Eluna, and the extractors:

You supply your own 1.12 game client. This repo distributes no game data and links to none. Once your bots chat at all server-side, point AiPlayerbot.LLMApiEndpoint at this shim and you're set (see Quick start).

How it works

The playerbots module already has a native "LLM chat" hook: when a bot talks, it POSTs a KoboldCpp-shaped request to whatever endpoint you configure:

POST /api/v1/generate   {"max_length": 100, "prompt": ""}
->                       {"results": [{"text": ""}]}

So instead of running KoboldCpp, you point it at this shim, which speaks that shape on the front and talks to Ollama on the back. In between, it does the three things that turn "an LLM answered" into "a character answered":

1. Per-bot persona injection

The server's prompt always contains Your name is .. The shim pulls that name out and, if personas/.txt exists, loads it as the **system me

项目描述

Give your CMaNGOS/playerbots AI companions real personalities with a local LLM — a tiny, dependency-free Python shim over Ollama. Per-bot personas, memory, and bot-to-bot banter, fully offline.

相关仓库与替代方案

根据分类、Topic 和编程语言匹配的相似项目。

gavamedia
精选
gavamedia GitHub avatar

deltafin

Deltafin is a research project that runs the 2.8-trillion-parameter Mixture-of-Experts model Kimi K3 on a single Apple Silicon Mac (e.g., M1 Max with 64 GB) at about 16 seconds per token, using exact, reproducible inference with local or streaming expert loading.

AI 与机器学习大语言模型
304
uzairansaruzi
精选
uzairansaruzi GitHub avatar

hermex

Hermex is a native SwiftUI iPhone app that lets you control a self-hosted Hermes AI agent directly from your phone, with no subscriptions, tracking, or third-party relay.

AI 与机器学习大语言模型
941
S40911120
精选
S40911120 GitHub avatar

recensa

Recensa is a self-hosted web viewer that indexes Claude Code session transcripts into a local SQLite database, enabling full-text search, replay, and audit of all past agent conversations without uploading data anywhere.

AI 与机器学习大语言模型
67