|
|
- <!DOCTYPE html>
- <!--[if IE]><![endif]-->
- <html>
-
- <head>
- <meta charset="utf-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
- <title>Installing BSIPA </title>
- <meta name="viewport" content="width=device-width">
- <meta name="title" content="Installing BSIPA ">
- <meta name="generator" content="docfx 2.48.0.0">
-
- <link rel="shortcut icon" href="../favicon.ico">
- <link rel="stylesheet" href="../styles/docfx.vendor.css">
- <link rel="stylesheet" href="../styles/docfx.css">
- <link rel="stylesheet" href="../styles/main.css">
- <link rel="stylesheet" href="../styles/fix.css">
- <link href="https://fonts.googleapis.com/css?family=Roboto" rel="stylesheet">
- <meta property="docfx:navrel" content="../toc.html">
- <meta property="docfx:tocrel" content="toc.html">
-
- <meta property="docfx:rel" content="../">
- <meta property="docfx:newtab" content="true">
- </head> <body data-spy="scroll" data-target="#affix" data-offset="120">
- <div id="wrapper">
- <header>
-
- <nav id="autocollapse" class="navbar navbar-inverse ng-scope" role="navigation">
- <div class="container">
- <div class="navbar-header">
- <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
- <span class="sr-only">Toggle navigation</span>
- <span class="icon-bar"></span>
- <span class="icon-bar"></span>
- <span class="icon-bar"></span>
- </button>
-
- <a class="navbar-brand" href="../index.html">
- <img id="logo" class="svg" src="../logo.svg" alt="">
- </a>
- </div>
- <div class="collapse navbar-collapse" id="navbar">
- <form class="navbar-form navbar-right" role="search" id="search">
- <div class="form-group">
- <input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
- </div>
- </form>
- </div>
- </div>
- </nav>
-
- <div class="subnav navbar navbar-default">
- <div class="container hide-when-search" id="breadcrumb">
- <ul class="breadcrumb">
- <li></li>
- </ul>
- </div>
- </div>
- </header>
- <div class="container body-content">
-
- <div id="search-results">
- <div class="search-list"></div>
- <div class="sr-items">
- <p><i class="glyphicon glyphicon-refresh index-loading"></i></p>
- </div>
- <ul id="pagination"></ul>
- </div>
- </div>
- <div role="main" class="container body-content hide-when-search">
-
- <div class="sidenav hide-when-search">
- <a class="btn toc-toggle collapse" data-toggle="collapse" href="#sidetoggle" aria-expanded="false" aria-controls="sidetoggle">Show / Hide Table of Contents</a>
- <div class="sidetoggle collapse" id="sidetoggle">
- <div id="sidetoc"></div>
- </div>
- </div>
- <div class="article row grid-right">
- <div class="col-md-10">
- <article class="content wrap" id="_content" data-uid="articles.start.user">
- <h1 id="installing-bsipa">Installing BSIPA</h1>
-
- <div class="NOTE"><h5>Note</h5><p>This guide assumes that you are starting completely fresh.</p>
- </div>
- <ol>
- <li><p>Grab a release from the GitHub <a href="https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded/releases">Releases page</a>.
- Make sure to download one of the <code>BSIPA-*.zip</code>s, as <code>ModList.zip</code> contains the Beat Saber mod for showing your mods in-game, not the loader itself.</p>
- <div class="NOTE"><h5>Note</h5><p>The specific ZIP you need to download varies on the game you will be patching. For example, if you are patching Beat Saber, you will need the file
- <code>BSIPA-x64-Net4.zip</code>. This is because Beat Saber is a 64 bit game running .NET 4. If you are patching Muse Dash, however, you nee the file
- <code>BSIPA-x86-Net3.zip</code>.</p>
- </div>
- <div class="TIP"><h5>Tip</h5><p>There are a few tricks for figuring out which file you need. If the game has a folder called <code>MonoBleedingEdge</code> in the install directory, then you
- need one of the <code>Net4</code> builds. To determine <em>which</em> build to use, right click on the game executable, go to the <code>Compatability</code> tab, check the
- <code>Run this program in compatability mode for</code> checkbox, and look and see if the dropdown has any Windows XP emulation options. If it does, the
- application is 32 bit, and you need to get one of the x86 builds. Otherwise, get one of the x64 builds.</p>
- <p>Make sure to uncheck that checkbox before leaving the menu.</p>
- </div>
- </li>
- <li><p>Extract the zip into your game installation directory. There should now be a folder named <code>IPA</code> and a file named <code>IPA.exe</code> in
- the same folder as the game executable.</p>
- <p>For example, if you are installing BSIPA in Beat Saber, it might look like this after extraction:</p>
- <p><img src="../images/install-extracted.png" alt="What your game directory may look like after extracting BSIPA"></p>
- </li>
- <li><p>Run <code>IPA.exe</code> by double clicking it. A console window should pop up, and eventually, a gold message asking you to press a key
- will appear. Here is an example of a successful installation:</p>
- <p><img src="../images/install-successful.png" alt="A successful installation"></p>
- <div class="NOTE"><h5>Note</h5><p>In some cases, this may fail, something like this: <img src="../images/install-failed.png" alt="A failing installation"></p>
- <p>In these cases, try dragging the game executable over <code>IPA.exe</code>.</p>
- </div>
- <p>After installing, your game directory should look something like this:
- <img src="../images/install-correct.png" alt="A properly installed BSIPA"></p>
- <div class="NOTE"><h5>Note</h5><p>At this point it is recommended to run the game once before continuing, to ensure that things are installed correctly.</p>
- <p>The first run should create a <code>UserData</code> folder with <code>Beat Saber IPA.json</code> and <code>Disabled Mods.json</code>, as well as a
- <code>Logs</code> folder with several subfolders with their own files. If these are created, then the installation was very
- likely successful.</p>
- </div>
- <div class="TIP"><h5>Tip</h5><p>If you are not installing BSIPA on Beat Saber, you probably want to go to the config at <code>UserData/Beat Saber IPA.json</code>
- and set both of the following to <code>false</code>:</p>
- <pre><code class="lang-json">{
- ...
- "Updates": {
- "AutoUpdate": false,
- "AutoCheckUpdates": false
- },
- ...
- }
- </code></pre></div>
- <div class="TIP"><h5>Tip</h5><p>Depending on the game, you may have to set the config member <code>GameAssemblies</code> to the names of the assemblies
- that the game uses for BSIPA to virtualize them properly.</p>
- <p>For Beat Saber distrobutions, this will be set according to the version that it was built for by default.
- Otherwise, it will contain just <code>Assembly-CSharp.dll</code> since most games use that default.</p>
- </div>
- </li>
- <li><p>From here, just place all of your plugins in the <code>Plugins</code> folder, and you're all set!</p>
- <p>Many plugins will come in a zip such that the root of the zip represents the game install directory, so all you may have to
- do is extract the plugin into the game installation folder.</p>
- </li>
- </ol>
- <div class="NOTE"><h5>Note</h5><p>For some reason, by default, Wine does not load DLLs in quite the same way that Windows does, causing issues with the injection.
- To make the injection work with Wine, <code>winhttp</code> has to have a DLL override set to <code>native,builtin</code>. This can be set either through
- Protontricks, or with the following <code>.reg</code> file.</p>
- <pre><code class="lang-reg">REGEDIT4
- [HKEY_CURRENT_USER\Software\Wine\DllOverrides]
- "winhttp"="native,builtin"
- </code></pre><p>For Steam there's a per-game Wine prefix under <code>compatdata</code>. In this case <code>SteamLibrary/steamapps/compatdata/620980/pfx/user.reg</code>.
- Changes to this file will likely be ovewritten when the game updates or if local files are validated through Steam.</p>
- </div>
- <p>Thats really all you have to do! The installation should persist across game updates for as long as <code>winhttp.dll</code> is present in
- the game directory, though your plugins will be moved to a different folder when it does update so things don't break horribly.</p>
- <h2 id="uninstalling">Uninstalling</h2>
- <p>Uninstalling is fairly simple, and can be done one of two ways:</p>
- <ol>
- <li>Drag the game executable over <code>IPA.exe</code> while holding <kbd>Alt</kbd>.</li>
- <li>Open a command prompt or Powershell terminal and run <code>.\IPA.exe -rn</code>. (see <a class="xref" href="command-line.html">The Command Line</a> for what those options mean)</li>
- </ol>
- </article>
- </div>
-
- <div class="hidden-sm col-md-2" role="complementary">
- <div class="sideaffix">
- <div class="contribution">
- <ul class="nav">
- <li>
- <a href="https://github.com/bsmg/BeatSaber-IPA-Reloaded/blob/d399137417d7a6caa57538cbec3d117cc2ea8f4d/docs/articles/start-user.md/#L1" class="contribution-link">Improve this Doc</a>
- </li>
- </ul>
- </div>
- <nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
- <!-- <p><a class="back-to-top" href="#top">Back to top</a><p> -->
- </nav>
- </div>
- </div>
- </div>
- </div>
-
- <footer>
- <div class="grad-bottom"></div>
- <div class="footer">
- <div class="container">
- <span class="pull-right">
- <a href="#top">Back to top</a>
- </span>
-
- <span>Generated by <strong>DocFX</strong></span>
- </div>
- </div>
- </footer>
- </div>
-
- <script type="text/javascript" src="../styles/docfx.vendor.js"></script>
- <script type="text/javascript" src="../styles/docfx.js"></script>
- <script type="text/javascript" src="../styles/main.js"></script>
- </body>
- </html>
|