ZionGames Docs

Home / ZionTPS

🎯 ZionTPS

Modular Third-Person Locomotion · Unity 6

Character Controller

The ZionTPS character controller is responsible for player movement, grounding, and movement state transitions.

It is designed to feel responsive while remaining readable and extendable.

Core Features

Out of the box, the controller supports:

  • idle and locomotion blending
  • walk, run, and sprint states
  • jumping
  • rolling
  • crouching
  • camera-relative movement
  • grounding and slope handling

Typical Responsibilities

  • reading processed movement input
  • converting input into world-space movement
  • rotating the character correctly
  • handling grounded vs airborne behaviour
  • triggering locomotion state changes
  • exposing clean hooks for animation and gameplay code

Integration Notes

  1. Start from the minimal scene or demo scene.
  2. Reuse the existing player setup as your reference.
  3. Keep custom gameplay logic outside core movement where possible.
  4. Extend through separate components rather than editing package code directly.

Recommended Setup Pattern

  • player root object
  • character controller / movement component
  • input reader or input bridge
  • camera target transforms
  • animator hooks
  • optional gameplay modules layered on top

Animation

ZionTPS is intended to work with a standard third-person animation setup.

Typical animation states include:

  • idle
  • locomotion
  • sprint
  • crouch
  • jump
  • fall
  • roll

Extension Guidance

When extending the controller, prefer:

  • events
  • separate feature components
  • public hooks or interfaces
  • module-style add-ons

Avoid tightly coupling combat, stats, or inventory logic directly into core movement code.

Common Problems

Character does not move

  • required ZionTPS components are attached
  • your ground object is present and collidable
  • movement input is being received
  • the player object is active and enabled

Character moves but rotates incorrectly

  • movement is being converted relative to the active camera
  • character rotation settings are assigned correctly
  • no second system is trying to rotate the player
Continue to Camera System.