Baldur's Gate 3 Script Extender (BG3SE)

baldurs-gate-3 — Mods & Enhancements

Baldur's Gate 3 Script Extender (BG3SE)

This is the essential native-code modding framework for BG3, providing a Lua scripting API and fixing many engine-level bugs. It unlocks the ability for mods to add custom UI, new mechanics (like reaction toggles), and advanced scripting that would otherwise be impossible. Players install it because nearly every complex mod (like 5e Spells, Better Hotbar, or WASD movement) requires it as a hard dependency, and it also enables console commands for debugging and testing.

📦 Full mod page on discovermods

Downloads, ratings, compatibility info, installation guides, and user reviews.

View on discovermods →

Syntax

Utilities

Example

Downloads: 1,801,828 | Endorsements: 24,086

💡 Notes

By Norbyte | vv32-20260621-hotfix1 | 24,086 endorsements

🎯 Tips & Tricks

Verify installation via the in-game console

After launching the game once with BG3SE, open the console by pressing the tilde (~) key and type `GetHostile()` — if you see a result like `true` or `false`, the script extender is loaded. If nothing happens, check that the `BepInEx` folder is in your BG3 root directory (not in the Data folder) and that you ran the game once after installing.

Use the debug log for load order issues

When a mod fails to load, open `%AppData%\..\Local\Larian Studios\Baldur's Gate 3\Script Extender\ScriptExtenderLog.txt`. Look for lines starting with `[ERROR]` or `[WARN]`. For example, if you see `Could not find function 'GetVar'`, that means a mod is outdated and needs an update. You can also enable verbose logging by adding `LogLevel = 3` to `ScriptExtenderSettings.json`.

Enable developer mode for custom scripts

To run your own Lua snippets, create a file named `DevMode.json` in the Script Extender folder (next to `ScriptExtenderSettings.json`) and add `{"DeveloperMode": true}`. Then in-game, press F10 to open the console, type `LoadMods()` to reload mods without restarting, or use `GetHostile()` to test. This is crucial for mod authors but also useful for players to force-reload a stuck mod.

🔧 Troubleshooting

Crash on launch with mods like ImprovedUI or Better Hotbar

These mods require BG3SE to be installed BEFORE them in load order. In Vortex, move BG3SE to the top of the 'Mods' tab, then re-deploy. If using manual install, ensure `BepInEx` and `Script Extender` folders are placed directly in the game root (e.g., `C:\Program Files (x86)\Steam\steamapps\common\Baldurs Gate 3`), not inside `Data`. Also verify that your game version matches the SE version — Patch 8 requires SE v1.8.0+.

Script Extender not detecting mods after a game update

After a major patch (e.g., Patch 7 to Patch 8), BG3SE must be updated. Download the latest `.zip` from GitHub (Norbyte's repo) and overwrite the `BepInEx` folder. Then, delete the `Script Extender` cache folder in `%LocalAppData%\Larian Studios\Baldur's Gate 3\Script Extender` to force a fresh scan. If you use Vortex, disable and re-enable BG3SE to trigger a reinstall.

⚠️ Common Mistakes

  • Installing BG3SE via Vortex but not deploying — Vortex often shows it as 'Enabled' but doesn't copy the files to the game root unless you click 'Deploy Mods'. Without deployment, the game runs without the script extender, causing all dependent mods to fail silently (no errors, just missing features).
  • Placing the `BepInEx` folder inside the `Data` directory — This is a common error from manual installs. The script extender must be in the game's root folder (where `Baldur's Gate 3.exe` is), not in `Data`. If placed in `Data`, the game will ignore it entirely, and you'll see no console or log files.

👍 Pros

  • 24,086 endorsements
  • 1,801,828 downloads
  • Category: Utilities

👎 Cons

  • Requires mod manager installation
  • May conflict with similar mods
🔍 Search Wiki
Type a command, item, or cheat to search across 60+ games.