Difference between revisions of "Sandbox"

From BTAWiki
Jump to navigation Jump to search
m
m
Line 1: Line 1:
<div id="" class="" style="clear: right; margin: -1em 0 0 10px; float: right; padding: 10px; background: transparent; width: 200px; ">__TOC__</div>
+
= Gear Index =
 +
Gauss Rifle
  
This guide assumes you are using the native Linux version of BattleTech. If you installed the Windows version, got it running with Proton, and successfully installed BTA, please write up a document similar to this one for your scenario.
+
=== EWAR ===
  
= 1. Prepare =
+
[[ECM]] (Guardian ECM, cGuardian ECM, Angel ECM, EWS (Electronic Warfare Suite), Experimental EWS, Proto EWS)
  
== 1.1. Set some vars we’ll need later to avoid typos ==
+
[[Active Probes]] (BAP, cAP, cLight AP, Boosted BAP, Bloodhound AP)
  
Double-check these paths with your local installation, they may be different.
+
[[C3]] (C3 Slave, C3 Master, C3i)
  
$ BTA_ROOT="$HOME/src/BATTLETECH/BTA"
+
=== TTS ===
=== Steam on Debian ===
+
[[Apollo]]
  
$ BT_ROOT="$HOME/.steam/debian-installation/steamapps/common/BATTLETECH"
+
[[Artemis IV]]
=== Steam on other distros ===
 
  
Check your <code>$HOME/.steam</code> directory and modify the above environment variable assignment accordingly.
+
[[FCS Adv TC]]
  
=== GOG ===
+
[[TTS Called Shot]]
  
$ BT_ROOT="$HOME/GOG Games/BATTLETECH"
+
[[TTS MultiTrac]]
== 1.2. Ensure dependencies are installed ==
 
  
{| class="wikitable"
+
[[TTS Ballistic]] (Ballistic, Ballistic+, Ballistic Evasion+, Ballistic Evasion++)
! Package*
 
! Purpose
 
|-
 
| wine
 
| run the installer
 
|-
 
| unzip
 
| unzip the installer package
 
|-
 
| jq
 
| allow pathfinder.sh to parse JSON
 
|}
 
  
<nowiki>*</nowiki> Package name may differ on your distribution.
+
[[TTS Energy]] (Energy, Energy+, Energy Evasion+, Energy Evasion++)
  
=== Debian &amp; Friends (Ubuntu, Mint, Pop_OS!, PureOS) ===
+
[[TTS Indirect]] (Indirect, Indirect+, Indirect++)
  
$ sudo apt install wine unzip jq
+
[[TTS Missile]] (Missile, Missile+, Missile Evasion+, Missile Evasion++)
=== RedHat &amp; Friends (Fedora, SuSe) ===
 
  
$ sudo dnf install wine unzip jq
+
=== Cockpit Slot ===
=== Arch &amp; Friends (Manjaro, GamerOS) ===
 
  
$ sudo pacman -S wine unzip jq
+
[[DNI Cockpit]]
== 1.3. Prepare Wine prefix for the BTA installer. ==
 
  
The wine-mono package listed here is for reference only. You can get the most recent version from https://dl.winehq.org/wine/wine-mono/.
+
[[Primitive Cockpit]]
  
$ mkdir -p "${BTA_ROOT}"
+
[[Armored Cowl]] (Armored Cowl, Armored Cowl+, Armored Cowl++)
$ cd "${BTA_ROOT}"
 
$ wget https://dl.winehq.org/wine/wine-mono/6.1.0/wine-mono-6.1.0-x86.msi
 
$ WINEPREFIX="${BTA_ROOT}/wine64" WINEARCH=win64 wine msiexec /i wine-mono-6.1.0-x86.msi
 
== 1.4. Download the BTA installer and Extract the .zip into <code>${BTA_ROOT}</code> ==
 
  
You’ll have to manually download the installer from NexusMods. Save it to your <code>${BTA_ROOT}</code>. Then unzip it.
+
[[Command Console]]
  
