动态动画替换器 (Dynamic Animation Replacer) 封面

动态动画替换器 (Dynamic Animation Replacer)

上古卷轴5:天际特别版实用工具

此 mod 会根据各种条件动态替换角色的动画。支持大多数角色,包括生物。也支持由 mod 添加的角色和动画。没有 ESP 文件。

前置 Mod

详情

  • 描述

此 mod 会根据各种条件动态替换角色的动画。支持大多数角色,包括生物。也支持由 mod 添加的角色和动画。没有 ESP 文件。

有两种分配动画的方式。两种方式都需要将文件放入相应的文件夹。不需要特殊工具。如果你使用 FNIS 性别专用动画,将引用 female 或 male 文件夹中的文件。在这种情况下,你需要将文件放入该路径下的文件夹中。

+ 根据 ActorBase 分配

为每个 NPC 分配不同的动画。将动画文件放入以下文件夹。

meshes\actors(project folder)\animations\DynamicAnimationReplacer(esp name)(actor base id)(animation folders and files)

(project folder) 是包含该种族行为图(behavior graph)设置的文件夹。例如:character

(actor base id) 必须是 8 个字符。前两个字符是 00。

示例:

Player - meshes\actors\character\animations\1hm_attackpowerleft.hkx

-> meshes\actors\character\animations\DynamicAnimationReplacer\Skyrim.esm\00000007\1hm_attackpowerleft.hkx

Serana - meshes\actors\character\animations\female\mt_idle.hkx

-> meshes\actors\character\animations\DynamicAnimationReplacer\Dawnguard.esm\00002B6C\female\mt_idle.hkx

+ 根据自定义条件分配

自行设置条件。据此分配动画。将动画文件和 _conditions.txt 放入以下文件夹。

meshes\actors(project folder)\animations\DynamicAnimationReplacer_CustomConditions<Priority>(animation folders and files and _conditions.txt)

<Priority> 是 -2147483648 到 2147483647 范围内不包括 0 的十进制数。数字越大,优先级越高。上述依赖 ActorBase 的分配优先级为 0。

_conditions.txt 是一个名为 _conditions 的文本格式文件。在此文件中指定用于设置条件的函数。多个条件可以用 AND 和 OR 连接。你可以使用 NOT 对条件取反。

(NOT) 函数名("esp name" | formID, ...) (AND 或 OR)

...

esp 名称用 "" 括起来。以 0x 为前缀,用十六进制指定 FormID。移除或替换表示加载顺序的前两位数字。示例:0xAA123456 -> 0x00123456

如下所示,将 esp 名称和 FormID 指定为函数的参数。

IsEquippedRight(Form item) -> IsEquippedRight("aaa.esp" | 0x00123456)

也可以直接向 GlobalVariable 指定数字。

IsEquippedRightType(GlobalVariable type) -> IsEquippedRightType(3)

示例:

右手装备铁匕首且位于室外的角色

IsEquippedRight("Skyrim.esm" | 0x0001397E) AND

NOT IsInInterior()

逻辑运算与 CK 中相同。

(A || B) && C

=A || B && C

A OR

B AND

C

(A && B) || C

=A || C && B || C

A OR

C AND

B OR

C

函数列表

v1.0.0

IsEquippedRight(Form item)

该角色右手是否装备了指定物品?

IsEquippedRightType(GlobalVariable type)

该角色右手装备的物品是否为指定类型?

IsEquippedRightHasKeyword(Keyword keyword)

该角色右手装备的物品是否具有指定 keyword?

IsEquippedLeft(Form item)

该角色左手是否装备了指定物品?

IsEquippedLeftType(GlobalVariable type)

该角色左手装备的物品是否为指定类型?

IsEquippedLeftHasKeyword(Keyword keyword)

该角色左手装备的物品是否具有指定 keyword?

IsEquippedShout(Form shout)

该角色当前是否拥有指定龙吼?

