You are viewing a potentially older version of this package. View all versions.
Sparroh-ThirdPersonMode-1.0.1 icon

ThirdPersonMode

Toggleable gameplay third-person for Mycopunk: over-the-shoulder camera, local TP body locomotion, gear meshes/actions, hot-reload config, and optional ADS first-person.

Date uploaded 2 weeks ago
Version 1.0.1
Download link Sparroh-ThirdPersonMode-1.0.1.zip
Downloads 101
Dependency string Sparroh-ThirdPersonMode-1.0.1

This mod requires the following mods to function

BepInEx-BepInExPack_Mycopunk-5.4.2403 icon
BepInEx-BepInExPack_Mycopunk

BepInEx pack for Mycopunk. Preconfigured and ready to use.

Preferred version: 5.4.2403

README

Third Person Mode

A BepInEx client-side mod for Mycopunk that adds a toggleable gameplay third-person camera.

Mycopunk already ships third-person models, animations, and an orbit camera (used for emotes/spectate). This mod reuses those systems for free movement and combat, without the vanilla emote locks that freeze controls.

Features

Camera

  • Toggle keybind (default: 0) with hot-reload config
  • Over-the-shoulder orbit camera (configurable offset + distance)
  • Scroll zoom while in third person
  • Full movement & combat — no emote-style control locks
  • Optional ADS → first person (on by default) for cleaner aiming
  • Optional HUD hide in third person
  • Optional start in third person on spawn
  • Yields cleanly to death/spectate

Body animation

  • Local third-person body uses character TP animation sets
  • Idle / walk / run / jump / air-jump / jump-loop / land / slide / clamber
  • Crouch animation set swap when available
  • Crouch lowers the TP body (CrouchBodyOffset) so feet stay planted
  • Body facing follows player yaw

Weapons & actions

  • Held gun mesh attaches to the TP hand bone while in third person
  • Restores first-person gun parenting on toggle off / ADS
  • Equip / reload / fire / stow TP clips when the gun provides a ThirdPersonGearAnimationSet
  • Melee and throwable TP action clips when available
  • Throwable/utility meshes attach while that gear is active
  • Wingsuit fly animation while airborne in the wingsuit

Controls

Action Default
Toggle third person 0
Zoom (in TP) Mouse wheel

Change the toggle key and camera feel in the config file (hot reload supported).

Configuration

Config path:

BepInEx/config/sparroh.thirdpersonmode.cfg

Section Key Default Description
General ToggleKey Digit0 Unity Input System key name
Camera OrbitDistance 3.25 Default camera distance
Camera MinOrbitDistance 1.5 Min zoom
Camera MaxOrbitDistance 5.5 Max zoom
Camera ShoulderOffset 0.9 Right-shoulder X offset (higher = body farther from crosshair)
Camera ShoulderHeightOffset 1 Extra camera height
Camera CrouchBodyOffset -0.55 Lower TP body while crouching (feet plant)
Camera ScrollToZoom true Mouse wheel zoom
Gameplay HideHudInThirdPerson false Hide main HUD in TP
Gameplay AdsReturnsToFirstPerson true FP while aiming
Gameplay StartInThirdPerson false Auto-enter TP on spawn

Dependencies

  • Mycopunk
  • BepInEx 5.4.2403+ (Mycopunk pack)
  • HarmonyLib (via BepInEx)

Building

dotnet build --configuration Release

Output: bin/Release/netstandard2.1/ThirdPersonMode.dll

Installing

Thunderstore / r2modman (recommended)
Install via the Mycopunk community page.

Manual
Copy ThirdPersonMode.dll into BepInEx/plugins/.

Known limitations

  • Mag / dual-mag models are hidden on the TP body (FP reload still works)
  • Guns without a TP animation set only show the mesh (no equip/reload/fire body anim)
  • Aim-layer blending is simplified vs remote players
  • Emote third-person and this mod can interact oddly if used together — prefer one at a time

Roadmap

  • Polish aim/reload upper-body blending and mag visibility on TP body

Authors

  • Sparroh

License

MIT — see LICENSE

CHANGELOG

Changelog

1.0.1

Fixes

  • Idle no longer overrides walk/run while moving in gameplay third-person (vanilla TP animator auto-transitions stripped from loco keys; re-sync if base layer drifts)

Camera

  • Clearer over-the-shoulder framing so the TP body blocks less of the crosshair
  • Default OrbitDistance 2.753.25
  • Default ShoulderOffset 0.550.9
  • Default ShoulderHeightOffset 0.151
  • Body position unchanged (feet stay on the true player position)

1.0.0

Phase 3b — Gear action anims

  • Gun equip / reload / fire / stow on local TP animator (additive layer) from ThirdPersonGearAnimationSet
  • Melee uses MeleeAnimationThirdPerson / throwable TP throw keys
  • Throwable/utility held mesh can attach to TP hands when active
  • Fix: no false stow when entering TP or during melee
  • Fix: loco yields to melee/throw/fly so full-body clips play
  • Wingsuit: play thirdPersonFlyAnimation while IsFlying

Phase 3 — TP weapon mesh

  • Parent held gun gunModel to local WeaponRootThirdPerson while in gameplay TP
  • Uses per-character thirdPersonData pose + scale
  • Hides mag models on TP body; restores FP parenting on exit / ADS / unequip

Phase 2 — Local body locomotion

  • Drive SelfThirdPersonAnimator with character third-person animation sets
  • Idle / walk / run / jump / air-jump / jump-loop / land / slide / clamber
  • Crouch swaps to ThirdPersonCrouchAnimationSet when available
  • Crouch lowers the TP body (CrouchBodyOffset, default -0.55) so feet stay planted
  • Body facing follows player yaw (fixes T-pose)

Phase 1 — Gameplay third-person foundation

  • Toggleable third-person camera (default key: 0)
  • Over-the-shoulder orbit camera with configurable distance/offset
  • Scroll zoom support
  • Hot-reload BepInEx config
  • Optional ADS returns to first person
  • Optional HUD hide / start in third person
  • Harmony patches so vanilla emote TP does not lock movement or auto-cancel gameplay TP