Getting Started
+Starting out is quite simple. Just follow one of the guides to the left!
From 5e440fcb53bad6f5da7cf1cc8571b3312b0f7232 Mon Sep 17 00:00:00 2001
From: Anairkoen Schno This function will be called whenever attempting to resolve an image URI, to ensure that the image exists in the embedded assembly.MarkdownView()
@@ -406,7 +406,7 @@ public class MarkdownView : MonoBehaviour
Improve this Doc
- View Source
+ View Source
HasEmbeddedImage
Markdown
@@ -474,7 +474,7 @@ public class MarkdownView : MonoBehaviour
Improve this Doc
- View Source
+ View Source
rectTransform
@@ -534,7 +534,7 @@ public class MarkdownView : MonoBehaviour
Improve this Doc
NameAttribute(String)
@@ -286,7 +286,7 @@
Improve this Doc
- View Source
+ View Source
Name
@@ -344,7 +344,7 @@
Improve this Doc
PreferAttribute(String[])
@@ -287,7 +287,7 @@ public class PreferAttribute : Attribute, _Attribute
Improve this Doc
- View Source
+ View Source
PreferenceOrder
@@ -345,7 +345,7 @@ public class PreferAttribute : Attribute, _Attribute
Improve this Doc
TypeAttribute(String)
@@ -287,7 +287,7 @@ public class TypeAttribute : Attribute, _Attribute
Improve this Doc
- View Source
+ View Source
Extension
@@ -345,7 +345,7 @@ public class TypeAttribute : Attribute, _Attribute
Improve this Doc
GetProviderFor(String, String[])
@@ -184,7 +184,7 @@
Improve this Doc
- View Source
+ View Source
MakeLink<T>(IConfigProvider, Action<IConfigProvider, Ref<T>>)
@@ -256,7 +256,7 @@
Improve this Doc
- View Source
+ View Source
Register(Type)
@@ -290,7 +290,7 @@
Improve this Doc
- View Source
+ View Source
Register<T>()
@@ -323,7 +323,7 @@
Improve this Doc
- View Source
+ View Source
RemoveLinks(IConfigProvider)
@@ -363,7 +363,7 @@
Improve this Doc
Dynamic
@@ -131,7 +131,7 @@
Improve this Doc
- View Source
+ View Source
Filename
@@ -163,7 +163,7 @@
Improve this Doc
- View Source
+ View Source
HasChanged
@@ -194,7 +194,7 @@
Improve this Doc
- View Source
+ View Source
InMemoryChanged
@@ -225,7 +225,7 @@
Improve this Doc
- View Source
+ View Source
LastModified
@@ -259,7 +259,7 @@
Improve this Doc
- View Source
+ View Source
Load()
@@ -275,7 +275,7 @@
Improve this Doc
- View Source
+ View Source
Parse<T>()
@@ -323,7 +323,7 @@
Improve this Doc
- View Source
+ View Source
Save()
@@ -339,7 +339,7 @@
Improve this Doc
- View Source
+ View Source
Store<T>(T)
@@ -417,7 +417,7 @@
Improve this Doc
GetBool(String, String, Boolean, Boolean)
@@ -167,7 +167,7 @@ public interface IModPrefs
Improve this Doc
- View Source
+ View Source
GetFloat(String, String, Single, Boolean)
@@ -234,7 +234,7 @@ public interface IModPrefs
Improve this Doc
- View Source
+ View Source
GetInt(String, String, Int32, Boolean)
@@ -301,7 +301,7 @@ public interface IModPrefs
Improve this Doc
- View Source
+ View Source
GetString(String, String, String, Boolean)
@@ -368,7 +368,7 @@ public interface IModPrefs
Improve this Doc
- View Source
+ View Source
HasKey(String, String)
@@ -423,7 +423,7 @@ public interface IModPrefs
Improve this Doc
- View Source
+ View Source
SetBool(String, String, Boolean)
@@ -469,7 +469,7 @@ public interface IModPrefs
Improve this Doc
- View Source
+ View Source
SetFloat(String, String, Single)
@@ -515,7 +515,7 @@ public interface IModPrefs
Improve this Doc
- View Source
+ View Source
SetInt(String, String, Int32)
@@ -561,7 +561,7 @@ public interface IModPrefs
Improve this Doc
- View Source
+ View Source
SetString(String, String, String)
@@ -629,7 +629,7 @@ public interface IModPrefs
Improve this Doc
ModPrefs(PluginLoader.PluginMetadata)
@@ -169,7 +169,7 @@ public class ModPrefs : IModPrefs
Improve this Doc
- View Source
+ View Source
GetBool(String, String, Boolean, Boolean)
@@ -236,7 +236,7 @@ public class ModPrefs : IModPrefs
Improve this Doc
- View Source
+ View Source
GetFloat(String, String, Single, Boolean)
@@ -303,7 +303,7 @@ public class ModPrefs : IModPrefs
Improve this Doc
- View Source
+ View Source
GetInt(String, String, Int32, Boolean)
@@ -370,7 +370,7 @@ public class ModPrefs : IModPrefs
Improve this Doc
- View Source
+ View Source
GetString(String, String, String, Boolean)
@@ -437,7 +437,7 @@ public class ModPrefs : IModPrefs
Improve this Doc
- View Source
+ View Source
HasKey(String, String)
@@ -492,7 +492,7 @@ public class ModPrefs : IModPrefs
Improve this Doc
- View Source
+ View Source
SetBool(String, String, Boolean)
@@ -538,7 +538,7 @@ public class ModPrefs : IModPrefs
Improve this Doc
- View Source
+ View Source
SetFloat(String, String, Single)
@@ -584,7 +584,7 @@ public class ModPrefs : IModPrefs
Improve this Doc
- View Source
+ View Source
SetInt(String, String, Int32)
@@ -630,7 +630,7 @@ public class ModPrefs : IModPrefs
Improve this Doc
- View Source
+ View Source
SetString(String, String, String)
@@ -678,7 +678,7 @@ public class ModPrefs : IModPrefs
Improve this Doc
- View Source
+ View Source
IModPrefs.GetBool(String, String, Boolean, Boolean)
@@ -740,7 +740,7 @@ public class ModPrefs : IModPrefs
Improve this Doc
- View Source
+ View Source
IModPrefs.GetFloat(String, String, Single, Boolean)
@@ -802,7 +802,7 @@ public class ModPrefs : IModPrefs
Improve this Doc
- View Source
+ View Source
IModPrefs.GetInt(String, String, Int32, Boolean)
@@ -864,7 +864,7 @@ public class ModPrefs : IModPrefs
Improve this Doc
- View Source
+ View Source
IModPrefs.GetString(String, String, String, Boolean)
@@ -926,7 +926,7 @@ public class ModPrefs : IModPrefs
Improve this Doc
- View Source
+ View Source
IModPrefs.HasKey(String, String)
@@ -978,7 +978,7 @@ public class ModPrefs : IModPrefs
Improve this Doc
- View Source
+ View Source
IModPrefs.SetBool(String, String, Boolean)
@@ -1020,7 +1020,7 @@ public class ModPrefs : IModPrefs
Improve this Doc
- View Source
+ View Source
IModPrefs.SetFloat(String, String, Single)
@@ -1062,7 +1062,7 @@ public class ModPrefs : IModPrefs
Improve this Doc
- View Source
+ View Source
IModPrefs.SetInt(String, String, Int32)
@@ -1104,7 +1104,7 @@ public class ModPrefs : IModPrefs
Improve this Doc
- View Source
+ View Source
IModPrefs.SetString(String, String, String)
@@ -1172,7 +1172,7 @@ public class ModPrefs : IModPrefs
Improve this Doc
Called whenever a plugin is disabled.
@@ -860,7 +860,7 @@ public static PluginLoader.PluginInfo GetPluginFromModSaberName(string name)Improve this Doc - View Source + View SourceCalled whenever a plugin is enabled.
@@ -896,7 +896,7 @@ public static PluginLoader.PluginInfo GetPluginFromModSaberName(string name)Improve this DocLog(Level.Critical, e);
Improve this Doc
- View Source
+ View Source
Log(Level.Critical, message);
Improve this Doc
- View Source
+ View Source
Log(Level.Debug, e);
Improve this Doc
- View Source
+ View Source
Log(Level.Debug, message);
Improve this Doc
- View Source
+ View Source
Log(Level.Error, e);
Improve this Doc
- View Source
+ View Source
Log(Level.Error, message);
Improve this Doc
- View Source
+ View Source
Log(Level.Info, e);
Improve this Doc
- View Source
+ View Source
Log(Level.Info, message);
Improve this Doc
- View Source
+ View Source
Log(Level.Info, message);
Improve this Doc
- View Source
+ View Source
Log(Level.Info, message);
Improve this Doc
- View Source
+ View Source
Log(Level.Notice, e);
Improve this Doc
- View Source
+ View Source
Log(Level.Notice, message);
Improve this Doc
- View Source
+ View Source
Log(Level.Warning, e);
Improve this Doc
- View Source
+ View Source
Log(Level.Warning, message);
Improve this Doc
The StreamWriter that writes to the GZip file.
@@ -175,7 +175,7 @@ Improve this Doc - View Source + View SourceStarting out is quite simple. Just follow one of the guides to the left!
+
+
_nhP(3Svc2{AiB9@KW*ka
zqwF&eEmwNUH@w?elK6yQAd^GIF|$&qzsmsM09o2<0edk9d-70)B#A^;l90%3=`ez@
zuMnZq^0RT2O;UPUNkF`OYwXfBeyY7C?%TGoT>LeMlb!S5XI&&$kYeq`I2UV>>g?!?
z?{dh@PLJig-Y+TeC~!|Q4e;l2)MY~|`c!&uywovFwl+B+!edJYO;yBwHk 7@PAh+Fc BSIPA will automatically repatch the game when it updates, as long as 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, 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, For Steam there's a per-game Wine prefix under Create a file, Open Rebuild all. When you make a change somewhere in BSIPA itself, right click on }HGu;Bh-zfAJO={kY3!&Zc?gr`m3iUc
z_y`jMe&(PA0kT~)zzZ9uFO)FFFpp)Me;xqpri}}ogp`!=r~+J4>6FJt_tw@s%$vjK
zH6P=VlzKzkR@-p7tn4#>1tP_6QL1ijl=IA1!I*MbZQr*@{9xGrA1(M^nX{SBb1A
zk&_GQQmB>ZDYB*J)U5|)A@b03^~}iFG^KIBcQ8Ykqsw;VDrJ!~%5qj(zCS5VZsoO9
z{;933tjQ5S-OOprH(9ei-@$)V3S98JpJMX&=TbF}4aM9PP1T+u(ceHXN$I!zr&TM5
zYOB`hTO1?2k2OQ>Dt#wG7gi7BmZ;ztxTF8j@8(aj{}1S|{E^Ca!a*(ZJE%VYhpQ}E
zU(Q!K_fR_qK0bVEoWe1?V00aU+q3kpPJJ44{)t#>}3h?pq0n9T2
zuOtAK1RyBKLZ~{(Hk}ZvVQ`~iIMoDE3ksx|`&XGFsxAHBnnl01j(KGoQ?fg9Xh$4<
zYs~1@7}hp4V{0rEh-Cq>>~Fp*Q#&xDd$6pXiR0gg(bOaQzK
winhttp.dll
is present in the install directory.Notes for running under Wine
-winhttp
has to have a DLL override set to native,builtin
. This can be set either through
+winhttp
has to have a DLL override set to native,builtin
. This can be set either through
Protontricks, or with the following .reg
file.REGEDIT4
[HKEY_CURRENT_USER\Software\Wine\DllOverrides]
"winhttp"="native,builtin"
compatdata
. In this case SteamLibrary/steamapps/compatdata/620980/pfx/user.reg
.
Changes to this file will likely be ovewritten when the game updates or if local files are validated through Steam.Building
+Developing BSIPA itself
Prerequisites
-Building
+Building
git clone https://github.com/beat-saber-modding-group/BeatSaber-IPA-Reloaded.git --recursive
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.C:/Program Files (x86)/Steam/steamapps/common/Beat Saber/
BSIPA.sln
in Visual Studio.BSIPA.sln
in Visual Studio.x64
IPA
and click Build
. This sets up the output in path/to/solution/IPA/bin/<Configuration>
to be what
@@ -157,7 +158,7 @@ should reference the copy in there. When building for Release, it just uses the