武器套装

*此内容使用人工智能(Beta)翻译,可能包含错误。若要查看英文页面,请点按 此处

为了帮助创建竞争性战斗体验,几种已批准的武器可用于任何体验。核心系统具有使用肩部镜头像头的弹道武器功能,设置弹道速度足够高可以模拟射线武器,例如激光枪。

要在体验中使用已批准的武器:

  1. 从下面选择一个武器,导航到资产库关联接。

手枪
>

霰弹枪
>

自动步枪
>

冲锋枪
>

狙击步枪
>

十字弓
>

榴弹发射器
>

火箭发射器
>

铁轨枪
>

  1. 在武器的物品页面上,单击绿色 获取 按钮,并确认交易。

  2. 在工作室中,打开工具箱视图工具箱 )。

  3. 选择您的工具箱 库存 部分。

  4. 找到武器并单击以将其添加到地场景。当提示是否将工具放入新手包时,如果您希望玩家带着武器开始,请单击 ;如果您希望将武器放置在 3D 世界中作为拾取,请单击

  5. 如果这是第一次导入已批准的武器,将其 武器系统 文件夹移至 服务器脚本服务 以服务体验中所有已批准武器的统一 系统文件夹。

系统文件夹结构

武器系统 文件夹 是一个统一的文件夹,包含资产、配置和脚本,可以为体验中所有获批的武器提供动力。如果位于 ServerScriptService 中,它将覆盖任何相等的 武器系统 文件夹,可能存在于单个武器中。

武器系统文件夹包含以下实例:

武器系统 文件夹内,不同方面由以下 ModuleScripts 控制:

方面主要在以下范围内处理...
武器功能
  • 图书馆 / 基础武器
  • 武器类型 / 子弹武器
  • 武器类型 / 弓武器
肩部相镜头
  • 图库 / 肩部相机
武器图形界面
  • 图形库 / WeaponsGui
  • 图书馆 / 方向指示器管理器
  • 图书馆 / 伤害广告处理器

武器结构

已批准的武器是 Tools ,并以其在玩家背包中出现的名称命名。每种武器都由相似的层次结构。

武器类输入

武器类型 对应 武器系统 / 武器类型 文件夹中的武器。两个基础值是 子弹武器弓武器

武器模型

每种武器包含一个或多个 组成物,用于形成物理武器。其中一个应该设置为模型的 PrimaryPart

模型还包括以下重要的后裔,可以作为模型的父辈之一:BaseParts :

  • 提示附件Attachment 其位置在父BasePart上决定了子弹/发射物从哪里出来。
  • 处理附件 – 其位置在父 上决定了手柄 的位置是否焊接在哪里。
  • 发射Sound 在武器发射时播放的东西。
  • 重新加载Sound 在武器重新加载时播放的内容。
  • 任何专业选项的额外后裔。

武器手柄

处理 部分决定玩家角色在哪里握住武器。这必须是 Part , 必须命名为 处理 , 且必须是武器 (工具) 的直接子女。

配置文件夹

配置 文件夹包含武器行为的特定“值”类型。除了默认值外,当适用时,您可以添加额外的配置项专用选项

如下是基础配置和其默认值:

