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
- Purchase and download from the Unity Asset Store
- Import into your Unity project
- Ensure required packages are installed (Input System, Cinemachine, Animation Rigging)
- Drag the Player Prefab into your scene
- Configure systems via ScriptableObjects
- 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