---
title: "BG3 Coop Modded Setup on Linux"
description: "Step-by-step guide for a friend to join a modded Baldur's Gate 3 coop game on Linux, covering GE-Proton, BG3 Mod Manager, Script Extender, mod import, and SteamTinkerLaunch config."
type: guide
domain: gaming
tags: [baldurs-gate-3, coop, linux, proton, modding, steam, steamtinkerlaunch]
---

# BG3 Coop Friend Setup (Linux)

Quick setup guide for joining a modded BG3 coop game. Uses pre-packaged mod archive for identical setup.

**You need:** The `bg3-mods-clean.zip` file from your coop partner.

---

## Step 1: Prerequisites

### Install GE-Proton

Required for running BG3 Mod Manager on Linux.

1. Download latest from: https://github.com/GloriousEggroll/proton-ge-custom/releases
2. Extract to: `~/.local/share/Steam/compatibilitytools.d/`

Example:
```bash
mkdir -p ~/.local/share/Steam/compatibilitytools.d
cd ~/.local/share/Steam/compatibilitytools.d
tar -xf ~/Downloads/GE-Proton9-27.tar.gz
```

### Run BG3 Once

Launch BG3 via Steam at least once to create the wine prefix. You can quit after the main menu loads.

---

## Step 2: Find Your Paths

You need two paths. Run this to find them:

```bash
# Find your BG3 install
find ~/.steam /mnt -type d -name "Baldurs Gate 3" -path "*/common/*" 2>/dev/null

# Find your wine prefix
find ~/.steam /mnt -path "*/compatdata/1086940/pfx" 2>/dev/null
```

Write these down:
- **BG3_INSTALL:** (e.g., `/mnt/games/steam/steamapps/common/Baldurs Gate 3`)
- **WINEPREFIX:** (e.g., `/mnt/games/steam/steamapps/compatdata/1086940/pfx`)

---

## Step 3: Install Script Extender

```bash
# Set your BG3 install path from Step 2
BG3_INSTALL="/path/to/Baldurs Gate 3"

# Download and extract
curl -sL $(curl -s https://api.github.com/repos/Norbyte/bg3se/releases/latest | grep browser_download_url | head -1 | cut -d'"' -f4) -o /tmp/se.zip
unzip -o /tmp/se.zip -d "$BG3_INSTALL/bin"
```

Verify: `ls "$BG3_INSTALL/bin/DWrite.dll"` should exist.

---

## Step 4: Install BG3 Mod Manager

```bash
mkdir -p ~/Applications/BG3ModManager
cd ~/Applications/BG3ModManager

# Download latest release
curl -sL $(curl -s https://api.github.com/repos/LaughingLeader/BG3ModManager/releases/latest | grep "browser_download_url.*zip" | head -1 | cut -d'"' -f4) -o BG3MM.zip
unzip BG3MM.zip && rm BG3MM.zip
```

---

## Step 5: Create Launcher Script

Save this to `~/bin/launch-bg3mm.sh`:

```bash
#!/bin/bash
set -euo pipefail

# EDIT THESE to match your system (from Step 2)
WINEPREFIX="/path/to/compatdata/1086940/pfx"
GE_PROTON="GE-Proton9-27"

BG3MM_DIR="$HOME/Applications/BG3ModManager"
WINE64="$HOME/.local/share/Steam/compatibilitytools.d/$GE_PROTON/files/bin/wine64"

cd "$BG3MM_DIR"
WINEPREFIX="$WINEPREFIX" WINEFSYNC=1 "$WINE64" BG3ModManager.exe "$@"
```

Make executable:
```bash
chmod +x ~/bin/launch-bg3mm.sh
```

---

## Step 6: Import Mods

1. Launch BG3MM:
   ```bash
   ~/bin/launch-bg3mm.sh
   ```

2. If it asks for BG3 folder, navigate to your BG3_INSTALL path from Step 2

3. **File → Import Order & Mods from Archive** → select `bg3-mods-clean.zip`

4. **File → Export Order to Game**

5. Close BG3MM

---

## Step 7: Configure Steam Launch Options

Right-click BG3 in Steam → Properties → Launch Options:

```
gamemoderun mangohud %command% --skip-launcher --dx11
```

**The `--skip-launcher` is required** - the Larian Launcher doesn't work properly in Proton.

---

## Step 7b: SteamTinkerLaunch Config (Optional)

If you use STL, create `~/.config/steamtinkerlaunch/gamecfgs/id/1086940.conf`:

```ini
# Baldur's Gate 3 - Modded Coop Configuration

##########################
## PROTON
##########################
USEPROTON="GE-Proton9-27"
GAMEARGS="--skip-launcher"

##########################
## NVIDIA RTX
##########################
PROTON_ENABLE_NVAPI="1"
PROTON_HIDE_NVIDIA_GPU="0"
VKD3D_CONFIG="dxr"
DXVK_ASYNC="1"
DXVK_HDR="1"
DXVK_LOG_LEVEL="none"

##########################
## SCRIPT EXTENDER
##########################
USE_WINEDLLOVERRIDE="1"
WINEDLLOVERRIDE="DWrite.dll=n,b"

##########################
## PERFORMANCE
##########################
USEGAMEMODERUN="1"
USEMANGOHUD="1"
PROTON_NO_FSYNC="0"
PROTON_NO_ESYNC="0"
PROTON_FORCE_LARGE_ADDRESS_AWARE="1"

##########################
## DISPLAY
##########################
PROTON_ENABLE_HDR="1"
ENABLE_HDR_WSI="1"
USEGAMESCOPE="0"

##########################
## DEBUGGING (disabled)
##########################
PROTON_LOG="0"
STLWINEDEBUG="-all"
```

