← WebMCP Directory

feather-engine.vercel.app

feather-engine.vercel.app

live Unverified (seed import) Developer Tools 16 tools imperative implementation

Feather Engine

First seen 2026-11-05 · Last seen 2026-11-05 · Source: webmcp.com

Answer 2 · Act 14 · Transact 0 · Score: Not yet scored

Tool inspector

set_character_controller

act imperative

Add/configure the built-in third-person character controller on an object (WASD move, Shift sprint, Space jump, optional follow camera). The motion it produces auto-drives an animator with speed/verticalSpeed parameters. Pass enabled:false to remove control. All numeric fields optional.

Input schema

PropertyTypeRequiredDescription
objectId string yes —
enabled boolean no —
moveSpeed number no —
sprintMultiplier number no —
crouchMultiplier number no —
jumpStrength number no —
gravity number no —
turnSpeed number no —
groundLevel number no —
acceleration number no Ground accel toward target speed (units/s²). Default 60.
deceleration number no Ground decel to a stop (units/s²). Default 70.
airControl number no Accel/decel multiplier while airborne, 0..1. Default 0.35.
fallMultiplier number no Gravity ×multiplier while descending. >1 = snappier fall. Default 1.9.
jumpCutMultiplier number no Upward velocity kept when jump released early, 0..1. Default 0.45.
coyoteTime number no Grace seconds after leaving a ledge a jump still fires. Default 0.12.
jumpBufferTime number no Jump pressed up to this many seconds BEFORE landing fires on touchdown. Default 0.15. 0 disables.
landingRecovery number no 0..1: hard landings briefly sap speed + dip the camera, scaled by impact (drives the "landing" animator source). Default 0.4. 0 disables.
apexHang number no Gravity ×multiplier near the jump apex — <1 adds a brief controllable hang at the peak. Default 0.65. 1 disables.
sprintTurnFactor number no Turn-rate ×multiplier at full sprint (full rate at a walk) so fast runs carve wider arcs. Default 0.55. 1 disables.
slideEnabled boolean no Sprint-slide: tapping crouch at sprint speed drops into a steerable momentum slide (drives the "sliding" animator source; jump cancels into a slide-hop). Default true.
slideDuration number no Max slide seconds. Default 0.9.
slideSpeedBoost number no Slide entry speed = current speed × this. Default 1.2.
turnInPlace boolean no Idle third-person body rotates toward the mouse-look camera. Default true.
turnInPlaceThreshold number no Yaw difference before idle turning starts, radians. Default 0.45.
turnInPlaceSpeed number no Turn-in-place rotation speed in radians/sec. Defaults to turnSpeed.
mantleEnabled boolean no Enable Space-to-vault/mantle against obstacles tagged vaultable/mantleable.
keyMantle string no Optional dedicated mantle key. Empty/omitted means jump key can mantle.
mantleRange number no Forward search distance for vault/mantle targets. Default 1.35.
mantleMaxHeight number no Tallest obstacle top that can be mantled. Default 1.45.
vaultMaxHeight number no Low obstacle height treated as vault. Default 0.9.
mantleDuration number no Seconds for the mantle/vault arc. Default 0.38.
modelYawOffset number no Facing offset in radians; use Math.PI (~3.14159) to flip a model that faces backwards.
keyForward string no —
keyBackward string no —
keyLeft string no —
keyRight string no —
keyJump string no —
keySprint string no —
keyCrouch string no —
keyCrawl string no —
crawlMultiplier number no —
strafe boolean no Face the camera + move 8-way (pairs with a 2D MoveX/MoveY blend space).
keyRoll string no —
rollSpeed number no —
rollDuration number no —
keyAttack string no —
meleeDamage number no Melee damage. Default 34.
meleeRange number no Melee range. Default 2.4.
meleeComboCount integer no Melee combo chain length 1–3. >1 enables attack input buffering between hits. Default 1.
meleeComboWindow number no Seconds after a swing starts during which another Attack press queues the next combo hit. Default 0.35.
meleeHitstop number no Wall-clock seconds of global slow-mo on a successful melee hit (0 = off). ~0.09 feels snappy.
meleeHitstopScale number no runtimeTimeScale during melee hitstop. Default 0.05.
rollIFrameStart number no Seconds from roll start when dodge invulnerability begins. Pair with rollIFrameEnd.
rollIFrameEnd number no Seconds from roll start when dodge invulnerability ends. Both 0 = no i-frames.
keyAim string no —
keyReload string no —
keyInteract string no —
interactRange number no Interact distance. Default 3.
keyEmote string no —
keyRagdoll string no —
lockOnEnabled boolean no Lock-on targeting: keyLockOn toggles a lock on the nearest living target (object with health > 0 or enemy tag); the character strafes facing it and the camera frames both. Default true.
keyLockOn string no Lock-on toggle key. Default "KeyT".
lockOnRange number no Max distance to acquire a lock-on target. Default 16.
lockOnBreakDistance number no Distance at which an existing lock breaks. Default 22.
keySwapShoulder string no Tap to mirror the third-person camera to the other shoulder (also flips the aim shoulder shift). Default "KeyV".
footstepSoundId string no Footstep audio asset id.
jumpSoundId string no Jump audio asset id.
landSoundId string no Land audio asset id.
swimSoundId string no Water splash audio asset id.
attackSoundId string no Attack audio asset id.
hurtSoundId string no Hurt audio asset id.
cameraFollow boolean no —
cameraOffset array no [side, up, back]. Negative Z is behind.
cameraPitch number no Base camera elevation in radians.
mouseLook boolean no Orbit camera with mouse.
mouseSensitivity number no —
cameraRelativeMovement boolean no Move relative to camera.
Raw JSON schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "objectId": {
      "type": "string"
    },
    "enabled": {
      "type": "boolean"
    },
    "moveSpeed": {
      "type": "number"
    },
    "sprintMultiplier": {
      "type": "number"
    },
    "crouchMultiplier": {
      "type": "number"
    },
    "jumpStrength": {
      "type": "number"
    },
    "gravity": {
      "type": "number"
    },
    "turnSpeed": {
      "type": "number"
    },
    "groundLevel": {
      "type": "number"
    },
    "acceleration": {
      "description": "Ground accel toward target speed (units/s²). Default 60.",
      "type": "number"
    },
    "deceleration": {
      "description": "Ground decel to a stop (units/s²). Default 70.",
      "type": "number"
    },
    "airControl": {
      "description": "Accel/decel multiplier while airborne, 0..1. Default 0.35.",
      "type": "number"
    },
    "fallMultiplier": {
      "description": "Gravity ×multiplier while descending. >1 = snappier fall. Default 1.9.",
      "type": "number"
    },
    "jumpCutMultiplier": {
      "description": "Upward velocity kept when jump released early, 0..1. Default 0.45.",
      "type": "number"
    },
    "coyoteTime": {
      "description": "Grace seconds after leaving a ledge a jump still fires. Default 0.12.",
      "type": "number"
    },
    "jumpBufferTime": {
      "description": "Jump pressed up to this many seconds BEFORE landing fires on touchdown. Default 0.15. 0 disables.",
      "type": "number"
    },
    "landingRecovery": {
      "description": "0..1: hard landings briefly sap speed + dip the camera, scaled by impact (drives the \"landing\" animator source). Default 0.4. 0 disables.",
      "type": "number"
    },
    "apexHang": {
      "description": "Gravity ×multiplier near the jump apex — <1 adds a brief controllable hang at the peak. Default 0.65. 1 disables.",
      "type": "number"
    },
    "sprintTurnFactor": {
      "description": "Turn-rate ×multiplier at full sprint (full rate at a walk) so fast runs carve wider arcs. Default 0.55. 1 disables.",
      "type": "number"
    },
    "slideEnabled": {
      "description": "Sprint-slide: tapping crouch at sprint speed drops into a steerable momentum slide (drives the \"sliding\" animator source; jump cancels into a slide-hop). Default true.",
      "type": "boolean"
    },
    "slideDuration": {
      "description": "Max slide seconds. Default 0.9.",
      "type": "number"
    },
    "slideSpeedBoost": {
      "description": "Slide entry speed = current speed × this. Default 1.2.",
      "type": "number"
    },
    "turnInPlace": {
      "description": "Idle third-person body rotates toward the mouse-look camera. Default true.",
      "type": "boolean"
    },
    "turnInPlaceThreshold": {
      "description": "Yaw difference before idle turning starts, radians. Default 0.45.",
      "type": "number"
    },
    "turnInPlaceSpeed": {
      "description": "Turn-in-place rotation speed in radians/sec. Defaults to turnSpeed.",
      "type": "number"
    },
    "mantleEnabled": {
      "description": "Enable Space-to-vault/mantle against obstacles tagged vaultable/mantleable.",
      "type": "boolean"
    },
    "keyMantle": {
      "description": "Optional dedicated mantle key. Empty/omitted means jump key can mantle.",
      "type": "string"
    },
    "mantleRange": {
      "description": "Forward search distance for vault/mantle targets. Default 1.35.",
      "type": "number"
    },
    "mantleMaxHeight": {
      "description": "Tallest obstacle top that can be mantled. Default 1.45.",
      "type": "number"
    },
    "vaultMaxHeight": {
      "description": "Low obstacle height treated as vault. Default 0.9.",
      "type": "number"
    },
    "mantleDuration": {
      "description": "Seconds for the mantle/vault arc. Default 0.38.",
      "type": "number"
    },
    "modelYawOffset": {
      "description": "Facing offset in radians; use Math.PI (~3.14159) to flip a model that faces backwards.",
      "type": "number"
    },
    "keyForward": {
      "type": "string"
    },
    "keyBackward": {
      "type": "string"
    },
    "keyLeft": {
      "type": "string"
    },
    "keyRight": {
      "type": "string"
    },
    "keyJump": {
      "type": "string"
    },
    "keySprint": {
      "type": "string"
    },
    "keyCrouch": {
      "type": "string"
    },
    "keyCrawl": {
      "type": "string"
    },
    "crawlMultiplier": {
      "type": "number"
    },
    "strafe": {
      "description": "Face the camera + move 8-way (pairs with a 2D MoveX/MoveY blend space).",
      "type": "boolean"
    },
    "keyRoll": {
      "type": "string"
    },
    "rollSpeed": {
      "type": "number"
    },
    "rollDuration": {
      "type": "number"
    },
    "keyAttack": {
      "type": "string"
    },
    "meleeDamage": {
      "description": "Melee damage. Default 34.",
      "type": "number"
    },
    "meleeRange": {
      "description": "Melee range. Default 2.4.",
      "type": "number"
    },
    "meleeComboCount": {
      "description": "Melee combo chain length 1–3. >1 enables attack input buffering between hits. Default 1.",
      "type": "integer",
      "minimum": 1,
      "maximum": 3
    },
    "meleeComboWindow": {
      "description": "Seconds after a swing starts during which another Attack press queues the next combo hit. Default 0.35.",
      "type": "number",
      "minimum": 0.05
    },
    "meleeHitstop": {
      "description": "Wall-clock seconds of global slow-mo on a successful melee hit (0 = off). ~0.09 feels snappy.",
      "type": "number",
      "minimum": 0
    },
    "meleeHitstopScale": {
      "description": "runtimeTimeScale during melee hitstop. Default 0.05.",
      "type": "number",
      "minimum": 0.01,
      "maximum": 1
    },
    "rollIFrameStart": {
      "description": "Seconds from roll start when dodge invulnerability begins. Pair with rollIFrameEnd.",
      "type": "number",
      "minimum": 0
    },
    "rollIFrameEnd": {
      "description": "Seconds from roll start when dodge invulnerability ends. Both 0 = no i-frames.",
      "type": "number",
      "minimum": 0
    },
    "keyAim": {
      "type": "string"
    },
    "keyReload": {
      "type": "string"
    },
    "keyInteract": {
      "type": "string"
    },
    "interactRange": {
      "description": "Interact distance. Default 3.",
      "type": "number"
    },
    "keyEmote": {
      "type": "string"
    },
    "keyRagdoll": {
      "type": "string"
    },
    "lockOnEnabled": {
      "description": "Lock-on targeting: keyLockOn toggles a lock on the nearest living target (object with health > 0 or enemy tag); the character strafes facing it and the camera frames both. Default true.",
      "type": "boolean"
    },
    "keyLockOn": {
      "description": "Lock-on toggle key. Default \"KeyT\".",
      "type": "string"
    },
    "lockOnRange": {
      "description": "Max distance to acquire a lock-on target. Default 16.",
      "type": "number"
    },
    "lockOnBreakDistance": {
      "description": "Distance at which an existing lock breaks. Default 22.",
      "type": "number"
    },
    "keySwapShoulder": {
      "description": "Tap to mirror the third-person camera to the other shoulder (also flips the aim shoulder shift). Default \"KeyV\".",
      "type": "string"
    },
    "footstepSoundId": {
      "description": "Footstep audio asset id.",
      "type": "string"
    },
    "jumpSoundId": {
      "description": "Jump audio asset id.",
      "type": "string"
    },
    "landSoundId": {
      "description": "Land audio asset id.",
      "type": "string"
    },
    "swimSoundId": {
      "description": "Water splash audio asset id.",
      "type": "string"
    },
    "attackSoundId": {
      "description": "Attack audio asset id.",
      "type": "string"
    },
    "hurtSoundId": {
      "description": "Hurt audio asset id.",
      "type": "string"
    },
    "cameraFollow": {
      "type": "boolean"
    },
    "cameraOffset": {
      "description": "[side, up, back]. Negative Z is behind.",
      "minItems": 3,
      "maxItems": 3,
      "type": "array",
      "items": {
        "type": "number"
      }
    },
    "cameraPitch": {
      "description": "Base camera elevation in radians.",
      "type": "number"
    },
    "mouseLook": {
      "description": "Orbit camera with mouse.",
      "type": "boolean"
    },
    "mouseSensitivity": {
      "type": "number"
    },
    "cameraRelativeMovement": {
      "description": "Move relative to camera.",
      "type": "boolean"
    }
  },
  "required": [
    "objectId"
  ]
}