IsWorn(Form item)

该角色是否穿着/佩戴指定物品?

IsWornHasKeyword(Keyword keyword)

该角色是否穿着/佩戴任何具有指定 keyword 的物品?

IsFemale()

该角色是否为女性?

IsChild()

该角色是否为儿童?

IsPlayerTeammate()

该角色当前是否为玩家的队友?

IsInInterior()

该角色是否在室内单元格中?

IsInFaction(Faction faction)

该角色是否在指定阵营中?

HasKeyword(Keyword keyword)

该角色是否具有指定 keyword?

HasMagicEffect(MagicEffect magiceffect)

该角色当前是否正受到给定 Magic Effect 影响?

HasMagicEffectWithKeyword(Keyword keyword)

该角色当前是否正受到具有给定 Keyword 的 Magic Effect 影响?

HasPerk(Perk perk)

该角色是否具有给定 Perk?

HasSpell(Form spell)

该角色是否拥有给定法术或龙吼?

IsActorValueEqualTo(GlobalVariable id, GlobalVariable value)

指定 ID 的 ActorValue 是否等于该值?

IsActorValueLessThan(GlobalVariable id, GlobalVariable value)

指定 ID 的 ActorValue 是否小于该值?

IsActorValueBaseEqualTo(GlobalVariable id, GlobalVariable value)

指定 ID 的基础 ActorValue 是否等于该值?

IsActorValueBaseLessThan(GlobalVariable id, GlobalVariable value)

指定 ID 的基础 ActorValue 是否小于该值?

IsActorValueMaxEqualTo(GlobalVariable id, GlobalVariable value)

指定 ID 的最大 ActorValue 是否等于该值?

IsActorValueMaxLessThan(GlobalVariable id, GlobalVariable value)

指定 ID 的最大 ActorValue 是否小于该值?

IsActorValuePercentageEqualTo(GlobalVariable id, GlobalVariable value)

指定 ID 的百分比 ActorValue 是否等于该值?

IsActorValuePercentageLessThan(GlobalVariable id, GlobalVariable value)

指定 ID 的百分比 ActorValue 是否小于该值?

IsLevelLessThan(GlobalVariable level)

该角色的当前等级是否小于指定等级?

IsActorBase(ActorBase actorbase)

该角色的 actorbase 是否为指定 actorbase?

IsRace(Race race)

该角色的种族是否为指定种族?

CurrentWeather(Weather weather)

当前天气是否为指定天气?

CurrentGameTimeLessThan(GlobalVariable time)

当前游戏时间是否小于指定时间?

ValueEqualTo(GlobalVariable value1, GlobalVariable value2)

value1 是否等于 value2?

ValueLessThan(GlobalVariable value1, GlobalVariable value2)

value1 是否小于 value2?

Random(GlobalVariable percentage)

按指定百分比(从 0 到 1)的概率。

==========================================================================

v1.1.0 新增

IsUnique()

该角色是否被标记为 unique?

IsClass(Class class)

该角色的职业是否为指定职业?

IsCombatStyle(CombatStyle combatStyle)

该角色的 CombatStyle 是否为指定 CombatStyle?

IsVoiceType(VoiceType voiceType)

该角色的 VoiceType 是否为指定 VoiceType?

IsAttacking()

该角色当前是否正在攻击?

IsRunning()

该角色当前是否正在奔跑?

IsSneaking()

该角色当前是否正在潜行?

IsSprinting()

该角色当前是否正在冲刺?

IsInAir()

该角色是否在空中?

IsInCombat()

该角色是否在战斗中?

IsWeaponDrawn()

该角色是否已拔出装备的武器和/或法术?

IsInLocation(Location location)

该角色是否在指定地点或该地点的子地点中?

HasRefType(LocationRefType refType)

该角色是否附加了指定 LocationRefType?

IsParentCell(Cell cell)

该角色是否在指定单元格中?

