-
Notifications
You must be signed in to change notification settings - Fork 6
Stick Deadzones
The Sticks tab controls how thumbstick input is processed. Each stick has independent deadzone, anti-deadzone, response curve, sensitivity, max range, and center offset settings.

| Parameter | Range | Description |
|---|---|---|
| Deadzone X / Y | 0–100% | Input below this threshold is ignored. Removes stick drift. Set per axis. |
| Anti-Deadzone X / Y | 0–100% | Minimum output the instant the stick crosses the deadzone. Defeats in-game deadzones. Set per axis. |
| Linear | 0–100% | Blends between the anti-deadzone curve (0%) and pure linear response (100%). Shared across both axes. |
| Deadzone Shape | Dropdown | Geometric shape of the deadzone region. Circle, cross, wedges, or hybrid. |
| Sensitivity X / Y | Preset or Custom | Per-axis curve applied after deadzone processing. Reshapes output across stick travel. |
| Center Offset X / Y | -100–100% | Shifts the deadzone center to match the stick's actual resting position. Applied first. |
| Max Range X / Y | 1–100% | Physical deflection treated as full output. Per-direction for asymmetric sticks. |
- Center Offset. Corrects hardware drift
- Deadzone. Zeroes input within the deadzone region
- Max Range. Caps input ceiling
- Sensitivity Curve. Reshapes response
- Anti-Deadzone. Adds minimum output floor
- Linear. Blends between curved and linear response

The shape dropdown changes the deadzone geometry. Default is Scaled Radial.
Circular (or elliptical) deadzone. Output is rescaled so it starts at zero at the deadzone edge and ramps smoothly to full. No jump at the boundary.
- Best for: Most games and players. Treats all directions equally, preserves diagonals, feels natural.
- Example: Third-person movement feels consistent whether pushing forward, sideways, or diagonally.
Same circular region as Scaled Radial, but without rescaling. Output jumps to the raw magnitude when crossing the boundary.
- Best for: Raw stick feel with drift filtering only. Useful when the game already applies its own rescaling.
Deadzones applied independently per axis. The region forms a cross (vertical and horizontal strips). Each axis is unaffected by the other.
- Best for: Games requiring precise single-axis movement. 2D platformers, top-down strategy, menu navigation.
- Example: In a side-scroller, vertical wobble does not bleed into horizontal movement.
Two-stage: Scaled Radial eliminates center noise, then Sloped Scaled Axial adds wedge-shaped axis filtering. Smooth center behavior with axis-snapping precision.
- Best for: Competitive shooters needing clean center behavior and precise cardinal-direction tracking.
- Example: Tracking a target moving horizontally without vertical aim drift, while diagonals still feel natural.
Wedge-shaped deadzone regions. The effective deadzone on each axis grows as the other axis deflects further. Pushing hard in one direction widens the deadzone on the perpendicular axis. Output is rescaled.
- Best for: Racing, flight sims. Strong axis-locking for clean straight-line input.
- Example: Steering hard right filters out minor Y-axis wobble automatically.
Same wedge regions as Sloped Scaled Axial, but without rescaling. Output may jump at the boundary.
- Best for: Same scenarios as Sloped Scaled Axial when the game handles its own rescaling.
The preview updates as you change the shape:
| Shape | Preview |
|---|---|
| Scaled Radial / Radial | Circle (ellipse when X and Y differ) |
| Axial | Cross pattern |
| Sloped / Sloped Scaled / Hybrid | Wedge regions |
A reset button next to the dropdown restores Scaled Radial.

Many games have built-in deadzones you cannot disable. Anti-Deadzone compensates by guaranteeing a minimum output the instant the stick crosses PadForge's deadzone boundary.
With Anti-Deadzone at 20%:
| Stick Position | Output |
|---|---|
| Inside deadzone | 0% |
| Just past deadzone | Jumps to 20% |
| Full deflection | 100% |
| In between | Spread across 20–100% |
Formula: output = antiDeadZone + (stickInput * (1 - antiDeadZone))
| Anti-Deadzone | Effect | Use When |
|---|---|---|
| 0% | No offset. Output starts at zero | Game has no internal deadzone |
| 5–10% | Small boost past minor game deadzones | Slight sluggishness when first moving the stick |
| 15–25% | Guarantees immediate response | Noticeable game deadzone eating small aim adjustments |
| 30–50% | Significant initial jump | Very aggressive built-in deadzones (older titles, some ports) |
- Set the deadzone just high enough to eliminate drift.
- Slowly push the stick and watch the preview dot. If the dot moves but nothing happens in-game, the game's deadzone is eating your input.
- Increase anti-deadzone in 5% increments until the game responds immediately.
- Stop once the game responds. Going higher compresses your usable range.
The Linear slider blends between two response modes:
| Linear | Behavior |
|---|---|
| 0% (default) | Output follows the anti-deadzone curve. More precision near center, compressed range near full deflection. |
| 25–50% | Moderate blend. Some curve remains. Good middle ground for precision and speed. |
| 75–100% | Nearly or fully linear. Equal stick travel produces equal output change. Direct feel. |
If anti-deadzone is at 0%, the Linear slider has no effect. The response is already linear.

