Actor Velocity Framework (updated)

by jarari·v1.53·Updated 2026-04-21

A Papyrus script extender for modifying actor speed.

About this mod Machine translation

A Papyrus script extender for modifying actor speed.

Original address:

Updated on April 20th:

Version 1.53

Fixed the ground twitching of power armor, making the speed more stable under different frame numbers.

The AE version (applicable to anniversary) and OG version (applicable to version 163) files have been uploaded. Choose one of the two to install according to your own game version.

----

Prerequisite: F4SE plug-in address library (

Actor Velocity Framework

-Papyrus function——

It adds these Papyrus functions.

GetActorForward(Actor a) Returns the actor's forward vector, forward projected onto the surface.

GetActorUp(Actor a) returns the actor's up vector, usually (0, 0, 1)

GetActorEye(Actor a) Returns the actor's eye vector, which is the direction in which the actor is aiming.

GetActorAngle(Actor a) Returns the actor's angle in radians. [0] is for pitch, [2] is for yaw.

GetActorVelocity(Actor a) Returns the actor's current velocity.

If the actor is on the ground, then

IsOnGround(Actor a) returns true.

SetPositionQuick(Actor a, float x, float y, float z) translates the actor without loading screen.

SetAngleQuick(actor a, float x, float y, float z) will rotate the actor's perspective to that angle.

SetVelocity(Actor a, float x, float y, float z, float duration, float x² = 0.0, float y² = 0.0, float z² = 0.0, bool gravity = false)

is a key function of the frame, applying speed to the actor without ragdolling or paralyzing him. If gravity is enabled,

The AVF will apply a gravity of -9.81 * fInAirFallingCharGravityMult every frame.

The first vector (x, y, z) is the initial velocity and the second vector (x2, y2, z2) is the terminal velocity.

It will be applied every frame for the specified duration and the velocity will be linearly interpolated.

AddVelocity(Actor a, float x, float y, float z) will directly increase the speed of the actor for one frame.

-Explicit link——

SetVelocity and AddVelocity can be accessed directly from other F4SE's dlls via explicit linking.

You can use the following code as an example.

Actor* a;

HMODULE hAVF = GetModuleHandleA("ActorVelocityFramework.dll");

typedef void (*SetVelocity)(std::monostate, Actor*, float, float, float, float, float, float, float);

SetVelocity fnSetVelocity = (SetVelocity)GetProcAddress(hAVF, "SetVelocity");

fnSetVelocity(std::monostate{}, a, dir.x * 2000.0f, dir.y * 2000.0f, dir.z * 2000.0f, 0.75f, 0.0f, 0.0f, 0.0f);

-Use case example-

Acknowledgments

The F4SE team provides the "Fallout 4" script expander (F4SE) Fudgyduff

Provides address library and CommonLibF4

Install & use Install: follow the bundled instructions

  1. Unzip the archive from playbuff and read the bundled readme / instructions first.
  2. There is no universal mod manager for this game: some mods replace game files directly, some go into a game-specific Mods folder, and some need a game-specific community loader or tool first — follow the bundled readme.
  3. Place the files exactly as the readme says; mods with listed dependencies need those installed too.
  4. Launch the game to confirm it loaded; some games require enabling mods in settings or an in-game mod menu.

Install locations vary a lot between games and mods — the bundled readme is the most reliable guide.

File & checksum

Filename
ActorVelocityFramework AE-56604-1-53-1776700235.zip
File size
4.5 MiB
SHA-256
87307c2ab5143dce35361156766408845781b5623de0c5fa55d59a720fc03884
Stored at
2026-10-14 04:48