IsWorldSpace(WorldSpace worldSpace)

该角色是否在指定 WorldSpace 中?

IsFactionRankEqualTo(GlobalVariable rank, Faction faction)

该角色在指定阵营中的阶级是否等于指定阶级?

IsFactionRankLessThan(GlobalVariable rank, Faction faction)

该角色在指定阵营中的阶级是否小于指定阶级?

IsMovementDirection(GlobalVariable direction)

该角色是否正在朝指定方向移动?

请注意,Random() 函数在某些动画中可能会意外混淆。

ActorValue ID 请参考以下内容。

https://www.creationkit.com/index.php?title=ActorValueInfo_Script

物品类型如下。

-1=其他

0=拳头

1=剑

2=匕首

3=战斧

4=钉头锤

5=巨剑

6=巨斧

7=弓

8=法杖

9=弩

10=战锤

11=盾牌

12=变化系法术

13=幻术系法术

14=毁灭系法术

15=召唤系法术

16=恢复系法术

17=卷轴

18=火把

该角色在指定阵营中的阶级:

-2 如果角色不在该阵营中。

-1 如果角色在该阵营中,且阶级设为 -1。按照惯例,这意味着他们最终可能成为该阵营的成员。

一个等于角色在该阵营中阶级的非负数。

移动方向:

0=静止不动

1=前

2=右

3=后

4=左

如果你在应用动画时遇到问题,请打开 "..My Games\Skyrim Special Edition\SKSE\DynamicAnimationReplacer.log"。其中可能有错误信息。

注意:

每个项目的动画文件最大数量为 16384。该数字是 Skyrim 原始文件、其他 mod 添加的文件以及此 mod 添加的文件的总和。如果数量过多,消息框将显示错误,并且动画不会加载。如果你想知道当前的动画数量,请打开日志。

  • 需求

SKSE64

Address Library for SKSE Plugins

  • 兼容性

未发现不兼容的 mod。

使用 Dynamic Animation Replacer 的 mod

New Weapons Types and Animation Support

EVG Conditional Idles(SGC) SkySA - Weapon Mastery Module(DMC) Shiver Alpha - A Frostfall . Frostbite . CC Survival Animation ModFeral - Claw Unarmed Attacks for Beast Races - Vampires - Werewolves(SGC) SkySA - Animated Armoury ModuleAnimated Armoury - DAR Version - New Weapons with animations

SIdeSaddle Combat AnimationsRaces Base IA - Improved Core Animation RebuilderGenesis AR - Player Animation RebuildJarl Sitting Animation Replacer - Vanilla - DAR - FNIShttps://www.nexusmods.com/skyrimspecialedition/mods/37907Armor Type Specific AnimationsEVG Animation VarianceDynamic Random Female Idles V2Double Bed Spooning - DARSky Idles SESky Sprint SESuper Fast Get Up AnimationSmooth Combat - Non Combat Animation SystemSmooth Magic Casting AnimationNotch Arrows in Combat Only

如果还有其他使用 Dynamic Animation Replacer 的 mod,请告诉我。我会将它们添加到列表中。

  • 致谢

SKSE 团队,感谢制作 SKSE。

meh321,感谢制作 Address Library for SKSE Plugins。

我的 Mod

LE | SE MiniMap

LE | SE Equipment Upgrades

LE | SE Armor Break

LE | SE Floating Damage V2

LE | SE Copy Character Appearance

LE | SE Attributes

LE | SE Floating Damage

LE | SE Equipment Durability System

LE | SE Display Enemy Level

LE | SE Locational Damage(SKSE Plugin)

LE | SE Difficulty Balance

LE | SE Animation Loading Fix

LE | SE Disable Follower Collision

LE | SE Additional Techniques

LE | SE Copy and Paste in Console

LE | SE Dynamic Animation Replacer

LE | SE Player Rotation in ShowRaceMenu