$ unzip 'BattleTech Advanced 3062 Installer-452-v8-5-2-1613256258.zip'
+
=== Sensors A (Top Sensor Slot) ===
== 1.5. Prepare the Mods directory ==
 
  
If you try to run BTA alongside other mods, problems are likely. If the Mods directory already exists, back it up (optional), and delete it.
+
[[Rangefinder]] (Rangefinder, Rangefinder+, Rangefinder++, Rangefinder+++) (Occupies top sensor slot)
  
Clean up and create the Mods directory:
+
=== Sensors B (Bottom Sensor Slot) ===
  
$ rm -rf "${BT_ROOT}/Mods"
+
[[Comms Suite]] (Comms Suite, Comms Suite+, Comms Suite++, Comms Suite+++) (Occupies bottom sensor slot)
$ mkdir -p "${BT_ROOT}/Mods"
 
== 1.6. Collect paths for the BTA installer ==
 
  
The installer needs to know where to install to. It does not know how to browse into Linux “hidden” paths (such as $HOME/.steam). Instead, you must copy and paste paths into the installer’s file/directory chooser after clicking the “Browse” button.
+
=== Actuators ===
 +
[[Foot Actuators]]
  
Also, the installer cannot parse Linux paths. You must convert them to Windows paths and include the Windows drive letter <code>Z:</code>, which is where wine mounts the Linux filesystem as if it were a Windows filesystem.
+
[[Leg Actuators]]
  
Collect those Windows paths:
+
[[Hip Actuators]]
  
=== Install Target path ===
+
[[Hand Actuators]]
  
Examples:
+
[[Lower Arm Actuators]]
  
$ echo "Z:${BT_ROOT}/Mods" | sed -e 's#/#\\#g'
+
[[Upper Arm Actuators]]
Z:\home\indigo\.steam\debian-installation\steamapps\common\BATTLETECH\Mods
 
=== Checkout Workspace path ===
 
  
$ echo "Z:${BTA_ROOT}" | sed -e 's#/#\\#g'
+
[[Shoulder Actuators]]
Z:\home\indigo\src\BATTLETECH\BTA
 
=== BattleTech.exe Binary path ===
 
 
 
$ echo "Z:${BT_ROOT}/BattleTech" | sed -e 's#/#\\#g'
 
Z:\home\indigo\.steam\debian-installation\steamapps\common\BATTLETECH\BattleTech
 
= 2. Install BTA =
 
 
 
== 2.1. Run the installer ==
 
 
 
$ WINEPREFIX="${BTA_ROOT}/wine64" WINEARCH=win64 wine BTAdvancedLauncher.exe
 
== 2.2. Click the “Advanced Mode” button. ==
 
 
 
'''''Click'''''
 
 
 
== 2.3. Input the Install Target and Checkout Workspace paths ==
 
 
 
Click the “Browse” button next to each path and copy/paste the Windows paths you made in step 1.6 into the “Filename” field of the file picker.
 
 
 
== 2.4. Run the install ==
 
 
 
Click the “Install and Update BTA” button. Pay attention to any popups or instructions.
 
 
 
== 2.5. Choose your Advanced Configuration Options ==
 
 
 
Select all the things you want to install. Make sure Fire Option for Linux Users is set to “Old Fire for Linux Users”
 
 
 
== 2.6. Wait for it. ==
 
 
 
After installing the mod, the installer will install ModTek. ModTek needs to know where your BattleTech binary lives. The installer cannot find BattleTech.exe and will ask you where to find it. Give it the “BattleTech.exe Binary path” collected earlier. It will not complain when there is not <code>.exe</code> extension on the filename.
 
 
 
== 2.7. Ensure all the paths and symlinks are correct ==
 
'''Note:''' This step is optional, depending on your distribution.
 
 
 
At this point the installation for Windows is complete. However, you’re not done. Because HBS was kind enough to provide us with a native binary, and because BTA’s installer runs as if it were a Windows program, we have to create some symlinks to make sure BattleTech can see all the mod files.
 
 
 
Thankfully some magical creature named “b2cc” has written a script to do this for us. The script is called “pathfinder.sh”. Download and run it.
 
 
 
$ cd ${BT_ROOT}
 
$ wget https://gist.githubusercontent.com/b2cc/c312bec251aaecbfedd07e4d4bda512e/raw/f7fdaa5bc458372b421a6a207e93c4d9ea257901/pathfinder.sh
 
