格里梅拉方尖碑

格里梅拉方尖碑

防御闪电方尖碑:放置一座17格金砖纪念碑,自动向配置的3D立方体半径内的敌对及可挑衅生物发射能量弹。自定义音效,拥有者保护,可合成。

生活质量

GlymeraObelisk - 防御性闪电方尖碑

一座由17个金砖方块构成的纪念碑,可在可配置的3D立方体半径内自动向敌对或攻击性生物发射发光能量箭矢。拥有者保护、可制作,并带有自定义音效和粒子效果。

当前版本仅适用于 Hytale 稳定版 5! 不要错过我的其他精彩项目——请查看 GlymeraCraft 的主页 Discord: https://discord.gg/s5NRFWfxgy


什么是 GlymeraObelisk?

GlymeraObelisk 为你提供一种静态防御结构,你可以将其放置在你的基地、农场、贸易前哨站,或任何你想抵御敌对生物的地方。放置一个物品,一座完整的17方块金砖方尖碑就会从地面升起。从它矗立起的那一刻起,它就会安静地扫描周围区域,并消灭任何对玩家敌对,或可能对玩家变得敌对的生物(捕食者、神话野兽)——同时不干扰和平的家畜和猎物。

它由 Hytale 原生方块构建,接入原生 NPC 态度系统以决定谁是有效目标,并使用自定义粒子和音效组合,以便你在方尖碑交战时能清晰辨认。


运作方式

放置

制作或拾取一个 方尖碑 物品。右键点击任意方块即可放置。该物品会在该位置触发一个17方块结构的生成:

  • 7个堆叠的 Rock_Gold_Brick_Ornate 方块构成中央柱体
  • 4个 Rock_Gold_Brick_Roof 方块在底部形成斜坡基座
  • 4个 Rock_Gold_Brick_Beam 方块在顶部形成十字结构
  • 1个 Rock_Gold_Brick_Pillar_Base + 1个 Rock_Gold_Brick_Beam 作为塔尖

方块布局是直接从手工构建的模板中1:1捕获的,因此朝向保证正确。

目标锁定

每秒,每个方尖碑都会扫描其锚点(默认:16方块半边长,即以底部华丽方块为中心的33x33x33方块区域)周围的3D立方体,并寻找有效目标。

满足以下条件的生物是有效目标:

  • 其对玩家的默认态度为 敌对(始终具有攻击性:僵尸、骷髅、哥布林、部队……),或
  • 其对玩家的默认态度为 中立 且其态度组不是“猎物”或“家畜”(可被激怒的捕食者:熊、狼、神话野兽……)

诸如犰狳、兔子、羊、鸡、牛、猪等和平动物永远不会成为目标,即使它们具有中立态度,因为它们的态度组将其标记为猎物/家畜。

每个游戏刻选择最近的有效目标。

开火

方尖碑从其尖端(顶部横梁)开火:

  1. 一道激光闪光音效和一连串金色能量球从尖端射向目标
  2. 一次延迟冲击(基于距离和射弹速度,默认50方块/秒)在目标处播放爆炸音效并造成伤害
  3. 伤害类型为 物理,来源为环境(“方尖碑”)

默认伤害:每次射击50点生命值。默认开火间隔:1秒。

音效

捆绑了两个自定义音效事件:

  • SFX_Obelisk_Shot - 方尖碑尖端处的激光闪光
  • SFX_Obelisk_Impact - 目标处的爆炸

两者都具有3D位置衰减(0-1方块内全音量,在20方块处渐变为静音)。

粒子效果

捆绑了一个自定义粒子系统 ObeliskBolt。它使用圆形的 Ball6.png 纹理,通过 ScaleRatioConstraint: OneToOne 进行正方形缩放,使粒子从任何角度都呈现为一个小型发光球体。通过数据包的 color 修改器,每次生成时都会着色为金色(255, 215, 0)。


制作

