You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

64 lines
2.6 KiB

5 years ago
6 years ago
6 years ago
  1. # BSIPA [![Build status](https://ci.appveyor.com/api/projects/status/fql702mky0d5bcky?svg=true)](https://ci.appveyor.com/project/nike4613/beatsaber-ipa-reloaded)
  2. Beat Saber IPA - The mod injector tailored for Beat Saber
  3. ## How To Install
  4. 1. Download a release (https://github.com/nike4613/BeatSaber-IPA-Reloaded/releases)
  5. 2. Extract the contents into the game folder
  6. 3. Run **IPA.exe**
  7. 4. Start the game as usual
  8. A console window should open before the game starts if the installation was successful.
  9. To disable this console window, pass `--no-console` to the game.
  10. ## How To Uninstall
  11. 1. Drag & drop the game exe onto **IPA.exe** while holding <kbd>Alt</kbd>
  12. - Or run `ipa -rn` in a command window
  13. ## Arguments
  14. `IPA.exe file-to-patch [arguments]`
  15. - `--launch`: Launch the game after patching
  16. - `--revert`: Revert changes made by IPA (= unpatch the game)
  17. - `--nowait`: Never keep the console open
  18. - See `-h` or `--help` for more options.
  19. Unconsumed arguments will be passed on to the game in case of `--launch`.
  20. ## How To Develop
  21. 1. Create a new **Class Library** C# project (.NET 4.6)
  22. 2. Download a release and add **IPA.Loader.dll** to your references
  23. 3. Implement `IBeatSaberPlugin` or `IEnhancedBeatSaberPlugin`
  24. 4. Build the project and copy the DLL into the Plugins folder of the game.
  25. See [Developing](https://github.com/nike4613/BeatSaber-IPA-Reloaded/wiki/Developing) for more information.
  26. ## How To Keep The Game Patched
  27. BSIPA will automatically repatch the game when it updates, as long as `winhttp.dll` is present in the install directory.
  28. ## Building
  29. ### Prerequisites
  30. - Microsoft Visual Studio 2017 or later
  31. - Tools for C/C++ (MSVC)
  32. - .NET 4.6 SDK and .NET 4.7.1 SDK
  33. ### Building
  34. 1. Clone with `git clone https://github.com/nike4613/BeatSaber-IPA-Reloaded.git --recursive`
  35. 2. Create a file, `bsinstalldir.txt` in the solution root. Do NOT create this in Visual Studio; VS adds a BOM at the begginning of the file that the tools used cannot read. It should contain the path to your Beat Saber installation, using forward slashes with a trailing slash. e.g.
  36. ```
  37. C:/Program Files (x86)/Steam/steamapps/common/Beat Saber/
  38. ```
  39. 3. Open `BSIPA.sln` in Visual Studio.
  40. 4. Choose the configuration `x64`
  41. 5. Rebuild all. Any time you make a change, ALWAYS Rebuild All.
  42. When building a Debug build, all referenced assemblies from Beat Saber will be copied from the install directory provided in `bsinstalldir.txt` into `Refs/`. Any new references should reference the copy in there. When building for Release, it just uses the files already in `Refs/`