项目描述默认
弹药容量 玩家必须重新装弹前的每个“弹药弹匣”中的射击数量。请注意,弹药是无限的,并不规定玩家携带了多少弹药。30
射击模式 从以下中选择 半自动 (每次点击/点击拍一枪)、 自动 (连续触发)或 爆破 (爆破射击数量等于 NumBurstShots 每次点击/点击)。 半自动
射击冷却时间 点击之间的最小等待时间。对于具有 射击模式自动 武器,这也是在按下点按击按钮或按住单击时之间的时间。0.1
爆破射击冷却时间 连发中每一次射击的时间间隔;仅在你将 射击模式 设置为 连发 时才重要。射击冷却时间
数量爆炸射击 每次点击/爆破的射击数量;仅在你将 射击模式 设置为 爆破 时才有意义。3
命中伤害 每次直接命中的伤害量。10
全部伤害距离 射击将造成全部伤害的最大距离。距离超过此距离的任何东西将受到越来越少的伤害,距离接近 零伤害距离 时。1000
零伤害距离 距离超过或达到此距离的任何东西都不会受到伤害。10000
子弹速度 子弹/发射物在射击时的速度。将其设置为很高的值,如 20000 会模拟射线武器,例如激光枪。1000
最大距离 最大距离子弹/发射物在消失之前旅行的距离。2000
最小分布 武器的最小传播量。0
最大分布 武器的最大传播量。MinSpread 的值
重力因子 重力应对每一颗子弹/发射物产生影响的数量。例如,这个值为 十字弓 是 1 因为箭在飞行时弯曲,但这个值为 火箭发射器 是 0 因为推动的火箭直行。0
有范围 如果您想使用指定在 武器系统图形用户界面 中的范围,设置为 true错误
重新加载动画 资产 / 动画系统文件夹 中的重新加载动画轨道名称。 步枪重新装弹
目标跟踪 名称目标动画轨道在 资产 / 动画系统文件夹 步枪瞄准
瞄准缩放跟踪 名称的目标缩放动画轨道在 资产 / 动画系统文件夹 步枪瞄准镜
后坐力最小 每次射击的最小后坐力添加。0.05
后坐力最大 每次射击的最大后坐力添加。0.5
总回弹最大值 总最大累积反弹。武器的当前反弹永远不会超过此值。2
后坐力衰减 反弹的衰减倍率;实际上是反弹在射击后减少的速率。0.825
反弹延迟时间 在收回前射击/点击后的等待时间被添加到镜头。0.07
启动时间 玩家可以射击之前武器装备的时间长度。这防止玩家在快速连续射击中从多个不同武器发射单发子弹。0.2
发射播放速度范围 音调可以为武器的 发射 音效变化的数量。将其设置为 0 即可确保始终以相同的音调播放。0.1
数量子弹 当你单击/点击一次时会发射的子弹/弹丸数量。这对像 霰弹枪 这样的武器有用,可以同时发射多个子弹。请注意,一次射击总是使用准确的一发子弹,无论这个值是多少。1

专业选项

您可以为任何武器添加/修改以下选项。这些自定义需要修改武器的 Model、武器的 Configuration 或两者都。一些配置依赖于其他配置,例如 枪口粒子 ,需要为 项目/射击效果和声音 提供必要的子配置。

闪电动画和声音

武器的 螺栓 是每次发射时前后移动的部分。

箭矢 BasePart 当武器发射时移动。
螺栓电机 Motor6D 用于动画螺栓。请确保将电机的 Part0 设置为武器模型的 PrimaryPartPart1 设置为 螺栓 部分。
螺栓电机启动 Attachment whose 位置 on the 父 BasePart 决定了螺栓在静止时的位置。
螺栓电机目标 Attachment whose 位置 on the 父 BasePart 决定了螺栓在射击时动画到哪里。
闪电打开声音 Sound 在螺栓打开时播放。
optional
闪电关闭声音 Sound 在螺栓关闭时播放。
optional
  • 武器的配置文件夹的子文件
项目描述默认
行动打开时间 箭头动画到打开位置所需的时间。0.025
行动关闭时间 箭头动画到闭合位置所需的时间。0.075

弹出子弹壳

武器可以包括射击时弹出并落到地面的物理子弹壳。

外壳射出点 Attachment whose 位置 on the 父 BasePart 决定了你想要弹出子弹壳的位置。请注意,其方向决定了外壳弹出的方向。
  • 武器的配置文件夹的子文件
项目描述默认
外壳效果 外壳名称 BasePart 在 资产 效果 外壳 / 系统文件夹 。
壳体弹出速度分钟 壳的最低喷射速度15
外壳射速最大 壳的最大射出速度18
包裹击打声音 Sound 当包裹击打地面时播放。
optional

投射物/命中效果和声音

您可以为任何武器配置物理投射物,以及 SoundsBeamsParticleEmitters 用于命中效果和其他特殊效果。

  • 武器的配置文件夹的子文件
