X-Git-Url: https://vilimpoc.org/repos/bl2-split/blobdiff_plain/948cce3bcb1068f479c61d99526fe7ad69bf815f..5765b872626e0ee9da7d0311906bcd91429b9e69:/README.md diff --git a/README.md b/README.md index 2ce0f74..d25a765 100644 --- a/README.md +++ b/README.md @@ -23,6 +23,11 @@ their own controller, save, and screen. Tested on **Arch + KDE Plasma 6 (Wayland ``` 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 @@ -61,7 +66,8 @@ their own controller, save, and screen. Tested on **Arch + KDE Plasma 6 (Wayland | `./bl2-splitscreen.sh setup` | fetch Goldberg + build `p1/`, `p2/` | | `./bl2-splitscreen.sh run` | launch both instances + place windows | | `./bl2-splitscreen.sh tile` | re-place the two windows | -| `./bl2-splitscreen.sh clean` | remove `p1/`, `p2/` (copies + saves + prefixes) | +| `./bl2-splitscreen.sh kill` | terminate all running Borderlands 2 instances | +| `./bl2-splitscreen.sh clean` | kill instances, then remove `p1/`, `p2/` (copies + saves + prefixes) | Useful env overrides: `MODE=native|proton`, `DISPLAY_MODE=dual|split`, `ISOLATION=bwrap|sdl`, `SPLASH_WAIT=`, `STAGGER=`. @@ -117,6 +123,19 @@ So another person clones the repo, forces Proton on their own BL2 in Steam, runs `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 — 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 `SPLASH_WAIT` if it fires before the game settles. - **Reset everything:** `./bl2-splitscreen.sh clean` (removes copies + saves; the