Modular Third Person Framework Documentation

Version 2.0 (Previously released as Versatile Third Person Controller) Welcome to the official documentation for the Modular Third Person Framework (MTPF).

This framework provides a complete, modular third-person locomotion and interaction system for Unity — designed to save you months of development time while giving you the flexibility to customize and extend for your project’s needs.


Overview

The MTPF is a robust and extensible third-person controller for Unity. It supports advanced character movement, environment interaction, vitality systems, and a clean, modular architecture built with best practices in mind. Whether you’re building prototypes, indie titles, or AAA-quality projects, MTPF provides a production-ready foundation to bring your vision to life.


What’s New in Version 2.0

  • Swimming & Diving mechanics (with dedicated cameras)
  • Breath System with ScriptableObject configs & UI bar
  • Climb System extended (ladder, rope, wall, pole)
  • Parkour Slide action added alongside vault & jump
  • Water Volume integration as an interactable
  • New UI Manager for transitions, cutscenes, and UI resets
  • Advanced Debugging Tool (per-system logs, excluded from builds)
  • Enum-driven logic across all systems (no string errors)
  • Optimized logging & editor-only utilities for performance

Key Features

  • 🎮 Full State Machine Movement System: Walk, jog, sprint, crouch, crawl, climb, roll, swim, dive, cover, parkour, interact, and more.
  • 🧩 Modular & Interface-Driven: All systems (input, movement, vitality, interactables, IK, UI) are decoupled and extendable.
  • ScriptableObject Configurations: Adjust movement, colliders, stamina, breath, and other settings without touching code.
  • 🧠 Dynamic Collider System: Real-time collider adjustments for standing, crouching, crawling, swimming, sliding, and climbing.
  • 🎥 Dynamic Camera System: Multiple Cinemachine cameras with smooth transitions (default, aim, crawl, swim, dive).
  • ❤️ Standalone Vitality Systems: Health, stamina, and breath are event-driven and can be reused outside the player.
  • 🛠️ Debugging Tools: Runtime debug UI, per-system logs, and editor utilities for faster iteration.

Movement States

MTPF supports the following character states:

Idle · Walk · Jog · Sprint · Jump · Crouch · Crawl · Roll · Cover · Climb · Swim · Dive · Parkour · Interact · Die


Core Orchestrators & Input Handlers

MTPF uses orchestrators to manage player systems and dedicated input handlers to process actions.

  • PlayerCoreOrchestrator – is the central brain of the Modular Third Person Framework. It coordinates and connects all the player’s core systems, ensuring smooth communication between movement, input, camera, UI, and vitality features.
  • PlayerUIOrchestrator – Connects player systems to UI (health, stamina, breath bars, transitions)
  • CameraOrchestrator – Controls all player cameras and transitions
  • InputCoreOrchestrator – Entry point for input, routes to handlers
  • MovementInputHandler – Handles locomotion, jump, crouch, crawl, swim, dive, parkour, interact, cover
  • MenuInputHandler – Handles pause and menu actions

This separation ensures clean architecture and easy customization.


Specialized Systems

  • Climb System: Ladder, rope, pole, and wall climbing
  • Cover System: High and low cover mechanics with transitions
  • Parkour System: Vault, jump, slide, and high-object traversal
  • IK System: Hand and foot placement for natural interactions
  • Water System: Enter, swim, dive, exit, with breath mechanics

Development & Customization

  • ScriptableObject-driven configs for all systems
  • Enum-based design (no string references)
  • Fully interface-driven, modular components
  • Debugging UI for runtime testing
  • Clean, maintainable, and well-documented codebase

Compatibility

  • Unity’s New Input System
  • Cinemachine (for cameras)
  • Animation Rigging (for IK)
  • Unity’s Starter Assets (for demo characters)

Installation

  1. Purchase and download from the Unity Asset Store
  2. Import into your Unity project
  3. Ensure required packages are installed (Input System, Cinemachine, Animation Rigging)
  4. Drag the Player Prefab into your scene
  5. Configure systems via ScriptableObjects
  6. Press play 🚀

Usage

  • Configure animations inside the Animator Controller
  • Assign conditions and transitions for each state
  • Use provided ScriptableObjects to tweak player settings
  • Integrate easily with your project’s UI and AI

Get Started Today

The Modular Third Person Framework (MTPF) is built to help you focus on creating gameplay — not reinventing core systems.

👉 https://assetstore.unity.com/packages/templates/systems/versatile-third-person-controller-system-281833