项目描述默认
射击效果 一个射击效果的名称存储在 资产 / 效果 / 系统文件夹 中。
应该移动部件 将武器的射击效果设置为真实,如果武器的射击效果应与弹道移动,或为假,如果不是。您只应该将此设置为 true ,如果每次射击都会移动的可见物体,例如箭头或火箭。错误
渐变时间 需要多长时间 光束0光束1 ( 请参阅以下 ) 消失后,子弹/弹丸击中了某物默认情况下,代验证码将不会应用手动渐变。0
梁宽度0 梁0梁1附件0见下面)的厚度1.5
梁宽度1 梁0梁1附件1见下面)的厚度1.8
数量击中粒子 命中粒子 ( 请参阅下面 )发射器将发射的粒子数量。3
命中粒子使用部分颜色 将其设置为 true ,如果你希望命中的粒子是命中表面的颜色;将其设置为 false ,如果你希望命中的粒子不会改变颜色。真实
  • 在上一节中记录的指定 射击效果 的后裔

光束0 追踪后的第一个栏位在子弹/弹丸后面。不要忘记设置 附件0附件1

光束1 后面的子弹/弹丸的第二个插槽。不要忘记设置 附件0附件1

附件1 其位置在父上决定了尾迹光束的前端;请确保将设置在Beam0和Beam1上。

飞行 Sound 在子弹/发射物正在移动时播放的。
optional
optional
optional
附件0 Attachment 其位置在父BasePart决定了尾部跟踪光束的位置;请确保将Beam.Attachment0设置为 光束0光束1
optional
optional
踪迹粒子 ParticleEmitter 被视为 附件0 的直接子女;这将在子弹/发射物移动时发出。
optional
领导粒子 ParticleEmitter 被视为 附件1 的直接子弹/弹射物;这将在子弹/弹射物移动时发射。
optional
命中效果 Attachment 其位置将设置为 Beam.Attachment1光束0 当子弹/枪弹击中时。您必须指定 光束0 和其附件,才能使其正常工作。
optional
命中声音 Sound 作为 命中效果 的直接子女出现;当子弹/发射物命中时播放。
optional
命中粒子 Sound 作为 命中效果 的直接子女发射;当子弹/发射物击中时发射。
optional
[投射物部分] 任何 PartMeshPart 你想要作为物理投射物出现的。确保您在上一节中注释的 应该移动部分 设置为 true ,如果这里有可见的对象。
optional

枪口粒子

这个选项会在武器的尖端附件发射时,从指定的 发射粒子。

配置子孙:

  • 射击效果 ( StringValue ) — 在 WeaponsSystem/Assets/Effects/Shots 内存储的射击效果名称。
  • 枪口粒子 ( IntValue ) (可选) — 将发射的枪口粒子数量;默认值为 50

对于指定的射击效果,在 WeaponsSystem/Assets/Effects/Shots 命名为 枪口粒子 的粒子发射器资产中添加。

枪口闪光

这个选项在武器发射时创建一个 Beam 闪光效果。

模型后裔:

  • 枪口闪光0 ( Attachment ) — 用于指定枪口闪光的一侧。位置不重要。
  • 枪口闪光1Attachment)—用于指定枪口闪光的反面。位置不重要。
  • 枪口闪光Beam ) — 请确保将 Attachment0 设置为 MuzzleFlash0Attachment1 设置为 MuzzleFlash1

配置子孙:

  • 枪口闪光时间 ( NumberValue ) (可选) — 闪光时间的长度;默认值为 0.03
  • 枪口闪光旋转0NumberValue)(可选)—最小枪口闪光旋转;默认值为 -math.pi
  • 枪口闪光旋转1 ( NumberValue ) (可选) — 最大枪口闪光旋转;默认值为 math.pi
  • 枪口闪光尺寸0 ( NumberValue ) (可选) — 枪口闪光的最小尺寸;默认值为 1
  • 枪口闪光尺寸1NumberValue)(可选)—最大枪口闪光尺寸;默认值为 1

粒子踪迹

这个选项创建从武器到项目击中点的不同长度的踪迹。

配置子孙:

  • 踪迹长度 ( NumberValue ) (可选) — 子弹/枪弹背后的踪迹长度;默认值为 nil ,这意味着踪迹长度将使用 踪迹因子 计算。
  • 踪迹长度因子 ( NumberValue ) (可选) — 踪迹长度将设置为乘以最后一帧中子弹/导弹行进距离的这个值;默认值为 1 。请注意,如果你包含 踪迹长度 ,这将被覆盖。
  • 显示整条踪迹直到命中 ( BoolValue ) (可选) — 设置为 true 来渲染武器尖端到项目弹道的整条踪迹;这将覆盖 both 踪迹长度踪迹长度因子 ,项目弹道只会消失一旦命中。将 设置为 false ,使用上述两个选项之一来计算踪迹长度。默认值为

