猹の枪械
主配置文件
yml
############################
# 插件验证 #
############################
apiKey: "apiKey"
############################
# 系统设定 #
############################
# 切换射击模式按键
# 需求说明:玩家需要在战斗中快速切换点射/连发/爆发模式
mode-key: "B"
# 瞄准镜 HUD 匹配项(按镜型配置不同 FOV 和界面)
# 需求说明:不同镜型使用不同缩放和 UI,避免所有枪械开镜表现一致
zoom-hud:
红点:
fov: 0.9
hud: "红点瞄准镜"
全息:
fov: 0.8
hud: "全息瞄准镜"
4倍镜:
fov: 0.25
hud: "4倍瞄准镜"
# 名称隐藏世界
# 需求说明:大厅、剧情过场等场景通常不需要显示枪械信息
hide-world:
- "world"
# 子弹槽位
# 需求说明:统一弹药来源,避免玩家把弹药放在任意槽导致读取混乱
bullet-slot:
- "子弹袋1"
- "子弹袋2"
# 指定 lore 物品不掉落
# 需求说明:保护关键道具,避免死亡时误掉落
drop-protect:
- "保护物品"
# 第三方枪声音量倍率
# 需求说明:统一不同资源包下的枪声音量体感
sound-multiplier: 2.0
# 第三人称偏移 x,y,z
third-person: [ 0.0, 0.0, 0.0 ]
# 第三人称旋转 angle,x,y,z
third-person-rotate: [ 0.0, 0.0, 0.0, 0.0 ]枪械配置
yml
# 内部唯一 ID
AK47:
# action-bar 中显示的当前枪械弹药信息
info: "{mode}模式 弹药 [§f{ammo}/{ammo-max}]"
# 枪械物品配置
item:
name: "§cAK47"
type: PAPER
lore:
- "AK47"
nbt:
词条: "值"
# 轨迹偏移 x,y,z
# 需求说明:让弹道视觉与枪口位置更贴近,减少“从眼睛发射”的违和感
offset: [ 0.5, 0, 0.5 ]
# 弹夹容量
magazine-size: 30
# 最远攻击距离
max-range: 50
# 射击配置
shoot:
# 射击限制
circumstance:
swimming: false # 游泳时无法射击
sprinting: false # 奔跑时无法射击
sneaking: false # 潜行时无法射击
# 切换射击模式时的联动表现
change-mechanics:
commands:
- "console:执行切换模式模型动作"
sounds:
- "minecraft:block.wooden_door.open"
# 不同射击状态下可触发的附加动作
shoot-commands:
0:
zoom-in-skill: "瞄准子弹"
zoom-in:
- "console:执行开镜射击模型动作"
zoom-out-skill: "腰射子弹"
zoom-out:
- "console:执行腰射模型动作"
# 切换等待(秒)
wait: 1
# 射击模式【0 单发 | 1 连发 | 2 三连发 | 3 特殊模式】
mode:
0:
display: "点射"
# 子弹名模糊匹配
ammo-types: "7.62弹匣"
reload-mechanics:
commands:
- "console:执行换弹模型动作"
- "console:执行手持主武器换弹模型动作"
sounds:
- "minecraft:block.wooden_door.open"
fire-cooldown: 1
# 每次射击弹药数量
fire-amount: 1
sound: "minecraft:block.wood.break"
out-of-ammo: "minecraft:entity.experience_orb.pickup"
spread:
base: 2 # 基础扩散
shoot: 0.2 # 连续射击扩散增加值
max: 5 # 扩散上限
modifier:
standing: 1 # 站立扩散倍率
walking: 1.2 # 行走扩散倍率
zooming: 0.5 # 瞄准扩散倍率
sneaking: 0.1 # 蹲伏扩散倍率
damage:
base: 2.5 # 基础伤害
drop-off:
- "5~-0.56" # 五格远缩减 0.56 伤害
- "10~-1.13"
- "15~-1.69"
- "20~-2.25"
- "25~-2.5"
x-recoil: -0.5~0.5
y-recoil: 0.5
# 回弹
y-bounce: 0.1
1:
display: "全自动"
# 子弹名模糊匹配
ammo-types: "7.62弹匣"
reload-mechanics:
commands:
- "console:执行换弹模型动作"
- "console:执行手持主武器换弹模型动作"
sounds:
- "minecraft:block.wooden_door.open"
# 射击间隔 tick
fire-rate: 2
fire-amount: 1
sound: "minecraft:block.wood.break"
out-of-ammo: "minecraft:entity.experience_orb.pickup"
spread:
base: 2 # 基础扩散
shoot: 0.2 # 连续射击扩散增加值
max: 5
modifier:
standing: 1 # 站立扩散倍率
walking: 1.2 # 行走扩散倍率
zooming: 0.5 # 瞄准扩散倍率
sneaking: 0.1 # 蹲伏扩散倍率
damage:
base: 2.5 # 基础伤害
drop-off:
- "5~-0.56"
- "10~-1.13"
- "15~-1.69"
- "20~-2.25"
- "25~-2.5"
x-recoil: -0.5~0.5
y-recoil: 0.5
y-bounce: 0.1
2:
display: "爆发"
# 子弹名模糊匹配
ammo-types: "7.62弹匣"
reload-mechanics:
commands:
- "console:执行换弹模型动作"
- "console:执行手持主武器换弹模型动作"
sounds:
- "minecraft:block.wooden_door.open"
fire-rate: 1
fire-cooldown: 1
fire-amount: 1
sound: "minecraft:block.wood.break"
out-of-ammo: "minecraft:entity.experience_orb.pickup"
spread:
base: 2 # 基础扩散
shoot: 0.2 # 连续射击扩散增加值
max: 5
modifier:
standing: 1 # 站立扩散倍率
walking: 1.2 # 行走扩散倍率
zooming: 0.5 # 瞄准扩散倍率
sneaking: 0.1 # 蹲伏扩散倍率
damage:
base: 2.5 # 基础伤害
drop-off:
- "5~-0.56"
- "10~-1.13"
- "15~-1.69"
- "20~-2.25"
- "25~-2.5"
x-recoil: -0.5~0.5
y-recoil: 0.5
y-bounce: 0.1
# 换弹配置
reload:
out-of-ammo: "无备弹音效"
reload-duration: 70 # 装弹时长(tick)
# 瞄准配置
scope:
# 瞄准限制
circumstance:
swimming: false
sprinting: false
sneaking: false
scale: 0.8
zoom: true
zoom-in:
0:
sounds:
- "瞄准音效"
commands:
- "console:执行开镜模型动作"
zoom-out:
0:
sounds:
- "退出瞄准音效"
commands:
- "console:执行收镜模型动作"语言文件
yml
# 枪械配置不存在时返回提示
# 需求说明:服主排查物品 ID 错配时需要明确错误信息
gun-not-found: "§c找不到该枪械配置"
猹件开发组