指令介绍 (pfc)

ProfessionCustom 模组指令使用指南

本指南面向 玩家与服主,介绍本模组在 Forge 1.20.1 中提供的所有自定义指令,包括:

  • 职业查询与测试相关指令
  • 配置热加载指令
  • 物品职业配置热加载指令
  • 武器 / 护甲编辑指令

注意:文中所说的 “需要管理员权限” 一般指 服务器 OP,或在单机世界中开启作弊的玩家。


一、指令总览

指令 权限 用途概述
/profession 管理员 列出或查看职业配置信息(读取数据,不修改任何状态)
/professioncustom reload ... 管理员 手动重新加载职业和物品职业的配置文件(数据包)
/reloaditemprofessions 管理员 单独重新加载 “物品职业配置”
/professiontest ... 任意玩家 职业系统测试指令:设置职业(含初始装备)、添加职业经验、范围加经验、重置职业、查看自身职业信息
/weaponedit ... 管理员 编辑当前手中武器 / 护甲:等级、经验、品质以及词条数量与数值

二、/profession —— 职业信息查询

  • 基础格式/profession <子命令>
  • 权限要求:需要管理员权限(OP)

1. /profession list —— 列出所有职业

  • 指令
    • /profession list
  • 功能
    • 列出当前数据中所有已配置的职业,按照 基础职业进阶职业 分组显示。
    • 输出内容包括:
      • 每个职业的内部名称(ID)。
      • 职业在语言文件中的显示名。
      • 基础职业与进阶职业分开显示,并给出总数量统计。

2. /profession info <职业名称> —— 查看指定职业详情

  • 指令
    • /profession info <professionName>
  • 参数
    • <professionName>:职业的内部名称(ID),支持命令补全。
  • 功能
    • 显示该职业的详细配置,包括:
      • 职业 ID 与显示名。
      • 职业类型:基础职业 / 进阶职业。
      • 若为进阶职业,显示其上级职业名称及显示名。
      • 职业等级、最大等级。
      • 基础升级经验、成长倍率。
      • 属性加成(生命值、护甲、攻击力、攻击速度等)。

三、/professioncustom reload —— 配置热加载

  • 根指令/professioncustom reload ...
  • 权限要求:需要管理员权限(OP)

这一组指令用于在 修改数据包或配置文件后,不重启服务器就重新加载职业与物品职业相关配置。

1. /professioncustom reload all

  • 指令
    • /professioncustom reload all
  • 功能
    • 同时重新加载:
      • 职业配置。
      • 物品职业配置。
    • 用于在编辑完数据包中的职业配置和物品配置后,一次性刷新全部。

2. /professioncustom reload professions

  • 指令
    • /professioncustom reload professions
  • 功能
    • 只重新加载 职业配置
    • 不影响物品职业配置。

3. /professioncustom reload items

  • 指令
    • /professioncustom reload items
  • 功能
    • 只重新加载 物品职业配置
    • 不影响职业本体配置。

4. /professioncustom reload(无子命令)

  • 指令
    • /professioncustom reload
  • 功能
    • 显示一段帮助文本,列出可用的 all / professions / items 子命令及其用途。

四、/reloaditemprofessions —— 物品职业配置热加载

  • 权限要求:需要管理员权限(OP)

1. /reloaditemprofessions

  • 指令
    • /reloaditemprofessions
  • 功能
    • 重新加载 “物品职业配置”(物品与职业绑定关系)。
    • 效果与 /professioncustom reload items 相同,但该指令更简短、只针对物品职业部分。
    • 成功后会提示 “物品职业配置已重新加载!”,若出错会提示错误信息。

五、/professiontest —— 职业系统测试指令

  • 权限要求:默认无权限限制(任何玩家可用),建议仅在测试环境由 OP 使用

根结构:

  • /professiontest set <职业名称> [玩家] —— 设置指定玩家(默认自己)的职业(首次会发放该职业配置的初始装备)。
  • /professiontest addxp <数值> [玩家] —— 给指定玩家(默认自己)当前职业添加经验.
  • /professiontest addxpradius <数值> <半径> —— 给指定半径内所有玩家添加职业经验.
  • /professiontest info —— 查看自身职业信息.
  • /professiontest reset [玩家] —— 将指定玩家(默认自己)职业重置为 “无职业” 状态.
  • /professiontest(不带子命令)—— 显示帮助文本.

