Agency-Elevator:让多层建筑真正实用起来
Agency-Elevator 可将任意 GTA V 建筑变成功能完善的多层空间,支持逼真的动画、音效和脚本接口。
Agency Scripts
Agency Scripts 创始人兼首席开发者
GTA V中的多层楼问题
GTA V 拥有令人惊叹的高楼,几乎没有真正可用的楼层。传送玩家在楼层间切换感觉廉价且破坏沉浸感。MLO 楼层需要昂贵的定制内饰,且通常在过渡处破坏物理效果。Agency-Elevator 是我们的解决方案:一个真实的电梯机制,感觉像电梯,适用于任何建筑,并且能干净地集成到您的服务器脚本生态中。
感觉如何正确
电梯有三个阶段:进入动画、带有细微摄像机移动和环境音的上升,以及目的楼层的开门。整个过程持续六秒,既真实又不显等待。声音设计很重要:柔和的机械嗡嗡声,楼层的轻铃声。玩家很少有意识地注意这些细节,这正是设计的目的。
配置新电梯
添加新电梯只需五行配置:入口坐标、每层目的地坐标、楼层标签、可选权限检查函数。无需MLO编辑,无需室内流式处理技巧。粘贴坐标,分配楼层,完成。已有服务器管理员在不到十分钟内搭建了12层办公楼。
真正有效的访问控制
基于工作的楼层访问权限是一级的。大堂是公共区域,5-10层需要建筑经理钥匙卡,顶层公寓需要特定的角色ID。这些规则即时评估任何框架的玩家数据,无需等待数据库查询,从而不会延迟电梯切换。
为什么它是一个独立的热门选择
Agency-Elevator 开箱即用,与框架无关。无论你使用 QBCore、ESX 还是 standalone 自定义架构,它都不受影响,权限钩子采用可插拔函数,而非导入框架。这也是它能在这三个社区中成为我们下载量最高的脚本之一的原因。
安装与设置
Agency-Elevator 的基本运行不依赖数据库。从 Tebex 下载后,将文件夹放入 resources 目录,然后添加 ensure agency-elevator 到 server.cfg. 电梯定义、入口坐标、楼层目的地、标签和访问规则,全部存放于 config.lua.
默认配置包含多个可访问原版 GTA V 建筑的电梯定义(FIB 大厅、迷宫银行大厦入口、公寓楼入口)。用服务器自定义建筑坐标替换或补充。每个定义配置时间不足五分钟。
配置选项
该 config.lua 涵盖电梯行为和访问控制:
- 电梯定义,电梯数组,每个包含名称、入口触发坐标和半径,以及楼层目的地数组。
- 楼层目的地,每层楼有坐标、显示标签和可选访问函数。
- 访问功能,每层一个 Lua 函数,接收玩家 src 并返回 true/false。用于检查职业、物品或角色 ID 条件。
- 过渡时长,上升/下降动画持续时间,单位毫秒。默认:6000(6秒)。
- 环境音效,切换电梯机械嗡嗡声和楼层提示音。默认:启用。
- 摄像头行为,过渡期间细微摄像机倾斜以产生运动效果。默认启用,可配置强度。
- 界面风格,楼层选择面板视觉(简约版与带楼层描述的详细版)。
框架兼容性
Agency-Elevator 从设计上就是完全独立的。你可以在配置中的访问控制函数里调用任何框架的玩家数据,无论是 QBCore、ESX 还是自定义框架。基础资源中不包含任何框架导入。这也是它能持续成为三个服务器社区中下载量最高的 Agency 脚本之一的原因:无论你使用什么架构,都无需特殊设置即可运行。
为什么这对角色扮演很重要
垂直空间是 GTA V RP 中最被忽视的维度之一。地图上有数十栋令人印象深刻的高楼和多层室内空间。没有电梯,这些空间要么无法进入,要么通过破坏沉浸感的传送访问。Agency-Elevator 打开了垂直空间的角色扮演,而无需令人不适的传送切换。
六秒的过渡时间不是填充,而是有意的节奏。角色扮演中的电梯乘坐是微型场景。侦探和嫌疑人同时乘电梯到12楼,有六秒的强制近距离接触。商业伙伴乘电梯去开会,有六秒的偶发对话时间。这些短暂互动是RP的质感,工作电梯自然创造它们,而不是跳过。
访问控制层支持构建层级RP。一个企业大楼,大堂对外开放,第5至20层需要员工钥匙卡,行政楼层需要特定角色,这就是具有空间结构的组织。当物理访问权限与组织访问权限匹配时,建筑物成为真正的角色扮演领地,而不仅仅是背景。
自定义MLO室内是此脚本最具价值的地方。拥有自定义警察局MLO、医院MLO或自定义摩天大楼商业区的服务器,可以让这些室内的每一层都可访问且可导航,无需客户端打包新的流式范围。电梯在现有室内区域之间的过渡处理其余部分。
常见问题
两个玩家能否同时使用同一部电梯前往不同楼层?
是的。每个玩家的电梯交互是独立的。如果玩家A从同一入口呼叫电梯到5楼,玩家B呼叫到12楼,两个过渡会同时在各自客户端播放。电梯没有模拟容量或等待时间,是每玩家的过渡,不是共享的物理对象。
我们能否为电梯添加NPC操作员或数字键盘道具?
触发区不需要特定道具,基于坐标。您可以在入口坐标处放置任意道具(键盘、接待台、NPC),使用服务器的道具放置工具。玩家进入触发半径时电梯交互触发,无论物理上放置了什么。
是否支持自定义室内流资源中的电梯?
是的。室内坐标在配置中与室外坐标工作方式相同。确保使用室内空间坐标(即游戏内处于室内时获得的坐标),而非建筑物外部坐标。如果您的室内使用自定义室内ID,在楼层定义中传入,Agency-Elevator会在过渡时将玩家加载到正确室内。
电梯能否在某些RP事件期间完全锁定?
使用 exports['agency-elevator']:LockElevator(elevatorName, reason) 来自任何服务器脚本。锁定期间尝试使用电梯的玩家会看到“当前不可用”消息。使用解锁 exports['agency-elevator']:UnlockElevator(elevatorName)用于脚本事件,当不受控的地板访问会破坏场景时使用。
需求
- FiveM 服务器(任意框架或独立)
- 拥有有效 Agency-Elevator 许可证的 cfx.re 账户
- 基础操作无数据库依赖
- 无外部资源依赖