A pyunrealsdk mod library to easily add Dear ImGui windows in any Borderlands game.
Download the latest blimgui.zip from the Releases page.
Unpack the blimgui folder into your game’s sdk_mods directory.
Example path: Borderlands 2/Binaries/Win32/sdk_mods/blimgui/
blimgui features an advanced theming system, allowing you to customize almost every aspect of its UI appearance, including colors, spacing, rounding, and more! You can use pre-made themes or unleash your creativity and make your own.
-
Get Theme Files (
.txt):- Browse and download community-made themes from the
themesfolder at the root of this GitHub repository. - Or, craft your unique theme by following the guide below!
- Browse and download community-made themes from the
-
Place Your Themes:
- Themes are loaded from a
themesfolder located directly within yourblimguimod's directory. - So, if
blimguiis atYourGame/sdk_mods/blimgui/, your themes go into:YourGame/sdk_mods/blimgui/themes/ - Create this
themessubfolder if it doesn't exist. - Drop your
.txttheme files in there.
- Themes are loaded from a
-
Select in Game:
- Launch your game.
blimguiautomatically finds themes at startup. - Open any
blimguiwindow. - Use the theme selector dropdown – your themes will appear as "Custom: YourThemeName".
- The chosen theme applies instantly!
- Launch your game.
Creating a custom theme is all about defining style properties in a simple text file.
-
Create Your File:
- Make a new text file, naming it something like
MyEpicTheme.txt. - The filename (before
.txt) becomes its name in the UI. - Save it in your
blimgui/themes/folder.
- Make a new text file, naming it something like
-
Define Properties:
- Each line sets one style property using the format:
property_name: value1 [value2 ...] property_name: The ImGui style or color identifier (see table below for examples).value(s): Space-separated, depending on the property.
- Each line sets one style property using the format:
-
Value Formats:
- Colors (RGBA): Four floats.
text: 1.0 0.9 0.8 1.0 - ImVec2 (X Y): Two floats.
window_padding: 8.0 8.0 - Floats: Single float.
alpha: 0.95orwindow_rounding: 4.0 - Booleans:
trueorfalse(case-insensitive).anti_aliased_lines: true - Enums (
ImGuiDir): String like "Left", "Right", "None".window_menu_button_position: Left
- Colors (RGBA): Four floats.
-
Comments:
- Lines starting with
#are ignored. Use them for notes!# My Spooky Halloween Theme window_bg: 0.1 0.05 0.0 1.0 # Dark and eerie
- Lines starting with
-
Supported Style Attributes (Examples):
The theme engine supports most
ImGuiStylevariables and allImGuiCol_color values.Attribute Name ( .txt)Value Format Examples Description General Style alpha0.95(float)Global UI alpha transparency. disabled_alpha0.5(float)Alpha for disabled items. window_padding8.0 8.0(X Y floats)Padding inside windows. window_rounding4.0(float)Corner radius for windows. window_border_size1.0(float)Window border thickness. window_menu_button_positionLeft(string)Position of the window collapse button ("Left", "Right", "None"). frame_padding4.0 3.0(X Y floats)Padding inside frames (buttons, inputs). frame_rounding3.0(float)Corner radius for frames. item_spacing8.0 4.0(X Y floats)Spacing between widgets. item_inner_spacing4.0 4.0(X Y floats)Spacing within composite widgets. indent_spacing21.0(float)Horizontal indentation amount. scrollbar_size14.0(float)Scrollbar thickness. scrollbar_rounding9.0(float)Scrollbar grab corner radius. grab_rounding3.0(float)Slider grab corner radius. tab_rounding4.0(float)Tab corner radius. anti_aliased_linestrue/false(boolean)Enable/disable anti-aliased lines. anti_aliased_filltrue/false(boolean)Enable/disable anti-aliased fills. Colors (RGBA Format) R G B AAll take 4 floats (0.0-1.0) text0.9 0.9 0.9 1.0Default text color. text_disabled0.6 0.6 0.6 1.0Disabled text color. window_bg0.1 0.1 0.12 0.95Window background. child_bg0.09 0.09 0.11 0.95Child window background. popup_bg0.08 0.08 0.1 0.98Popup and tooltip background. border0.3 0.3 0.35 0.8Border color for windows and frames. frame_bg0.2 0.2 0.22 1.0Background of inputs, sliders, checkboxes. frame_bg_hovered0.25 0.25 0.28 1.0Frame background when hovered. frame_bg_active0.3 0.3 0.33 1.0Frame background when active/clicked. title_bg0.15 0.15 0.17 1.0Window title bar background. title_bg_active0.2 0.4 0.7 1.0Title bar when window is active. title_bg_collapsed0.15 0.15 0.17 0.7Title bar when window is collapsed. menu_bar_bg0.12 0.12 0.14 1.0Menu bar background. button0.2 0.4 0.7 1.0Button color. button_hovered0.25 0.5 0.8 1.0Button color when hovered. button_active0.15 0.3 0.6 1.0Button color when active. header0.2 0.4 0.7 0.7Collapsing header, TreeNode, Selectable background. header_hovered0.25 0.5 0.8 0.8Header when hovered. header_active0.15 0.3 0.6 1.0Header when active. check_mark0.9 0.9 0.9 1.0Checkbox tick color. slider_grab0.5 0.5 0.5 1.0Slider grabber color. separator0.4 0.4 0.4 0.8Separator line color. modal_window_dim_bg0.1 0.1 0.1 0.35Modal window dimming background color. ...and any other ImGuiCol_(e.g.,tab_hovered,plot_lines, etc.)R G B ASee ImGui documentation for full list. Note: For a full list of non-color style variable names, you can refer to the Dear ImGui
ImGuiStylestructure documentation or inspect theimgui.get_style()object in Python (e.g., usingdir(imgui.get_style())). Color names correspond toImGuiCol_enums (lowercase, without the prefix). -
🧪 Testing:
- Save your
.txtinblimgui/themes/. - Launch game, open
blimguiUI, select your theme. - To see live edits, re-select the theme in the UI. (A game restart ensures a full fresh load).
- Save your
Created an awesome theme? Share it! Submit a .txt file via a Pull Request to the themes folder on GitHub.