vault backup: 2025-07-21 19:06:11
This commit is contained in:
55
Proton/Mount & Blade 2 Bannerlord.md
Normal file
55
Proton/Mount & Blade 2 Bannerlord.md
Normal file
@@ -0,0 +1,55 @@
|
||||
# Mount & Blade 2 Bannerlord
|
||||
|
||||
## Installing BLSE
|
||||
|
||||
1. Install BLSE and Harmony like you would on Windows
|
||||
|
||||
2. Set launch options to run the BLSE launcher:
|
||||
`$(echo %command% | sed -r "s/proton waitforexitandrun .*/proton waitforexitandrun/") "$STEAM_COMPAT_INSTALL_PATH/bin/Win64_Shipping_Client/Bannerlord.BLSE.LauncherEx.exe"`
|
||||
|
||||
3. Go to your Bannerlord install directory ex. `'/home/$USER/.steam/steamapps/Mount & Blade 2 Bannerlord/bin/Win64_Shipping_Client'`
|
||||
|
||||
4. Rename `Mono.Cecil.dll` to `Mono.Cecil.dll.bak`
|
||||
|
||||
5. Symlink all files from $STEAM_COMPAT_INSTALL_PATH/Modules/Bannerlord.Harmony/bin/Win64_Shipping_Client/ to the current directory. You can use this script:
|
||||
|
||||
```
|
||||
#!/bin/bash
|
||||
|
||||
SOURCE_DIR=../../Modules/Bannerlord.Harmony/bin/Win64_Shipping_Client
|
||||
LOG_FILE=symlinks-created.txt
|
||||
|
||||
> "$LOG_FILE" # Empty the log file
|
||||
|
||||
for file in "$SOURCE_DIR"/*; do
|
||||
base=$(basename "$file")
|
||||
if [ ! -e "$base" ]; then
|
||||
ln -s "$file" .
|
||||
echo "$base" >> "$LOG_FILE"
|
||||
echo "Linked: $base"
|
||||
else
|
||||
if [ -L "$base" ]; then
|
||||
echo "$base" >> "$LOG_FILE"
|
||||
echo "Skipped (symlink already exists): $base"
|
||||
else
|
||||
echo "SHOULD NOT HAPPEN"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
echo "Symlinking complete. Reversible via: xargs rm < $LOG_FILE"
|
||||
```
|
||||
|
||||
6. You're done, launch the game
|
||||
|
||||
7. BLSE may tell you harmony was not loaded from the right place, it's fine.
|
||||
|
||||
Issue: Under proton, the files from Modules/Bannerlord.Harmony/bin/Win64_Shipping_Client/ are not loaded in correctly. After step 2 you'd get a 'harmony not found' error, BLSE only looks in the main launcher directory. Symlinking fixes this, but Mono.Cecil.dll is provided by default:
|
||||
|
||||
Name: Mono.Cecil Version: [0.9.6.0](http://0.9.6.0) PublicKey: BlobPtr (0x00002d2c)
|
||||
|
||||
and this is the harmony Mono.Cecil.dll:
|
||||
|
||||
Name: Mono.Cecil Version: [0.11.5.0](http://0.11.5.0) PublicKey: BlobPtr (0x00003073)
|
||||
|
||||
so we have to remove the stock Mono.Cecil.dll
|
Reference in New Issue
Block a user