命中标记

这种视觉增加出现在投射物击中的表面,对箭头、子弹洞、灼烧标记等有用

配置子孙:

  • 命中标记效果 ( StringValue ) (可选) — 命中标记效果的名称存储在 WeaponsSystem/Assets/Effects/HitMarks 内;默认为 子弹孔
  • 将命中标记调整为正常 ( BoolValue ) (可选) — 将命中标记设置为 true ,如果命中标记始终与表面平齐,像子弹孔一样,或将命中标记设置为 false ,如果命中标记从射弹的方向卡在表面上(像箭)。默认值为 true

您可以在 WeaponsSystem/Assets/Effects/HitMarks 内添加以下可选资产:

  • 发光 ( Decal ) (可选) — 在命中表面完全不透明,然后快速变得更透明,就像表面上的闪光效果迅速消失一样。对于像显示爆炸物击中的发光红色标记等有用。
  • 子弹孔 ( ) (可选) — 在命中表面完全不透明,4秒后会渐变透明,持续 1 秒。
  • 影响广告板 ( BillboardGui ) (可选) — 在命中表面显示,总是面向相镜头。
    • 影响 ( ImageLabel ) (可选) — 直接子女的 影响板 ; 这开始完全不透明,在 0.1 秒内增长到 影响板 的全部尺寸,然后缩小到一半的尺寸并消失为全透明,持续 0.1 秒。
  • 任何 Part / MeshPart / SpecialMesh 你想显示为物理投射物 (可选)。例如,包括箭头 MeshPart 以及设置 将命中标记调整为正常false 将使箭头从你射击的方向突出地表。

爆炸枪弹

投射物可以包含一个爆炸对象,对影响点周围的玩家角色造成伤害。

配置子孙:

  • 在撞击时爆炸 ( BoolValue ) (可选) — 如果你想要武器在撞击时爆炸,设置为 true ;如果不是,则设置为 false 。默认值为
  • 爆炸半径 ( NumberValue ) (可选) — 爆炸半径;默认值为 8 .
  • 爆炸压力NumberValue)(可选)—爆炸压力的爆炸;默认值为 10000
  • 爆炸伤害 (NumberValue (可选) — 对爆炸中心的物品造成伤害。请注意,爆炸对离爆炸中心越远的目标造成的伤害越小。默认值为 100 .

正在充能武器

像电磁炮这样的充电武器必须在射击之前充满电才能再次发射。

模型后裔:

  • 充电 ( Sound ) (可选) — 在武器充电时播放。
  • 放电Sound )(可选)—在武器放电时播放,例如如果你只部分地充电并释放射击按钮。
  • 充电完成 ( Sound ) (可选) — 当武器充充值完毕时播放。
  • 完全放电完成 ( Sound ) (可选) — 当武器完全放电时播放。
  • 充电发光 ( BasePart ) (可选) — 这个对象在武器充电时会变得越来越不透明,使其在 100% 充充值时完全不透明。
  • 充电完成粒子 ( ParticleEmitter ) (可选) — 当武器充电完成时发出。这个发射器可以是任何模型的子 或子模型中的 的孩子。
  • 放电完成粒子 ( ParticleEmitter ) (可选) — 当武器完全放电时发出。这个发射器可以是任何模型的子 或子模型中的 的孩子。
  • 充电粒子 ( ParticleEmitter ) (可选) — 在武器充电时发射。您可以包含这个名称的多个发射器,每个发射器都会在充电时发射。这个发射器可以是任何模型的子 或子模型中的 的孩子。

