Profiles
Save a set of InputBooster settings, switch between them, and bind one to a server.
A profile is a snapshot of 23 settings under a name. Up to five can exist at once, and one of them can be bound to a server so it loads automatically when you connect.
Opening the profile screen
The Advanced tab of the settings screen has a Manage profiles button. It opens a separate screen with a Save button per profile, a Load button and a Delete button per profile, and a Back button.
What a profile captures
A profile is a snapshot of the current configuration. It holds 23 fields:
| Group | Fields |
|---|---|
| Polling | pollRateHz, pollRateAutoMode |
| Movement | sprintFixEnabled, autoSprintEnabled, wTapAssistEnabled, antiIdleEnabled, autoStrafeEnabled |
| Combat | cpsLimiterEnabled, maxCps, cpsMode |
| Overlay | showF3Info, showKeystrokes, showActionBar |
| Diagnostics | fpsCheckInterval, debugMode |
| Engine | burstModeEnabled, comboKeysEnabled |
| Features | replayEnabled, safeModeEnabled, eventLogEnabled, keyConflictWarn, perServerProfiles |
Saving, loading and deleting
- Save captures the current settings under a name. Saving over an existing name overwrites that profile instead of creating a second one — the match is case-insensitive.
- Load applies the profile to the live configuration and writes the config file. An action-bar message confirms it.
- Delete removes a profile. If the deleted profile was the active one, nothing is active afterwards.
The limit
The profile list holds a maximum of five profiles. Saving a sixth with a new name fails and the list stays at five.
Where profiles are stored
Profiles live in a JSON array next to the config file:
The file is written atomically, like the main config. A profile file that is
not valid JSON is moved aside to inputbooster_profiles.json.corrupt and the
game starts with no profiles instead of failing to launch.
Per-server profiles
With per_server_profiles enabled, the mod watches which server you are
connected to and loads the profile bound to it.
Detection runs every 20 ticks, roughly once a second, and uses reflection with a defensive fallback — the vanilla fields it looks up have changed across versions, so a failure degrades to a stable identifier instead of throwing on the client tick.
The identifier is normalised so the same server always maps to the same profile:
| Address | Normalised to |
|---|---|
Example.com | example.com |
example.com:25565 | example.com |
tcp://EXAMPLE.COM | example.com |
example.com/somepath | example.com |
| — (singleplayer) | singleplayer |
| — (main menu) | title |
Writing a binding
Create or edit inputbooster_server_profiles.properties:
example.com=Competitive hypixel.net=Slow singleplayer=Casual
The key is the normalised server identifier and the value is the profile name. The name must match a profile exactly as it appears in the profiles list, otherwise the lookup finds nothing and your settings simply do not change.
Switching profiles and the running engine
Applying a profile changes the live configuration. Two settings have an immediate effect on the running poller:
| Setting | Effect on apply |
|---|---|
pollRateHz, pollRateAutoMode | The poller's rate is updated on the next tick |
engineMode | Not part of a profile — see the note below |
Related pages
- The configuration file — the main properties file.
- Profile file format — the JSON schema, field by field.
- Per-server profiles — the binding file format.