1. /professiontest set <职业名称> [玩家]

  • 指令
    • /professiontest set <professionName> [player]
  • 参数
    • <professionName>:职业 ID,支持命令自动补全(会列出所有可用职业)。
    • [player](可选):目标玩家,不写时默认是执行该指令的玩家自己。
  • 功能
    • 使用与正式职业系统相同的逻辑设置职业:
      • 若玩家之前没有任何职业,则视为首次选择职业:
        • 设置职业为指定 ID,等级设为 1;
        • 应用职业属性加成;
        • 按职业 JSON 中的 startingGear 字段发放初始装备(武器 / 护甲 / 道具等)。
      • 若玩家已经有职业,则只切换职业与属性,不会再次发放初始装备(避免刷装备)。
    • 不做额外前置条件检查,非常适合调试职业搭配时快速切换职业。

2. /professiontest addxp <数值> [玩家]

  • 指令
    • /professiontest addxp <amount> [player]
  • 参数
    • <amount>:要增加的职业经验值(整数,≥1)。
    • [player](可选):目标玩家,不写时默认是执行该指令的玩家自己。
  • 功能
    • 为执行者当前职业添加指定经验值.
    • 若当前未选择职业,会提示 “您还没有选择职业!”.
    • 若已达到当前职业的最大等级,则拒绝继续增加经验并给出提示.
    • 增加经验后会根据配置判断是否升级,并在聊天中显示新增经验、当前等级与经验进度.

3. /professiontest addxpradius <数值> <半径>

  • 指令
    • /professiontest addxpradius <amount> <radius>
  • 参数
    • <amount>:给每个玩家增加的职业经验值(整数,≥1)。
    • <radius>:以执行者为中心的半径范围(1~100 格)。
  • 功能
    • 搜索指定半径范围内的所有玩家,为每个已有职业的玩家增加指定经验.
    • 对达到职业最大等级的玩家不会增加经验,并单独给出提示.
    • 指令执行结束后,会告诉指令执行者本次实际影响了多少名玩家.

4. /professiontest info

  • 指令
    • /professiontest info
  • 功能
    • 查看执行者当前职业的信息:职业名、等级、经验、升级进度.
    • 若尚未选择职业,则提示 “您还没有选择职业!”.

5. /professiontest reset [玩家]

  • 指令
    • /professiontest reset [player]
  • 参数
    • [player](可选):目标玩家,不写时默认是执行该指令的玩家自己。
  • 功能
    • 将目标玩家当前职业重置为 “无职业” 状态
      • 清空 professionName,重置等级与经验为默认值;
      • 移除该职业带来的属性加成(生命、护甲、攻击力等的职业修改器)。
    • 若当前尚未拥有职业,会提示 “您当前没有职业,无需重置。”。
    • 常用于测试:
      • reset 清空职业;
      • 再用 /professiontest set <职业名称> 模拟玩家第一次选职业,顺便验证初始装备配置是否正确。

6. /professiontest(无子命令)

  • 指令
    • /professiontest
  • 功能
    • 输出一段职业测试命令的帮助文本,列出上述所有子命令及其用法说明,便于在游戏内快速查阅.

六、/weaponedit —— 武器 / 护甲编辑指令

  • 权限要求:需要管理员权限(OP)
  • 作用范围:当前执行者 主手持有的物品.

绝大部分子命令要求你主手拿着一个 “可作为武器或护甲的物品”。若物品尚未按模组逻辑初始化为武器 / 护甲,指令会给出相应提示并不做修改.

1. 总体结构

  • 根指令:/weaponedit
  • 子命令:
    • setlevel <等级>
    • setexp <经验值>
    • addexp <数值>
    • setquality <品质>
    • setattrcount <数量>
    • addattr <数量>
    • setattr <词条名> <数值>
    • delattr <词条名>
    • help

2. /weaponedit setlevel <等级> —— 设置等级

  • 指令
    • /weaponedit setlevel <level>
  • 参数
    • <level>:目标等级(整数,≥1)。
  • 行为
    • 检查主手物品:
      • 若不是耐久物品则提示 “请手持一个可作为武器或护甲的物品”.
      • 若是武器:直接将武器等级修改为指定值,并自动刷新该武器上的随机词条强度.
      • 若是护甲:将护甲等级修改为指定值.
      • 否则提示 “该物品尚未初始化为武器或护甲”.

3. /weaponedit setexp <经验值> —— 设置当前经验

  • 指令
    • /weaponedit setexp <exp>
  • 参数
    • <exp>:目标经验值(整数,≥0)。
  • 行为
    • 不会自动升级,只是强行设置当前经验.
    • 若为武器或护甲:会在聊天中显示 “当前经验 / 升级所需经验”.

4. /weaponedit addexp <数值> —— 增加经验并自动判定升级

  • 指令
    • /weaponedit addexp <amount>
  • 参数
    • <amount>:要增加的经验值(整数,≥1)。
  • 行为
    • 若为武器或护甲:
      • 为该装备增加对应经验值,并根据情况自动判定是否升级.
      • 在聊天中提示是否升级成功,以及当前等级与经验进度.