Each stick has independent Sensitivity X and Sensitivity Y curve editors that reshape how deflection maps to output after deadzone processing.
| Preset | Feel | Best For |
|---|---|---|
| Linear | 1:1 input-to-output. Predictable, consistent. | Raw control with no reshaping |
| Smooth | Extra precision near center, full output at edge | General-purpose. Most games |
| Aggressive | Small inputs produce large output. Twitchy, responsive. | Fast reactions over fine control |
| Instant | Near-digital. Small flick produces almost full output | Quick 180 turns, quick-scoping |
| S-Curve | Precision at low deflection, steep ramp at full | Competitive shooters. Fine aim + fast turns |
| Delay | Output stays low until ~80% deflection, then surges | Sniping. Very fine aim, slower turns |
| Custom | User-defined control points | Appears when you edit the curve |
Two charts appear side by side, one per axis. Input maps horizontally, output vertically.
- Double-click to add a control point
- Drag a control point to reshape the curve
- Right-click a control point to remove it
Editing control points switches the preset to "Custom." A reset button restores Linear.
A live indicator dot tracks your stick's current position on the curve, showing the exact output as you move.
Some controllers drift at rest because the stick's resting position is off-center electrically. The typical fix is a larger deadzone, but that wastes range.
Center offset shifts the deadzone to the stick's actual resting position, letting you use a smaller deadzone while fully eliminating drift. Applied before all other processing.
- The raw readout shows a non-zero value at rest
- The preview dot sits off-center when the stick is untouched
- You need a larger-than-expected deadzone to stop drift
- The controller is worn or aged
- Place the controller on a flat surface. Do not touch the stick.
- Click Calibrate Center for that stick.
- PadForge samples raw values for ~0.5 seconds (15 readings) and calculates the average offset.
- Center offset X and Y are set automatically to negate the measured drift.
Each axis has a Center Offset slider ranging from -100% to +100%:
| Value | Effect |
|---|---|
| Positive | Shifts center right (X) or up (Y) |
| Negative | Shifts center left (X) or down (Y) |
| 0% | No correction (default) |
Max Range controls how far you must push the stick to reach full (100%) output.
Many controllers cannot physically reach 100% deflection, especially in corners, and sticks lose range with wear. Reducing Max Range tells PadForge to treat a lower physical deflection as full output.
| Max Range | Effect |
|---|---|
| 100% | Default. Full physical range required |
| 85% | Full output at 85% deflection. Good for sticks that cannot reach the corners |
| 70% | Full output at 70%. Limited travel or short-throw preference |
| 50% | Full output at half deflection. Very sensitive |
- Push the stick to its physical limit in each direction.
- Note the highest raw percentage displayed.
- Set Max Range to match. If the stick reaches 87%, set it to 87%.
- Full stick push now produces 100% output.
Each axis supports independent max range values for each direction. This addresses asymmetric sticks. For example, pushing right reaches 95% but pushing left only reaches 82%.
| Control | Direction |
|---|---|
| Min Range X | Leftward deflection |
| Max Range X | Rightward deflection |
| Min Range Y | Downward deflection |
| Max Range Y | Upward deflection |
All values range from 1–100%, defaulting to 100%.
- Worn controllers. One side has less spring-back than the other
- Asymmetric hardware. Manufacturing variations in third-party controllers
- Physical obstructions. Shell or grip limiting travel in one direction
- Push the stick fully in each direction, one at a time.
- Note the raw percentage for each direction.
- Set each direction's max range to match.
- Verify the preview dot reaches the edge in all four directions.
A circular preview next to the sliders shows processed stick output in real time.
- Deadzone region. Shaded shape in the center matching the selected shape (circle, cross, or wedges)
- Output dot. Fully processed position after all stages
| Task | What to Watch |
|---|---|
| Testing drift | Release the stick. Dot off-center? Increase deadzone or calibrate center offset. |
| Testing shape | Push slowly outward in various directions. The dot starts moving at the deadzone edge. |
| Testing sensitivity | Push from center to edge. Watch how quickly the dot accelerates. |
| Testing max range | Push to the physical limit. Dot not reaching the edge? Reduce max range. |
Every row has a reset button (circular arrow icon) that restores the default. A Reset All button at the top of each stick section resets everything for that stick at once.
Each slider supports 0.1% precision. You can:
- Drag the slider for quick adjustment
- Type a percentage into the number field
- Type a raw digit value (0–32768) for hardware-level precision
Changes apply immediately.
Starting points only. Use the preview and in-game testing to fine-tune.
| Setting | Left Stick (Movement) | Right Stick (Aiming) |
|---|---|---|
| Deadzone | 5–8% | 3–6% (as low as possible) |
| Anti-Deadzone | 0–5% | 10–20% |
| Linear | 50–75% | 25–50% |
| Shape | Scaled Radial | Hybrid or Scaled Radial |
| Sensitivity | Linear or Smooth | S-Curve or Smooth |
| Max Range | Calibrate to stick | Calibrate to stick |
Movement sticks are forgiving. Aim sticks need the tightest deadzone for micro-adjustments. Anti-deadzone on the aim stick defeats the game's internal deadzone. S-Curve gives precision near center and fast turns at the edge. Hybrid helps hold pure horizontal tracking.
| Setting | Left Stick (Steering) | Right Stick (Camera) |
|---|---|---|
| Deadzone | 3–8% | 5–10% |
| Anti-Deadzone | 0% | 0% |
| Linear | 0–25% | 50% |
| Shape | Sloped Scaled Axial or Scaled Radial | Scaled Radial |
| Sensitivity | Smooth or Delay | Linear |
| Max Range | Calibrate to stick | 100% |
Zero anti-deadzone avoids sudden jumps. Smooth or Delay curves add precision near center for gentle corrections. Sloped Scaled Axial locks onto pure left/right without vertical wobble.
| Setting | Left Stick (Pitch/Roll) | Right Stick (Yaw/Throttle) |
|---|---|---|
| Deadzone | 2–5% (as low as possible) | 3–8% |
| Anti-Deadzone | 0% | 0% |
| Linear | 0–25% | 25–50% |
| Shape | Scaled Radial | Scaled Radial or Axial |
| Sensitivity | Smooth or Delay | Smooth |
| Max Range | Calibrate to stick | Calibrate to stick |
Flight controls are sensitive. Most time is spent making small corrections. Low deadzones preserve the full analog range. Smooth or Delay curves widen the precision zone near center.
| Setting | Left Stick (Movement) | Right Stick (Camera) |
|---|---|---|
| Deadzone | 8–15% | 8–15% |
| Anti-Deadzone | 5–15% | 0–10% |
| Linear | 50–75% | 50% |
| Shape | Scaled Radial or Axial | Scaled Radial |
| Sensitivity | Linear or Aggressive | Linear |
| Max Range | 100% | 100% |
Platformers need instant response. Higher anti-deadzone and Aggressive sensitivity feel snappy. Axial shape works well for 2D platformers needing strict horizontal/vertical control without diagonal bleed.
| Setting | Left Stick (Cursor/Selection) |
|---|---|
| Deadzone | 15–25% |
| Anti-Deadzone | 10–20% |
| Linear | 75–100% |
| Shape | Axial |
| Sensitivity | Linear |
| Max Range | 100% |
Axial shape isolates each axis for clean cardinal movement without diagonals. Higher deadzone prevents accidental inputs. Linear response keeps cursor speed predictable.
When a slot uses DirectInput with the Custom preset, the Sticks tab adjusts based on ThumbstickCount:
| Thumbstick Count | Behavior |
|---|---|
| 0 | Sticks tab is empty |
| 1 | Controls for Stick 1 only |
| 2 | Controls for Stick 1 and Stick 2 (same as Xbox 360 / DualShock 4) |
| 3–4 | Additional sticks shown (each uses 2 of the 8 available axes shared with triggers) |
Each stick gets its own independent deadzone, anti-deadzone, linear settings, and circular preview.
- Controller Slots: Create and configure virtual controllers
- Button and Axis Mappings: Map physical stick axes to virtual outputs
- Trigger Deadzones: Similar settings for triggers
- 3D and 2D Visualization: See stick movement on the controller model