Similar websites

morphus.myles4miles.chatgpt.site

morphus.myles4miles.chatgpt.site

Morphus is an AI-native workspace for designing worlds and generating playable game experiences.

live Unverified Developer Tools Transact tools
154 tools A23 / Act124 / T7 Not yet scored Seen 2026-11-05
list_nodes get_scene_settings get_node_details get_terrain_state get_forest_state
Inspect tools
damnpdfs.com

damnpdfs.com

Install the DamnPDFs Codex plugin, pair a browser workspace and use PDF, image and file tools from your coding agent. Includes setup and privacy limits.

live Unverified Developer Tools Transact tools
81 tools A3 / Act77 / T1 Not yet scored Seen 2026-11-05
scan_to_pdf workflow merge_pdf alternate_mix_pdf compress_pdf
Inspect tools
insignifi4nt.github.io

insignifi4nt.github.io

broCAD/M: local-first CAD and CAM for parametric design, wire EDM planning, simulation and controller export.

live Unverified Developer Tools Transact tools
80 tools A29 / Act49 / T2 Not yet scored Seen 2026-11-05
edm_inspect_approach edm_describe_edits edm_get_context edm_list_projects edm_get_project
Inspect tools
cabinet.varera.studio

cabinet.varera.studio

The Cartographer's Cabinet

live Unverified Developer Tools Transact tools
64 tools A10 / Act50 / T4 Not yet scored Seen 2026-11-05
inspect_daylight inspect_cartographers_project list_project_hierarchy inspect_open_map search_project_objects
Inspect tools

Related on Influzer