card-toolkit
v2.3 · RP-Hub 制卡工具箱
一个目录装齐「做一张角色卡所需的全部知识 + 能跑的工具 + 能判死的闸门」。
34 个专项知识库 · 4 个可执行闸门脚本 · 2 个零依赖工具 · 38 项自测全绿。
1.1 MB · zip · 解压后即可用,不依赖任何私有路径
解决什么问题
世界书为什么不触发?
关键词可达性五档审计,能直接告诉你这个键根本没人会写。
写着写着人物就崩了?
人设内核 + 防漂移锚点 + 面具状态机,一整套造人方法。
这次改完到底行不行?
4 个脚本跑出 exit 0 / exit 1,不靠感觉。
一句话:它不只告诉你「应该怎么写」,还能在你写完之后告诉你「这卡到底过没过」。
四个闸门脚本 v2.3 新增
在此之前,这个包里的知识全是「规范」——写得再细,也是靠 AI 自觉对照清单。这四个脚本补上了硬判定。
cd bundle/rphub-card-flow/scripts
# ① 读骨架:这张卡自己的分段、类别、字数分布
node skeleton.mjs 你的卡.json
# ② 过闸门:exit 0 = 过,exit 1 = 没过,必须修
node gate.mjs 你的卡.json --segment=1
# ③ 关键词可达性:A/B/S/C/D 五档
node key-audit.mjs 你的卡.json --list-bare
# ④ 正则体检:空容器、正文外壳守卫
node regex-doctor.mjs 你的卡.json
为什么 skeleton.mjs 重要:它不给你模板,它从你那张卡里读。
实测三张真实卡的 order 区间分别是 100~1,200,260、0~12,001、1,000~18,680——
段位进制从百万级到千级不等。任何「通用模板」套上去都会毁卡。
两个零依赖工具
| 工具 | 作用 |
| sta1n_image.py | 一键生图。中文提示词直接写,脚本自己转 tag。纯 Python 标准库。 |
| pack_card_png.py | 卡 JSON ⇄ PNG 互转,RP-Hub 认的 chara / ccv3 双块格式。 |
python3 scripts/sta1n_image.py "金发大小姐,校服,落地窗,午后逆光"
python3 scripts/pack_card_png.py --card 卡.json --cover 封面.png -o 卡.png
34 个专项知识库
不是 34 个独立技能,是随身知识库。按需读对应目录的 SKILL.md,别全读。
平台与架构
| rphub-master-skill | 平台底层:渲染管线、Protection 分片、世界书注入算法、iframe、PNG tEXt。679K,全包最大 |
| rph-card-architecture | 总架构选型:模式 A 多脚本渲染型 vs 模式 B 自包含应用型 |
| rph-advanced-design | 高级工程:四维驱动、变量持久化、事件池、抗注意力漂移 |
| rph-fanworld-theme | 二游/同人大世界卡:层级导引、父主题注入 |
| rph-version-contract | 平台版本边界:1.8.1 / 1.8.3 / 1.9.x 差异与迁移 |
| rph-migration-terms | 变量UI ↔ 正则UI 切换、术语消歧 |
世界书与关键词
| rp-worldbook | 条目内容与架构:七大分层、order 区间、常驻预算、条目粒度 |
| rph-keyword-review | 关键词写/审/修唯一入口。含 12 题错题分册 |
| rphub-card-flow | NEW带脚本的闸门层。裸名保底、可达性五档、主线令牌、position 陷阱 |
| rp-worldbook-position | 插入位置/深度/排序号/扫描深度四参数 |
| rp-card-mechanics | 「写进去了到底会不会生效」机制五问 |
| rp-pitfalls | 错题集:正则类/世界书类/UI类/角色类,按症状查 |
正则与 UI
| rp-regex | 正则脚本本身:保护分片精确判据、双字段同步、性能 |
| rp-ui | UI 工程机制:三种实现方式、状态栏/面板/按钮、iframe 高度 |
| rph-ui-style | UI 信息架构与视觉预算:信息域三分、配色槽位 |
流程与验收
| rp-card-flow | 生产流程编排(完整版):阶段/闸门/账本/双防线/断点续接 |
| card-workflow | 同上,精简执行版 |
| rph-release-gate | 交付前正向门禁清单(127K,最全的验收表) |
| rph-toolchain | API 生成、流式解析、Python 批量改卡、调试 |
角色与文风
| char-core | 单人角色内核:从零造一个人,且立得住 |
| char-multi | 多人卡:不混色、不炸预算 |
| char-mask-state | 面具状态机人设模板 |
| char-scene | 场景 / 地点 / NPC 配角 |
| char-anti-drift | 防漂移:演久了不歪、不回到过去 |
| char-nsfw | 亲密向写法:每次亲密都落回人设 |
| nsfw-style | 特化文风与文风世界书(写法层 / 特化层) |
| writing-principles | 读者要什么、LLM 训练怎么伤害它 |
| creative-writing-craft | 散文 / 场景 / 文体技法 |
| story-review | 稿后评审、连续性、校对 |
| reader-sim / character-sim | 读者体感 / 角色试演 |
| character-creation | 不知道找哪个时用的索引 |
生图
| guofeng-director | 国风视觉、电影感构图、双人互动、角色一致性诊断 |
| nai-imagegen | NovelAI 出图链路(走 STA1N 中转 + imgbb 图床) |
怎么开始
# 1. 解压
unzip card-toolkit-v2.3.zip
# 2. 环境自检(不出图、不花钱)
python3 card-toolkit/scripts/sta1n_image.py --check
# 3. 拿到一张卡,先读骨架,别急着写
cd card-toolkit/bundle/rphub-card-flow/scripts
node skeleton.mjs 你的卡.json
# 4. 写完一段立刻过闸门,看到 ❌ 就修
node gate.mjs 你的卡.json --segment=1
# 5. 交付前全卡体检
node gate.mjs 你的卡.json
node regex-doctor.mjs 你的卡.json
四条不许忘的:
① 素材目录只读 —— 用户投素材的地方永远不许写、不许改名、不许删。
② 版本号只增不减 —— 内容有任何变化(含修 bug)就升号。
③ 交付前先列目录确认号没被占用 —— 交付文件夹里的最新版才是基线。
④ 改了就要归档 —— 归档名写明「改了什么 / 删了什么 / 加了什么」。
许可与致谢
bundle/rphub-card-flow/ 来自
qq1049323397/rphub-card-flow,
MIT License。收录时保留完整正文、脚本与测试,仅对 rphub-card.mjs 做了一处向后兼容补丁
(支持顶层 entries 的纯世界书格式)。
其 references/ 的方法论源自该文作者对 ArC 超越之影、478 条目大世界卡样本、
以及酒馆预设侧写作约束的提炼。完整署名见 CREDITS.md。