七日杀A21 buffs.xml文档注释翻译
全文由chatgpt翻译,正确与否请自行判断。
<!-- *** xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx -->
<!-- **** Documentation -->文档
<!-- *** Search All for ### for the documentation table of contents -->全部搜索###以获取文档目录
<!-- *** xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx -->
<!--
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
### <buff> NODE ATTRIBUTES 节点属性
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
name:buff 的内部名称,用于在程序代码中引用该 buff,不要使用只有数字的名称,因为 Unity 不擅长对这些名称创建哈希值。
name_key:buff 的本地化名称键,用于将名称翻译成不同的语言版本。
description_key:buff 的本地化描述键,可以包含多个变量。如果变量太多,使用时可能会造成性能问题。
tooltip_key:buff 在工具栏上显示的本地化工具提示键。
icon [file name]:可用于图标的.tga 文件,在路径 \Assets\GUI\Textures\ 中。例如:"ui_game_symbol_brokenbone"
icon_color [RGB]:图标的色调颜色。如果设置为 "255,0,0",则图标将闪烁。
icon_blink [bool]:使 buff 的图标在整个持续时间内闪烁。
hidden [bool]:隐藏 buff,在所有屏幕上都不显示。
showonhud [bool]:默认为 true,在主要 HUD 上不显示此 buff,但仍然将其保留在角色窗口的状态效果完整列表中。这些配置参数可以帮助开发者根据游戏需求来自定义 buff 的属性和效果,从而实现更丰富的游戏体验。
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
### <buff> CHILD NODES 子节点
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
<damage_source value="x"/>
damage_source:buff 的伤害来源,有 Internal 和 External 两种类型,Internal 是默认选项,适用于不受护甲影响的伤害,External 是指受到护甲影响的整数类型伤害。
<damage_type value="x"/>
damage_type:buff 的伤害类型,包括 Systemic、Physical 和 Elemental 三种类型。
<stack_type value="x"/>
stack_type:buff 的堆叠方式,可选项包括 duration(延长持续时间)、effect(增加效果值)、replace(替换原有效果)和 ignore(忽略第二个 buff)。
<duration value="x"/>
duration:buff 的持续时间,单位为 RT 秒,0 表示永久,214748364s 是最大持续时间。
<update_rate value="x"/>
update_rate:buff 的更新速度,单位为 1/20 秒,默认为每秒更新一次。如果 buff 没有 onSelfBuffUpdate 触发器,则该值无关紧要。
<display_value value="_coretemp"/>
display_value:buff 显示的附加信息,可以是 cvar 的值。
<display_value_key value="+{0}°"/>
display_value_key:buff 附加信息的本地化键。
<display_value_format value="time"/>
display_value_format:buff 附加信息的格式,可以将 cvar 的值按照时间来显示。
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
### REQUIREMENTS AND EFFECT GROUPS
需求和效果组
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
requirements:要求条件,用于判断整个 buff 是否触发。默认情况下,AND 是所有要求条件的逻辑运算符,但也可以使用 OR 表示其中任意一个要求条件满足即可触发整个 buff。
effect_group:表示一个效果组,其中包含了多个 passive_effect 或 triggered_effect。如果该效果组的条件为 false,则整个效果组都会失效。
triggered_effect:表示一个触发效果,它会在特定的触发器条件下触发,在指定的目标对象上对指定的属性进行修改。
passive_effect:表示一个被动效果,它会在 buff 持续时间内持续影响指定的属性。
其中,每个 passive_effect 可以设置 duration 属性,来控制其在 buff 持续时间内的作用时间。在 duration 值中,第一个值表示此 passive_effect 的作用开始时间,第二个值表示其结束时间。比如 duration="2.2,3.5" 表示此 passive_effect 会在 buff 开始后的 2.2 秒时生效,在 buff 持续时间的 3.5 秒时失效。而 duration="1.2,8" 则表示此 passive_effect 会在 buff 开始后的 1.2 秒时生效,并持续 6.8 秒,在 buff 持续时间的 8 秒时失效。
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
### NAMED EFFECT GROUPS命名效果组
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
<effect_group name="This is an example group name" tiered="false"/> node
name : Has no function, but gives the user a way to organize groups
tiered (Bool) : On ITEMS this is an untiered, always-on effect. If default / true, the item has a tier and is not stackable.
name:该属性没有具体的功能,但可以让用户对效果组进行分类和组织。
tiered:该属性用于控制物品效果是否分层。当该属性值为 false 时,表示该物品效果不分层,并且总是生效;而当属性值为 default 或 true 时,表示该物品效果分层,具有多个等级,并且在特定条件下才会生效,同时该物品也不可叠加。
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
### USING CUSTOM VARIABLES A.K.A. "cvar" 使用自定义变量A.K.A.“cvar”
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
A custom variable (float) is declared on the target entity whenever you use one.
<triggered_effect trigger="onSelfAimingGunStop" action="ModifyCVar" target="self" cvar="iAmYourNewCVar" operation="set" value="5"/>
When USING a custom variable INSTEAD OF a fixed value you reference it with an "@" instead of a numeric value.
<passive_effect name="JumpStrength" operation="perc_set" value="@iAmYourNewCVar"/>
<requirement name="StatCompare" target="self" stat="stamina" operation="GTE" value="@iAmYourNewCVar"/>
这段代码描述了游戏中如何定义和引用自定义变量(custom variable)。当玩家执行某个操作时,可以通过触发一个 triggered_effect,来在目标实体上声明一个新的浮点型自定义变量(custom variable),其名称为 iAmYourNewCVar,值为 5。然后,在之后的 passive_effect 和 requirement 中,可以通过 "@" 符号来引用该自定义变量,代替原有的数值或常量。
具体地,上述代码中的 passive_effect 表示给主角以类似于跳跃强度的效果,其 operation 属性值为 perc_set,表示给定值是一个百分比,并且使用自定义变量 iAmYourNewCVar 来代替具体的数值。而 requirement 则表示一个条件要求,目标实体的 stamina 属性必须大于等于 iAmYourNewCVar 的值才能满足要求。
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
### GAME VARIABLES 游戏变量
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
游戏变量是只读的常量,可以用于任何数据类型,并且可以在 requireent 和 value 中使用。在上述代码中,#GameTime 表示游戏时间,可以将其作为 passive_effect 的值或者 requirement 的比较值。具体的实现方式取决于游戏开发者的需求。
在上述代码中,passive_effect 表示给主角以类似于跳跃强度的效果,其 operation 属性值为 perc_set,表示给定值是一个百分比,并且使用游戏变量 GameTime 来代替具体的数值。而 requirement 则表示一个条件要求,目标实体的 stamina 属性必须大于等于游戏变量 GameTime 的值才能满足要求。
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
### OPERATIONS AND CVARS, game variables操作和CVARS,游戏变量
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
cvar: 自定义变量的名称,可以使用任何你想要的名称。
operation [set,setvalue,add,subtract,multiply,divide,randomfloat,randomint]: 操作类型,可以设置为"set"、"setvalue"、"add"、"subtract"、"multiply"、"divide"、"randomfloat"或"randomint"。
value (Float,@cvar,#gameVariable): 值。以@或#开头会解析现有cvar或游戏变量的值,而不是一个数值。
value="randomfloat(1,10)" / value="randomint(1,10)": 这将生成一个随机数用于操作cvar。 <triggered_effect trigger="onSelfBuffUpdate" action="ModifyCVar" cvar="test2" operation="set" value="randomint(1,10)"/>
只读cvar以下划线开头:
_degreesabsorbed: 装甲吸收的角度数量;始终为正数;与70华氏度的偏差。
_coretemp: 与70华氏度的温差。
_sheltered: 地点的封闭程度,取值范围为0至1。
_shaded: 类似于_sheltered,但只检查上方。
_wetness: 雨水和站在水中的总湿度,1表示100%湿润。
_underwater:
_difficulty: 游戏难度设置。
_biomeradiation:
_encumberedslots:
_encumbrance:
_fallSpeed:
_crouching:
_notAlerted: 检查是否(!isAlert && !isDead),其中isAlert由倒计时的警戒状态定义。在4个倒计时滴答之后才会改变,这样实体就可以受到悄悄伤害而不必担心它会因为枪声在同一时间点醒来。
_stunned: 0/1
ragdoll: 实体被摔倒时为1
以"$"开头的cvar不会进行网络传输。你可以在本地使用它们进行数学运算,但不能在不同实体之间访问。
以"."开头的cvar既不进行网络传输,也不会保存在游戏中。
你可以将".variables"设置为另一个实体,但无法读取它们。 <triggered_effect trigger="onSelfSecondaryActionRayHit" action="ModifyCVar" target="other" cvar=".somethingsomething" operation="set" value="1"/>
这段代码主要是关于七日杀游戏中的自定义变量(custom variable)和游戏变量(game variable)的一些介绍。其中,cvar 表示自定义变量名称,可以任意设置;operation 属性定义了八种操作方式,包括 set、setvalue、add、subtract、multiply、divide、randomfloat 和 randomint;而 value 属性则是变量的新值,可以是浮点数,也可以是已存在的自定义变量或游戏变量,可以使用 @ 符号引用其他变量或者使用 randomfloat、randomint 函数生成随机值。
另外,还介绍了以特殊符号“”和“.”开头的变量。以“”和“.”开头的变量。以“”开头的变量是非网络化的变量,只能在本地使用和进行计算,无法在不同实体之间共享。而以“.”开头的变量不仅不会被网络化,也不会保存在游戏中,无法读取其值,但可以通过 ModifyCVar 触发器将其值设置为其他实体的值。
在代码中,还介绍了一些只读变量,以及一些可以被 SET 到其他实体的变量。最后,通过 triggered_effect 触发器来触发 ModifyCVar 操作,例如当自身 buff 更新时,可以通过 ModifyCVar 触发器来修改 test2 自定义变量的值,值为用 randomint 函数随机生成的一个整数。在修改 .somethingsomething 变量的值时,target 属性指定为 other,则表示将 .somethingsomething 的值设置为其他实体的值。
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
### REQUIREMENTS / CONDITIONS: list of requirements list要求/条件:要求列表
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
StatCompare:比较角色状态值是否大于等于指定值。
例如:<requirement name="StatCompare" target="self" stat="stamina" operation="GTE" value="3"/>
invert: 反转条件,将其原来的意义取反。
例如:<requirement name="!StatCompare" target="self" stat="stamina" operation="GTE" value="3"/> 表示如果角色状态值小于3时符合条件。
RandomRoll: 随机生成数值判断条件。
CVarCompare: 比较特定cvar变量是否满足条件。
HasBuff: 判断角色身上是否有某种状态。
NotHasBuff: 判断角色身上没有某种状态。
IsMale:判断目标是否为男性。
IsAlive: 判断目标是否活着。
IsSleeping: 判断目标是否正在睡觉。
NPCIsAlert: 判断目标是否警觉。
IsAttachedToEntity: 判断目标是否附着在另一实体上。
EntityTagCompare: 比较目标实体是否具有指定标签。
RequirementItemTier: 判断物品的等级是否符合要求。
ProgressionLevel: 比较角色技能等级是否符合要求。
PlayerLevel: 比较角色等级是否符合要求。
HoldingItemHasTags: 判断角色手持物品是否具有指定标签。
ItemHasTags: 判断物品是否具有指定标签。
ProjectileHasTags: 判断投掷物是否具有指定标签。
HoldingItemBroken: 判断角色手持物品是否损坏。
IsItemActive: 判断角色所使用的物品是否处于激活状态。
IsLookingAtBlock (未启用): 检查是否正在注视特定方块。
IsLookingAtEntity (未启用): 检查是否正在注视特定实体。
IsStatAtMax: 检查指定状态值是否接近最大值。
IsFPV: 视角是否为第一人称。
IsLocalPlayer: 是否是本地玩家。
针对状态值比较,health和stamina状态稍有不同。health有三个值:Max、ModMax、Current,其中Max表示绝对上限,ModMax会随着受到严重伤害而下降,Current为当前血量,只有当Current HP小于1时才算死亡。所以,如果想要Current HP增加到Max HP,需要先将ModMax HP增加到Max HP。在代码中,与状态值相关的判断条件包括:
StatCompareCurrent: 比较当前状态值是否满足条件。
StatCompareMax: 比较状态最大值是否满足条件。
StatCompareModMax: 比较状态中间值是否满足条件。
StatComparePercCurrentToMax: 比较当前状态值是否接近最大值的百分比是否满足条件。
StatComparePercCurrentToModMax: 比较当前状态值是否接近中间值的百分比是否满足条件。
StatComparePercModMaxToMax: 比较中间值是否接近最大值的百分比是否满足条件。
以上是七日杀游戏中的条件判断代码,主要包括StatCompare和StatComparePercent两种比较状态值的方式,但是这两个方式已经被弃用了。现在常用的是StatComparePercCurrentToMax这一方式,它会比较当前状态值是否接近最大值的百分比是否符合要求。例如上述代码<requirement name="StatComparePercCurrentToMax" stat="health" operation="LTE" value=".8"/>表示如果当前生命值为最大生命值的80%或以下时,条件满足。
在这种比较过程中,需要用到一些状态值或者cvar变量的比较运算符。这些运算符包括:None(无)、Equals(等于)、NotEquals(不等于)、Less(小于)、LessThan(小于)、LT(小于)、Greater(大于)、GreaterThan(大于)、GT(大于)、LessOrEqual(小于等于)、LessThanOrEqualTo(小于等于)、LTE(小于等于)、GreaterOrEqual(大于等于)和GreaterThanOrEqualTo(大于等于)、GTE(大于等于)。
IsSecondaryAttack:是否执行次要攻击。
IsPrimaryAttack:是否执行主要攻击。
HasTrackedEntity:是否跟踪某个实体,通过实体标签来判断。这使用“TrackDistance”模块来进行距离检查,与动物跟踪无关,只要在范围内有标记实体即返回TRUE。
IsDay:是否是白天。
IsNight:是否是晚上。
IsBloodMoon:是否是血月。
TimeOfDay:根据当前时间判断是否符合条件。例如:<requirement name="TimeOfDay" operation="GTE" value="1230"/> 表示如果当前时间大于等于12:30,则条件满足。
InBiome:检查是否处于特定生物群落中。例如:<requirement name="InBiome" biome="9"/> 表示如果处于第9号生物群落中,条件满足。
IsIndoors:是否处于室内。
PerksUnlocked:检查玩家是否解锁了特定技能,需指定技能名称。
PlayerItemCount:检查玩家是否拥有特定物品,需指定物品名称。这是一个较为消耗性能的函数,应尽量避免频繁调用。
BlockStandingOn:检查角色站立的方块是否拥有指定标签,如“踩在雪上”。
HitLocation:检查攻击的目标身体部位,可指定“None”、“Head”、“Torso”、“LeftUpperArm”等。
BurstRoundCount:检查射击的连发次数。
TargetRange:检查攻击者和目标之间的距离是否满足条件,主要用于火器的触发条件。并非所有触发器都可与其一起使用,“onSelfPrimaryActionRayHit”无法使用。
RoundsInMagazine:检查弹夹中的子弹数量。
RecipeUnlocked:检查玩家是否解锁了特定配方。
WornItems:检查玩家是否佩戴了特定装备。
EntityHasMovementTag:检查实体是否拥有特定移动标签,如“running”、“floating”等。
TriggerHasTags:目前只能用于“onSelfDestroyedBlock”和“onSelfDamagedBlock”,但可能会在以后扩展。
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
### REQUIREMENTS / CONDITIONS / TAGS :要求/条件/标签:
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
标签可以用于将被动效果限定在特定的(受击)位置、状态或姿势中。
移动/姿势:
crouching:蹲下
standing:站立
idle:静止
walking:行走
running:奔跑
swimming:游泳
floating:漂浮
jumping:跳跃
falling:坠落
climbing:攀爬
例如:
<passive_effect name="JumpStrength" operation="base_set" value="0.13"/>
<passive_effect name="JumpStrength" operation="base_set" value="0.15" tags="running"/>
按照上述例子,第一个从基础设置中调整跳跃力量为 0.13,第二个只有在奔跑时才将跳跃力量从基础设置中调整为 0.15。
命中位置(见下文)
物品标签:
使用被动效果时,不能简单地检查所使用武器的标签。
例如:
<passive_effect name="RoundsPerMinute" tags="perkGunslinger" operation="perc_add" value="2,2" level="1,5"/>
并不起作用。
相反,您需要使用:
<requirement name="HoldingItemHasTags" tags="perkGunslinger"/>
<passive_effect name="RoundsPerMinute" operation="perc_add" value="2,2" level="1,5"/>
invert_tag_check="true"
这将通过所有没有列出标签的项目/被动。
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
### ACTIVE / TRIGGERED EFFECTS (do not confuse with passive effects!)主动/触发效果(不要与被动效果混淆!)
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
<triggered_effect trigger="onSelfBuffStart" action="Ragdoll" [other parameters depending on the action]/>
触发效果是即时更改值、启动缓冲区、启动声音的原子操作。它们能够做一些事情,但触发本身没有固有的持续时间。
触发效果可以检查目标标签,但使用不同的表示法:
例如:
target_tags="walker,head"
animal,bear,coyote,dog,entity,feral,hostile,human,npc,player,radiated,turret,vehicle,vulture,walker,wolf,zombie,
有3个特殊标签:ally(盟友)、party(队伍)、enemy(敌人)
这让您可以将效果过滤到这些组中,就像AOE效果一样。
注意:
target_tags
没有 match_all_tags
不允许过滤打击位置
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
### MINEVENTS / LIST OF TRIGGERS 事件/触发器列表
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
onSelfBuffStart = 0
当自身获得一个增益效果时,触发此事件。
onSelfBuffUpdate
当自身的增益效果更新时,每帧触发一次。该事件不是每秒触发一次的,而是基于帧数。
onSelfBuffFinish
当增益效果的持续时间结束时,触发该事件。
onSelfBuffRemove
当任何来源移除自身的增益效果时,触发该事件。不能用于重新启动增益效果。
onSelfBuffStack
当刷新/延长/叠加增益效果时,触发该事件。但是不包括“忽略”情况。
onSelfProgressionUpdate
每秒运行此事件的所有连续事件。
onPerkLevelChanged
当您购买专长时触发该事件,而不是在专长被临时增加或降低时触发。这是有意的,并且是被动效果的工作方式。
onCombatEntered
进入战斗时,触发该事件。
onOtherDamagedSelf
其他实体对自身造成伤害时,触发该事件。
onOtherAttackedSelf
最后攻击自己的实体("other")时,触发该事件。不应在每个流血效果的间隔中触发。
onOtherHealedSelf
当其他实体治疗自己时,触发该事件。
onSelfDamagedOther
自己对其他实体造成伤害时,触发该事件。
onSelfAttackedOther
自己攻击其他实体时,触发该事件。
onSelfHealedOther
当自己治疗其他实体时,触发该事件。
onDismember
分离身体部位时,触发该事件。
onProjectileImpact
弓箭、燃烧瓶、火箭等发射物撞击目标时,触发该事件。
onSelfDamagedSelf
自己受到伤害时,触发该事件。
onSelfHealedSelf
自己回复生命值时,触发该事件。
onSelfKilledOther
当自己杀死其他实体时,触发该事件。
onSelfDied
当自己死亡时,触发该事件。
onOtherKilledSelf
当其他实体杀死自己时,触发该事件。
onBlockKilledSelf
当方块杀死自己时,触发该事件。
onSelfKilledSelf
当自己杀死自己时,触发该事件。
onSelfPrimaryActionStart
开始进行主要攻击时,触发该事件。
onSelfPrimaryActionRayHit
主要攻击击中物体时,触发该事件。
onSelfPrimaryActionEnd
主要攻击结束时,触发该事件。也会在释放投掷物时触发。
onSelfPrimaryActionUpdate
主要攻击持续进行时,每帧触发一次该事件。
onSelfPrimaryActionAttackFinished
不适用?
onSelfPrimaryActionRayMiss
攻击没有命中实体或方块时,触发该事件。
onSelfPrimaryActionGrazeHit
攻击未造成实质性伤害时,触发该事件。
onSelfPrimaryActionGrazeMiss
攻击未击中实体或方块时,触发该事件。
onSelfPrimaryActionMissEntity
攻击没有击中实体时,触发该事件。
onSelfRangedBurstShot
在扳机按下时开火的连射时,触发该事件,位于ActionStart和AttackFinished之间。
onSelfSecondaryActionStart
开始进行次要攻击时,触发该事件。
onSelfSecondaryActionRayHit
次要攻击击中物体时,触发该事件。
onSelfSecondaryActionEnd
次要攻击结束时,触发该事件。也会在释放投掷物时触发。
onSelfSecondaryActionUpdate
次要攻击持续进行时,每帧触发一次该事件。
onSelfSecondaryActionAttackFinished
不适用?
onSelfSecondaryActionRayMiss
攻击没有命中实体或方块时,触发该事件。
onSelfSecondaryActionGrazeHit
攻击未造成实质性伤害时,触发该事件。
onSelfSecondaryActionGrazeMiss
攻击未击中实体或方块时,触发该事件。
onSelfSecondaryActionMissEntity
攻击没有击中实体时,触发该事件。
onSelfExplosionAttackedOther
自身爆炸攻击了其他实体时,触发该事件。
onSelfExplosionDamagedOther
自身爆炸对其他实体造成了伤害时,触发该事件。
onSelfExplosionMissEntity
爆炸没有命中实体时,触发该事件。
onSelfRepairBlock
当修复方块时,触发该事件。
onSelfPlaceBlock
当放置方块时,触发该事件。
onSelfUpgradedBlock
当升级方块时,触发该事件。
onSelfDamagedBlock
当方块受到损坏时,触发该事件。可以使用 TriggerHasTags 要求来对标签进行过滤。
onSelfDestroyedBlock
当方块被摧毁时,触发该事件。可以使用 TriggerHasTags 要求来对标签进行过滤。
onSelfHarvestBlock
当收获方块时,触发该事件。
onSelfHarvestOther
当收获其他实体时,触发该事件。
onOtherEnteredRange
当其他实体进入范围时,触发该事件。
onOtherLeftRange
当其他实体离开范围时,触发该事件。
onSelfEquipStart
只能用于物品/模组,当开始装备物品时,触发该事件。
onSelfEquipStop
当停止装备物品时,触发该事件。
onSelfItemActivate
只能用于物品/模组,当激活物品时,触发该事件。
onSelfItemDeactivate
当取消激活物品时,触发该事件。
onReloadStart
当开始重新装弹时,触发该事件。
onReloadUpdate
当重新装弹时,每帧触发该事件。
onReloadStop
当停止重新装弹时,触发该事件。
onSelfFirstSpawn //第一次生成时触发,不确定是否有效
onSelfRespawn //死后重新生成时触发
onSelfLeaveGame //离开游戏时触发,不确定是否有效
onSelfEnteredGame //每次进入游戏时触发,包括第一次
onSelfTeleported //传送时触发
onSelfJump //跳跃时触发
onSelfLandJump //落地时触发
onSelfFallImpact //落地冲击时触发
onSelfRun //奔跑时触发
onSelfWalk //开始行走时触发
onSelfCrouch //蹲下时触发
onSelfStand //站起来时触发
onSelfAimingGunStart //开始瞄准时触发
onSelfAimingGunStop //停止瞄准时触发
onSelfCrouchRun //蹲着奔跑时触发
onSelfCrouchWalk //蹲着走路时触发
onSelfSwimStart //进入/离开水中时触发
onSelfSwimStop //进入/离开水中时触发
onSelfWaterSubmerge //潜入水中/浮出水面时触发,当水面特效改变时
onSelfWaterSurface //在水面上时触发
onSelfSwimRun //在水中奔跑时触发
onSelfSwimIdle //在水中静止不动时触发
onSelfHoldingItemCreated //当在活动槽中装备腰带物品时触发?
onSelfHoldingItemThrown //投掷手持物品时触发
onSelfItemCrafted //制作物品时触发
onSelfItemRepaired //修理物品时触发
onSelfItemLooted //拾取物品时触发
onSelfItemLost //失去物品时触发
onSelfItemGained //获得物品时触发
onSelfItemSold //卖出物品时触发
onSelfItemBought //购买物品时触发
//onSelfDiscoveredPOI, //Hook Up
//onSelfDiscoveredArea, //Hook Up
//onSelfEnteredPOI, //Hook Up
//onSelfExitedPOI, //Hook Up
//onSelfEnteredArea, //Hook Up
//onSelfExitedArea, //Hook Up
onSelfEnteredBiome //进入生物群系时触发
onSelfLootContainer //打开可拾取容器时触发
onSelfOpenLootContainer //在可拾取容器中时触发
//onQuestStart, //Hook Up
//onQuestLocationReached, //Hook Up
//onQuestLocationLeft, //Hook Up
//onQuestCompleted, //Hook Up
//onQuestFailed, //Hook Up
//onGameBloodmoonStart, //Hook Up
//onGameBloodmoonEnd, //Hook Up
//onGameDayStart, //Hook Up
//onGameNightStart, //Hook Up
//onGameRainStart, //Hook Up
//onGameRainEnd, //Hook Up
//onGameSnowStart, //Hook Up
//onGameSnowEnd, //Hook Up
//onGameFogStart, //Hook Up
//onGameFogEnd, //Hook Up
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
### ACTIVE / TRIGGERED EFFECTS: ACTIONS 活动/触发效果:动作
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
<triggered_effect/>的TARGET参数支持[self, other, selfAOE, otherAOE, positionAOE, selfOtherPlayers]。如果特定操作支持AOE(范围效果),则可以使用。如果AOE事件有一个要求,将检查所有目标并仅将满足所有要求的目标视为有效目标。
默认情况下,target="self"且可以通过target="other"覆盖,如果想要检查(攻击的)目标。对于像被攻击这样的事件触发器,“other”是你的攻击者。
根据使用的TARGET或TRIGGER,可能需要一个range参数:
range="x"
AnimatorSetFloat: target, property, value
AnimatorSetInt: target, property, value; 更改动画/行走类型
AnimatorSetBool: target, property, value
AddBuff: target, buff-此默认模式添加1个buff。如果BuffResistance处于活动状态,则可能会失败(被抵抗)。
多个buff选择:
<triggered_effect trigger="onSelfBuffStart" action="AddBuff"
fireOneBuff="true" buff="bufftest01,bufftest02,bufftest03,bufftest04,bufftest05" weights="5,4,3,2,1"/>
这将触发一个buff,从列表中选择一个基于权重。
33、26、20、13和6%的机率。
fireOneBuff="true"显然表示它不会全部触发,并使用权重。如果为false,则将尝试基于0-1的值和调整后的权重值触发每个buff,因此可以通过一次操作触发多个潜在的buff。
没有权重和fireOneBuff,它将简单地处理列表中的所有buff。
RemoveBuff: target, buff
ModifyCVar: target, cvar, operation [set、add、subtract、multiply、divide],value
value="randomfloat(1,10)" / value="randomint(1,10)",这将生成一个随机数用于cvar操作。
执行基本数学运算"cvar" "operation" "value"并将结果写回到"cvar"
CVarLogValue: target, cvar(将调试消息打印到控制台)
LogMessage: message
ModifyScreenEffect: target, effect_name, intensity, fade;intensity= 0将其禁用
着色器位于\Assets\Resources\ScreenEffects\Shaders中
PlaySound: target, sound, play_in_head;声音引用的不是文件名,而是来自sounds.xml的声音名称
声音可以使用通配符。"#"被替换为"1"(男性)或"2"(女性),"$"被替换为"Male"或"female"
例如:sound="player#painlg"
StopSound: target, sound, play_in_head
FadeOutSound: target, sound
ShakeCamera shake_speed, shake_amplitude, shake_time?
ModifyStat:已弃用(不支持value_type)
ModifyStats: target, stat[health, stamina, water, coretemp food ?],
value_type [max, modifiedmax],
operation [set, setvalue, add, subtract, multiply, divide, randomfloat ?、randomint ?],value,
请注意,运算符与被动效果上的运算符不同。执行基本数学运算"stat" "operation" "value"并将结果写回到"stat"
Ragdoll: target, duration, force(可以增加推力)
ShowToolbeltMessage target? message="blahblub" | message_key="localizationKey", sound="" play_in_head始终为true。
此消息出现前将会有1秒以上的延迟。编码者说这是有意的。我怀疑有幽灵消息阻塞了队列。
AttachParticleEffectToEntity: target, particle, parent_transform, local_offset, local_rotation
RemoveParticleEffectFromEntity target, particle
ResetProgression:硬编码忽略书中的特权
GiveExp:exp="@_expdeficit" | exp="0"
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
### PASSIVE EFFECTS 被动效果
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
每个被动效果本质上都是一个数字。它反映了实体的当前状态,例如最大承载能力或枪的向上反冲。
所有应用的更改都是永久性的……直到下一个更新运行整个操作顺序(OOO)并确定所涉及效果的新的当前值。
穿戴物品在穿戴时应用它们的效果。
手持物品(工具)在手持时应用它们的效果,处于活动工具栏槽中。
增益在活动时应用它们的效果。
所有这些效果都可以完全或部分地依赖于条件,因此如果你有一个特殊的再生增益,它会一直进行……但是它的治疗效果可能会在你同时拥有“燃烧”增益时暂时中断。
修改数字是该系统所做的全部。如果你想要开始一个增益——你来错地方了。
如果你想要改变每次跳跃使用的耐力量——那就是我们在这里做的事情。
target="self" 在所有被动效果中都是暗示的。
你不能将一个效果应用到target="other",因为它不会有持续时间,并且会在下一个更新时被覆盖。
当然,Buff可以应用到另一个实体。该Buff然后是该实体的OOO的一部分,并应用效果。
关于OOO的更多信息,请参阅
XML.txt中有关确定效果及其大小的GENERAL计算顺序,操作顺序(OOO)的说明
特殊情况
物品
物品可以有等级。
<passive_effect name="RunSpeed" operation="perc_add" value="5" tier="1"/>
<passive_effect name="RunSpeed" operation="perc_add" value="10,50" tier="2,6"/>
tier参数将效果限制为特定的层次或范围。
以上两个都可以是同一物品的一部分。
进阶(属性、技能、特权)
这里有一个“等级”。你可以限制某种效果……请参见上文。
<passive_effect name="RunSpeed" operation="perc_add" value="5" level="1"/>
<passive_effect name="RunSpeed" operation="perc_add" value="10,50" level="2,6"/>
增益
你可能已经发现,buff具有持续时间。
默认情况下,包括所有效果的增益在buff存在时均为“开启状态”。
这将过于简单,因此让我们来模拟效果曲线!
duration是被动效果的可选参数。
增益的持续时间值为0时,增益开始。
<passive_effect name="SpreadMultiplierAiming" operation="perc_add" duration="2,4,8.5" value="0,-20,-85"/>
在buff的前2秒,该效果不起任何作用。
在buff时间的2秒至4秒之间,它将SpreadMultiplierAiming的值从正常移动到-20%。
在buff时间的4秒至8.5秒之间,它将SpreadMultiplierAiming的值从-20%移动到-85%。
8.5秒后没有效果。
<passive_effect name="SpreadMultiplierAiming" operation="perc_add" duration="8.50001,600" value="-85"/>
此效果在8.50001秒开始,始终应用相同的效果。
(你可以将其合并到上一个效果曲线中——这只是一种演示)
随机插值
如果任何ITEMS/PROGRESSION/BUFFS被动效果没有层次/级别/持续时间,但具有两个值
如value="3,10",则这将被视为随机范围。
注意:内部上层|级别|持续时间是相同的值。它的含义源自上下文,因此如果……一个技能就像一个物品那样工作,但让我们现在保持理智。
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
### PASSIVE EFFECTS : OPERATIONS
被动效果:操作
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
被动效果总是有一个操作。
你记得它们只能更改数字吗?所以它们必须有一个操作。
请注意,这些不是“运算符”,而是在OOO过程中执行的更复杂的操作。
这些操作与更简单的ModifyCVar/ModifyStats操作完全不同。
<passive_effect name="RunSpeed" operation="base_set|base_add|base_subtractperc_set|perc_add|perc_subtract" value="5"/>
操作:
base_set:将状态的绝对(基本)值设置为指定值,例如将HealthMax准确设置为100。
明智之举是确保你只有一个这样的“base_set”,因为它是一个无条件的覆盖。
基础/默认值为“1”。
base_add:值为10将10点加到绝对值上
base_subtract:(猜测)
perc_set:将效果的%修改器设置为特定值。可能不会经常使用,因为它会覆盖许多东西。
perc_add:将此%修改器添加到效果中
值“.07”表示+7%
该效果的所有百分比修改器都累加,并在应用所有基础值更改后仅应用一次。
参见OOO。你将再次看到这个材料。
perc_subtract:(与上面相同但是不同)
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
### PASSIVE EFFECT : TAGS 被动效果:标签
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
标签是用于筛选应用于物品或实体的效果的过滤器。
在这里我们有一个技能,例如等级10,这意味着在使用打有“pistol”标签的物品时+100%的伤害。
在OOO中,技能在物品之后。
该技能现在检查所有其标签是否出现在物品的标签中。
在马格南手枪上有一个“pistol”标签,所以这是有效的。在AK47上没有标签,因此效果(伤害增加)不适用。
如果该技能具有"标签=pistol,longRange",那么Magnum将不符合要求。
所有标签必须匹配。
物品可以具有其他与其他技能/增益相关的标签,但每个技能都会检查其所有标签是否存在于物品上。
如果一个效果没有标签,它将应用于所有物品/攻击。
标签用于将效果限制为非常特定的物品,因此默认情况下为“无限制”。
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
### SPECIAL CASE: CLOTHING AND ARMOR 特殊情况:服装和防具
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
If an item is tagged "clothing" or "armor" this is also read as "ignoreWhenHeld" (on the tool belt) 如果物品被标记为“衣服”或“护甲”,这也被视为“忽略手持工具”的标记。
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
### PRIMARY / SECONDARY ACTION TAGS 主/副操作标签
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
主/副操作被硬编码为向物品的标签添加“primary”或“secondary”。
因此,如果我想让增益或技能在所有左轮手枪的SECONDARY攻击上产生效果,我会使用
<passive_effect name="EntityDamage" operation="perc_add" value="100" tags="secondary,revolver"/>。
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
### LIST OF PASSIVE EFFECTS 被动效果清单
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
这些被动效果作用于物品或实体上。只有少数需要特定的范围,比如作用于物品或模组上。
它们通常是与实体相关的统计/效果,例如跳跃高度、奔跑速度、战利品等级/能力等,这些(一旦确定)在 entityclasses.xml 中声明,然后通过各种增益、技能、物品等进行修改。
EntityHeal:治疗能力,自行绑定
BlockRepairAmount:修复物品所需能量,自行绑定
DamageModifier:各种材料对伤害的影响,例如头部、玻璃、石头、布料、混凝土、巨石、金属、木材、土地、雪、植物和树叶等。可以基于这个因素设置一个乘数,该乘数在攻击时会被应用到伤害值上,这使得伤害值更加真实。多次添加的 base_add 和 perc_add 也会像平常一样被应用。例如,在链锯上使用一个名为 WoodSplitter 的模组,它提供了 0.5 的额外加成;而链锯本身的“wood”加成为 10,则总加成为 10.5。
PhysicalDamageResist:物理伤害抵抗能力,数值为 0-100,100 表示无敌。可以使用 tags 指定伤害类型,例如 piercing、bashing、slashing、crushing、none 和 corrosive。与装甲技能标签不同,这些效果不会受到物品标记的影响。
ElementalDamageResist:元素伤害抵抗能力
TrapIncomingDamage:用于地雷,修改接收到的伤害值。 perc_set=.8 减少 20% 的伤害,而 base_set=90 则将其设置为固定伤害值 90。
BlockPickup:设定方块是否可以拾取。例如:<passive_effect name="BlockPickup" operation="base_set" value="1" tags="Mine"/>
HypothermalResist:低温抵抗能力
HyperthermalResist:高温抵抗能力
VehicleSpeedMax:车辆最大速度
VehicleBoostedSpeedMax:车辆加速后的最大速度
VehicleFuelUsePer:车辆燃料消耗速率
VehicleVelocityMaxPer:车辆的速度乘数
VehicleVelocityMaxTurboPer:车辆使用涡轮增压时的速度乘数
VehicleCarryCapacity:车辆载重量
VehicleEntityDamage:车辆造成的伤害值
VehicleBlockDamage:车辆对方块的破坏力
VehicleReflectedDamage:反弹给车辆的伤害值
VehicleTankSize:汽油车油箱大小
VehicleHopStrength:车辆跳跃力度
VehiclePlayerStaminaDrainRate:玩家在驾驶车辆时的耐力消耗速率
BatteryMaxLoadInVolts:电池最大负载电压
BatteryDischargeTimeInMinutes:电池放电时间(分钟)
DistractionResistance:对干扰效果的抵抗能力
DistractionRadius:干扰范围
DistractionLifetime:干扰持续时间
DistractionStrength:干扰强度
DistractionEatTicks:设定干扰是否会影响食物贮存
ProjectileVelocity:弹丸初始速度
ProjectileGravity:弹丸重力加速度
ProjectileStickChance:物品上弹丸黏附的概率,默认值为 0.5,例如:<passive_effect name="ProjectileStickChance" operation="perc_set" value="0" tags="glass"/>
RecipeTagUnlocked:设定可解锁的配方,例如:<passive_effect name="RecipeTagUnlocked" tags="ammo44MagnumBulletHP,ammoShotgunSlug"/>,或者设置名为“ammo44MagnumBulletHP”的 cvar。
EconomicValue:物品经济价值
AttributeLevel:属性等级
SkillLevel:技能等级
PerkLevel:特长等级
SkillExpGain:技能经验获取量
PlayerExpGain:玩家经验获取量,支持 tags,例如 Kill、Harvesting、Upgrading、Crafting、Selling、Quest、Looting、Party 和 Other
ExpDeficitPerDeathPercentage:死亡所造成的经验值惩罚比例,以达到下一级所需经验值为基准,默认比例为 10%
ExpDeficitMaxPercentage:经验不足的最大比例,默认值为 50%,可以通过 CVAR _expdeficit 调整。
ElectricalTrapXP:陷阱击杀时给予玩家的经验值占陷阱总经验值的百分比(默认为0),此效果仅对特定类型的方块有效,类似于“BladeTrap”。只有方块实体才能存储所有者。
NoiseMultiplier:音量乘数
LightMultiplier:光照程度乘数
CraftingTime - 制造时间
CraftingTier - 制造等级
CraftingSmeltTime - 熔炼时间
CraftingOutputCount - 制造产出数量
ActiveCraftingSlots - 活跃制造槽位
CraftingSlots - 制造槽数量
CarryCapacity - 背包承载能力
BagSize - 背包容量大小
RepairTime - 修复时间
RepairAmount - 修复数值
WaterRegenRate - 水分再生速率乘数
HealthMax - 生命值上限
HealthMaxModifierOT - 受损生命值部分每秒修改百分比
HealthChangeOT - 生命值每秒修改数值
HealthGain - 生命值获得时的修改值
HealthLoss - 生命值减少时的修改值
HealthLossMaxMult - 生命值减少最大倍数,适用于当前生命值上限值
StaminaMax - 耐力上限
StaminaMaxModifierOT - 受损耐力部分每秒修改百分比
StaminaChangeOT - 耐力每秒修改数值
StaminaGain - 耐力获得时的修改值
StaminaLoss - 耐力减少时的修改值
StaminaLossMaxMult - 耐力减少最大倍数,适用于当前耐力上限值
FoodMax - 食物供给上限
FoodChangeOT - 食物每秒修改数值
FoodGain - 食物获得时的修改值
FoodLoss - 食物减少时的修改值
FoodLossPerHealthPointLost - 每减少一点生命值损失的食物值
WaterMax - 水分供给上限
WaterChangeOT - 水分每秒修改数值
WaterGain - 水分获得时的修改值
WaterLoss - 水分减少时的修改值
WaterLossPerHealthPointGained - 每增加一点生命值损失的水分值
WaterLossPerStaminaPointGained - 每增加一点耐力损失的水分值
HealthMaxBlockage - 受阻止最大生命值部分
StaminaMaxBlockage - 受阻止最大耐力部分
FoodMaxBlockage - 受阻止最大食物供给部分
WaterMaxBlockage - 受阻止最大水分供给部分
CoreTempChangeOT - 核心温度每秒修改数值
CoreTempGain - 核心温度上升时的修改值
CoreTempLoss - 核心温度下降时的修改值
ScavengingTime - 搜索时间
ScavengingTier - 搜索等级
ScavengingItemCount - 搜索道具数量
HarvestCount - 收获倍增器数量,用于收获将被消耗的物品
DismemberChance - 断肢概率,可应用于头、手臂、腿标签。僵尸属性可使其倍增。
TreasureRadius - 宝藏半径
TreasureBlocksPerReduction - 每搜索 TreasureBlocksPerReduction 个方块,宝藏半径缩小 1 米。
BreathHoldDuration - 呼吸暂停时间
BarteringBuying - 买卖条款
BarteringSelling - 买卖条款
SecretStash - 秘密储藏处
LootTier - 战利品等级
HeatGain - 热量增加值
QuestBonusItemReward - 任务奖励物品
QuestRewardOptionCount - 任务完成后可选择奖励数量
QuestRewardChoiceCount - 任务完成后可获得的奖励数目
GameStage - 游戏阶段
LootStage - 战利品等级
LandMineImmunity - 雷区免疫性
MovementFactorMultiplier - 移动因子乘数,可应用于减轻某些方块影响移动速度的程度
TrackDistance - 追踪距离
TurretWakeUp - 炮台唤醒
TrapDoorTriggerDelay - 机关门触发延迟
LandMineTriggerDelay - 地雷触发延迟
LockPickTime - 撬锁所需时间
LockPickBreakChance - 撬锁失败概率百分比
LandClaimDamageModifier - 在领地内对方块造成的损害值
FallDamageReduction - 减少从跌落中受到的伤害
LootDropProb - 掉落概率
LootQuantity - 掉落数量
CriticalChance - 暴击概率
BuffProcChance - Buff触发概率
BuffResistance - Buff免疫性
BuffBlink - Buff图标闪烁效果
DisableItem - 禁用特定标记物品
EntityDamage - 生物伤害值
DamageBonus - 伤害乘法器,用于缩放对特定身体部位或材料的伤害
EntityHeal - 实体治疗
BlockDamage - 方块损坏值
BlockRepairAmount - 方块修复数值
AttacksPerMinute - 攻击频率(攻击次数/分钟)
SphereCastRadius - 弹道半径
SpreadMultiplierHip - 臀部射击散布乘数
SpreadMultiplierAiming - 瞄准散布乘数
SpreadMultiplierRunning - 奔跑散布乘数
SpreadMultiplierWalking - 行走散布乘数
SpreadMultiplierCrouching - 蹲下散布乘数
SpreadMultiplierIdle - 空闲散布乘数
IncrementalSpreadMultiplier - 相邻射击的散布乘数
WeaponHandling - 武器操作性能,数值越高表示更好
MagazineSize - 弹夹容量
ReloadSpeedMultiplier - 重新装载速度乘数,数值越高表示装载速度越快
DamageFalloffRange - 伤害衰减范围
MaxRange - 最大射程,仅适用于枪械
BlockRange - 方块射程,仅适用于枪械。为了游戏可玩性,工具需要有更长的射程用于方块光线追踪
SpreadDegreesVertical - 垂直散布角度
SpreadDegreesHorizontal - 水平散布角度
KickDegreesVerticalMin / KickDegreesVerticalMax - 垂直踢角度最小值和最大值
KickDegreesHorizontalMin / KickDegreesHorizontalMax - 水平踢角度最小值和最大值
JunkTurretActiveRange - 废品炮台活跃范围,默认为10,可以应用于物品或玩家(进度/增益),而非炮台实体。
JunkTurretActiveCount - 废品炮台活跃数,默认为1,这是一个已知的错误。数值为0表示有1个炮台活跃,数值为2和3表示有2或3个炮台活跃。
BurstRoundCount - 连射弹数
RoundsPerMinute - 每分钟子弹数,仅适用于枪械
ExplosionRadius - 爆炸半径
RoundRayCount - 子弹轨迹光线数量,现在是弹药属性
SphereCastRadius - 弹道半径,仅适用于枪械,未来可能用于近战武器
LightIntensity - 游戏世界中的光强度(0-15)
HealthSteal - 生命偷取
GrazeDamageMultiplier - 擦伤伤害乘数
GrazeStaminaMultiplier - 擦伤耐力乘数
DegradationMax - 最大损失值
DegradationPerUse - 每次使用的损失值
Tier - 物品等级
ModSlots - 附加槽位
ModPowerBonus - 附加电源奖励
PiercingDamage - 穿刺伤害
SlashingDamage - 砍杀伤害
BashingDamage - 敲击伤害
CrushingDamage - 压伤伤害
ExplosiveDamage - 爆炸伤害
HeatDamage - 热伤害
ColdDamage - 冷伤害
RadiationDamage - 辐射伤害
CorrosiveDamage - 腐蚀伤害
ElectricalDamage - 电击伤害
TargetArmor - 击中实体时,将目标实体的护甲值修改为此值。参见ammo9mmBulletAP。
FallingBlockDamage - 落下方块的伤害
SilenceBlockSteps - 在垃圾上悄悄行走不会发出声音
CraftingIngredientCount - 制作原料数量
EntityPenetrationCount - 实体穿透深度
BlockPenetrationFactor - 方块穿透因子,默认为251;这么多方块耐久度减少1点实体穿透深度。数字251足以穿透1个木制方块或门。
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
### LIST OF PASSIVE ARMOR EFFECTS被动装甲效果列表
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
//Environmental Damage Types
FallingProtection, //Hook Up
PiercingProtection // 穿刺伤害保护
SlashingProtection // 砍杀伤害保护
BashingProtection // 敲击伤害保护
CrushingProtection // 压伤伤害保护
ExplosiveProtection // 爆炸伤害保护
//Elemental Damage Types
HeatProtection // 热伤害保护
ColdProtection // 冷伤害保护
RadiationProtection // 辐射伤害保护
CorrosiveProtection // 腐蚀伤害保护
ElectricalProtection // 电击伤害保护
//Internal Body Damage Types (probably more used in mods and on buffs than on armor)
SuffocationProtection // 窒息保护
DiseaseProtection // 疾病保护
InfectionProtection, //Hook Up // 感染保护,连接钩子
StarvationProtection, //Hook Up // 饥饿保护,连接钩子
DehydrationProtection, //Hook Up // 脱水保护,连接钩子
FeverProtection, //Hook Up // 发烧保护,连接钩子
//Environmental Damage Types
FallingProtection, //Hook Up // 坠落保护,连接钩子
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
### VEHICLE车辆相关参数
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
VehicleDamagePassedToPlayer //Hook Up // 钩子连接,传递给玩家的车辆损伤数值
VehicleSteering // 车辆转向能力
VehicleMaxSteeringAngle // 车辆最大转向角度
VehicleAcceleration // 车辆加速度
VehicleBraking // 车辆制动能力
VehiclePlayerStaminaDrainRate // 玩家驾驶时的耐力消耗速率
VehicleMaxSpeed // 车辆最大速度
VehicleMetersPerLiter // 车辆百公里耗油量
VehicleIdleSecondsPerLiter // 车辆怠速状态每秒耗油量
VehicleNoise // 车辆噪音
VehicleTraction // 车辆牵引力
VehicleDrag // 车辆阻力
VehicleTankSize // 车辆油箱大小
VehicleStorageWidth // 车辆存储宽度
VehicleStorageHeight // 车辆存储高度
BatteryMaxLoadInVolts // 电池最大电压负载
BatteryDischargeTimeInMinutes // 电池放电时间(分钟)
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
### DAMAGE TYPES 伤害类型
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Any buff that has a <damage_type value=""/> that is not null will be taken out with the RemoveAllNegativeBuffs action.
如果某个增益效果的 <damage_type value=""/> 不为空,那么可以通过 RemoveAllNegativeBuffs 方法将其删除。此外,增益效果还会与玩家杀死其他人或团队成员的设置进行交互。只有正面的增益效果才会生效,除非设置为敌对。
//Physical Damage Types
物理伤害类型:
Piercing // 穿刺
Slashing // 砍杀
Bashing // 敲击
Crushing // 压伤
Corrosive // 腐蚀
//Elemental Damage Types
元素伤害类型:
Heat // 热
Cold // 冷
Radiation // 辐射
Toxic // 毒性
Electrical // 电击
//Systemic Damage Types
系统伤害类型:
Disease // 疾病
Infection // 感染
Starvation // 饥饿
Dehydration // 脱水
Falling // 坠落
Suffocation // 窒息
BloodLoss // 流血,该伤害类型(出血)对于感染僵尸加速攻击的伤害反应有一定降低(10%)
Sprain // 扭伤
Break // 骨折
Stun // 晕眩
Concuss // 脑震荡
KnockOut // 击昏
BlackOut // 昏迷
KnockDown // 击倒
<!-- critical hit buffs:-->
<!-- triggerInfection -->
<!-- triggerAbrasion -->
<!-- triggerSprainedLeg -->
<!-- triggerBrokenLeg -->
<!-- triggerSprainedArm -->
<!-- triggerBrokenArm -->
<!-- triggerFatigued -->
<!-- triggerBleeding -->
<!-- triggerLaceration -->
<!-- triggerStun -->
<!-- triggerConcussion -->
<!-- critical hit buffs:-->
<!-- 触发感染 -->
<!-- triggerAbrasion -->
<!-- 触发扭伤的腿 -->
<!-- 触发骨折的腿 -->
<!-- 触发扭伤的手臂 -->
<!-- 触发骨折的手臂 -->
<!-- 触发疲劳 -->
<!-- 触发流血 -->
<!-- 触发割裂 -->
<!-- 触发晕厥 -->
<!-- 触发脑震荡 -->