```
sudo pacman -S umu-launcher qt6-tools bubblewrap libarchive curl binutils
```
+- **Recommended:** an entropy daemon so the second instance doesn't stall on
+ startup waiting for randomness (see Troubleshooting):
+ ```
+ sudo pacman -S haveged && sudo systemctl enable --now haveged
+ ```
- Two Xbox controllers (any two distinguishable pads).
## Setup
`rm p{1,2}/game/Binaries/Win32/steam_settings/configs.main.ini`
- **They don't see each other on LAN:** Player 1 hosts first (the script staggers
launches). Discovery uses `custom_broadcasts.txt` (localhost).
-- **The 2nd instance takes ages to reach the menu:** the two share a DXVK shader
- cache (`dxvk-cache/`) so the 2nd reuses the 1st's shaders; the first-ever run
- still compiles them. If it's still slow, raise the gap between launches so the 1st
- is fully loaded before the 2nd starts: `STAGGER=45 ./bl2-splitscreen.sh run`.
+- **The 2nd instance takes ages to reach the menu — and speeds up when you jiggle
+ the mouse:** classic **entropy starvation** — something in the Wine/Goldberg/crypto
+ path blocks on `/dev/random` waiting for randomness, and mouse movement feeds the
+ pool. Fix it with an entropy daemon (also in Requirements):
+ `sudo pacman -S haveged && sudo systemctl enable --now haveged`.
+ The two instances also share a DXVK shader cache (`dxvk-cache/`) so the 2nd reuses
+ the 1st's shaders; if still slow, raise the launch gap: `STAGGER=45 ./bl2-splitscreen.sh run`.
+- **In-game "Quit Borderlands 2 → Yes" does nothing / hangs:** the game's shutdown
+ path stalls under Goldberg (Steam-networking cleanup, worse with offline mode).
+ Don't use in-game Quit — close with **`./bl2-splitscreen.sh kill`** or **Ctrl-C**
+ in the run terminal (safe: you're at the menu, nothing is saving).
- **Ctrl-C / kill left something running:** `./bl2-splitscreen.sh kill` tears down
the whole game + Proton/Wine tree.
- **A window won't sit on its monitor:** re-run `./bl2-splitscreen.sh tile`; raise