$ less pathfinder.sh  # its up to you to make sure script doesn't do anything naughty!
 
$ bash pathfinder.sh -c
 
You should see a lot of console spam and green success words.
 
 
 
If you do not, ask for help.
 
 
 
= 3. Okay, that’s it. =
 
 
 
All done. Run the game. Assuming all went well, you can go stomp around and get your dakka dakka pew pew on.
 
 
 
If for whatever reason things are not working, check the Troubleshooting section.
 
 
 
 
 
= Troubleshooting =
 
 
 
== Issue: The game loads but the main menu doesn’t say “BattleTech ADVANCED - 3062” and the ModTek version doesn’t show up under the game version next to the CREDITs button ==
 
 
 
Likely cause: ModTek isn’t patched into the game correctly.
 
 
 
This can happen if mono is incorrectly installed or was not installed before the BTA installer was run the first time.
 
 
 
Solution: (re)run the ModTek Injector. It should look like this if it worked correctly:
 
 
 
$ cd ${BT_ROOT}/Mods/ModTek
 
$ WINEPREFIX="${BTA_ROOT}/wine64" WINEARCH=win64 wine ModTekInjector.exe
 
ModTek Injector
 
---------------
 
 
Assembly-CSharp.dll backed up to Assembly-CSharp.dll.orig
 
Injecting Assembly-CSharp.dll with ModTek.Injection.LoadModTek at BattleTech.Main.Start
 
Writing back to Assembly-CSharp.dll...
 
Injection complete!
 
== Issue: BattleTech refuses to launch/crashes to desktop immediately ==
 
 
 
Likely cause: Libc library conflict. The system libc is likely newer than, and incompatible with, the libc included in BattleTech’s native Linux distribution.
 
 
 
Solution: Remove libc.so.6 from the BattleTech game directory. This forces BattleTech to use the system libc.
 
 
 
$ mkdir -p "${BTA_ROOT}/../BattleTech_Data/Plugins/x86_64/"
 
$ mv "${BT_ROOT}/BattleTech_Data/Plugins/x86_64/libc.so.6" "${BTA_ROOT}/../BattleTech_Data/Plugins/x86_64/"
 
== Issue: Not listed here ==
 
 
 
There are a few Linux users on the [https://discord.com/invite/g5nCYAV BTA Discord channel], you can ask for help in General Chat or open a support ticket with #ticketbot to get help resolving issues with BTA. For general issues with BattleTech on Linux, there are several forums available by searching your favorite search engine.
 

Revision as of 11:39, 5 April 2021

Gear Index

Gauss Rifle

EWAR

ECM (Guardian ECM, cGuardian ECM, Angel ECM, EWS (Electronic Warfare Suite), Experimental EWS, Proto EWS)

Active Probes (BAP, cAP, cLight AP, Boosted BAP, Bloodhound AP)

C3 (C3 Slave, C3 Master, C3i)

TTS

Apollo

Artemis IV

FCS Adv TC

TTS Called Shot

TTS MultiTrac

TTS Ballistic (Ballistic, Ballistic+, Ballistic Evasion+, Ballistic Evasion++)

TTS Energy (Energy, Energy+, Energy Evasion+, Energy Evasion++)

TTS Indirect (Indirect, Indirect+, Indirect++)

TTS Missile (Missile, Missile+, Missile Evasion+, Missile Evasion++)

Cockpit Slot

DNI Cockpit

Primitive Cockpit

Armored Cowl (Armored Cowl, Armored Cowl+, Armored Cowl++)

Command Console

Sensors A (Top Sensor Slot)

Rangefinder (Rangefinder, Rangefinder+, Rangefinder++, Rangefinder+++) (Occupies top sensor slot)

Sensors B (Bottom Sensor Slot)

Comms Suite (Comms Suite, Comms Suite+, Comms Suite++, Comms Suite+++) (Occupies bottom sensor slot)

Actuators

Foot Actuators

Leg Actuators

Hip Actuators

Hand Actuators

Lower Arm Actuators

Upper Arm Actuators

Shoulder Actuators