A complete, code-only 2D character controller with procedural squish animations, ledge grab, wall jump, dash, double jump, and one-click setup. No sprites needed.TLD Ultimate 2D Character Controller gives you a production-ready, fully procedural 2D character controller built entirely on a capsule shape. No sprites, no animator, no art required, every animation is written in code.Open Window > TLD > Setup Wizard, pick your ground layer, click Create Character, and hit Play. Done.MOVEMENT & PHYSICSSmooth acceleration and deceleration with separate ground and air valuesVariable jump height with fall multiplier and low-jump multiplier for tight, responsive arcsMulti-jump support (1 to 5 jumps, fully configurable)Coyote time, grace window after walking off a ledgeJump buffering, queue a jump slightly before landingFull slope detection and slope-normal movementConfigurable gravity scale, max fall speed, and ground snappingWALL MECHANICSWall slide, slow fall while pressed against a wallWall grab with optional stamina system (hold to cling indefinitely or drain over time)Wall jump with configurable force, lock-out timer, and directional control (Basic or Advanced mode)DASHDirectional dash (follows input direction) or Lateral dash (always horizontal)Configurable speed, duration, and cooldownAir dash with limited-use count per jumpOptional gravity disable during dashInvincibility flag for use with your own health systemCROUCH & SLIDECrouch shrinks the capsule collider from the top, feet stay planted on the groundHead clearance check prevents standing up inside geometrySlide with minimum speed requirement, duration, and separate cooldownCrouch speed multiplierLEDGE MECHANICSAutomatic ledge detection using raycasts, no trigger volumes neededLedge grab, character catches the corner of a platform while fallingLedge climb, smooth two-phase animation climbs up and over the ledgeLedge jump, kick off the ledge into a full jumpDrop from ledge by holding CrouchPROCEDURAL ANIMATIONSAll animations are code-driven squish and stretch on the Visual child transform. No Animator or sprites required.Land squish, impacts compress the capsule, scaled to landing velocityJump stretch, capsule elongates on takeoffRun lean, gentle rotation tilt during movementCrouch squish, visually compresses to match the collider shrinkSlide squish, wide, flat shape during slidesWall-slide squeeze, narrow stretch while pressing against wallsDash warp, horizontal stretch during dashAir stretch and fall squashAll squish uses a bottom-anchored pivot so the feet never leave the ground visually. All values are fully tunable in the Inspector.The capsule visual displays state-based color feedback (idle, run, airborne, crouch, dash, wall-slide, ledge grab) so you can prototype and test without any art at all.EASY SETUPOne-click Setup Wizard at Window > TLD > Setup Wizard creates a complete character with cameraCustom sectioned Inspector with live runtime debug readoutWorks with Legacy Input or Unity's New Input System out of the boxSwap in your own input by calling controller.SetInput() from any scriptINTEGRATION & EXTENSIBILITYState Machine Bridge exposes a clean CharacterState enum and drives any Animator8 UnityEvents: onJump, onLand, onDash, onWallJump, onLedgeGrab, onLedgeClimb, onCrouchChange, onGroundedChangePublic API: Teleport, AddImpulse, ForceJump, StopMovement, GetStateSnapshotScreen shake API on the Camera Follow componentFully compatible with PlatformEffector2D one-way platformsWorks with moving platforms via Rigidbody2DNo third-party dependenciesREQUIREMENTSUnity 2021.3 LTS or higherWorks with Built-in Render Pipeline, URP, and HDRP (no renderer-specific shaders used)Physics2D must be enabled (enabled by default in all Unity projects)No third-party packages or dependencies requiredINCLUDED FILESTLD_CharacterController2D.cs - main controller (requires Rigidbody2D and CapsuleCollider2D)TLD_InputBridge.cs - Legacy Input and New Input System adapterTLD_CapsuleVisualRenderer.cs - procedural capsule mesh with state color feedbackTLD_StateMachineBridge.cs - CharacterState enum and Animator parameter driverTLD_CameraFollow.cs - smooth follow camera with look-ahead, dead zones, and screen shakeTLD_SetupWizard.cs - Editor only, one-click setup wizard and custom InspectorPHYSICSCollision detection mode: ContinuousRigidbody2D interpolation: EnabledGravity managed manually per frame (Rigidbody2D.gravityScale set to 0 by the controller)Ground and wall detection: configurable Overlap Circle or Raycast modesSlope movement via surface normal projection



