Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/BestProjectTeam/BestClient/llms.txt

Use this file to discover all available pages before exploring further.

BestClient offers a powerful input pipeline that lets you fine-tune how mouse and keyboard actions are translated into game ticks. The modes below sit between your hardware and the DDNet prediction system, giving you options from simple fast-fire to fully interpolated input with latency compensation. All variables persist in settings_ddnet.cfg.

Input Modes

The core input mode is selected with bc_fast_input_mode. Each mode has its own tuning variables.
bc_fast_input_mode
int
default:"0"
Active input processing mode. 0 = Fast Input (no modification), 1 = Delta Input, 3 = Best Input, 4 = Saiko+. The legacy Gamma mode is internally remapped to Best Input. Range: 04.
bc_fast_input_auto_margin
int
default:"0"
Automatically adjust the prediction margin in real time based on measured latency and connection stability. 0 = off, 1 = on.

Delta Input

bc_fast_input_delta_input
int
default:"0"
Amount of delta input offset applied, in hundredths of a tick (e.g. 50 = 0.50 ticks). Range: 0500.
bc_delta_input_others
int
default:"0"
Apply the delta input transformation to the predicted positions of other tees. 0 = off, 1 = on.

Best Input

bc_best_input_preset
int
default:"0"
Best Input configuration preset. 0 = custom (use manual values below), 3 = auto (client chooses best parameters). Legacy values are preserved for compatibility. Range: 03.
bc_best_input_offset
int
default:"0"
Prediction offset applied by Best Input, in hundredths of a tick (e.g. 100 = 1.00 tick). Range: 01000.
bc_best_input_smoothing
int
default:"0"
Amount of temporal smoothing applied to Best Input, as a percentage. 0 = no smoothing, 100 = maximum smoothing.
bc_best_input_latency_comp
int
default:"0"
Latency compensation factor for Best Input as a percentage. 0 = none, 50 = maximum. Range: 050.
bc_best_input_interpolation
int
default:"1"
Interpolation algorithm used by Best Input. 1 = linear, 2 = cubic, 3 = smooth. Range: 13.
bc_best_input_others
int
default:"0"
Apply Best Input prediction to the displayed positions of other tees. 0 = off, 1 = on.

Saiko+

bc_saiko_plus_amount
int
default:"0"
Amount of Saiko+ input offset applied, in hundredths of a tick. Range: 0500.
bc_saiko_plus_others
int
default:"0"
Apply the Saiko+ transformation to other tees’ predicted positions. 0 = off, 1 = on.

Legacy Gamma Input

bc_fast_input_gamma_input
int
default:"0"
Legacy gamma input offset in hundredths of a tick. This value is no longer active — gamma mode is internally mapped to Best Input. Range: 0600.
bc_gamma_input_others
int
default:"0"
Legacy toggle to apply gamma input to other tees. No longer active. 0 = off, 1 = on.

Snap Tap

Snap Tap resolves conflicting left/right directional inputs by always preferring the most recently pressed key, eliminating the brief neutral state that occurs when both keys are held simultaneously.
bc_snap_tap
int
default:"0"
Enable Snap Tap for left/right movement inputs. 0 = off, 1 = on.
bc_snap_tap_delay
int
default:"0"
Minimum time in milliseconds to wait before switching direction when Snap Tap detects an opposite key. 0 = instant switch. Range: 0200.

45 Degrees

The 45-degrees bind temporarily locks your aim to 45-degree angles. These variables store the previous sensitivity so it can be restored when the bind is released.
bc_toggle_45_degrees
int
default:"0"
Use toggle mode instead of hold mode for the 45-degrees bind. 0 = hold, 1 = toggle.
bc_prev_mouse_max_distance_45_degrees
int
default:"400"
Stores the previous inp_max_mouse_distance value before 45-degrees mode is activated, so it can be restored afterward. Range: 05000.
bc_prev_inp_mousesens_45_degrees
int
default:"200"
Stores the previous inp_mousesens value before 45-degrees mode is activated, so it can be restored afterward. Range: 11000000.

Small Sens

The small-sens bind temporarily reduces mouse sensitivity for precise aiming. These variables store the previous value for restoration.
bc_toggle_small_sens
int
default:"0"
Use toggle mode instead of hold mode for the small-sens bind. 0 = hold, 1 = toggle.
bc_prev_inp_mousesens_small_sens
int
default:"200"
Stores the previous inp_mousesens value before small-sens mode is activated, so it can be restored when released. Range: 11000000.

Keystrokes Display

BestClient can render a live keystrokes overlay showing which keys are currently pressed. Keyboard and mouse overlays are independent.

Keyboard Overlay

bc_keystrokes_keyboard
int
default:"0"
Show a keyboard keystrokes HUD overlay. 0 = off, 1 = on.
bc_keystrokes_keyboard_preset
int
default:"0"
Visual layout preset for the keyboard overlay. 0 = WASD minimal, 1 = WASD full, 2 = micro compact. Range: 02.

Mouse Overlay

bc_keystrokes_mouse
int
default:"0"
Show a mouse button keystrokes HUD overlay. 0 = off, 1 = on.
bc_keystrokes_mouse_preset
int
default:"0"
Visual layout preset for the mouse overlay. 0 = mouse-dot, 1 = mouse-arrow, 2 = mouse-dot-dot, 3 = mouse-dot-no-box, 4 = mouse-no-movement. Range: 04.

Auto Team Lock

Automatically lock your team a configurable number of seconds after joining it.
bc_auto_team_lock
int
default:"0"
Automatically lock your team after joining it. 0 = off, 1 = on.
bc_auto_team_lock_delay
int
default:"5"
Delay in seconds before the team is locked after you join. Range: 030.

Extend Zoom

bc_extend_zoom
int
default:"0"
Use 0.5 zoom steps instead of 1 for finer scroll zoom control (e.g. 10, 9.5, 9, 8.5 …). 0 = off, 1 = on.

Spectator Notifications

bc_spec_moved_notify
int
default:"0"
Show a “moved in game” warning when someone hooks or hits your character while you are in spectator mode. 0 = off, 1 = on.

Build docs developers (and LLMs) love