工作台 的生存类别中制作:

  • 3x 浓缩生命精华 (Ingredient_Life_Essence_Concentrated)
  • 5x 金锭 (Ingredient_Bar_Gold)
  • 5秒制作时间,产出1个方尖碑

该配方可通过配置禁用;OP仍可通过 /obelisk spawn 生成方尖碑。


命令

命令 权限 描述
/obelisk spawn 仅限OP 在你当前的位置生成一个方尖碑
/obelisk remove 仅限OP 移除这个世界中最近的方尖碑
/obelisk list 所有人 显示你拥有的方尖碑数量以及世界总数
/obelisk capture <halfWidth> <height> 仅限OP (构建工具)捕获一个方块体积作为放置模板
/obelisk captureat <x> <y> <z> <halfWidth> <height> 仅限OP (构建工具)从明确的的世界坐标捕获

捕获命令是模板最初构建的方式。它们会写入 plugins/GlymeraObelisk/template.json。大多数服务器永远不需要它们——捆绑的模板开箱即用且正确无误。


方块保护

  • 只有方尖碑的所有者(放置它的玩家)或OP才能损坏或破坏它。
  • 来自其他玩家的伤害会被静默取消。
  • 所有者/OP破坏时,会移除整个17方块结构,并向破坏者的快捷栏返还1个方尖碑物品(如果快捷栏已满,则使用 /give 作为后备方案)。

方尖碑的每个方块都通过 BlockPhysics.markDeco 标记为“装饰”,这样当相邻方块变化时,十字臂和装饰件不会掉落。


配置

文件:plugins/GlymeraObelisk/config.json(首次启动时创建)。

设置项 默认值 描述
guardRadius 16 3D 切比雪夫(立方体)半边长(以方块为单位)。总覆盖范围 = (2*r+1)^3。
attackNeutral true 若为true,也会攻击中立生物(可被激怒的捕食者)。和平猎物无论如何都会被排除。
fireTickMs 1000 每个方尖碑扫描和射击的频率,以毫秒为单位。
damage 50.0 每次射击造成的生命值伤害。
projectileSpeed 50.0 视觉射弹速度(方块/秒)。仅控制冲击延迟。
recipesEnabled true 是否允许使用工作台配方。设置为 false 以限制只能通过 /obelisk spawn 获得。

持久化

  • plugins/GlymeraObelisk/obelisks.json - 已放置的方尖碑(世界、锚点位置、旋转四分之一、所有者UUID)。通过 tmp + fsync + 原子重命名 原子写入,可承受崩溃。
  • plugins/GlymeraObelisk/template.json - 捕获的方块模板(若存在则覆盖捆绑的默认值)。
  • plugins/GlymeraObelisk/config.json - 设置(见上文)。

特性

  • 单个物品生成17方块结构 - 放置时触发具有正确朝向的多方块布局
  • 3D立方体目标锁定,半径可配置(无无限垂直范围)
  • 态度感知过滤 - 攻击敌对和可激怒的捕食者,永不攻击和平猎物
  • 捆绑在JAR中的自定义粒子与音效系统
  • 所有者保护 - 仅所有者或OP可损坏/破坏
  • 破坏返还物品 - 破坏后将物品返还至破坏者快捷栏
  • 物理稳定 - BlockPhysics.markDeco 防止十字臂掉落
  • 配方开关 可通过配置设置
  • 已放置方尖碑的持久化与原子保存

安装

  1. GlymeraObelisk-1.0.0.jar 放入服务器的 mods/ 文件夹。
  2. 启动(或重启)服务器。
  3. 所有内容都已嵌入JAR中 - 无需外部资源文件夹。

音效来源

  • 射击音效基于 freesound 社区的“flash-laser-gun”
  • 冲击音效基于 Lumora Studios 的“pixel-explosion”

两个样本均已剪辑并重新编码为OGG格式。


Glymera 为 Hytale 社区精心制作