配置子孙:

  • 充电率 ( NumberValue ) — 武器将充充值的速率。此值必须指定以表明武器使用充电。
  • 放电率 ( NumberValue ) (可选) — 武器放电的速率;默认值为 0 ,这意味着武器将完全部不放电。
  • 静电充电 ( BoolValue ) (可选) — 设置为 true 如果你希望武器静电充电,这样一旦你点按击就会立即发射,或 false 如果你想点击/触摸以充电武器,并且达到满载时发射。默认值为
  • 充电粒子率每次充电 ( IntValue ) (可选) — 武器所有 充电粒子 发射器的粒子数乘以武器当前的充电。默认值为 20 , 即如果武器充能率为 10%,每个充能粒子发射器将发射 2 个粒子 (20×0.1),如果武器充能率为 90%,每个发射器将发射 18 个粒子 (20×0.9)。
  • 火焰放电 ( NumberValue ) (可选) — 武器在发射完全充电的射击后会丢失的电量;默认值为 1
  • 充电完成粒子 ( IntValue ) (可选) — 武器完全充电后 - 充电完成粒子发射器将发射的粒子数量。默认值为 25
  • NumDischargeCompleteParticles (IntValue (可选) — 武器完全放电时发射器会发射的粒子数量 - DischargeCompleteParticles 。默认值为 25 .

弓武器

像十字弓这样的弓武器可以包括一个具有现实感的绳索和手臂建造,以及一个视觉箭头被固定在绳字符串上。

除了添加模型子孙外,您还需要应用以关注中/正在关注内容:

  • 将武器变成充电武器。例如,在武器的 **** 中添加必需的 Configuration,指定字符串是多快被绘制。此外,考虑添加可选子弹到武器的Model,例如拉返回的线/手臂的 充电 声音。
  • 武器类型 设置为 弓武器 ,如指定在 武器结构

模型后裔:

  • 左字符串 ( Beam ) (可选) — 字符串的视觉左半部分。
  • 右侧字符串 ( Beam ) (可选) — 字符串的右侧视觉。
  • 箭头 ( BasePart ) (可选) — 当弓完全绘制时出现的箭头。请注意,这仅用于弓上的视觉外观(实际发射的箭会是 射击效果 ,如 《项目/命中效果和声音》 中所述)。
  • 字符串1 ( Attachment ) (可选) — 字符串的中心点。
  • 线圈松动 ( Attachment ) (可选) — 弓静止时 String1 应该位于的地点。
  • 字符紧缩 ( Attachment ) (可选) — 弓完全拉出时 字符1 应该位于的地点。
  • 手臂 ( Part ) (可选) — 一个部分,仅用于内部指示弓手臂将被动画。它可能包含以下直接子女:
  • LeftString0 (Attachment (可选) — 左侧字符串连接到弓的地点。
  • RightString0 ( Attachment ) (可选) — 点, where the right side of the string is attached to the bow。
  • 左松 ( Attachment ) (可选) — 当弓静止时 LeftString0 应该位于的地点。
  • 右松 ( Attachment ) (可选) — 当弓静止时 RightString0 应该放置的地点。
  • 左紧 ( Attachment ) (可选) — 当弓完全拉出时 LeftString0 应该位于的地点。
  • 右紧 ( Attachment ) (可选) — 当弓完全拉出时 RightString0 应该位于的地点。
  • [特殊网格] ( SpecialMesh ) (可选) — 当弓被拉出时会实际弯折的弓的部分。请注意,您必须指定以下四个 Vector3Value 对象来使其动画。
  • 松动偏移 ( Vector3Value ) (可选) — 当弓静止时的偏移 SpecialMesh
  • 紧密偏移 ( Vector3Value ) (可选) — 当弓完全绘制时的偏移 SpecialMesh
  • 松散比例 ( Vector3Value ) (可选) — 当弓静止时的 SpecialMesh 比例。
  • 紧缩比例 ( Vector3Value ) (可选) — 当弓完全拉出时的 SpecialMesh 的比例。

武器系统图形界面

核心武器系统与此系统接口,根据像枪支散射、当你被击中或击中他人等情况更新图形用户界面。 武器系统图形用户界面 是在体验开始时父辈到ScreenGui的对象,当体验开始时,WeaponsSystem/Assets 对象将被父辈到PlayerGui。武器系统Gui有4个子孙:

缩放元素

缩放元素是 Folder 在武器系统Gui下父辈的子孙,具有以下后裔:

名称实例类输入描述
方向指示器Folder一个 Folder ,在那里所有 方向指示器 都被存储。
十字线Frame一个 Frame 包含以下对象:[UIAspectRationConstraint] - UIAspectRatioConstraint 下部 - ImageLabel 左侧 - ImageLabel 右侧 - ImageLabel 顶部 - ImageLabel
命中标记Frame包含以下对象的 A Frame :[UIAspectRatioConstraint] - UIAspectRatioConstraint 命中标记图像 - ImageLabel 当玩家成功击中另一个玩家角色时出现并消失。

大触摸屏幕

大型触摸屏是包含显示在大型触摸屏上的按钮的 Frame 。大型触摸屏有以下子孙:

范围

范围是一个 Frame 包含 范围图像 ( ImageLabel ),当启用有瞄准镜的武器时显示 (见 武器结构 )。 范围 有以下子孙:

名称实例类输入描述
范围实例Frame包含以下资产的 Frame 当将武器放大时使用时:[UIAspectRationConstraint] - UIAspectRatioConstraint 黑色底部 - Frame 左黑色 - Frame 右黑色 - Frame 顶部黑色 - Frame

小型触摸屏

小触摸屏是包含显示在小触摸屏上的按钮的 Frame 小触摸屏。小触摸屏有以下子孙:

创建方向指示器

方向指示器用于显示玩家十字线周围的某物的方向。例如,如果有人向你开枪,一个红色的半圆可以出现在你的十字线的方向,射击来自的方向。其他例子包括显示脚步方向的指示器、间接枪击或甚至环境物体,例如箱子。

要创建新的指标,请在 WeaponsSystemGui/ScalingElements/DirectionalIndicators 中添加新的指标 Frame 以下结构:

名称实例类输入描述
[UIAspectRationConstraint]UIAspectRatioConstraint >
[图像标签]ImageLabel方向指示器的图像。在工作室调整图像的旋转可能需要,除非您上传图像使其面向下方,周围没有太多空白空间。此图像标签必须还包含自己的 UIAspectRatioConstraint
[配置]Configuration包含可选属性以调整。请参阅指示器配置获取更多信息。

创建后,您可以通过以下命令内的 WeaponsSystem/Libraries/WeaponsGui 激活指示器,其中 indicatorName 是指示器启用的字符串名称,世界位置是指向方向指示器应该指向的世界位置:


self.DirectionalIndicatorGuiManager:ActivateDirectionalIndicator(indicatorName, worldPos)

指示器配置

方向指示器可以通过调整 Configuration 对象在 [Indicator] 下的父对象来进一步修改。所有这些设置都有默认值,因此无需在未修改设置时设置配置。

以下配置可以设置:

名称实例类输入描述
距离等级从中心NumberValue屏幕中心到距离等级的数量(每个距离等级约为 0.03 屏幕缩放);默认值为 6
淡化时间NumberValue激活后的指示器淡化时间和 TimeBeforeFade 时间;默认值为 1
名称StringValue您想在代验证码中引用导航指示器的名称;默认是导航指示器的最高级别名称 Frame
褪色之前的时间NumberValue指示器在消失之前会出现的秒数;默认值为 1
透明之前褪色NumberValue指示器开始褪色之前的透明度;默认值为 0
宽度等级NumberValue从中心的宽度等级数(每个宽度等级约为 0.03 屏幕缩放);默认值为 距离等级从中心 的值。

显示伤害广告牌

伤害广告牌用于在受损时显示角色头上的小数字。这些只会出现给伤害了另一名玩家角色的玩家,而不是给观战的玩家。

损坏广告牌在 WeaponsSystem/Libraries/DamageBillboardHandler 中处理,可以通过以下任意客户端代码激活,其中损坏是指造成的伤害数量,装饰部分是指装饰广告牌的部分,例如受害者的头部:


DamageBillboardHandler:ShowDamageBillboard(damage, adornmentPart)

肩部相镜头

肩部相机是第三人称相机,可以查看玩家角色的右肩。要自定义肩部相镜头,修改 -- 配置参数 (恒定) 评论下的变量在 函数中。你可以修改像视野、角色偏移、在跑步或缩放时的步行速度等东西

冲刺和缩放控制

默认情况下,武器系统添加“冲刺”功能,因此玩家可以按住 Shift 键来冲刺,或者按住左侧的动态拇指(手机)或按住左侧的左侧拇指(游戏手柄)来全速冲刺。如果您想禁用冲刺,将 SprintEnabled 的值设置在 武器系统 / 配置 内为 false

系统还会在玩家瞄准/缩放时减少速度,但您可以通过设置 SlowZoomWalkEnabled 的值为 false 来禁用此行为。