A customizable, open-source HUD plugin for MX Bikes and GP Bikes displaying real-time race information and telemetry.
Example HUD layouts. All elements are fully customizable.
Download and install the plugin to begin customizing your HUD.
Quick Start
- Install the plugin
- Launch the game and load a track
- Right-click drag to reposition elements
- Press Tilde or click [=] to customize visibility, scale, opacity, and more
See Installation for detailed setup instructions.
Requirements:
mxbmrp3-Setup.exemxbmrp3.zippluginsC:\Games\MX Bikes\ or C:\Games\GP Bikes\) → open pluginsmxbmrp3.dlo (MX Bikes) or mxbmrp3_gpb.dlo (GP Bikes) to the plugins/ foldermxbmrp3_data/ folder to the plugins/ folderDo NOT delete the existing game files (proxy64.dlo, proxy_udp64.dlo, xinput64.dli, or telemetry64.dlo for GP Bikes) - these are native game files, not old plugin versions.
Your directory should look like this after installation (files vary slightly by game):
[Game]/
│ mxbikes.exe / gpbikes.exe
│ ...
│
└───plugins/
├── mxbmrp3_data/ ← Add this folder (from release)
│ ├── fonts/ ← Font files (.fnt)
│ ├── textures/ ← Texture files (.tga)
│ └── icons/ ← Icon files (.tga)
├── mxbmrp3.dlo ← Add this (MX Bikes only)
├── mxbmrp3_gpb.dlo ← Add this (GP Bikes only)
├── proxy_udp64.dlo ← Keep (native game file)
├── proxy64.dlo ← Keep (native game file)
├── xinput64.dli ← Keep (native game file)
└── telemetry64.dlo ← Keep (GP Bikes only)
Launch the game - the plugin will load automatically. Some elements are enabled by default and can be repositioned or configured via the settings menu. If nothing appears, see Troubleshooting.
[=] settings button (auto-hides after inactivity)Keyboard and controller hotkeys can be customized in Settings > Hotkeys. By default, only the settings menu hotkey is configured:
Use the settings menu (Tilde key or [=] settings button) to configure all HUDs and widgets. Hover over any setting to see its description - all controls have in-game tooltips explaining their function.
The settings menu provides:
All settings are automatically saved between sessions.
Four separate profiles store complete HUD layout configurations:
Auto-switch (disabled by default) automatically changes profiles based on session type.
All HUDs and widgets are configurable via the settings menu or directly in the .ini file.
| HUD | Description |
|---|---|
| Standings | Live race positions with gaps, status, and tracked rider indicators |
| Map | Top-down track map with rider positions (click to spectate) |
| Radar | Proximity radar with approach alerts and distance arrows |
| Timing | Split and lap times with gap comparisons |
| Gap Bar | Visual gap-to-PB bar with position markers |
| Pitboard | Pitboard-style lap information display |
| Lap Log | Historical lap times with PB indicators |
| Lap Consistency | Lap time consistency analysis with trend visualization |
| Ideal Lap | Best sector times and theoretical ideal lap |
| Records | Online lap records (CBR or MXB-Ranked) with personal bests (MX Bikes only) |
| FMX | Freestyle trick detection with scoring and chain combos |
| Telemetry | Throttle, brake, suspension graphs |
| Performance | FPS and plugin CPU usage |
| Rumble | Controller rumble effect visualization |
| Session | Session info (type, format, track, server, players, password) |
| Widget | Description |
|---|---|
| Lap | Current lap number |
| Position | Race position |
| Time | Session time/countdown |
| Speed | Speed and gear |
| Speedo | Analog speedometer |
| Tacho | Analog tachometer |
| Bars | Telemetry bars (throttle, brake, clutch, RPM, suspension, fuel) |
| Fuel | Fuel calculator with consumption tracking |
| Lean | Bike lean angle with arc gauge |
| Notices | Race status notices (wrong way, blue flag, last lap, finished) |
| Gamepad | Controller visualization |
All plugin settings are stored in mxbmrp3_settings.ini in your user data folder.
In-game vs INI-only settings:
INI structure:
[HudName] — Base/default settings for a HUD[HudName:Practice], [HudName:Race], [HudName:Spectate] — Profile-specific overrides (only values that differ from base)Editing the INI file:
With the game closed (recommended):
mxbmrp3_settings.iniHot reload (for rapid iteration):
If Auto-Save is enabled, changes made to the INI while the game is running will be overwritten.
Plugin data and custom assets are stored in Documents\PiBoSo\[Game]\mxbmrp3\.
Add custom fonts, textures, and icons by placing files in the appropriate subfolder:
mxbmrp3/
├── fonts/ ← Custom .fnt files
├── textures/ ← Custom .tga textures
└── icons/ ← Custom .tga icons
On game startup, the plugin syncs these files to the plugin’s data directory (plugins/mxbmrp3_data/). User files with the same name as bundled assets will override them. This keeps your customizations separate from the plugin installation, so updates won’t overwrite your files. Restart the game after adding or modifying assets.
Textures use the naming convention {element_name}_{number}.tga (e.g., standings_hud_1.tga). They’re auto-discovered and selectable via the Texture control in each HUD’s settings. Source design files (PSD) are available in assets/.
Fonts (.fnt files) are auto-discovered and assignable to categories (Title, Normal, Strong, Marker, Small) in Settings > Appearance. To generate fonts, use the fontgen utility provided by PiBoSo. See this forum post for details. An example configuration is provided in fontgen.cfg.
Icons (.tga files) are discovered alphabetically and available for tracked rider customization.
| File | Description |
|---|---|
mxbmrp3_settings.ini |
All HUD settings (positions, visibility, options) |
mxbmrp3_personal_bests.json |
Personal best lap times per track/bike/category |
mxbmrp3_tracked_riders.json |
Tracked riders with colors and icons |
rumble_profiles.json |
Per-bike rumble effect profiles |
odometer.json |
Per-bike odometer and trip meter data |
HUD Not Appearing
mxbmrp3_data/ are in the correct plugins/ folder. Games have two directories - the game installation (contains the game .exe) and user data (Documents\PiBoSo\[Game]\). Plugins go in the game installation, not Documents.mxbmrp3_gpb.dlo, not mxbmrp3.dloText or Icons Not Appearing
mxbmrp3_data/ folder is in the plugins/ folder alongside the DLO filemxbmrp3_data/ folder contains fonts, textures, and icons required for renderingGame Fails to Start or Shows Black Screen
Elements Appearing Twice (Ghost/Duplicate)
Elements Overlapping
Controller or Rumble Not Working
xinput64.dli from the plugins folder, controller input may stop workingFor bug reports or feature requests, open an issue on GitHub.
Built with C++17, Visual Studio 2022, Piboso Plugin API, and Claude Code.
CLAUDE.md - Quick-start guide for developers and AI assistantsARCHITECTURE.md - Comprehensive technical documentation with diagramsRequirements: Visual Studio 2022+, Windows SDK 10.0, Platform Toolset v143
git clone https://github.com/thomas4f/mxbmrp3.git
cd mxbmrp3
mxbmrp3.sln in Visual Studio 2022build/MXB-Release/mxbmrp3.dlobuild/GPB-Release/mxbmrp3_gpb.dloIdeas under consideration (no guarantees): extended telemetry (g-force), event log, HTTP data export for OBS overlays.
Licensed under the MIT License. See THIRD_PARTY_LICENSES.md for bundled asset attributions.
Feedback and contributions are welcome.