Lore 格式定义
Lore 格式文件位于 lore_formats/*.yml,定义属性在物品 Lore 中的展示方式和读取规则。
字段说明
| 字段 | 类型 | 默认值 | 说明 |
|---|---|---|---|
id | string | — | 格式 ID,被属性定义的 lore_format_id 引用。缺失时该文件不会加载。 |
format | string | %sign%%value% %name% | 展示模板。 |
precision | integer | 2 | 数值小数位数。 |
read_priority | integer | 见下 | Lore 读取优先级(多个格式匹配同一行时,优先级高的先匹配)。 |
read_patterns | list | [] | 读取正则列表,用于从 Lore 中解析属性值。 |
read_priority 省略时,四个内置格式 ID 有各自的默认值(default_percent 100、default_regen 80、default_resource 60、default_flat 50),其他 ID 默认为 0。
read_patterns字段支持别名:read_pattern、lore_patterns、lore_pattern。
模板变量
format 字段中可用的变量:
| 变量 | 说明 |
|---|---|
%name% | 属性显示名。 |
%sign% | 正负号(+ 或 -)。 |
%value% | 属性数值(按 precision 格式化)。 |
内置格式文件
| 文件 | ID | format | precision | read_priority | 用途 |
|---|---|---|---|---|---|
default_percent.yml | default_percent | %name% %sign%%value%% | 2 | 100 | 百分比属性(暴击率、闪避等)。 |
default_regen.yml | default_regen | %name% %sign%%value%/秒 | 1 | 80 | 回复类属性(生命回复、法力回复)。 |
default_resource.yml | default_resource | %name% %sign%%value% | 2 | 60 | 资源类属性(生命上限、法力上限)。 |
default_flat.yml | default_flat | %name% %sign%%value% | 2 | 50 | 平面数值属性(攻击、防御等)。 |
内置 read_patterns 使用 %Key% / %Value% 模板变量而非裸正则,例如 default_flat 为 "%Key%.*?: ?%Value%$"。%Value% 同时支持单值与区间写法(如 1-5、1~5)。
示例
自定义百分比格式
yaml
id: custom_percent
format: "%name%: %sign%%value%%"
precision: 1
read_patterns:
- '%Key%.*?: ?%Value%%$'自定义带颜色格式
yaml
id: colored_flat
format: "<gray>%name% <white>%sign%%value%"
precision: 0
read_priority: 10
read_patterns:
- '%Key% ?%Value%$'属性定义中的引用
在属性定义文件中通过 lore_format_id 引用格式:
yaml
id: physical_attack
display_name: "物理攻击"
lore_format_id: default_flat