资源文件总览
所属:参考手册 · 相关:config.yml 全配置 · 内置内容清单 · 数据存储 · 返回:首页
本页是 plugins/QinhRuins/ 目录的地图:每个文件 / 文件夹是什么、谁生成、能不能手改、玩法细节看哪一页。逐项核对自源码 QinhRuins.kt(首次启动释放哪些文件、init 了哪些数据 store)。
QR 的文件分两大类:
- 配方 / 内容文件(服主编辑,
/qr reload生效)——config.yml、templates/、generators/、loottables/、affixes.yml、palettes/、scripts/、lang/、schematics/。 - 运行时数据文件(QR 自动读写,勿手改)——
anchors.yml、discoveries.yml、loot_claims.yml、mech_fired.yml、vessels.yml、shared_vessels.yml、spins.yml、snapshots/。
目录树速览
plugins/QinhRuins/
├── config.yml # 主配置(见 配置文件.md)
│
├── templates/ # ◆ 遗迹模板(配方核心)
│ ├── _example/ # 内置示例(_ 开头被忽略,不当真遗迹)
│ │ ├── template.yml # 模板定义(身份 / 生成 / 战利品 / 门槛)
│ │ └── blueprint.yml # 玩法层(刷怪点 / 目标 / 机关 / 核心)
│ └── <你的模板id>/ # 每座遗迹一个文件夹
│ ├── template.yml # 模板定义
│ ├── structure.nbt # 结构方块本体(Bukkit 原生,save/import 生成)
│ └── blueprint.yml # 玩法层(可选)
│
├── generators/ # ◆ 放置档案(17 个内置「在哪生成」规则包)
│ ├── surface_overworld.yml # ……(完整 17 个见下表)
│ └── ...
│
├── loottables/ # ◆ 战利品表
│ ├── default.yml # 容器 / 宝箱默认表
│ ├── vault.yml # 宝库 / 解锁箱表
│ └── realm.yml # 秘境净化独占奖励表
│
├── affixes.yml # ◆ 词缀库(13 个内置启用秘境 强化修饰)
│
├── palettes/ # ◆ 程序化拼接调色板(默认空,服主自建)
│ └── <调色板id>.yml # 把多个小结构按规则拼成大遗迹
│
├── scripts/ # ◆ 词缀 JS 脚本
│ └── affix_example.js # 内置示例(script 类型词缀引用)
│
├── lang/ # ◆ 多语言文案(7 种内置语言)
│ ├── zh_cn/ # 每语言一文件夹,内含多个 *.yml
│ │ ├── commands.yml core.yml diag.yml editor.yml
│ │ └── gui.yml messages.yml realm.yml structure.yml
│ ├── en_US/ zh_tw/ ru_RU/ fr_FR/ vi_VN/ es_ES/
│
├── schematics/ # ◆ 待导入的 WorldEdit .schem(/qr import 的来源)
│ └── <文件>.schem
│
├── snapshots/ # ● 运行时:地形快照(生成前备份,移除时还原)
│
├── anchors.yml # ● 运行时:锚点实例数据
├── discoveries.yml # ● 运行时:玩家图鉴发现记录(可选进数据库)
├── loot_claims.yml # ● 运行时:宝箱 / 解锁箱领取记录(按人)
├── mech_fired.yml # ● 运行时:一次性机关已触发记录
├── vessels.yml # ● 运行时:容器战利品(每人独立滚)记录
├── shared_vessels.yml # ● 运行时:全服共享容器战利品记录
└── spins.yml # ● 运行时:净化老虎机抽取记录◆ = 配方 / 内容(可编辑) · ● = 运行时数据(勿手改)
一、配方 / 内容文件
config.yml — 主配置
插件总配置,首次启动从内置默认释放。全字段速查见 config.yml 全配置。改后 /qr reload 生效。顶部 config-version 勿手动改(自动迁移基线)。
templates/ — 遗迹模板
遗迹的身份证 + 方块本体 + 玩法层集合,配方核心。每座遗迹是 templates/<id>/ 一个文件夹:
| 文件 | 用途 | 谁生成 | 详见 |
|---|---|---|---|
template.yml | 模板定义本体(用哪个结构、长啥样、在哪生成、出什么战利品、进入门槛) | /qr save、/qr import、编辑器、手写 | 遗迹模板 |
structure.nbt | 遗迹方块本体(Bukkit 原生结构;文件名可由 template.yml 改) | /qr save(选区捕获)、/qr import(schem 转换)、/qr markers(重抓) | 结构文件 |
blueprint.yml | 玩法层:刷怪点 / 击杀目标 / 奖励箱 / 核心 / 机关 / 子结构变体 | /qr markers(标记块扫描)、可视化编辑器 save、手写 | 蓝图与目标 |
_开头的文件夹被忽略,不当真遗迹加载。内置templates/_example/含template.yml+blueprint.yml(无结构文件,仅作字段范例)。
加载顺序:TemplateRegistry 扫 templates/,再由 BlueprintRegistry 配对蓝图。
generators/ — 放置档案
「在哪生成」的可复用规则包(维度 / 世界 / 群系过滤、生成层、平整度、间距、概率)。模板用 generation.profile: <名> 引用,可局部覆盖。首次启动释放 17 个内置:
| 维度 / 类别 | 内置档案 |
|---|---|
| 主世界地表 | surface_overworld、surface_grassland、surface_desert、surface_snowy、surface_barren |
| 主世界地下 | underground_overworld、underground_lush、underground_dripstone |
| 主世界其它层 | sky_overworld、ocean_overworld、seabed_overworld |
| 下界 | surface_nether、underground_nether、sky_nether |
| 末地 | surface_end、underground_end、sky_end |
loottables/ — 战利品表
战利品条目库,被容器 / 宝箱 / 秘境奖励引用。首次启动释放 3 个内置:
| 文件 | 用途 | 引用处 |
|---|---|---|
default.yml | 默认战利品表 | 容器 / 宝箱缺省 |
vault.yml | 宝库 / 解锁箱表 | 蓝图 loot-chests |
realm.yml | 秘境净化独占奖励表 | realm.reward.loot-table(默认 realm) |
开启
realm.reward.per-tier-table后可加realm_t<层数>.yml按层覆盖。详见 战利品系统。
affixes.yml — 词缀库
秘境 强化修饰 定义(数量 / 等级 / 环境 / 规则 / 战利品五类)。首次启动释放,内置 13 个启用词缀(外加文件末尾两段注释示例 blood-ritual 命令型、scripted-trial 脚本型,去 # 即启用),含危险预算(danger)、奖励权重(reward)、互斥分组(group)、最低层数(min-tier)等字段。
架构红线:词缀让「怪变强」是委托 MythicMobs 提 level,QR 不算 stat。详见 词缀系统。
palettes/ — 程序化拼接调色板
把多个小结构(Tile)按规则拼成一座大遗迹,供 /qr genstruct <palette> 使用。默认空目录、无内置文件,由服主自建 <调色板id>.yml。详见 程序化生成。
scripts/ — 词缀 JS 脚本
script 类型词缀引用的 JavaScript(走 QinhCoreLib 的 GraalJS)。首次启动释放内置 affix_example.js。引用格式 qinhruins:文件.js:函数。详见 词缀脚本(JS)。
lang/ — 多语言文案
玩家可见的命令 / 战斗 / 探索消息。每种语言是一个文件夹,内含多个 .yml(loader 自动合并):commands.yml、core.yml、diag.yml、editor.yml、gui.yml、messages.yml、realm.yml、structure.yml。
内置 7 种语言:zh_cn(简中)、en_US(英文)、zh_tw(繁中)、ru_RU(俄)、fr_FR(法)、vi_VN(越)、es_ES(西)。缺失 key 自动回退 en_US。当前生效语言由 config.yml 的 language 决定。新增语言:复制 lang/en_US/ 改名翻译即可。
schematics/ — WorldEdit 导入源
/qr import <file> <id> 的来源目录(首次启动自动创建)。把 WorldEdit .schem 丢进来,导入时转为模板内的原生结构。import 的 file 参数自动补全本目录 .schem 文件。详见 结构文件。
二、运行时数据文件(勿手改)
这些由 QR 自动读写,绑具体世界坐标 / 玩家,手改易损坏数据。
| 文件 / 夹 | 内容 | 备注 |
|---|---|---|
anchors.yml | 锚点实例数据(哪个模板、坐标、朝向、尺寸、状态) | 世界里每座真实遗迹一条 |
snapshots/ | 生成前的地形快照 | 受 cleanup.snapshot-restore / max-snapshot-volume 约束;/qr remove / 消退时还原 |
discoveries.yml | 玩家图鉴发现记录 | 可选进数据库(storage.type: database + QCL 配同一 MySQL 即跨服共享) |
loot_claims.yml | 解锁式奖励箱按人领取记录 | 防重复领 |
mech_fired.yml | 一次性机关已触发记录 | 防机关重复触发 |
vessels.yml | 容器战利品(每人独立滚)记录 | vessel 系统,每人一份 |
shared_vessels.yml | 全服共享容器战利品记录 | 定时(每 30s)自动保存 |
spins.yml | 净化奖励老虎机抽取记录 | /qr reward 老虎机 |
除
discoveries.yml可进数据库外,其余运行态数据始终本地 YAML——它们绑具体服世界坐标,本就该本地。详见 数据存储。
三、启动时释放了哪些文件
首次启动(或文件缺失时)QR 仅释放以下内置资源,不会覆盖已存在的文件(saveResource(..., false)):
config.ymltemplates/_example/template.yml、templates/_example/blueprint.ymlscripts/affix_example.jsgenerators/下 17 个放置档案loottables/realm.yml、loottables/vault.yml、loottables/default.ymlaffixes.ymllang/各语言文件(随插件 jar 内置加载)
同时自动创建空目录 schematics/、初始化运行时数据 store(缺失则建空文件)。palettes/ 不释放任何内置文件——需要程序化拼接时由服主自建。
下一步
- config.yml 全配置
- 内置内容清单(17 放置档案 / 3 战利品表 / 13 词缀逐项)
- 数据存储