Log inGet started
World

Builtin Library

Branchmain
Branchesmainpublish
Commit8d45df8664

README.md

presets

Shake profile presets for the FPS controller. Each entry is a complete ShakeProfile parameter table covering head bob, landing impact, idle breathing, and trauma shake. Values are based on biomechanical research and shipped game references (Half-Life 2, DOOM 2016, Quake).

Exports

  • M.realistic — default profile. ~2Hz walk, ~3Hz run, 10Hz landing decay.
  • M.cinematic — subdued, gentler bob, faster trauma decay.
  • M.intense — exaggerated bob and amplitudes for action/combat.
  • M.minimal — barely-there shake for tightly composed shots.
  • M.drunk — low-frequency wobble with large amplitudes for inebriated/dazed states.

Usage

local Presets = require("@builtin::modules.fps_controller.presets")

-- Pull a preset and use it directly, or hand it to FPSController:
local profile = Presets.cinematic
FPSController.addProfile("my_variant", profile)

Notes

  • The FPS controller looks up profiles by name; this module is the source of truth for the built-in presets. FPSController.setProfile reads from here unless a custom profile of the same name has been registered via FPSController.addProfile.
  • Custom profiles registered at runtime use the same parameter shape. See the realistic preset above for the canonical field set.
  • Each preset is a plain data table — mutating it changes the preset globally for the current session. Clone before mutating if you only want a local variant.