5. /weaponedit setquality <品质> —— 设置品质

  • 指令
    • /weaponedit setquality <quality>
  • 参数
    • <quality>:品质名称,支持命令自动补全、不区分大小写,例如:
      • commonuncommonrareepiclegendarymythic 等(根据实际配置为准)。
  • 行为
    • 若品质名称无效会提示 “无效的品质”.
    • 若为武器:设置武器品质并刷新其随机词条.
    • 若为护甲:设置护甲品质并刷新其随机词条.

6. /weaponedit setattrcount <数量> —— 重置并限制词条数量(武器)

  • 指令
    • /weaponedit setattrcount <count>
  • 参数
    • <count>:目标词条数量(0~10)。
  • 行为
    • 仅对武器生效,护甲会提示 “请手持一个可作为武器的物品”.
    • 先清空当前武器的所有词条.
    • 根据武器当前的 品质等级 生成一批新的随机词条候选.
    • 从候选中按顺序取前 <count> 条设置到武器上,并提示最终词条数量.

7. /weaponedit addattr <数量> —— 在不清空的前提下随机新增词条(武器)

  • 指令
    • /weaponedit addattr <count>
  • 参数
    • <count>:新增词条数量上限(1~10)。
  • 行为
    • 仅对武器生效.
    • 不会移除原词条,只在原基础上尝试增加新词条:
      • 考虑当前武器的品质、等级以及该品质允许的最大词条数量上限.
      • 从候选词条中跳过已经存在的词条,尽量添加新的.
      • 超过最大词条数量或达到 <count> 条后停止.
    • 最终提示实际新增的数量以及当前品质允许的最大数量.

8. /weaponedit setattr <词条名> <数值> —— 设置单个词条数值

  • 指令
    • /weaponedit setattr <attribute> <value>
  • 参数
    • <attribute>:词条英文名(不区分大小写),支持命令自动补全,例如:attack_damagecritical_rateheavy_armor 等.
    • <value>:要设置的数值(双精度浮点,可为小数)。
  • 行为
    • 若主手为武器:
      • 若词条名无效会提示 “无效的武器词条”.
      • 否则将该词条设置到武器上,数值为 <value>.
    • 若主手为护甲:
      • 若词条名无效会提示 “无效的护甲词条”.
      • 否则将该词条设置到护甲上,数值为 <value>.

9. /weaponedit delattr <词条名> —— 删除单个词条

  • 指令
    • /weaponedit delattr <attribute>
  • 参数
    • <attribute>:词条枚举名,支持补全(同上)。
  • 行为
    • 若为武器:
      • 若当前武器上不存在该词条,则提示 “当前武器上没有该词条”.
      • 若存在,则删除该词条,并在聊天中提示删除成功.
    • 若为护甲:
      • 若当前护甲上不存在该词条,则提示 “当前护甲上没有该词条”.
      • 若存在,则删除该词条,并在聊天中提示删除成功.

10. /weaponedit help —— 查看帮助

  • 指令
    • /weaponedit help
  • 功能
    • 在聊天中输出 /weaponedit 的所有子命令用法摘要,包括:
      • setlevel / setexp / addexp / setquality / setattrcount / addattr / setattr / delattr。
    • 方便在游戏内快速查看语法,无需查阅本文件。

七、使用建议

  • 生产环境与生存服务器

    • 建议只为 OP 或管理组开放 /professioncustom reload.../reloaditemprofessions/weaponedit 等指令。
    • /professiontest 建议仅在测试服或开发环境使用,用来快速测试职业成长与体验,不适合开放给普通玩家。
  • 单机或小型服务器调试

    • 可通过 /weaponedit 快速调试武器 / 护甲的等级、品质与词条组合,与前面的 “词条教学文档” 配合使用,快速构建各种 build。
    • 若修改了数据包里的职业与物品配置,记得用 /professioncustom reload all/reloaditemprofessions 及时刷新。

至此,本模组的所有自定义指令及其用法说明已整理完毕。


🌟 入门与概览

🎮 玩家 / 服主指南

⚙️ 数据包配置教程

🛠️ 开发者 API

Icon喜欢这篇作品的话,奖励一下我吧~
💗感谢你的喜欢与支持!
致谢名单
本作品由 JoBackRer 于 2025-11-18 10:12:28 发布
作品地址:指令介绍 (pfc)
除特别声明外,本站作品均采用 CC BY-NC-SA 4.0 许可协议,转载请注明来自 JoBackRer の blog
Logo