Key settings explained:
- `WINEDLLOVERRIDE="DWrite.dll=n,b"` - Loads Script Extender (native, then builtin)
- `PROTON_ENABLE_NVAPI="1"` - Enables NVIDIA driver passthrough for RTX/DLSS
- `PROTON_HIDE_NVIDIA_GPU="0"` - Don't hide GPU from game (needed for RTX)
- `VKD3D_CONFIG="dxr"` - Enable ray tracing support
- `GAMEARGS="--skip-launcher"` - Bypass broken Larian Launcher

---

## Step 8: Verify

1. Launch BG3 via Steam
2. Check main menu bottom-left shows Script Extender version
3. Start a new game - mods should be active

---

## Included Mods (16 .pak mods via BG3MM)

| Category | Mod | Purpose |
|----------|-----|---------|
| Dependencies | VolitionCabinet | Framework for auto-send mods |
| | Mod Configuration Menu | Settings UI |
| | Mark Books as Read | Required by auto-send books |
| UI | ImpUI | UI improvements |
| | Better Inventory UI | Color-coded items |
| | Better Containers | Improved container UI |
| | Better Hotbar 2 | More hotbar slots |
| | BagsBagsBagsReforged | Auto-sort containers |
| QoL | Weightless Consumables | No potion/scroll weight |
| | Carry Weight Increased | x10 carry capacity |
| | Auto Send Food To Camp | Food auto-transfers |
| | Auto Send Read Books | Books auto-transfer |
| | Wifi Potions | Share potions across party |
| | Fix Stragglers | Auto-teleport stuck companions |
| | MoveFaster | 2x movement speed |
| | TransmogEnhanced | Change gear appearance |

---

## Optional: Native Mods (Client-Side Only)

These are DLL mods that go in the `bin/` folder, NOT managed by BG3MM. They don't need to be synced for coop - each player can choose to use them independently.

| Mod | Purpose |
|-----|---------|
| Native Mod Loader | Framework for native DLL mods |
| WASD Character Movement | Direct keyboard movement instead of click-to-move |
| Native Camera Tweaks | Unlocked camera controls (zoom, rotation, etc.) |

### Installing Native Mods

```bash
BG3_BIN="/path/to/Baldurs Gate 3/bin"

# 1. Download from NexusMods:
#    - Native Mod Loader: https://www.nexusmods.com/baldursgate3/mods/944
#    - WASD: https://www.nexusmods.com/baldursgate3/mods/781
#    - Native Camera Tweaks: https://www.nexusmods.com/baldursgate3/mods/945

# 2. Backup original bink2w64.dll
cp "$BG3_BIN/bink2w64.dll" "$BG3_BIN/bink2w64_original.dll"

# 3. Extract NativeModLoader's bink2w64.dll to bin/
unzip NativeModLoader*.zip -d /tmp/nml
cp /tmp/nml/bin/bink2w64.dll "$BG3_BIN/"

# 4. Create NativeMods folder and extract WASD/Camera
mkdir -p "$BG3_BIN/NativeMods"
unzip WASD*.zip -d /tmp/wasd
unzip "Native Camera*.zip" -d /tmp/camera
cp /tmp/wasd/bin/NativeMods/* "$BG3_BIN/NativeMods/"
cp /tmp/camera/bin/NativeMods/* "$BG3_BIN/NativeMods/"
```

After installation, `bin/NativeMods/` should contain:
- `BG3WASD.dll` + `BG3WASD.toml`
- `BG3NativeCameraTweaks.dll` + `BG3NativeCameraTweaks.toml`

---

## Troubleshooting

### BG3MM won't launch

**Wineserver mismatch:** Kill existing wineserver and retry:
```bash
wineserver -k
~/bin/launch-bg3mm.sh
```

**Wrong wine:** Make sure you're using GE-Proton's wine64, not system wine.

### Game won't start / stuck on "Running"

Make sure `--skip-launcher` is in your Steam launch options.

### "Version mismatch" with coop partner

Both players must have:
- Same game version (check Steam)
- Same mods (use the same archive)
- Script Extender showing in main menu

---

## Quick Reference

| Item | Path |
|------|------|
| Script Extender | `<BG3_INSTALL>/bin/DWrite.dll` |
| Mods folder | `<WINEPREFIX>/drive_c/users/steamuser/AppData/Local/Larian Studios/Baldur's Gate 3/Mods/` |
| BG3MM | `~/Applications/BG3ModManager/` |
| GE-Proton | `~/.local/share/Steam/compatibilitytools.d/GE-Proton9-27/` |
