-
Notifications
You must be signed in to change notification settings - Fork 2
Profiles
Profiles switch your entire controller configuration automatically when games change. Set up a profile once; PadForge handles the rest.

Each profile captures a complete snapshot:
| Setting | Details |
|---|---|
| Virtual controller topology | Created slots, enabled slots, and each slot's type (Xbox 360, DualShock 4, DirectInput (vJoy), MIDI, or Keyboard+Mouse) |
| Button and axis mappings | Every per-device mapping for every slot (Button and Axis Mappings) |
| Dead zones | Per-axis Stick Dead Zones and per-trigger Trigger Dead Zones |
| Force feedback | Force Feedback configuration per slot |
| Macros | All Macros definitions — triggers, actions, and conditions |
| DirectInput (vJoy) configurations | Per-slot axis count, button count, and POV settings |
When PadForge switches profiles, all of these settings change at once. Physical devices stay connected — only the virtual controller configuration changes.
Default loads on startup and activates when no other profile matches. It cannot be deleted or renamed.
Set up Default as your general-purpose layout (e.g., standard Xbox for platformers). Create game-specific profiles only where needed.
Important: Changes made on any page (Dashboard, Mappings, Macros, etc.) save to whichever profile is currently active.
Auto-switching monitors the foreground window (~30 Hz) and switches profiles to match:
- Associate each profile with one or more game executables.
- When a matching application gains focus, PadForge applies that profile.
- When an unmatched application gains focus (desktop, browser, etc.), PadForge reverts to Default.
The outgoing profile's state is saved, then the incoming profile applies — no controller connection interruption.
Enable it: On the Profiles page, check Auto-switch profiles based on foreground application.
- Go to the Profiles page in the sidebar.
- Click New (empty profile) or Save As (clone current configuration).
- Enter a name (e.g., "Racing Games", "Elden Ring", "Flight Sim").
- Click Browse... to add game executables (multi-select supported).
- Configure PadForge for a game — mappings, dead zones, macros, slots.
- Go to Profiles and click Save As.
- Name the profile after the game.
- Click Browse... and select the game's executable.
The entire working configuration is captured and ready for auto-switching.
Each profile matches one or more game executables. When the foreground window belongs to a matching process, that profile activates.
- Added via the Browse... file dialog; stored as full paths
- Multiple executables per profile — useful for sharing one profile across several games
-
Case-insensitive —
EldenRing.exematcheseldenring.exe - Use the Remove button to delete a selected executable from the list
Internally, executables are stored as a pipe-separated (|) string of full paths:
C:\Games\game1.exe|D:\Steam\game2.exe|E:\Epic\game3.exe
Visible when editing PadForge.xml directly. Each path is matched against the foreground process path (case-insensitive, full-path comparison).
Each profile shows badges for virtual controller counts by type:
- Xbox — Xbox 360 slot count
- DS4 — DualShock 4 slot count
- DirectInput — DirectInput (vJoy) slot count
- MIDI — MIDI slot count
- KB+M — Keyboard+Mouse slot count
A quick visual summary without loading the profile.
| Action | How |
|---|---|
| New | Empty profile with no controller slots |
| Save As | Clones current configuration (all slots, mappings, macros) into a new profile |
| Edit | Rename or modify the executable list |
| Load | Apply the selected profile (double-click also loads) |
| Delete | Remove the selected profile (Default cannot be deleted) |
| Scenario | Setup |
|---|---|
| Racing game with custom dead zones | Create a "Forza" profile with wider trigger dead zones and a specific stick curve. Associate with ForzaHorizon5.exe. Auto-switches on launch; reverts on Alt-Tab. |
| Flight sim with DirectInput (vJoy) | Create an "MSFS" profile using a DirectInput (vJoy) slot instead of Xbox 360. Map axes to flight stick axes. Associate with FlightSimulator.exe. Normal games keep the Default Xbox 360 profile. |
| Emulators sharing one profile | Create an "Emulators" profile and add Dolphin.exe, Cemu.exe, and Ryujinx.exe. All three activate the same configuration. |
| Macros for one game only | Create a profile with D-pad-to-keyboard macros for an MMO. Associate with the MMO executable. Default has no macros, so they only activate when that game is in focus. |
- Set up Default first as the general-purpose configuration. Create game-specific profiles only for differences.
- Use Save As from a working configuration — faster than building from scratch.
- Test auto-switching by Alt-Tabbing and watching the active profile indicator.
- Macros are per-profile — game-specific macros only activate when that game runs.
- Physical device connections persist. Only virtual controller configuration changes during a switch.
- Back up PadForge.xml to preserve your profiles.
- Dashboard — Shows the currently active profile
- Controller Slots — Profile switching updates all slot configurations
- Devices — Physical device connections persist across profile switches
- Settings — Enable auto-profile switching globally
- Button and Axis Mappings — Mappings stored per-profile
- Macros — Macros stored per-profile