├── lib ├── dnlib.dll ├── 0Harmony.dll ├── winhttp.dll ├── 0Harmony12.dll ├── Ionic.Zip.dll ├── IrisSkin4.dll ├── Skins │ ├── MSN.ssk │ ├── Page.ssk │ ├── Warm.ssk │ ├── Wave.ssk │ ├── mp10.ssk │ ├── Emerald.ssk │ ├── MacOS.ssk │ ├── OneBlue.ssk │ ├── OneCyan.ssk │ ├── RealOne.ssk │ ├── Silver.ssk │ ├── XPBlue.ssk │ ├── XPGreen.ssk │ ├── vista1.ssk │ ├── Calmness.ssk │ ├── DeepCyan.ssk │ ├── DeepGreen.ssk │ ├── Eighteen.ssk │ ├── Longhorn.ssk │ ├── Midsummer.ssk │ ├── OneGreen.ssk │ ├── OneOrange.ssk │ ├── SteelBlue.ssk │ ├── XPOrange.ssk │ ├── XPSilver.ssk │ ├── mp10green.ssk │ ├── mp10pink.ssk │ ├── DeepOrange.ssk │ ├── DiamondBlue.ssk │ ├── DiamondGreen.ssk │ ├── DiamondOlive.ssk │ ├── DiamondRed.ssk │ ├── GlassBrown.ssk │ ├── GlassGreen.ssk │ ├── GlassOrange.ssk │ ├── PageColor1.ssk │ ├── PageColor2.ssk │ ├── SilverColor1.ssk │ ├── SilverColor2.ssk │ ├── SportsBlack.ssk │ ├── SportsBlue.ssk │ ├── SportsCyan.ssk │ ├── SportsGreen.ssk │ ├── SportsOrange.ssk │ ├── SteelBlack.ssk │ ├── WarmColor1.ssk │ ├── WarmColor2.ssk │ ├── WarmColor3.ssk │ ├── WaveColor1.ssk │ ├── WaveColor2.ssk │ ├── mp10maroon.ssk │ ├── mp10mulberry.ssk │ ├── mp10purple.ssk │ ├── office2007.ssk │ ├── vista1_green.ssk │ ├── CalmnessColor1.ssk │ ├── CalmnessColor2.ssk │ ├── DiamondPurple.ssk │ ├── EighteenColor1.ssk │ ├── EighteenColor2.ssk │ ├── EmeraldColor1.ssk │ ├── EmeraldColor2.ssk │ ├── EmeraldColor3.ssk │ ├── Vista2_color1.ssk │ ├── Vista2_color2.ssk │ ├── Vista2_color3.ssk │ ├── Vista2_color4.ssk │ ├── Vista2_color5.ssk │ ├── Vista2_color6.ssk │ ├── Vista2_color7.ssk │ ├── MidsummerColor1.ssk │ ├── MidsummerColor2.ssk │ └── MidsummerColor3.ssk ├── System.Xml.dll ├── background.jpg ├── 0Harmony-1.2.dll ├── Newtonsoft.Json.dll ├── Unity2018 │ ├── UnityEngine.dll │ ├── UnityEngine.UI.dll │ ├── UnityEngine.AIModule.dll │ ├── UnityEngine.ARModule.dll │ ├── UnityEngine.UIModule.dll │ ├── UnityEngine.VRModule.dll │ ├── UnityEngine.XRModule.dll │ ├── UnityEngine.AudioModule.dll │ ├── UnityEngine.ClothModule.dll │ ├── UnityEngine.CoreModule.dll │ ├── UnityEngine.GridModule.dll │ ├── UnityEngine.IMGUIModule.dll │ ├── UnityEngine.InputModule.dll │ ├── UnityEngine.TLSModule.dll │ ├── UnityEngine.UNETModule.dll │ ├── UnityEngine.UmbraModule.dll │ ├── UnityEngine.VFXModule.dll │ ├── UnityEngine.VideoModule.dll │ ├── UnityEngine.WindModule.dll │ ├── UnityEngine.BaselibModule.dll │ ├── UnityEngine.PhysicsModule.dll │ ├── UnityEngine.TerrainModule.dll │ ├── UnityEngine.TilemapModule.dll │ ├── UnityEngine.AnimationModule.dll │ ├── UnityEngine.DirectorModule.dll │ ├── UnityEngine.GameCenterModule.dll │ ├── UnityEngine.HotReloadModule.dll │ ├── UnityEngine.Physics2DModule.dll │ ├── UnityEngine.ProfilerModule.dll │ ├── UnityEngine.SpriteMaskModule.dll │ ├── UnityEngine.StreamingModule.dll │ ├── UnityEngine.SubstanceModule.dll │ ├── UnityEngine.TextCoreModule.dll │ ├── UnityEngine.TimelineModule.dll │ ├── UnityEngine.UIElementsModule.dll │ ├── UnityEngine.VehiclesModule.dll │ ├── UnityEngine.AssetBundleModule.dll │ ├── UnityEngine.ClusterInputModule.dll │ ├── UnityEngine.LocalizationModule.dll │ ├── UnityEngine.SpriteShapeModule.dll │ ├── UnityEngine.StyleSheetsModule.dll │ ├── UnityEngine.UnityConnectModule.dll │ ├── UnityEngine.AccessibilityModule.dll │ ├── UnityEngine.ClusterRendererModule.dll │ ├── UnityEngine.CrashReportingModule.dll │ ├── UnityEngine.FileSystemHttpModule.dll │ ├── UnityEngine.ImageConversionModule.dll │ ├── UnityEngine.JSONSerializeModule.dll │ ├── UnityEngine.ParticleSystemModule.dll │ ├── UnityEngine.ScreenCaptureModule.dll │ ├── UnityEngine.SharedInternalsModule.dll │ ├── UnityEngine.SpatialTrackingModule.dll │ ├── UnityEngine.TerrainPhysicsModule.dll │ ├── UnityEngine.TextRenderingModule.dll │ ├── UnityEngine.UnityAnalyticsModule.dll │ ├── UnityEngine.UnityWebRequestModule.dll │ ├── UnityEngine.UnityTestProtocolModule.dll │ ├── UnityEngine.PerformanceReportingModule.dll │ ├── UnityEngine.UnityWebRequestAudioModule.dll │ ├── UnityEngine.UnityWebRequestWWWModule.dll │ ├── UnityEngine.UnityWebRequestTextureModule.dll │ └── UnityEngine.UnityWebRequestAssetBundleModule.dll ├── Unity2019 │ ├── UnityEngine.dll │ ├── UnityEngine.UI.dll │ ├── UnityEngine.AIModule.dll │ ├── UnityEngine.ARModule.dll │ ├── UnityEngine.UIModule.dll │ ├── UnityEngine.VRModule.dll │ ├── UnityEngine.XRModule.dll │ ├── UnityEngine.AudioModule.dll │ ├── UnityEngine.ClothModule.dll │ ├── UnityEngine.CoreModule.dll │ ├── UnityEngine.GridModule.dll │ ├── UnityEngine.IMGUIModule.dll │ ├── UnityEngine.InputModule.dll │ ├── UnityEngine.TLSModule.dll │ ├── UnityEngine.UNETModule.dll │ ├── UnityEngine.UmbraModule.dll │ ├── UnityEngine.VFXModule.dll │ ├── UnityEngine.VideoModule.dll │ ├── UnityEngine.WindModule.dll │ ├── UnityEngine.PhysicsModule.dll │ ├── UnityEngine.TerrainModule.dll │ ├── UnityEngine.TilemapModule.dll │ ├── UnityEngine.AndroidJNIModule.dll │ ├── UnityEngine.AnimationModule.dll │ ├── UnityEngine.DSPGraphModule.dll │ ├── UnityEngine.DirectorModule.dll │ ├── UnityEngine.GameCenterModule.dll │ ├── UnityEngine.HotReloadModule.dll │ ├── UnityEngine.Physics2DModule.dll │ ├── UnityEngine.ProfilerModule.dll │ ├── UnityEngine.SpriteMaskModule.dll │ ├── UnityEngine.StreamingModule.dll │ ├── UnityEngine.SubstanceModule.dll │ ├── UnityEngine.SubsystemsModule.dll │ ├── UnityEngine.TextCoreModule.dll │ ├── UnityEngine.UIElementsModule.dll │ ├── UnityEngine.UIWidgetsModule.dll │ ├── UnityEngine.VehiclesModule.dll │ ├── UnityEngine.AssetBundleModule.dll │ ├── UnityEngine.ClusterInputModule.dll │ ├── UnityEngine.InputLegacyModule.dll │ ├── UnityEngine.LocalizationModule.dll │ ├── UnityEngine.SpriteShapeModule.dll │ ├── UnityEngine.UnityConnectModule.dll │ ├── UnityEngine.AccessibilityModule.dll │ ├── UnityEngine.AutoStreamingModule.dll │ ├── UnityEngine.ClusterRendererModule.dll │ ├── UnityEngine.CrashReportingModule.dll │ ├── UnityEngine.ImageConversionModule.dll │ ├── UnityEngine.JSONSerializeModule.dll │ ├── UnityEngine.ParticleSystemModule.dll │ ├── UnityEngine.ScreenCaptureModule.dll │ ├── UnityEngine.SharedInternalsModule.dll │ ├── UnityEngine.TerrainPhysicsModule.dll │ ├── UnityEngine.TextRenderingModule.dll │ ├── UnityEngine.UnityAnalyticsModule.dll │ ├── UnityEngine.UnityWebRequestModule.dll │ ├── UnityEngine.UnityTestProtocolModule.dll │ ├── UnityEngine.PerformanceReportingModule.dll │ ├── UnityEngine.UnityWebRequestAudioModule.dll │ ├── UnityEngine.UnityWebRequestWWWModule.dll │ ├── UnityEngine.UnityWebRequestTextureModule.dll │ └── UnityEngine.UnityWebRequestAssetBundleModule.dll ├── Unity2021 │ ├── UnityEngine.dll │ ├── UnityEngine.UI.dll │ ├── UnityEngine.AIModule.dll │ ├── UnityEngine.ARModule.dll │ ├── UnityEngine.GIModule.dll │ ├── UnityEngine.UIModule.dll │ ├── UnityEngine.VRModule.dll │ ├── UnityEngine.XRModule.dll │ ├── UnityEngine.AudioModule.dll │ ├── UnityEngine.ClothModule.dll │ ├── UnityEngine.CoreModule.dll │ ├── UnityEngine.GridModule.dll │ ├── UnityEngine.IMGUIModule.dll │ ├── UnityEngine.InputModule.dll │ ├── UnityEngine.TLSModule.dll │ ├── UnityEngine.UNETModule.dll │ ├── UnityEngine.UmbraModule.dll │ ├── UnityEngine.VFXModule.dll │ ├── UnityEngine.VideoModule.dll │ ├── UnityEngine.WindModule.dll │ ├── UnityEngine.NVIDIAModule.dll │ ├── UnityEngine.PhysicsModule.dll │ ├── UnityEngine.TerrainModule.dll │ ├── UnityEngine.TilemapModule.dll │ ├── UnityEngine.AndroidJNIModule.dll │ ├── UnityEngine.AnimationModule.dll │ ├── UnityEngine.DSPGraphModule.dll │ ├── UnityEngine.DirectorModule.dll │ ├── UnityEngine.GameCenterModule.dll │ ├── UnityEngine.HotReloadModule.dll │ ├── UnityEngine.Physics2DModule.dll │ ├── UnityEngine.ProfilerModule.dll │ ├── UnityEngine.SpriteMaskModule.dll │ ├── UnityEngine.StreamingModule.dll │ ├── UnityEngine.SubstanceModule.dll │ ├── UnityEngine.SubsystemsModule.dll │ ├── UnityEngine.UIElementsModule.dll │ ├── UnityEngine.UIWidgetsModule.dll │ ├── UnityEngine.UnityCurlModule.dll │ ├── UnityEngine.VehiclesModule.dll │ ├── UnityEngine.AssetBundleModule.dll │ ├── UnityEngine.ClusterInputModule.dll │ ├── UnityEngine.InputLegacyModule.dll │ ├── UnityEngine.LocalizationModule.dll │ ├── UnityEngine.SpriteShapeModule.dll │ ├── UnityEngine.UnityConnectModule.dll │ ├── UnityEngine.AccessibilityModule.dll │ ├── UnityEngine.AutoStreamingModule.dll │ ├── UnityEngine.ClusterRendererModule.dll │ ├── UnityEngine.CrashReportingModule.dll │ ├── UnityEngine.ImageConversionModule.dll │ ├── UnityEngine.JSONSerializeModule.dll │ ├── UnityEngine.ParticleSystemModule.dll │ ├── UnityEngine.ScreenCaptureModule.dll │ ├── UnityEngine.SharedInternalsModule.dll │ ├── UnityEngine.TerrainPhysicsModule.dll │ ├── UnityEngine.TextRenderingModule.dll │ ├── UnityEngine.UnityAnalyticsModule.dll │ ├── UnityEngine.UnityWebRequestModule.dll │ ├── UnityEngine.UIElementsNativeModule.dll │ ├── UnityEngine.UnityTestProtocolModule.dll │ ├── UnityEngine.VirtualTexturingModule.dll │ ├── UnityEngine.PerformanceReportingModule.dll │ ├── UnityEngine.TextCoreFontEngineModule.dll │ ├── UnityEngine.TextCoreTextEngineModule.dll │ ├── UnityEngine.UnityAnalyticsCommonModule.dll │ ├── UnityEngine.UnityWebRequestAudioModule.dll │ ├── UnityEngine.UnityWebRequestWWWModule.dll │ ├── UnityEngine.UnityWebRequestTextureModule.dll │ ├── UnityEngine.UnityWebRequestAssetBundleModule.dll │ └── UnityEngine.RuntimeInitializeOnLoadManagerInitializerModule.dll ├── Assembly │ ├── Assembly-CSharp-PathfinderKingmaker.dll │ ├── Assembly-CSharp-SolastaCrownOfTheMagister.dll │ └── Assembly-CSharp-PathfinderWrathOfTheRighteous.dll └── UnityModManagerConfigLocal.xml ├── Updater ├── DUMM.ico ├── app.config ├── Properties │ ├── Settings.settings │ ├── Settings.Designer.cs │ ├── Resources.Designer.cs │ └── Resources.resx ├── Config.cs ├── Program.cs ├── Form.Designer.cs ├── Updater.csproj └── Utils.cs ├── UnityModManagerApp ├── DUMM.ico ├── images │ └── dragdropfiles.png ├── Program.cs ├── Utils.cs ├── Properties │ ├── Settings.settings │ ├── Settings.Designer.cs │ ├── Resources.Designer.cs │ └── Resources.resx ├── Log.cs ├── app.config ├── DownloadMod.cs ├── DownloadExtraFiles.Designer.cs ├── DownloadMod.Designer.cs ├── DownloadExtraFiles.cs ├── tools │ └── SteamHelper.cs ├── UnityModManagerApp.csproj └── Updates.cs ├── Console ├── App.config ├── Marks.cs ├── Starter.cs ├── Log.cs └── Console.csproj ├── UnityModManagerTests ├── BaseTests.cs ├── UI │ └── Utils │ │ └── IMGUIUtilTests.cs ├── UnityModManagerTests.csproj └── test.runsettings ├── UnityModManager ├── Doorstop.cs ├── Fixes.cs ├── Repository.cs ├── ModInfo.cs ├── UnityModManager.csproj ├── UI │ └── Utils │ │ ├── IMGUIUtil.cs │ │ └── AutoSizeFormControlUtil.cs ├── Properties │ ├── Resources.Designer.cs │ └── Resources.resx ├── ModSettings.cs ├── TextureReplacer.cs ├── Updates.cs ├── Config.cs └── Window_GUI.cs ├── Repository.json ├── README.md ├── ReferenceLibs_Assembly.props ├── ReferenceLibs.props ├── .gitattributes └── DearUnityModManager.sln /lib/dnlib.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/dnlib.dll -------------------------------------------------------------------------------- /Updater/DUMM.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/Updater/DUMM.ico -------------------------------------------------------------------------------- /lib/0Harmony.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/0Harmony.dll -------------------------------------------------------------------------------- /lib/winhttp.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/winhttp.dll -------------------------------------------------------------------------------- /lib/0Harmony12.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/0Harmony12.dll -------------------------------------------------------------------------------- /lib/Ionic.Zip.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Ionic.Zip.dll -------------------------------------------------------------------------------- /lib/IrisSkin4.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/IrisSkin4.dll -------------------------------------------------------------------------------- /lib/Skins/MSN.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/MSN.ssk -------------------------------------------------------------------------------- /lib/Skins/Page.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/Page.ssk -------------------------------------------------------------------------------- /lib/Skins/Warm.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/Warm.ssk -------------------------------------------------------------------------------- /lib/Skins/Wave.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/Wave.ssk -------------------------------------------------------------------------------- /lib/Skins/mp10.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/mp10.ssk -------------------------------------------------------------------------------- /lib/System.Xml.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/System.Xml.dll -------------------------------------------------------------------------------- /lib/background.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/background.jpg -------------------------------------------------------------------------------- /lib/0Harmony-1.2.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/0Harmony-1.2.dll -------------------------------------------------------------------------------- /lib/Skins/Emerald.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/Emerald.ssk -------------------------------------------------------------------------------- /lib/Skins/MacOS.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/MacOS.ssk -------------------------------------------------------------------------------- /lib/Skins/OneBlue.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/OneBlue.ssk -------------------------------------------------------------------------------- /lib/Skins/OneCyan.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/OneCyan.ssk -------------------------------------------------------------------------------- /lib/Skins/RealOne.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/RealOne.ssk -------------------------------------------------------------------------------- /lib/Skins/Silver.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/Silver.ssk -------------------------------------------------------------------------------- /lib/Skins/XPBlue.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/XPBlue.ssk -------------------------------------------------------------------------------- /lib/Skins/XPGreen.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/XPGreen.ssk -------------------------------------------------------------------------------- /lib/Skins/vista1.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/vista1.ssk -------------------------------------------------------------------------------- /lib/Newtonsoft.Json.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Newtonsoft.Json.dll -------------------------------------------------------------------------------- /lib/Skins/Calmness.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/Calmness.ssk -------------------------------------------------------------------------------- /lib/Skins/DeepCyan.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/DeepCyan.ssk -------------------------------------------------------------------------------- /lib/Skins/DeepGreen.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/DeepGreen.ssk -------------------------------------------------------------------------------- /lib/Skins/Eighteen.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/Eighteen.ssk -------------------------------------------------------------------------------- /lib/Skins/Longhorn.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/Longhorn.ssk -------------------------------------------------------------------------------- /lib/Skins/Midsummer.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/Midsummer.ssk -------------------------------------------------------------------------------- /lib/Skins/OneGreen.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/OneGreen.ssk -------------------------------------------------------------------------------- /lib/Skins/OneOrange.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/OneOrange.ssk -------------------------------------------------------------------------------- /lib/Skins/SteelBlue.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/SteelBlue.ssk -------------------------------------------------------------------------------- /lib/Skins/XPOrange.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/XPOrange.ssk -------------------------------------------------------------------------------- /lib/Skins/XPSilver.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/XPSilver.ssk -------------------------------------------------------------------------------- /lib/Skins/mp10green.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/mp10green.ssk -------------------------------------------------------------------------------- /lib/Skins/mp10pink.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/mp10pink.ssk -------------------------------------------------------------------------------- /lib/Skins/DeepOrange.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/DeepOrange.ssk -------------------------------------------------------------------------------- /lib/Skins/DiamondBlue.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/DiamondBlue.ssk -------------------------------------------------------------------------------- /lib/Skins/DiamondGreen.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/DiamondGreen.ssk -------------------------------------------------------------------------------- /lib/Skins/DiamondOlive.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/DiamondOlive.ssk -------------------------------------------------------------------------------- /lib/Skins/DiamondRed.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/DiamondRed.ssk -------------------------------------------------------------------------------- /lib/Skins/GlassBrown.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/GlassBrown.ssk -------------------------------------------------------------------------------- /lib/Skins/GlassGreen.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/GlassGreen.ssk -------------------------------------------------------------------------------- /lib/Skins/GlassOrange.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/GlassOrange.ssk -------------------------------------------------------------------------------- /lib/Skins/PageColor1.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/PageColor1.ssk -------------------------------------------------------------------------------- /lib/Skins/PageColor2.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/PageColor2.ssk -------------------------------------------------------------------------------- /lib/Skins/SilverColor1.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/SilverColor1.ssk -------------------------------------------------------------------------------- /lib/Skins/SilverColor2.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/SilverColor2.ssk -------------------------------------------------------------------------------- /lib/Skins/SportsBlack.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/SportsBlack.ssk -------------------------------------------------------------------------------- /lib/Skins/SportsBlue.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/SportsBlue.ssk -------------------------------------------------------------------------------- /lib/Skins/SportsCyan.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/SportsCyan.ssk -------------------------------------------------------------------------------- /lib/Skins/SportsGreen.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/SportsGreen.ssk -------------------------------------------------------------------------------- /lib/Skins/SportsOrange.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/SportsOrange.ssk -------------------------------------------------------------------------------- /lib/Skins/SteelBlack.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/SteelBlack.ssk -------------------------------------------------------------------------------- /lib/Skins/WarmColor1.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/WarmColor1.ssk -------------------------------------------------------------------------------- /lib/Skins/WarmColor2.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/WarmColor2.ssk -------------------------------------------------------------------------------- /lib/Skins/WarmColor3.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/WarmColor3.ssk -------------------------------------------------------------------------------- /lib/Skins/WaveColor1.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/WaveColor1.ssk -------------------------------------------------------------------------------- /lib/Skins/WaveColor2.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/WaveColor2.ssk -------------------------------------------------------------------------------- /lib/Skins/mp10maroon.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/mp10maroon.ssk -------------------------------------------------------------------------------- /lib/Skins/mp10mulberry.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/mp10mulberry.ssk -------------------------------------------------------------------------------- /lib/Skins/mp10purple.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/mp10purple.ssk -------------------------------------------------------------------------------- /lib/Skins/office2007.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/office2007.ssk -------------------------------------------------------------------------------- /lib/Skins/vista1_green.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/vista1_green.ssk -------------------------------------------------------------------------------- /UnityModManagerApp/DUMM.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/UnityModManagerApp/DUMM.ico -------------------------------------------------------------------------------- /lib/Skins/CalmnessColor1.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/CalmnessColor1.ssk -------------------------------------------------------------------------------- /lib/Skins/CalmnessColor2.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/CalmnessColor2.ssk -------------------------------------------------------------------------------- /lib/Skins/DiamondPurple.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/DiamondPurple.ssk -------------------------------------------------------------------------------- /lib/Skins/EighteenColor1.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/EighteenColor1.ssk -------------------------------------------------------------------------------- /lib/Skins/EighteenColor2.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/EighteenColor2.ssk -------------------------------------------------------------------------------- /lib/Skins/EmeraldColor1.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/EmeraldColor1.ssk -------------------------------------------------------------------------------- /lib/Skins/EmeraldColor2.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/EmeraldColor2.ssk -------------------------------------------------------------------------------- /lib/Skins/EmeraldColor3.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/EmeraldColor3.ssk -------------------------------------------------------------------------------- /lib/Skins/Vista2_color1.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/Vista2_color1.ssk -------------------------------------------------------------------------------- /lib/Skins/Vista2_color2.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/Vista2_color2.ssk -------------------------------------------------------------------------------- /lib/Skins/Vista2_color3.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/Vista2_color3.ssk -------------------------------------------------------------------------------- /lib/Skins/Vista2_color4.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/Vista2_color4.ssk -------------------------------------------------------------------------------- /lib/Skins/Vista2_color5.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/Vista2_color5.ssk -------------------------------------------------------------------------------- /lib/Skins/Vista2_color6.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/Vista2_color6.ssk -------------------------------------------------------------------------------- /lib/Skins/Vista2_color7.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/Vista2_color7.ssk -------------------------------------------------------------------------------- /lib/Skins/MidsummerColor1.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/MidsummerColor1.ssk -------------------------------------------------------------------------------- /lib/Skins/MidsummerColor2.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/MidsummerColor2.ssk -------------------------------------------------------------------------------- /lib/Skins/MidsummerColor3.ssk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Skins/MidsummerColor3.ssk -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.UI.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.UI.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.UI.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.UI.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.UI.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.UI.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.AIModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.AIModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.ARModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.ARModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.UIModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.UIModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.VRModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.VRModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.XRModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.XRModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.AIModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.AIModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.ARModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.ARModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.UIModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.UIModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.VRModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.VRModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.XRModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.XRModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.AIModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.AIModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.ARModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.ARModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.GIModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.GIModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.UIModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.UIModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.VRModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.VRModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.XRModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.XRModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.AudioModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.AudioModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.ClothModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.ClothModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.CoreModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.CoreModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.GridModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.GridModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.IMGUIModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.IMGUIModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.InputModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.InputModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.TLSModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.TLSModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.UNETModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.UNETModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.UmbraModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.UmbraModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.VFXModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.VFXModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.VideoModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.VideoModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.WindModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.WindModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.AudioModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.AudioModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.ClothModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.ClothModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.CoreModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.CoreModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.GridModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.GridModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.IMGUIModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.IMGUIModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.InputModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.InputModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.TLSModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.TLSModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.UNETModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.UNETModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.UmbraModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.UmbraModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.VFXModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.VFXModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.VideoModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.VideoModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.WindModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.WindModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.AudioModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.AudioModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.ClothModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.ClothModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.CoreModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.CoreModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.GridModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.GridModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.IMGUIModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.IMGUIModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.InputModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.InputModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.TLSModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.TLSModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.UNETModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.UNETModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.UmbraModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.UmbraModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.VFXModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.VFXModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.VideoModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.VideoModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.WindModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.WindModule.dll -------------------------------------------------------------------------------- /UnityModManagerApp/images/dragdropfiles.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/UnityModManagerApp/images/dragdropfiles.png -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.BaselibModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.BaselibModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.PhysicsModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.PhysicsModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.TerrainModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.TerrainModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.TilemapModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.TilemapModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.PhysicsModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.PhysicsModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.TerrainModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.TerrainModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.TilemapModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.TilemapModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.NVIDIAModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.NVIDIAModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.PhysicsModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.PhysicsModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.TerrainModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.TerrainModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.TilemapModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.TilemapModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.AnimationModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.AnimationModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.DirectorModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.DirectorModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.GameCenterModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.GameCenterModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.HotReloadModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.HotReloadModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.Physics2DModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.Physics2DModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.ProfilerModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.ProfilerModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.SpriteMaskModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.SpriteMaskModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.StreamingModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.StreamingModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.SubstanceModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.SubstanceModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.TextCoreModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.TextCoreModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.TimelineModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.TimelineModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.UIElementsModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.UIElementsModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.VehiclesModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.VehiclesModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.AndroidJNIModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.AndroidJNIModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.AnimationModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.AnimationModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.DSPGraphModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.DSPGraphModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.DirectorModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.DirectorModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.GameCenterModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.GameCenterModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.HotReloadModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.HotReloadModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.Physics2DModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.Physics2DModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.ProfilerModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.ProfilerModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.SpriteMaskModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.SpriteMaskModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.StreamingModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.StreamingModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.SubstanceModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.SubstanceModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.SubsystemsModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.SubsystemsModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.TextCoreModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.TextCoreModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.UIElementsModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.UIElementsModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.UIWidgetsModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.UIWidgetsModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.VehiclesModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.VehiclesModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.AndroidJNIModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.AndroidJNIModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.AnimationModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.AnimationModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.DSPGraphModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.DSPGraphModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.DirectorModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.DirectorModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.GameCenterModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.GameCenterModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.HotReloadModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.HotReloadModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.Physics2DModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.Physics2DModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.ProfilerModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.ProfilerModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.SpriteMaskModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.SpriteMaskModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.StreamingModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.StreamingModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.SubstanceModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.SubstanceModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.SubsystemsModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.SubsystemsModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.UIElementsModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.UIElementsModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.UIWidgetsModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.UIWidgetsModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.UnityCurlModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.UnityCurlModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.VehiclesModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.VehiclesModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.AssetBundleModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.AssetBundleModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.ClusterInputModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.ClusterInputModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.LocalizationModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.LocalizationModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.SpriteShapeModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.SpriteShapeModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.StyleSheetsModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.StyleSheetsModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.UnityConnectModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.UnityConnectModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.AssetBundleModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.AssetBundleModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.ClusterInputModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.ClusterInputModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.InputLegacyModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.InputLegacyModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.LocalizationModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.LocalizationModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.SpriteShapeModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.SpriteShapeModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.UnityConnectModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.UnityConnectModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.AssetBundleModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.AssetBundleModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.ClusterInputModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.ClusterInputModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.InputLegacyModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.InputLegacyModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.LocalizationModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.LocalizationModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.SpriteShapeModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.SpriteShapeModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.UnityConnectModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.UnityConnectModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.AccessibilityModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.AccessibilityModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.ClusterRendererModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.ClusterRendererModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.CrashReportingModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.CrashReportingModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.FileSystemHttpModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.FileSystemHttpModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.ImageConversionModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.ImageConversionModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.JSONSerializeModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.JSONSerializeModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.ParticleSystemModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.ParticleSystemModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.ScreenCaptureModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.ScreenCaptureModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.SharedInternalsModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.SharedInternalsModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.SpatialTrackingModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.SpatialTrackingModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.TerrainPhysicsModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.TerrainPhysicsModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.TextRenderingModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.TextRenderingModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.UnityAnalyticsModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.UnityAnalyticsModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.UnityWebRequestModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.UnityWebRequestModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.AccessibilityModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.AccessibilityModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.AutoStreamingModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.AutoStreamingModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.ClusterRendererModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.ClusterRendererModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.CrashReportingModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.CrashReportingModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.ImageConversionModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.ImageConversionModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.JSONSerializeModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.JSONSerializeModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.ParticleSystemModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.ParticleSystemModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.ScreenCaptureModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.ScreenCaptureModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.SharedInternalsModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.SharedInternalsModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.TerrainPhysicsModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.TerrainPhysicsModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.TextRenderingModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.TextRenderingModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.UnityAnalyticsModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.UnityAnalyticsModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.UnityWebRequestModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.UnityWebRequestModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.AccessibilityModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.AccessibilityModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.AutoStreamingModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.AutoStreamingModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.ClusterRendererModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.ClusterRendererModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.CrashReportingModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.CrashReportingModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.ImageConversionModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.ImageConversionModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.JSONSerializeModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.JSONSerializeModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.ParticleSystemModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.ParticleSystemModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.ScreenCaptureModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.ScreenCaptureModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.SharedInternalsModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.SharedInternalsModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.TerrainPhysicsModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.TerrainPhysicsModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.TextRenderingModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.TextRenderingModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.UnityAnalyticsModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.UnityAnalyticsModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.UnityWebRequestModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.UnityWebRequestModule.dll -------------------------------------------------------------------------------- /lib/Assembly/Assembly-CSharp-PathfinderKingmaker.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Assembly/Assembly-CSharp-PathfinderKingmaker.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.UnityTestProtocolModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.UnityTestProtocolModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.UnityTestProtocolModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.UnityTestProtocolModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.UIElementsNativeModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.UIElementsNativeModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.UnityTestProtocolModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.UnityTestProtocolModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.VirtualTexturingModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.VirtualTexturingModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.PerformanceReportingModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.PerformanceReportingModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.UnityWebRequestAudioModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.UnityWebRequestAudioModule.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.UnityWebRequestWWWModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.UnityWebRequestWWWModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.PerformanceReportingModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.PerformanceReportingModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.UnityWebRequestAudioModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.UnityWebRequestAudioModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.UnityWebRequestWWWModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.UnityWebRequestWWWModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.PerformanceReportingModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.PerformanceReportingModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.TextCoreFontEngineModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.TextCoreFontEngineModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.TextCoreTextEngineModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.TextCoreTextEngineModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.UnityAnalyticsCommonModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.UnityAnalyticsCommonModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.UnityWebRequestAudioModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.UnityWebRequestAudioModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.UnityWebRequestWWWModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.UnityWebRequestWWWModule.dll -------------------------------------------------------------------------------- /Updater/app.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /lib/Assembly/Assembly-CSharp-SolastaCrownOfTheMagister.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Assembly/Assembly-CSharp-SolastaCrownOfTheMagister.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.UnityWebRequestTextureModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.UnityWebRequestTextureModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.UnityWebRequestTextureModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.UnityWebRequestTextureModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.UnityWebRequestTextureModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.UnityWebRequestTextureModule.dll -------------------------------------------------------------------------------- /lib/Assembly/Assembly-CSharp-PathfinderWrathOfTheRighteous.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Assembly/Assembly-CSharp-PathfinderWrathOfTheRighteous.dll -------------------------------------------------------------------------------- /lib/Unity2018/UnityEngine.UnityWebRequestAssetBundleModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2018/UnityEngine.UnityWebRequestAssetBundleModule.dll -------------------------------------------------------------------------------- /lib/Unity2019/UnityEngine.UnityWebRequestAssetBundleModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2019/UnityEngine.UnityWebRequestAssetBundleModule.dll -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.UnityWebRequestAssetBundleModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.UnityWebRequestAssetBundleModule.dll -------------------------------------------------------------------------------- /Console/App.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /lib/Unity2021/UnityEngine.RuntimeInitializeOnLoadManagerInitializerModule.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/legendaryhero1981/Dear-Unity-Mod-Manager/HEAD/lib/Unity2021/UnityEngine.RuntimeInitializeOnLoadManagerInitializerModule.dll -------------------------------------------------------------------------------- /Console/Marks.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | namespace UnityModManagerNet.Marks 7 | { 8 | public static class IsDirty 9 | { 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /UnityModManagerTests/BaseTests.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.VisualStudio.TestTools.UnitTesting; 2 | 3 | namespace UnityModManagerTests 4 | { 5 | public abstract class BaseTests 6 | { 7 | public TestContext TestContext { get; set; } 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /UnityModManager/Doorstop.cs: -------------------------------------------------------------------------------- 1 | using JetBrains.Annotations; 2 | 3 | namespace Doorstop; 4 | 5 | [UsedImplicitly] 6 | public class Entrypoint 7 | { 8 | [UsedImplicitly] 9 | public static void Start() 10 | { 11 | UnityModManagerNet.UnityModManager.Main(); 12 | } 13 | } -------------------------------------------------------------------------------- /Updater/Properties/Settings.settings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Repository.json: -------------------------------------------------------------------------------- 1 | { 2 | "Releases": 3 | [ 4 | { 5 | "Id": "UnityModManager", 6 | "Version": "0.27.10.65", 7 | "DownloadUrl": "https://github.com/legendaryhero1981/Dear-Unity-Mod-Manager/releases/download/V0.27.10.65/DearUnityModManager.zip" 8 | } 9 | ] 10 | } 11 | -------------------------------------------------------------------------------- /Console/Starter.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | namespace UnityModManagerNet.Injection 7 | { 8 | public class UnityModManagerStarter 9 | { 10 | public static void Start() 11 | { 12 | Injector.Run(); 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /UnityModManagerApp/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Windows.Forms; 3 | 4 | namespace UnityModManagerNet.Installer 5 | { 6 | internal static class Program 7 | { 8 | [STAThread] 9 | private static void Main() 10 | { 11 | Application.EnableVisualStyles(); 12 | Application.SetCompatibleTextRenderingDefault(false); 13 | Application.Run(new UnityModManagerForm()); 14 | } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Updater/Config.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace UnityModManagerNet.Updater 4 | { 5 | public class Config 6 | { 7 | public string Repository; 8 | } 9 | 10 | public class Repository 11 | { 12 | [Serializable] 13 | public class Release 14 | { 15 | public string Id; 16 | public string Version; 17 | public string DownloadUrl; 18 | } 19 | 20 | public Release[] Releases; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Updater/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Windows.Forms; 3 | 4 | namespace UnityModManagerNet.Updater 5 | { 6 | internal static class Program 7 | { 8 | [STAThread] 9 | private static void Main() 10 | { 11 | Application.EnableVisualStyles(); 12 | Application.SetCompatibleTextRenderingDefault(false); 13 | var form = new UpdaterForm(); 14 | Application.Run(form); 15 | //form.DoFormClosed(); 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Dear Unity Mod Manager 2 | #### 亲爱的Unity引擎类游戏MOD管理器,主要功能是能够让原本不支持或未开放MOD功能的Unity游戏支持MOD。 3 | 4 | # 5 | # 目前版本 6 | # v0.27.10.65 7 | 8 | # 9 | # 此项目使用到的第三方类库有: 10 | - [unity-mod-manager](https://github.com/newman55/unity-mod-manager) 11 | - [Harmony](https://github.com/pardeike/Harmony) 12 | - [HarmonyProxy](https://github.com/spacehamster/HarmonyProxy) 13 | - [UnityDoorstop](https://github.com/NeighTools/UnityDoorstop) 14 | - [dnlib](https://github.com/0xd4d/dnlib) 15 | - [Json.NET](https://github.com/JamesNK/Newtonsoft.Json) 16 | - [TinyJson](https://github.com/zanders3/json) 17 | - [Ionic.Zip](https://archive.codeplex.com/?p=dotnetzip) 18 | 19 | # 20 | # 特别感谢: 21 | - [newman55](https://github.com/newman55) 开发了UMM原始版本! 22 | -------------------------------------------------------------------------------- /UnityModManagerApp/Utils.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.IO; 3 | 4 | namespace UnityModManagerNet.Installer 5 | { 6 | public class Utils : ConsoleInstaller.Utils 7 | { 8 | public static Dictionary GetMatchedFiles(string path, string regex, Dictionary defaults = null) 9 | { 10 | var results = defaults is {Count: > 0} ? new Dictionary(defaults) : new Dictionary(); 11 | var directoryInfo = new DirectoryInfo(path); 12 | foreach (var fileInfo in directoryInfo.GetFiles(regex)) 13 | results[Path.GetFileNameWithoutExtension(fileInfo.FullName)] = fileInfo.FullName; 14 | return results; 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /ReferenceLibs_Assembly.props: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | ..\lib\Assembly\Assembly-CSharp-PathfinderKingmaker.dll 5 | False 6 | PathfinderKingmaker 7 | 8 | 9 | ..\lib\Assembly\Assembly-CSharp-PathfinderWrathOfTheRighteous.dll 10 | False 11 | PathfinderWrathOfTheRighteous 12 | 13 | 14 | ..\lib\Assembly\Assembly-CSharp-SolastaCrownOfTheMagister.dll 15 | False 16 | SolastaCrown 17 | 18 | 19 | -------------------------------------------------------------------------------- /UnityModManager/Fixes.cs: -------------------------------------------------------------------------------- 1 | using HarmonyLib; 2 | using System; 3 | using System.Reflection; 4 | 5 | namespace UnityModManagerNet; 6 | 7 | static class Fixes 8 | { 9 | public static void Apply() 10 | { 11 | if (Environment.Version >= new Version(4, 0)) return; 12 | var harmony = new Harmony(nameof(UnityModManager)); 13 | var original = typeof(Assembly).GetMethod(nameof(Assembly.GetTypes), BindingFlags.Instance | BindingFlags.Public, null, new Type[0], new ParameterModifier[0]); 14 | var prefix = typeof(Fixes).GetMethod(nameof(Prefix_GetTypes), BindingFlags.Static | BindingFlags.NonPublic); 15 | harmony.Patch(original, new HarmonyMethod(prefix)); 16 | } 17 | 18 | static bool Prefix_GetTypes(Assembly __instance, ref Type[] __result) 19 | { 20 | if (!__instance.FullName.StartsWith("UnityModManager")) return true; 21 | __result = new Type[0]; 22 | return false; 23 | } 24 | } -------------------------------------------------------------------------------- /ReferenceLibs.props: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | ..\lib\0Harmony.dll 11 | False 12 | 13 | 14 | ..\lib\dnlib.dll 15 | False 16 | 17 | 18 | ..\lib\Ionic.Zip.dll 19 | False 20 | 21 | 22 | ..\lib\Newtonsoft.Json.dll 23 | False 24 | 25 | 26 | -------------------------------------------------------------------------------- /UnityModManagerTests/UI/Utils/IMGUIUtilTests.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Microsoft.VisualStudio.TestTools.UnitTesting; 3 | using Microsoft.VisualStudio.TestTools.UnitTesting.Logging; 4 | using UnityModManagerTests; 5 | 6 | namespace UnityModManagerNet.UI.Utils.Tests 7 | { 8 | [TestClass()] 9 | public class ImguiUtilTests : BaseTests 10 | { 11 | [TestMethod()] 12 | public void FileToBase64StringTest() 13 | { 14 | var imgFilePath = (string) TestContext.Properties["ImguiUtilTests.imgFilePath"]; 15 | Logger.LogMessage(imgFilePath); 16 | var base64String = ImguiUtil.FileToBase64String(imgFilePath); 17 | Assert.IsNotNull(base64String); 18 | } 19 | 20 | [TestMethod()] 21 | public void Base64StringToTexture2DTest() 22 | { 23 | var texture2D = ImguiUtil.Base64StringToTexture2D(""); 24 | Assert.IsNotNull(texture2D); 25 | } 26 | } 27 | } -------------------------------------------------------------------------------- /UnityModManagerApp/Properties/Settings.settings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 微软雅黑, 9.75pt, style=Bold 7 | 8 | 9 | 微软雅黑, 14.25pt 10 | 11 | 12 | 微软雅黑, 15.75pt, style=Bold 13 | 14 | 15 | 微软雅黑, 20.25pt, style=Bold 16 | 17 | 18 | -------------------------------------------------------------------------------- /UnityModManager/Repository.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace UnityModManagerNet 4 | { 5 | public partial class UnityModManager 6 | { 7 | public class Repository 8 | { 9 | public Release[] Releases; 10 | 11 | [Serializable] 12 | public class Release : IEquatable 13 | { 14 | public string DownloadUrl; 15 | public string Id; 16 | public string Version; 17 | 18 | public bool Equals(Release other) 19 | { 20 | return Id.Equals(other.Id); 21 | } 22 | 23 | public override bool Equals(object obj) 24 | { 25 | if (ReferenceEquals(null, obj)) return false; 26 | return obj is Release obj2 && Equals(obj2); 27 | } 28 | 29 | public override int GetHashCode() 30 | { 31 | return Id.GetHashCode(); 32 | } 33 | } 34 | } 35 | } 36 | } -------------------------------------------------------------------------------- /Updater/Properties/Settings.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // 此代码由工具生成。 4 | // 运行时版本:4.0.30319.42000 5 | // 6 | // 对此文件的更改可能会导致不正确的行为,并且如果 7 | // 重新生成代码,这些更改将会丢失。 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace UnityModManagerNet.Updater.Properties { 12 | 13 | 14 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 15 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.1.0.0")] 16 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { 17 | 18 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); 19 | 20 | public static Settings Default { 21 | get { 22 | return defaultInstance; 23 | } 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /UnityModManagerApp/Log.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace UnityModManagerNet.Installer 4 | { 5 | public class Log : ConsoleInstaller.Log 6 | { 7 | public override void Write(string str, bool append = false) 8 | { 9 | if (append) 10 | { 11 | UnityModManagerForm.instance.statusLabel.Text += str; 12 | UnityModManagerForm.instance.statusLabel.ToolTipText += str; 13 | } 14 | else 15 | { 16 | UnityModManagerForm.instance.statusLabel.Text = str; 17 | UnityModManagerForm.instance.statusLabel.ToolTipText = str; 18 | if (firstLine) 19 | { 20 | firstLine = false; 21 | str = $"[{DateTime.Now.ToShortTimeString()}] {str}"; 22 | } 23 | else 24 | { 25 | str = $"\r\n[{DateTime.Now.ToShortTimeString()}] {str}"; 26 | } 27 | } 28 | 29 | UnityModManagerForm.instance.inputLog.AppendText(str); 30 | stream?.Write(str); 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /UnityModManagerTests/UnityModManagerTests.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | {E953E4AD-49FD-4BD8-AFD0-5EDA98DC10C1} 6 | Library 7 | 512 8 | UnityModManagerTests 9 | UnityModManagerTests 10 | net472 11 | latest 12 | False 13 | UnitTest 14 | 15 | 16 | none 17 | false 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /UnityModManagerApp/app.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 |
6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 微软雅黑, 9.75pt, style=Bold 14 | 15 | 16 | 微软雅黑, 14.25pt 17 | 18 | 19 | 微软雅黑, 15.75pt, style=Bold 20 | 21 | 22 | 微软雅黑, 20.25pt, style=Bold 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /UnityModManager/ModInfo.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace UnityModManagerNet 4 | { 5 | public partial class UnityModManager 6 | { 7 | public class ModInfo : IEquatable 8 | { 9 | public string Id; 10 | public string DisplayName; 11 | public string Author; 12 | public string Version; 13 | public string GameVersion; 14 | public string ManagerVersion; 15 | public string[] Requirements; 16 | public string[] LoadAfter; 17 | public string AssemblyName; 18 | public string EntryMethod; 19 | public string HomePage; 20 | public string Repository; 21 | public string ContentType; 22 | [NonSerialized] 23 | public bool IsCheat = true; 24 | /// 25 | /// [0.20.0.15] 26 | /// 27 | public string FreezeUI; 28 | 29 | public bool Equals(ModInfo other) 30 | { 31 | return Id.Equals(other?.Id); 32 | } 33 | 34 | public static implicit operator bool(ModInfo exists) 35 | { 36 | return exists != null; 37 | } 38 | 39 | public override bool Equals(object obj) 40 | { 41 | if (ReferenceEquals(null, obj)) return false; 42 | return obj is ModInfo modInfo && Equals(modInfo); 43 | } 44 | 45 | public override int GetHashCode() 46 | { 47 | return Id.GetHashCode(); 48 | } 49 | } 50 | } 51 | } -------------------------------------------------------------------------------- /UnityModManager/UnityModManager.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | {A1FCAE3E-523E-4E33-8860-DD39DDDF0F62} 6 | false 7 | Library 8 | 512 9 | net472 10 | latest 11 | UnityModManagerNet 12 | UnityModManager 13 | true 14 | 0.27.10.65 15 | 0.27.10.65 16 | 0.27.10.65 17 | 0.27.10.65 18 | 李允 19 | Legend 20 | Copyright © Legend 2011-$([System.DateTime]::Now.ToString('yyyy')) 21 | 亲爱的Unity游戏MOD管理器核心API类库 22 | $(Description) 23 | 24 | 25 | none 26 | false 27 | 28 | 29 | 30 | ResXFileCodeGenerator 31 | Resources.Designer.cs 32 | 33 | 34 | True 35 | True 36 | Resources.resx 37 | 38 | 39 | -------------------------------------------------------------------------------- /Console/Log.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.IO; 3 | 4 | namespace UnityModManagerNet.ConsoleInstaller 5 | { 6 | public class Log 7 | { 8 | public static Log Instance { get; set; } 9 | protected static bool firstLine = true; 10 | public const string fileLog = "Log.txt"; 11 | protected static StreamWriter stream; 12 | 13 | public static void Print(string str, bool append = false) 14 | { 15 | Instance.Write(str, append); 16 | } 17 | 18 | public static void Append(string str) 19 | { 20 | Print(str, true); 21 | } 22 | 23 | public static void Init() where T: Log 24 | { 25 | try 26 | { 27 | Instance = Activator.CreateInstance(); 28 | File.Delete(fileLog); 29 | stream = new StreamWriter(new FileStream(fileLog, FileMode.OpenOrCreate, FileAccess.Write)); 30 | stream.AutoFlush = true; 31 | } 32 | catch (UnauthorizedAccessException) 33 | { 34 | Print("写入错误,权限不足!请尝试以管理员身份运行此程序。"); 35 | } 36 | } 37 | 38 | public virtual void Write(string str, bool append = false) 39 | { 40 | if (append) 41 | { 42 | Console.Write(str); 43 | } 44 | else 45 | { 46 | if (firstLine) 47 | { 48 | firstLine = false; 49 | str = $"[{DateTime.Now.ToShortTimeString()}] {str}"; 50 | } 51 | else 52 | { 53 | str = $"\r\n[{DateTime.Now.ToShortTimeString()}] {str}"; 54 | } 55 | Console.Write(str); 56 | } 57 | 58 | stream?.Write(str); 59 | } 60 | } 61 | } 62 | -------------------------------------------------------------------------------- /UnityModManager/UI/Utils/IMGUIUtil.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.IO; 3 | 4 | using UnityEngine; 5 | 6 | using Logger = UnityModManagerNet.UnityModManager.Logger; 7 | 8 | namespace UnityModManagerNet.UI.Utils; 9 | 10 | public sealed class ImguiUtil 11 | { 12 | /// 13 | /// 将图片文件转换成Texture2D对象 14 | /// 15 | public static Texture2D FileToTexture2D(string path, int width, int height) 16 | { 17 | try 18 | { 19 | var texture2D = new Texture2D(width, height); 20 | using var fs = new FileStream(path, FileMode.Open, FileAccess.Read); 21 | var buffer = new byte[fs.Length]; 22 | fs.Read(buffer, 0, (int)fs.Length); 23 | texture2D.LoadImage(buffer); 24 | Logger.Log($"将文件{path}转换为Texture2D对象成功!"); 25 | return texture2D; 26 | } 27 | catch (Exception e) 28 | { 29 | Logger.Error($"将文件{path}转换为Texture2D对象失败!错误信息:{e.Message}"); 30 | return null; 31 | } 32 | } 33 | /// 34 | /// 将图片文件转换成base64编码文本 35 | /// 36 | public static string FileToBase64String(string path) 37 | { 38 | var base64String = ""; 39 | try 40 | { 41 | using var fs = new FileStream(path, FileMode.Open, FileAccess.Read); 42 | var buffer = new byte[fs.Length]; 43 | fs.Read(buffer, 0, (int)fs.Length); 44 | base64String = Convert.ToBase64String(buffer); 45 | Logger.Log($"获取当前图片base64为:{base64String}"); 46 | } 47 | catch (Exception e) 48 | { 49 | Logger.Error($"ImgToBase64String 转换失败:{e.Message}"); 50 | } 51 | return base64String; 52 | } 53 | 54 | /// 55 | /// 将base64编码文本转换成Texture2D对象 56 | /// 57 | public static Texture2D Base64StringToTexture2D(string base64) 58 | { 59 | var texture2D = new Texture2D(2, 2); 60 | texture2D.LoadImage(Convert.FromBase64String(base64)); 61 | return texture2D; 62 | } 63 | } -------------------------------------------------------------------------------- /Console/Console.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | {7151CE06-904E-485D-8BC3-A7174A9D5D29} 5 | false 6 | Exe 7 | 512 8 | net472 9 | latest 10 | UnityModManagerNet.ConsoleInstaller 11 | Console 12 | true 13 | 1.0.0.0 14 | 1.0.0.0 15 | 1.0.0.0 16 | 1.0.0.0 17 | 李允 18 | Legend 19 | Copyright © Legend 2011-$([System.DateTime]::Now.ToString('yyyy')) 20 | 亲爱的Unity游戏MOD管理器控制台程序 21 | $(Description) 22 | 23 | 24 | 25 | none 26 | false 27 | 28 | 29 | 30 | ..\lib\0Harmony.dll 31 | 32 | 33 | ..\lib\dnlib.dll 34 | 35 | 36 | ..\lib\Newtonsoft.Json.dll 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /UnityModManagerApp/DownloadMod.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.ComponentModel; 3 | using System.IO; 4 | using System.Net; 5 | using System.Text; 6 | using System.Windows.Forms; 7 | 8 | namespace UnityModManagerNet.Installer 9 | { 10 | public partial class DownloadMod : Form 11 | { 12 | public UnityModManager.Repository.Release Release; 13 | public string TempFilepath { get; private set; } 14 | 15 | public DownloadMod() 16 | { 17 | InitializeComponent(); 18 | } 19 | 20 | public DownloadMod(UnityModManager.Repository.Release release) 21 | { 22 | this.Release = release; 23 | InitializeComponent(); 24 | Start(); 25 | } 26 | 27 | private void Start() 28 | { 29 | try 30 | { 31 | var dir = Path.Combine(Path.GetTempPath(), "DearUnityModManager"); 32 | 33 | if (!Directory.Exists(dir)) Directory.CreateDirectory(dir); 34 | 35 | TempFilepath = Path.Combine(dir, $"{Release.Id}.zip"); 36 | status.Text = $@"正在下载 {Release.Id} {Release.Version} ……"; 37 | using var wc = new WebClient {Encoding = Encoding.UTF8}; 38 | wc.DownloadProgressChanged += Wc_DownloadProgressChanged; 39 | wc.DownloadFileCompleted += Wc_DownloadFileCompleted; 40 | wc.DownloadFileAsync(new Uri(Release.DownloadUrl), TempFilepath); 41 | } 42 | catch (Exception e) 43 | { 44 | status.Text = e.Message; 45 | ConsoleInstaller.Log.Print(e.Message); 46 | } 47 | } 48 | 49 | private void Wc_DownloadProgressChanged(object sender, DownloadProgressChangedEventArgs e) 50 | { 51 | progressBar.Value = e.ProgressPercentage; 52 | } 53 | 54 | private void Wc_DownloadFileCompleted(object sender, AsyncCompletedEventArgs e) 55 | { 56 | if (e.Error != null) 57 | { 58 | status.Text = e.Error.Message; 59 | ConsoleInstaller.Log.Print(e.Error.Message); 60 | return; 61 | } 62 | 63 | if (e.Cancelled) return; 64 | DialogResult = DialogResult.OK; 65 | Close(); 66 | } 67 | } 68 | } 69 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | ############################################################################### 2 | # Set default behavior to automatically normalize line endings. 3 | ############################################################################### 4 | * text=auto 5 | 6 | ############################################################################### 7 | # Set default behavior for command prompt diff. 8 | # 9 | # This is need for earlier builds of msysgit that does not have it on by 10 | # default for csharp files. 11 | # Note: This is only used by command line 12 | ############################################################################### 13 | #*.cs diff=csharp 14 | 15 | ############################################################################### 16 | # Set the merge driver for project and solution files 17 | # 18 | # Merging from the command prompt will add diff markers to the files if there 19 | # are conflicts (Merging from VS is not affected by the settings below, in VS 20 | # the diff markers are never inserted). Diff markers may cause the following 21 | # file extensions to fail to load in VS. An alternative would be to treat 22 | # these files as binary and thus will always conflict and require user 23 | # intervention with every merge. To do so, just uncomment the entries below 24 | ############################################################################### 25 | #*.sln merge=binary 26 | #*.csproj merge=binary 27 | #*.vbproj merge=binary 28 | #*.vcxproj merge=binary 29 | #*.vcproj merge=binary 30 | #*.dbproj merge=binary 31 | #*.fsproj merge=binary 32 | #*.lsproj merge=binary 33 | #*.wixproj merge=binary 34 | #*.modelproj merge=binary 35 | #*.sqlproj merge=binary 36 | #*.wwaproj merge=binary 37 | 38 | ############################################################################### 39 | # behavior for image files 40 | # 41 | # image files are treated as binary by default. 42 | ############################################################################### 43 | #*.jpg binary 44 | #*.png binary 45 | #*.gif binary 46 | 47 | ############################################################################### 48 | # diff behavior for common document formats 49 | # 50 | # Convert binary document formats to text before diffing them. This feature 51 | # is only available from the command line. Turn it on by uncommenting the 52 | # entries below. 53 | ############################################################################### 54 | #*.doc diff=astextplain 55 | #*.DOC diff=astextplain 56 | #*.docx diff=astextplain 57 | #*.DOCX diff=astextplain 58 | #*.dot diff=astextplain 59 | #*.DOT diff=astextplain 60 | #*.pdf diff=astextplain 61 | #*.PDF diff=astextplain 62 | #*.rtf diff=astextplain 63 | #*.RTF diff=astextplain 64 | -------------------------------------------------------------------------------- /Updater/Properties/Resources.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // 此代码由工具生成。 4 | // 运行时版本:4.0.30319.42000 5 | // 6 | // 对此文件的更改可能会导致不正确的行为,并且如果 7 | // 重新生成代码,这些更改将会丢失。 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace UnityModManagerNet.Updater.Properties { 12 | using System; 13 | 14 | 15 | /// 16 | /// 一个强类型的资源类,用于查找本地化的字符串等。 17 | /// 18 | // 此类是由 StronglyTypedResourceBuilder 19 | // 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 20 | // 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen 21 | // (以 /str 作为命令选项),或重新生成 VS 项目。 22 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")] 23 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 24 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 25 | internal class Resources { 26 | 27 | private static global::System.Resources.ResourceManager resourceMan; 28 | 29 | private static global::System.Globalization.CultureInfo resourceCulture; 30 | 31 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] 32 | internal Resources() { 33 | } 34 | 35 | /// 36 | /// 返回此类使用的缓存的 ResourceManager 实例。 37 | /// 38 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 39 | internal static global::System.Resources.ResourceManager ResourceManager { 40 | get { 41 | if (object.ReferenceEquals(resourceMan, null)) { 42 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("UnityModManagerNet.Updater.Properties.Resources", typeof(Resources).Assembly); 43 | resourceMan = temp; 44 | } 45 | return resourceMan; 46 | } 47 | } 48 | 49 | /// 50 | /// 重写当前线程的 CurrentUICulture 属性 51 | /// 重写当前线程的 CurrentUICulture 属性。 52 | /// 53 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 54 | internal static global::System.Globalization.CultureInfo Culture { 55 | get { 56 | return resourceCulture; 57 | } 58 | set { 59 | resourceCulture = value; 60 | } 61 | } 62 | } 63 | } 64 | -------------------------------------------------------------------------------- /UnityModManagerApp/DownloadExtraFiles.Designer.cs: -------------------------------------------------------------------------------- 1 | namespace UnityModManagerNet.Installer 2 | { 3 | partial class DownloadExtraFiles 4 | { 5 | /// 6 | /// Обязательная переменная конструктора. 7 | /// 8 | private System.ComponentModel.IContainer components = null; 9 | 10 | /// 11 | /// Освободить все используемые ресурсы. 12 | /// 13 | /// истинно, если управляемый ресурс должен быть удален; иначе ложно. 14 | protected override void Dispose(bool disposing) 15 | { 16 | if (disposing && (components != null)) 17 | { 18 | components.Dispose(); 19 | } 20 | base.Dispose(disposing); 21 | } 22 | 23 | #region Код, автоматически созданный конструктором форм Windows 24 | 25 | /// 26 | /// Требуемый метод для поддержки конструктора — не изменяйте 27 | /// содержимое этого метода с помощью редактора кода. 28 | /// 29 | private void InitializeComponent() 30 | { 31 | this.status = new System.Windows.Forms.Label(); 32 | this.progressBar1 = new System.Windows.Forms.ProgressBar(); 33 | this.SuspendLayout(); 34 | // 35 | // status 36 | // 37 | this.status.Location = new System.Drawing.Point(12, 9); 38 | this.status.Name = "status"; 39 | this.status.Size = new System.Drawing.Size(306, 43); 40 | this.status.TabIndex = 2; 41 | this.status.Text = "下载中……"; 42 | this.status.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; 43 | // 44 | // progressBar1 45 | // 46 | this.progressBar1.Location = new System.Drawing.Point(12, 55); 47 | this.progressBar1.Name = "progressBar1"; 48 | this.progressBar1.Size = new System.Drawing.Size(306, 23); 49 | this.progressBar1.TabIndex = 3; 50 | // 51 | // DownloadExtraFiles 52 | // 53 | this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); 54 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 55 | this.ClientSize = new System.Drawing.Size(330, 94); 56 | this.Controls.Add(this.progressBar1); 57 | this.Controls.Add(this.status); 58 | this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; 59 | this.MaximizeBox = false; 60 | this.MinimizeBox = false; 61 | this.Name = "DownloadExtraFiles"; 62 | this.Text = "附加文件"; 63 | this.ResumeLayout(false); 64 | 65 | } 66 | 67 | #endregion 68 | 69 | public System.Windows.Forms.Label status; 70 | private System.Windows.Forms.ProgressBar progressBar1; 71 | } 72 | } 73 | 74 | -------------------------------------------------------------------------------- /Updater/Form.Designer.cs: -------------------------------------------------------------------------------- 1 | namespace UnityModManagerNet.Updater 2 | { 3 | partial class UpdaterForm 4 | { 5 | /// 6 | /// Обязательная переменная конструктора. 7 | /// 8 | private System.ComponentModel.IContainer components = null; 9 | 10 | /// 11 | /// Освободить все используемые ресурсы. 12 | /// 13 | /// истинно, если управляемый ресурс должен быть удален; иначе ложно. 14 | protected override void Dispose(bool disposing) 15 | { 16 | if (disposing && (components != null)) 17 | { 18 | components.Dispose(); 19 | } 20 | base.Dispose(disposing); 21 | } 22 | 23 | #region Form初始化 24 | private void InitializeComponent() 25 | { 26 | System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(UpdaterForm)); 27 | this.progressBar1 = new System.Windows.Forms.ProgressBar(); 28 | this.status = new System.Windows.Forms.Label(); 29 | this.SuspendLayout(); 30 | // 31 | // progressBar1 32 | // 33 | this.progressBar1.Location = new System.Drawing.Point(12, 64); 34 | this.progressBar1.Name = "progressBar1"; 35 | this.progressBar1.Size = new System.Drawing.Size(306, 21); 36 | this.progressBar1.TabIndex = 0; 37 | // 38 | // status 39 | // 40 | this.status.Location = new System.Drawing.Point(12, 14); 41 | this.status.Name = "status"; 42 | this.status.Size = new System.Drawing.Size(306, 40); 43 | this.status.TabIndex = 1; 44 | this.status.Text = "下载中……"; 45 | this.status.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; 46 | // 47 | // UpdaterForm 48 | // 49 | this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); 50 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 51 | this.ClientSize = new System.Drawing.Size(334, 111); 52 | this.Controls.Add(this.status); 53 | this.Controls.Add(this.progressBar1); 54 | this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; 55 | this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); 56 | this.MaximizeBox = false; 57 | this.MinimizeBox = false; 58 | this.Name = "UpdaterForm"; 59 | this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; 60 | this.Text = "亲爱的Unity游戏MOD管理器更新程序"; 61 | this.ResumeLayout(false); 62 | 63 | } 64 | 65 | #endregion 66 | 67 | private System.Windows.Forms.ProgressBar progressBar1; 68 | public System.Windows.Forms.Label status; 69 | } 70 | } 71 | 72 | -------------------------------------------------------------------------------- /UnityModManager/Properties/Resources.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // 此代码由工具生成。 4 | // 运行时版本:4.0.30319.42000 5 | // 6 | // 对此文件的更改可能会导致不正确的行为,并且如果 7 | // 重新生成代码,这些更改将会丢失。 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace UnityModManagerNet.Properties { 12 | using System; 13 | 14 | 15 | /// 16 | /// 一个强类型的资源类,用于查找本地化的字符串等。 17 | /// 18 | // 此类是由 StronglyTypedResourceBuilder 19 | // 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 20 | // 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen 21 | // (以 /str 作为命令选项),或重新生成 VS 项目。 22 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")] 23 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 24 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 25 | internal class Resources { 26 | 27 | private static global::System.Resources.ResourceManager resourceMan; 28 | 29 | private static global::System.Globalization.CultureInfo resourceCulture; 30 | 31 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] 32 | internal Resources() { 33 | } 34 | 35 | /// 36 | /// 返回此类使用的缓存的 ResourceManager 实例。 37 | /// 38 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 39 | internal static global::System.Resources.ResourceManager ResourceManager { 40 | get { 41 | if (object.ReferenceEquals(resourceMan, null)) { 42 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("UnityModManagerNet.Properties.Resources", typeof(Resources).Assembly); 43 | resourceMan = temp; 44 | } 45 | return resourceMan; 46 | } 47 | } 48 | 49 | /// 50 | /// 重写当前线程的 CurrentUICulture 属性 51 | /// 重写当前线程的 CurrentUICulture 属性。 52 | /// 53 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 54 | internal static global::System.Globalization.CultureInfo Culture { 55 | get { 56 | return resourceCulture; 57 | } 58 | set { 59 | resourceCulture = value; 60 | } 61 | } 62 | 63 | /// 64 | /// 查找类似 下载最新的英文版本 的本地化字符串。 65 | /// 66 | internal static string btnDownloadUpdate_Text { 67 | get { 68 | return ResourceManager.GetString("btnDownloadUpdate.Text", resourceCulture); 69 | } 70 | } 71 | } 72 | } 73 | -------------------------------------------------------------------------------- /Updater/Updater.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | {0EEC949D-BF5C-4F12-9743-0A635ABC8DE4} 5 | false 6 | WinExe 7 | 512 8 | net472 9 | latest 10 | UnityModManagerNet.Updater 11 | UnityModManagerNet.Updater.Program 12 | DUMM.ico 13 | DUMMUpdater 14 | true 15 | 1.0.0.0 16 | 1.0.0.0 17 | 1.0.0.0 18 | 1.0.0.0 19 | 李允 20 | Legend 21 | Copyright © Legend 2011-$([System.DateTime]::Now.ToString('yyyy')) 22 | 亲爱的Unity游戏MOD管理器更新程序 23 | $(Description) 24 | 25 | 26 | none 27 | false 28 | 29 | 30 | 31 | ..\lib\Ionic.Zip.dll 32 | False 33 | 34 | 35 | ..\lib\Newtonsoft.Json.dll 36 | false 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | Form.cs 47 | 48 | 49 | Form.cs 50 | 51 | 52 | ResXFileCodeGenerator 53 | Resources.Designer.cs 54 | Designer 55 | 56 | 57 | True 58 | Resources.resx 59 | True 60 | 61 | 62 | 63 | SettingsSingleFileGenerator 64 | Settings.Designer.cs 65 | 66 | 67 | True 68 | Settings.settings 69 | True 70 | 71 | 72 | -------------------------------------------------------------------------------- /UnityModManagerApp/Properties/Settings.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // 此代码由工具生成。 4 | // 运行时版本:4.0.30319.42000 5 | // 6 | // 对此文件的更改可能会导致不正确的行为,并且如果 7 | // 重新生成代码,这些更改将会丢失。 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace UnityModManagerNet.Installer.Properties { 12 | 13 | 14 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 15 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.8.1.0")] 16 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { 17 | 18 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); 19 | 20 | public static Settings Default { 21 | get { 22 | return defaultInstance; 23 | } 24 | } 25 | 26 | [global::System.Configuration.UserScopedSettingAttribute()] 27 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 28 | [global::System.Configuration.DefaultSettingValueAttribute("微软雅黑, 9.75pt, style=Bold")] 29 | public global::System.Drawing.Font TitleFont { 30 | get { 31 | return ((global::System.Drawing.Font)(this["TitleFont"])); 32 | } 33 | set { 34 | this["TitleFont"] = value; 35 | } 36 | } 37 | 38 | [global::System.Configuration.UserScopedSettingAttribute()] 39 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 40 | [global::System.Configuration.DefaultSettingValueAttribute("微软雅黑, 14.25pt")] 41 | public global::System.Drawing.Font MenuFont { 42 | get { 43 | return ((global::System.Drawing.Font)(this["MenuFont"])); 44 | } 45 | set { 46 | this["MenuFont"] = value; 47 | } 48 | } 49 | 50 | [global::System.Configuration.UserScopedSettingAttribute()] 51 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 52 | [global::System.Configuration.DefaultSettingValueAttribute("微软雅黑, 15.75pt, style=Bold")] 53 | public global::System.Drawing.Font ButtonFont { 54 | get { 55 | return ((global::System.Drawing.Font)(this["ButtonFont"])); 56 | } 57 | set { 58 | this["ButtonFont"] = value; 59 | } 60 | } 61 | 62 | [global::System.Configuration.UserScopedSettingAttribute()] 63 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 64 | [global::System.Configuration.DefaultSettingValueAttribute("微软雅黑, 20.25pt, style=Bold")] 65 | public global::System.Drawing.Font SelectFont { 66 | get { 67 | return ((global::System.Drawing.Font)(this["SelectFont"])); 68 | } 69 | set { 70 | this["SelectFont"] = value; 71 | } 72 | } 73 | } 74 | } 75 | -------------------------------------------------------------------------------- /UnityModManagerApp/DownloadMod.Designer.cs: -------------------------------------------------------------------------------- 1 | namespace UnityModManagerNet.Installer 2 | { 3 | partial class DownloadMod 4 | { 5 | /// 6 | /// Required designer variable. 7 | /// 8 | private System.ComponentModel.IContainer components = null; 9 | 10 | /// 11 | /// Clean up any resources being used. 12 | /// 13 | /// true if managed resources should be disposed; otherwise, false. 14 | protected override void Dispose(bool disposing) 15 | { 16 | if (disposing && (components != null)) 17 | { 18 | components.Dispose(); 19 | } 20 | base.Dispose(disposing); 21 | } 22 | 23 | #region Windows Form Designer generated code 24 | 25 | /// 26 | /// Required method for Designer support - do not modify 27 | /// the contents of this method with the code editor. 28 | /// 29 | private void InitializeComponent() 30 | { 31 | System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(DownloadMod)); 32 | this.progressBar = new System.Windows.Forms.ProgressBar(); 33 | this.status = new System.Windows.Forms.Label(); 34 | this.SuspendLayout(); 35 | // 36 | // progressBar 37 | // 38 | this.progressBar.Location = new System.Drawing.Point(12, 63); 39 | this.progressBar.Name = "progressBar"; 40 | this.progressBar.Size = new System.Drawing.Size(310, 27); 41 | this.progressBar.TabIndex = 0; 42 | // 43 | // status 44 | // 45 | this.status.Location = new System.Drawing.Point(12, 10); 46 | this.status.Name = "status"; 47 | this.status.RightToLeft = System.Windows.Forms.RightToLeft.No; 48 | this.status.Size = new System.Drawing.Size(310, 50); 49 | this.status.TabIndex = 1; 50 | this.status.Text = "下载中……"; 51 | this.status.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; 52 | // 53 | // DownloadMod 54 | // 55 | this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); 56 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 57 | this.ClientSize = new System.Drawing.Size(334, 111); 58 | this.Controls.Add(this.status); 59 | this.Controls.Add(this.progressBar); 60 | this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; 61 | this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); 62 | this.MaximizeBox = false; 63 | this.MinimizeBox = false; 64 | this.Name = "DownloadMod"; 65 | this.ShowInTaskbar = false; 66 | this.Text = "游戏MOD更新"; 67 | this.TopMost = true; 68 | this.ResumeLayout(false); 69 | 70 | } 71 | 72 | #endregion 73 | 74 | private System.Windows.Forms.ProgressBar progressBar; 75 | private System.Windows.Forms.Label status; 76 | } 77 | } -------------------------------------------------------------------------------- /UnityModManager/ModSettings.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.IO; 3 | using System.Xml.Serialization; 4 | 5 | namespace UnityModManagerNet 6 | { 7 | public partial class UnityModManager 8 | { 9 | public class ModSettings 10 | { 11 | public virtual void Save(ModEntry modEntry) 12 | { 13 | Save(this, modEntry); 14 | } 15 | 16 | public virtual string GetPath(ModEntry modEntry) 17 | { 18 | return Path.Combine(modEntry.Path, "Settings.xml"); 19 | } 20 | 21 | public static void Save(T data, ModEntry modEntry) where T : ModSettings, new() 22 | { 23 | Save(data, modEntry, null); 24 | } 25 | 26 | /// 27 | /// [0.20.0] 28 | /// 29 | public static void Save(T data, ModEntry modEntry, XmlAttributeOverrides attributes) 30 | where T : ModSettings, new() 31 | { 32 | var filepath = data.GetPath(modEntry); 33 | try 34 | { 35 | using var writer = new StreamWriter(filepath); 36 | var serializer = new XmlSerializer(typeof(T), attributes); 37 | serializer.Serialize(writer, data); 38 | } 39 | catch (Exception e) 40 | { 41 | modEntry.Logger.Error($"保存文件“{filepath}”失败!"); 42 | modEntry.Logger.LogException(e); 43 | } 44 | } 45 | 46 | public static T Load(ModEntry modEntry) where T : ModSettings, new() 47 | { 48 | var t = new T(); 49 | var filepath = t.GetPath(modEntry); 50 | if (!File.Exists(filepath)) return t; 51 | try 52 | { 53 | using var stream = File.OpenRead(filepath); 54 | var serializer = new XmlSerializer(typeof(T)); 55 | var result = (T)serializer.Deserialize(stream); 56 | return result; 57 | } 58 | catch (Exception e) 59 | { 60 | modEntry.Logger.Error($"读取文件“{filepath}”失败!"); 61 | modEntry.Logger.LogException(e); 62 | } 63 | return t; 64 | } 65 | 66 | public static T Load(ModEntry modEntry, XmlAttributeOverrides attributes) where T : ModSettings, new() 67 | { 68 | var t = new T(); 69 | var filepath = t.GetPath(modEntry); 70 | if (!File.Exists(filepath)) return t; 71 | try 72 | { 73 | using var stream = File.OpenRead(filepath); 74 | var serializer = new XmlSerializer(typeof(T), attributes); 75 | var result = (T)serializer.Deserialize(stream); 76 | return result; 77 | } 78 | catch (Exception e) 79 | { 80 | modEntry.Logger.Error($"读取文件“{filepath}”失败!"); 81 | modEntry.Logger.LogException(e); 82 | } 83 | 84 | return t; 85 | } 86 | } 87 | } 88 | } -------------------------------------------------------------------------------- /Updater/Utils.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Diagnostics; 3 | using System.Net.NetworkInformation; 4 | using System.Text.RegularExpressions; 5 | 6 | namespace UnityModManagerNet.Updater 7 | { 8 | internal static class Utils 9 | { 10 | private const string RepositoryUrl = "raw.githubusercontent.com"; 11 | /// 12 | /// 执行内部命令(cmd.exe 中的命令) 13 | /// 14 | /// 命令行 15 | /// 执行结果 16 | public static string ExecuteInCmd(string cmd) 17 | { 18 | using var process = new Process 19 | { 20 | StartInfo = 21 | { 22 | FileName = "cmd.exe", 23 | UseShellExecute = false, 24 | RedirectStandardInput = true, 25 | RedirectStandardOutput = true, 26 | RedirectStandardError = true, 27 | CreateNoWindow = true 28 | } 29 | }; 30 | process.Start(); 31 | process.StandardInput.AutoFlush = true; 32 | process.StandardInput.WriteLine(cmd + "&exit"); 33 | //获取cmd窗口的输出信息 34 | var output = process.StandardOutput.ReadToEnd(); 35 | process.WaitForExit(); 36 | process.Close(); 37 | return output; 38 | } 39 | /// 40 | /// 执行外部命令 41 | /// 42 | /// 命令参数 43 | /// 命令程序路径 44 | /// 执行结果 45 | public static string ExecuteOutCmd(string param, string path) 46 | { 47 | using var process = new Process 48 | { 49 | StartInfo = 50 | { 51 | Arguments = param, 52 | FileName = path, 53 | UseShellExecute = false, 54 | RedirectStandardInput = true, 55 | RedirectStandardOutput = true, 56 | RedirectStandardError = true, 57 | CreateNoWindow = true 58 | } 59 | }; 60 | process.Start(); 61 | process.StandardInput.AutoFlush = true; 62 | process.StandardInput.WriteLine("exit"); 63 | //获取cmd窗口的输出信息 64 | var output = process.StandardOutput.ReadToEnd(); 65 | process.WaitForExit(); 66 | process.Close(); 67 | return output; 68 | } 69 | 70 | public static Version ParseVersion(string str) 71 | { 72 | var array = str.Split('.', ','); 73 | if (array.Length < 3) return new Version(); 74 | var regex = new Regex(@"\D"); 75 | return new Version(int.Parse(regex.Replace(array[0], "")), int.Parse(regex.Replace(array[1], "")), int.Parse(regex.Replace(array[2], ""))); 76 | } 77 | 78 | public static bool HasNetworkConnection() 79 | { 80 | try 81 | { 82 | using var ping = new Ping(); 83 | return ping.Send(RepositoryUrl, 3000)?.Status == IPStatus.Success; 84 | } 85 | catch 86 | { 87 | return false; 88 | } 89 | } 90 | 91 | public static bool IsUnixPlatform() 92 | { 93 | var p = (int)Environment.OSVersion.Platform; 94 | return (p == 4) || (p == 6) || (p == 128); 95 | } 96 | } 97 | } 98 | -------------------------------------------------------------------------------- /UnityModManager/TextureReplacer.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.IO; 4 | using TinyJson; 5 | using UnityEngine; 6 | 7 | namespace UnityModManagerNet 8 | { 9 | public partial class UnityModManager 10 | { 11 | internal class TextureReplacer 12 | { 13 | public class Skin 14 | { 15 | public struct conditions 16 | { 17 | public string MaterialName; 18 | public string ObjectName; 19 | public string ObjectComponent; 20 | public string Custom; 21 | [IgnoreJson] public bool IsEmpty => string.IsNullOrEmpty(MaterialName) && string.IsNullOrEmpty(ObjectName) && string.IsNullOrEmpty(ObjectComponent) && string.IsNullOrEmpty(Custom); 22 | } 23 | public class texture 24 | { 25 | public string Path; 26 | public Texture2D Texture; 27 | public Texture2D Previous; 28 | } 29 | 30 | [IgnoreJson] public ModEntry modEntry; 31 | public string Name; 32 | public string Tags; 33 | public conditions Conditions; 34 | [IgnoreJson] public Dictionary textures; 35 | 36 | public override string ToString() 37 | { 38 | return $"{Name} ({modEntry.Info.DisplayName})"; 39 | } 40 | 41 | public void WriteFile(string filePath) 42 | { 43 | try 44 | { 45 | File.WriteAllText(filePath, JSONWriter.ToJson(this)); 46 | } 47 | catch (Exception e) 48 | { 49 | Logger.Error(e.ToString()); 50 | Logger.Error($"创建文件“{filePath}”失败!"); 51 | } 52 | } 53 | 54 | public static Skin ReadFile(string filePath) 55 | { 56 | try 57 | { 58 | return JSONParser.FromJson(File.ReadAllText(filePath)); 59 | } 60 | catch (Exception e) 61 | { 62 | Logger.Error(e.ToString()); 63 | Logger.Error($"不能读取文件“{filePath}”!"); 64 | return null; 65 | } 66 | } 67 | 68 | public static implicit operator bool(Skin exists) 69 | { 70 | return exists != null; 71 | } 72 | 73 | public bool Equals(Skin other) 74 | { 75 | return Name.Equals(other.Name) && modEntry.Info.Equals(other.modEntry.Info); 76 | } 77 | 78 | public override bool Equals(object obj) 79 | { 80 | if (ReferenceEquals(null, obj)) 81 | { 82 | return false; 83 | } 84 | return obj is Skin skin && Equals(skin); 85 | } 86 | 87 | public override int GetHashCode() 88 | { 89 | return Name.GetHashCode() + modEntry.Info.GetHashCode(); 90 | } 91 | } 92 | 93 | public static void Start() 94 | { 95 | } 96 | } 97 | } 98 | } -------------------------------------------------------------------------------- /UnityModManagerTests/test.runsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | .\TestResults 7 | 8 | 9 | 10 | x64 11 | 12 | 13 | net472 14 | 15 | 16 | 10000 17 | 18 | 0 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | .*CPPUnitTestFramework.* 30 | 31 | 32 | 33 | 34 | True 35 | True 36 | True 37 | False 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | test.html 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | true 67 | false 68 | true 69 | false 70 | false 71 | true 72 | 73 | 74 | 75 | 76 | -------------------------------------------------------------------------------- /UnityModManagerApp/Properties/Resources.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // 此代码由工具生成。 4 | // 运行时版本:4.0.30319.42000 5 | // 6 | // 对此文件的更改可能会导致不正确的行为,并且如果 7 | // 重新生成代码,这些更改将会丢失。 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace UnityModManagerNet.Installer.Properties { 12 | using System; 13 | 14 | 15 | /// 16 | /// 一个强类型的资源类,用于查找本地化的字符串等。 17 | /// 18 | // 此类是由 StronglyTypedResourceBuilder 19 | // 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 20 | // 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen 21 | // (以 /str 作为命令选项),或重新生成 VS 项目。 22 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")] 23 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 24 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 25 | internal class Resources { 26 | 27 | private static global::System.Resources.ResourceManager resourceMan; 28 | 29 | private static global::System.Globalization.CultureInfo resourceCulture; 30 | 31 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] 32 | internal Resources() { 33 | } 34 | 35 | /// 36 | /// 返回此类使用的缓存的 ResourceManager 实例。 37 | /// 38 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 39 | internal static global::System.Resources.ResourceManager ResourceManager { 40 | get { 41 | if (object.ReferenceEquals(resourceMan, null)) { 42 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("UnityModManagerNet.Installer.Properties.Resources", typeof(Resources).Assembly); 43 | resourceMan = temp; 44 | } 45 | return resourceMan; 46 | } 47 | } 48 | 49 | /// 50 | /// 重写当前线程的 CurrentUICulture 属性 51 | /// 重写当前线程的 CurrentUICulture 属性。 52 | /// 53 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 54 | internal static global::System.Globalization.CultureInfo Culture { 55 | get { 56 | return resourceCulture; 57 | } 58 | set { 59 | resourceCulture = value; 60 | } 61 | } 62 | 63 | /// 64 | /// 查找类似 DUMMUpdater.exe 的本地化字符串。 65 | /// 66 | internal static string appUpdater { 67 | get { 68 | return ResourceManager.GetString("appUpdater", resourceCulture); 69 | } 70 | } 71 | 72 | /// 73 | /// 查找类似 去GitHub网站下载亲爱的Unity游戏MOD管理器源代码 的本地化字符串。 74 | /// 75 | internal static string btnDownloadUpdate { 76 | get { 77 | return ResourceManager.GetString("btnDownloadUpdate", resourceCulture); 78 | } 79 | } 80 | 81 | /// 82 | /// 查找 System.Drawing.Bitmap 类型的本地化资源。 83 | /// 84 | internal static System.Drawing.Bitmap dragdropfiles { 85 | get { 86 | object obj = ResourceManager.GetObject("dragdropfiles", resourceCulture); 87 | return ((System.Drawing.Bitmap)(obj)); 88 | } 89 | } 90 | } 91 | } 92 | -------------------------------------------------------------------------------- /lib/UnityModManagerConfigLocal.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Pathfinder: Kingmaker 5 | PathfinderKingmaker 6 | Pathfinder Kingmaker 7 | Mods 8 | Info.json 9 | Kingmaker.exe 10 | [UnityEngine.UIModule.dll]UnityEngine.Canvas.cctor:Before 11 | [Assembly-CSharp.dll]Kingmaker.GameStarter.Awake:Before 12 | [Assembly-CSharp.dll]Kingmaker.MainMenu.Start:After 13 | [Assembly-CSharp.dll]Kingmaker.GameStarter.Awake:Before 14 | [Assembly-CSharp.dll]Kingmaker.GameVersion.GetVersion 15 | 0.12.0 16 | 17 | 18 | Pathfinder: Wrath of the Righteous 19 | PathfinderWrathOfTheRighteous 20 | Pathfinder Wrath of the Righteous 21 | Mods 22 | Info.json 23 | Wrath.exe 24 | [UnityEngine.UIModule.dll]UnityEngine.Canvas.cctor:Before 25 | [Assembly-CSharp.dll]Kingmaker.GameStarter.Awake:Before 26 | [Assembly-CSharp.dll]Kingmaker.MainMenu.Start:After 27 | [Assembly-CSharp.dll]Kingmaker.GameVersion.GetVersion 28 | 0.22.15 29 | 30 | 31 | Pathfinder: Wrath of the Righteous 32 | PathfinderWrathOfTheRighteous 33 | Pathfinder Second Adventure 34 | Mods 35 | Info.json 36 | Wrath.exe 37 | [UnityEngine.UIModule.dll]UnityEngine.Canvas.cctor:Before 38 | [Assembly-CSharp.dll]Kingmaker.GameStarter.Awake:Before 39 | [Assembly-CSharp.dll]Kingmaker.MainMenu.Start:After 40 | [Assembly-CSharp.dll]Kingmaker.GameVersion.GetVersion 41 | 0.22.15 42 | 43 | 44 | Pillars of Eternity II: Deadfire 45 | Pillars of Eternity II Deadfire 46 | Mods 47 | Info.json 48 | PillarsOfEternityII.exe 49 | [UnityEngine.UI.dll]UnityEngine.Canvas.cctor:Before 50 | [Assembly-CSharp.dll]Game.GameState.Awake:After 51 | [Assembly-CSharp.dll]Game.UI.UIMainMenuManager.OnyxStart:After 52 | 0.22.3 53 | 54 | 55 | Solasta 56 | SolastaCrownOfTheMagister 57 | Solasta Crown of the Magister 58 | Mods 59 | Info.json 60 | Solasta.exe 61 | [UnityEngine.UIModule.dll]UnityEngine.Canvas.cctor:Before 62 | [Assembly-CSharp.dll]TacticalAdventuresApplication.Start:After 63 | 0.22.13 64 | 65 | -------------------------------------------------------------------------------- /UnityModManager/Updates.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections; 3 | using System.Collections.Generic; 4 | using System.Net.NetworkInformation; 5 | using UnityEngine; 6 | using UnityEngine.Events; 7 | using UnityEngine.Networking; 8 | 9 | using Ping = System.Net.NetworkInformation.Ping; 10 | 11 | namespace UnityModManagerNet; 12 | 13 | public partial class UnityModManager 14 | { 15 | private const string RepositoryUrl = "www.nexusmods.com"; 16 | 17 | private static void CheckModUpdates() 18 | { 19 | Logger.Log("正在检查MOD新版本……"); 20 | 21 | if (!HasNetworkConnection()) 22 | { 23 | Logger.Log("无法访问网站,请检查防火墙或代理设置!"); 24 | return; 25 | } 26 | 27 | var urls = new HashSet(); 28 | 29 | foreach (var modEntry in ModEntries) 30 | if (!string.IsNullOrEmpty(modEntry.Info.Repository)) 31 | urls.Add(modEntry.Info.Repository); 32 | 33 | if (urls.Count <= 0) return; 34 | foreach (var url in urls) 35 | UI.Instance.StartCoroutine(unityVersion < new System.Version(5, 4) 36 | ? DownloadString_5_3(url, ParseRepository) 37 | : DownloadString(url, ParseRepository)); 38 | } 39 | 40 | private static void ParseRepository(string json, string url) 41 | { 42 | if (string.IsNullOrEmpty(json)) return; 43 | 44 | try 45 | { 46 | var repository = TinyJson.JSONParser.FromJson(json); 47 | if (repository?.Releases == null || repository.Releases.Length <= 0) return; 48 | foreach (var release in repository.Releases) 49 | if (!string.IsNullOrEmpty(release.Id) && !string.IsNullOrEmpty(release.Version)) 50 | { 51 | var modEntry = FindMod(release.Id); 52 | if (modEntry == null) continue; 53 | var ver = ParseVersion(release.Version); 54 | if (modEntry.Version < ver && 55 | (modEntry.NewestVersion == null || modEntry.NewestVersion < ver)) 56 | modEntry.NewestVersion = ver; 57 | } 58 | } 59 | catch (Exception e) 60 | { 61 | Logger.Log($"从网站“{url}”检查MOD新版本时发生了错误。"); 62 | Logger.Log(e.Message); 63 | } 64 | } 65 | 66 | public static bool HasNetworkConnection() 67 | { 68 | try 69 | { 70 | using (var ping = new Ping()) 71 | { 72 | return ping.Send(RepositoryUrl, 1000)?.Status == IPStatus.Success; 73 | } 74 | } 75 | catch (Exception e) 76 | { 77 | Console.WriteLine(e.Message); 78 | } 79 | 80 | return false; 81 | } 82 | 83 | private static IEnumerator DownloadString(string url, UnityAction handler) 84 | { 85 | var www = UnityWebRequest.Get(url); 86 | yield return www?.SendWebRequest(); 87 | 88 | var ver = ParseVersion(Application.unityVersion); 89 | var isError = typeof(UnityWebRequest).GetMethod(ver.Major >= 2017 ? "get_isNetworkError" : "get_isError"); 90 | if (isError == null || (bool)isError.Invoke(www, null)) 91 | { 92 | Logger.Log(www?.error); 93 | Logger.Log($"Error downloading '{url}'."); 94 | yield break; 95 | } 96 | 97 | handler(www?.downloadHandler.text, url); 98 | } 99 | 100 | private static IEnumerator DownloadString_5_3(string url, UnityAction handler) 101 | { 102 | var www = new WWW(url); 103 | yield return www; 104 | 105 | if (!string.IsNullOrEmpty(www.error)) 106 | { 107 | Logger.Log(www.error); 108 | Logger.Log($"从网站“{url}”检查MOD新版本时发生了错误。"); 109 | yield break; 110 | } 111 | 112 | handler(www.text, url); 113 | } 114 | } -------------------------------------------------------------------------------- /UnityModManagerApp/DownloadExtraFiles.cs: -------------------------------------------------------------------------------- 1 | using Ionic.Zip; 2 | using System; 3 | using System.IO; 4 | using System.Net; 5 | using System.Text; 6 | using System.Windows.Forms; 7 | 8 | namespace UnityModManagerNet.Installer 9 | { 10 | public partial class DownloadExtraFiles : Form 11 | { 12 | const string downloadFile = "ExtraFiles.zip"; 13 | string gamePath; 14 | 15 | public DownloadExtraFiles() 16 | { 17 | InitializeComponent(); 18 | } 19 | 20 | public DownloadExtraFiles(string url, string gamePath) 21 | { 22 | this.gamePath = gamePath; 23 | InitializeComponent(); 24 | Start(url); 25 | } 26 | 27 | public void Start(string url) 28 | { 29 | if (string.IsNullOrEmpty(gamePath)) 30 | { 31 | status.Text = "请选择游戏目录。"; 32 | ConsoleInstaller.Log.Print(status.Text); 33 | return; 34 | } 35 | 36 | try 37 | { 38 | status.Text = "下载中……"; 39 | ConsoleInstaller.Log.Print(status.Text); 40 | using var wc = new WebClient(); 41 | wc.Encoding = Encoding.UTF8; 42 | wc.DownloadProgressChanged += Wc_DownloadProgressChanged; 43 | wc.DownloadFileCompleted += Wc_DownloadFileCompleted; 44 | wc.DownloadFileAsync(new Uri(url), downloadFile); 45 | } 46 | catch (Exception e) 47 | { 48 | status.Text = e.Message; 49 | } 50 | } 51 | 52 | private void Wc_DownloadProgressChanged(object sender, DownloadProgressChangedEventArgs e) 53 | { 54 | progressBar1.Value = e.ProgressPercentage; 55 | } 56 | 57 | private void Wc_DownloadFileCompleted(object sender, System.ComponentModel.AsyncCompletedEventArgs e) 58 | { 59 | if (e.Error != null) 60 | { 61 | status.Text = e.Error.Message; 62 | ConsoleInstaller.Log.Print(e.Error.Message); 63 | return; 64 | } 65 | if (!e.Cancelled) 66 | { 67 | var success = false; 68 | try 69 | { 70 | using (var zip = ZipFile.Read(downloadFile)) 71 | { 72 | foreach (var entry in zip.EntriesSorted) 73 | { 74 | if (entry.IsDirectory) 75 | { 76 | Directory.CreateDirectory(Path.Combine(gamePath, entry.FileName)); 77 | } 78 | else 79 | { 80 | Directory.CreateDirectory(Path.GetDirectoryName(Path.Combine(gamePath, entry.FileName))); 81 | using FileStream fs = new FileStream(Path.Combine(gamePath, entry.FileName), FileMode.Create, FileAccess.Write); 82 | entry.Extract(fs); 83 | } 84 | } 85 | } 86 | 87 | status.Text = "下载完毕。"; 88 | ConsoleInstaller.Log.Print(status.Text); 89 | success = true; 90 | } 91 | catch (Exception ex) 92 | { 93 | status.Text = ex.Message; 94 | ConsoleInstaller.Log.Print(ex.Message); 95 | } 96 | 97 | if (File.Exists(downloadFile)) 98 | { 99 | File.Delete(downloadFile); 100 | } 101 | 102 | if (success) 103 | { 104 | DialogResult = DialogResult.OK; 105 | Close(); 106 | } 107 | } 108 | } 109 | } 110 | } 111 | -------------------------------------------------------------------------------- /UnityModManagerApp/tools/SteamHelper.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.IO; 5 | using System.Linq; 6 | using System.Text.RegularExpressions; 7 | 8 | namespace UnityModManagerNet.Installer.Tools 9 | { 10 | /// 11 | /// Base on: https://stackoverflow.com/questions/54767662/finding-game-launcher-executables-in-directory-c-sharp 12 | /// 13 | public static class SteamHelper 14 | { 15 | private static ICollection RegistryKeys = new[] { "SOFTWARE\\Wow6432Node\\Valve\\", "SOFTWARE\\VALVE\\" }; 16 | private static ICollection _steamGameDirs = new List(); 17 | 18 | static SteamHelper() 19 | { 20 | if (!Utils.IsWindowsPlatform()) 21 | { 22 | return; 23 | } 24 | UpdateSteamGameDirectories(); 25 | } 26 | 27 | private static void UpdateSteamGameDirectories() 28 | { 29 | _steamGameDirs = RegistryKeys 30 | .Select(v => Registry.LocalMachine.OpenSubKey(v)) 31 | .Where(registryKey => registryKey != null) 32 | .SelectMany( 33 | registryKey => 34 | { 35 | using (registryKey) 36 | { 37 | return GetDirectories(registryKey).ToArray(); 38 | } 39 | } 40 | ) 41 | .Distinct() 42 | .ToList(); 43 | } 44 | 45 | private static IEnumerable GetDirectories(RegistryKey registryKey) 46 | { 47 | foreach (var subKeyName in registryKey.GetSubKeyNames()) 48 | { 49 | using (var subKey = registryKey.OpenSubKey(subKeyName)) 50 | { 51 | if (subKey == null) 52 | { 53 | continue; 54 | } 55 | 56 | var installPath = subKey.GetValue("InstallPath"); 57 | if (installPath == null) 58 | { 59 | continue; 60 | } 61 | 62 | var steamPath = installPath.ToString(); 63 | var configPath = $"{steamPath}/steamapps/libraryfolders.vdf"; 64 | const string driveRegex = @"[A-Z]:\\"; 65 | if (!File.Exists(configPath)) 66 | { 67 | continue; 68 | } 69 | 70 | var configLines = File.ReadAllLines(configPath); 71 | foreach (var item in configLines) 72 | { 73 | var match = Regex.Match(item, driveRegex); 74 | if (item == string.Empty || !match.Success) 75 | { 76 | continue; 77 | } 78 | 79 | var matched = match.ToString(); 80 | var item2 = item.Substring(item.IndexOf(matched, StringComparison.Ordinal)); 81 | item2 = item2.Replace("\\\\", "\\"); 82 | item2 = item2.Replace("\"", "\\steamapps\\common\\"); 83 | yield return item2; 84 | } 85 | 86 | yield return $"{steamPath}\\steamapps\\common\\"; 87 | } 88 | } 89 | } 90 | 91 | public static IEnumerable GetGameDirectories(string gameFolderName) 92 | { 93 | return _steamGameDirs 94 | .Select(v => Path.Combine(v, gameFolderName)) 95 | .Where(v => Directory.Exists(v)); 96 | } 97 | 98 | public static string? GetGameDirectory(string gameFolderName) 99 | { 100 | return GetGameDirectories(gameFolderName).FirstOrDefault(); 101 | } 102 | } 103 | } -------------------------------------------------------------------------------- /UnityModManager/Config.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.IO; 4 | using System.Xml.Serialization; 5 | using UnityEngine; 6 | 7 | namespace UnityModManagerNet; 8 | 9 | public partial class UnityModManager 10 | { 11 | public sealed class Param 12 | { 13 | [Serializable] 14 | public class Mod 15 | { 16 | [XmlAttribute] 17 | public string Id; 18 | [XmlAttribute] 19 | public bool Enabled = true; 20 | } 21 | 22 | public static KeyBinding DefaultHotkey = new() { keyCode = KeyCode.F10, modifiers = 1 }; 23 | public static KeyBinding EscapeHotkey = new() { keyCode = KeyCode.Escape }; 24 | public KeyBinding Hotkey = new(); 25 | public int CheckUpdates = 1; 26 | public int ShowOnStart = 1; 27 | public float WindowWidth; 28 | public float WindowHeight; 29 | public float UIScale = 1f; 30 | public string UIFont; 31 | public List ModParams = new(); 32 | 33 | private static readonly string Filepath = Path.Combine(Path.GetDirectoryName(typeof(Param).Assembly.Location) ?? string.Empty, "Params.xml"); 34 | 35 | public void Save() 36 | { 37 | try 38 | { 39 | ModParams.Clear(); 40 | foreach (var mod in ModEntries) 41 | { 42 | ModParams.Add(new Mod { Id = mod.Info.Id, Enabled = mod.Enabled }); 43 | } 44 | 45 | using var writer = new StreamWriter(Filepath); 46 | var serializer = new XmlSerializer(typeof(Param)); 47 | serializer.Serialize(writer, this); 48 | } 49 | catch (Exception e) 50 | { 51 | Logger.Error($"写入文件“{Filepath}”失败!"); 52 | Debug.LogException(e); 53 | } 54 | } 55 | 56 | public static Param Load() 57 | { 58 | if (!File.Exists(Filepath)) return new Param(); 59 | try 60 | { 61 | using var stream = File.OpenRead(Filepath); 62 | var serializer = new XmlSerializer(typeof(Param)); 63 | var result = serializer.Deserialize(stream) as Param; 64 | 65 | return result; 66 | } 67 | catch (Exception e) 68 | { 69 | Logger.Error($"读取文件“{Filepath}”失败!"); 70 | Debug.LogException(e); 71 | } 72 | return new Param(); 73 | } 74 | 75 | internal void ReadModParams() 76 | { 77 | foreach (var item in ModParams) 78 | { 79 | var mod = FindMod(item.Id); 80 | if (mod != null) 81 | { 82 | mod.Enabled = item.Enabled; 83 | } 84 | } 85 | } 86 | } 87 | 88 | [XmlRoot("Config")] 89 | public class GameInfo 90 | { 91 | [XmlAttribute] 92 | public string Name; 93 | public string Folder; 94 | public string ModsDirectory; 95 | public string ModInfo; 96 | public string EntryPoint; 97 | public string StartingPoint; 98 | public string UIStartingPoint; 99 | public string TextureReplacingPoint; 100 | public string SessionStartPoint; 101 | public string SessionStopPoint; 102 | public string GameExe; 103 | public string GameName; 104 | public string GameVersionPoint; 105 | public string GameScriptName; 106 | public string OldPatchTarget; 107 | public string Comment; 108 | public string FixBlackUI; 109 | public string MinimalManagerVersion; 110 | public string ExtraFilesUrl; 111 | 112 | private static readonly string Filepath = Path.Combine(Path.GetDirectoryName(typeof(GameInfo).Assembly.Location) ?? string.Empty, "Config.xml"); 113 | 114 | public static GameInfo Load() 115 | { 116 | try 117 | { 118 | using var stream = File.OpenRead(Filepath); 119 | return new XmlSerializer(typeof(GameInfo)).Deserialize(stream) as GameInfo; 120 | } 121 | catch (Exception e) 122 | { 123 | Logger.Error($"读取文件“{Filepath}”失败!"); 124 | Debug.LogException(e); 125 | return null; 126 | } 127 | } 128 | } 129 | } -------------------------------------------------------------------------------- /UnityModManager/UI/Utils/AutoSizeFormControlUtil.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Drawing; 4 | using System.Windows.Forms; 5 | 6 | namespace UnityModManagerNet.UI.Utils; 7 | 8 | public sealed class AutoSizeFormControlUtil 9 | { 10 | private readonly Stack _controlsCache; 11 | private readonly Dictionary _controlsInfo;//控件中心Left,Top,控件Width,控件Height,控件字体Size 12 | private double _scaleX;//水平缩放比例 13 | private double _scaleY;//垂直缩放比例 14 | private readonly double _formOriginalWidth;//窗体原始宽度 15 | private readonly double _formOriginalHeight;//窗体原始高度 16 | private readonly int _captionHeight; 17 | private readonly int _borderSize; 18 | private readonly int _screenHeight; 19 | private readonly int _screenWidth; 20 | private readonly Form _form; 21 | 22 | public AutoSizeFormControlUtil(Form form) 23 | { 24 | _form = form; 25 | _formOriginalWidth = Convert.ToDouble(_form.ClientSize.Width); 26 | _formOriginalHeight = Convert.ToDouble(_form.ClientSize.Height); 27 | _captionHeight = SystemInformation.CaptionHeight; 28 | _borderSize = SystemInformation.HorizontalResizeBorderThickness * 2; 29 | _screenHeight = Screen.PrimaryScreen.Bounds.Height; 30 | _screenWidth = Screen.PrimaryScreen.Bounds.Width; 31 | _controlsCache = new Stack(); 32 | _controlsInfo = new Dictionary(); 33 | } 34 | /// 35 | /// panel 控件 36 | /// 37 | public void RefreshControlsInfo(Control control) 38 | { 39 | ClearCaches(); 40 | _RefreshControlsInfo(control); 41 | } 42 | 43 | public void FormSizeChanged() 44 | { 45 | if (_controlsInfo.Count <= 0) return; 46 | var width = Convert.ToDouble(_form.ClientSize.Width);//表示panel控件 47 | var height = Convert.ToDouble(_form.ClientSize.Height); 48 | if (_screenWidth == _form.ClientSize.Width) 49 | width += _borderSize; 50 | if (_screenHeight - _captionHeight == _form.ClientSize.Height) 51 | height += _borderSize + _captionHeight; 52 | _scaleX = width / _formOriginalWidth; 53 | _scaleY = height / _formOriginalHeight; 54 | if (0 < _scaleX * _scaleY) 55 | ControlsChange(); 56 | } 57 | 58 | private void _RefreshControlsInfo(Control control) 59 | { 60 | var controls = new Stack(); 61 | foreach (Control item in control.Controls) 62 | controls.Push(item); 63 | while (0 < controls.Count) 64 | { 65 | var parent = controls.Pop(); 66 | foreach (Control child in parent.Controls) 67 | { 68 | if (0 < child.Controls.Count) 69 | controls.Push(child); 70 | CacheControl(child); 71 | } 72 | } 73 | } 74 | 75 | private void CacheControl(Control control) 76 | { 77 | var name = control.Name.Trim(); 78 | if (string.IsNullOrEmpty(name) || DockStyle.None != control.Dock) return; 79 | //添加信息:键值:控件名,内容:据左边距离,距顶部距离,控件宽度,控件高度,控件字体。 80 | _controlsInfo[name] = (control.Left + control.Width / 2) + "," + (control.Top + control.Height / 2) + "," + control.Width + "," + control.Height + "," + control.Font.Size; 81 | _controlsCache.Push(control); 82 | } 83 | /// 84 | /// 改变控件大小 85 | /// 86 | private void ControlsChange() 87 | { 88 | var pos = new double[5];//pos数组保存当前控件中心Left,Top,控件Width,控件Height,控件字体Size 89 | foreach (var item in _controlsCache)//遍历控件 90 | { 91 | var name = item.Name.Trim(); 92 | var values = _controlsInfo[name].Split(',');//从字典中查出的数据,以‘,’分割成字符串组 93 | for (var i = 0; i < 5; i++) 94 | pos[i] = Convert.ToDouble(values[i]);//添加到临时数组 95 | var itemWidth = pos[2] * _scaleX; //计算控件宽度,double类型 96 | var itemHeight = pos[3] * _scaleY; //计算控件高度 97 | item.Left = Convert.ToInt32(pos[0] * _scaleX - itemWidth / 2);//计算控件距离左边距离 98 | item.Top = Convert.ToInt32(pos[1] * _scaleY - itemHeight / 2);//计算控件距离顶部距离 99 | item.Width = Convert.ToInt32(itemWidth);//控件宽度,int类型 100 | item.Height = Convert.ToInt32(itemHeight);//控件高度 101 | var size = float.Parse((pos[4] * Math.Min(_scaleX, _scaleY)).ToString()); 102 | if (Math.Abs(size - item.Font.Size) > 0) 103 | item.Font = new Font(item.Font.Name, size, item.Font.Style);//字体 104 | } 105 | } 106 | 107 | private void ClearCaches() 108 | { 109 | _controlsCache.Clear(); 110 | _controlsInfo.Clear(); 111 | } 112 | } -------------------------------------------------------------------------------- /DearUnityModManager.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio Version 17 4 | VisualStudioVersion = 17.4.33122.133 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Updater", "Updater\Updater.csproj", "{0EEC949D-BF5C-4F12-9743-0A635ABC8DE4}" 7 | EndProject 8 | Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "UnityModManagerApp", "UnityModManagerApp\UnityModManagerApp.csproj", "{6E8F8B45-2A2D-4E5A-8573-3559337E68F3}" 9 | ProjectSection(ProjectDependencies) = postProject 10 | {A1FCAE3E-523E-4E33-8860-DD39DDDF0F62} = {A1FCAE3E-523E-4E33-8860-DD39DDDF0F62} 11 | {0EEC949D-BF5C-4F12-9743-0A635ABC8DE4} = {0EEC949D-BF5C-4F12-9743-0A635ABC8DE4} 12 | EndProjectSection 13 | EndProject 14 | Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "UnityModManager", "UnityModManager\UnityModManager.csproj", "{A1FCAE3E-523E-4E33-8860-DD39DDDF0F62}" 15 | EndProject 16 | Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "UnityModManagerTests", "UnityModManagerTests\UnityModManagerTests.csproj", "{E953E4AD-49FD-4BD8-AFD0-5EDA98DC10C1}" 17 | EndProject 18 | Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Configs", "Configs", "{0172C731-5E28-464A-8B8B-9199A6F2F17A}" 19 | ProjectSection(SolutionItems) = preProject 20 | README.md = README.md 21 | ReferenceLibs.props = ReferenceLibs.props 22 | ReferenceLibs_Assembly.props = ReferenceLibs_Assembly.props 23 | ReferenceLibs_Unity2018.props = ReferenceLibs_Unity2018.props 24 | ReferenceLibs_Unity2019.props = ReferenceLibs_Unity2019.props 25 | ReferenceLibs_Unity2021.props = ReferenceLibs_Unity2021.props 26 | Repository.json = Repository.json 27 | EndProjectSection 28 | ProjectSection(FolderGlobals) = preProject 29 | E_5_4Decompile_4Code_4src_4Dear-Unity-Mod-Manager_4Repository_1json__JsonSchema = http://json.schemastore.org/appveyor 30 | EndProjectSection 31 | EndProject 32 | Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "lib", "lib", "{26ABE49E-2A2F-4115-8425-9BAEE6E153A4}" 33 | ProjectSection(SolutionItems) = preProject 34 | lib\0Harmony-1.2.dll = lib\0Harmony-1.2.dll 35 | lib\0Harmony.dll = lib\0Harmony.dll 36 | lib\0Harmony12.dll = lib\0Harmony12.dll 37 | lib\background.jpg = lib\background.jpg 38 | lib\dnlib.dll = lib\dnlib.dll 39 | lib\Ionic.Zip.dll = lib\Ionic.Zip.dll 40 | lib\IrisSkin4.dll = lib\IrisSkin4.dll 41 | lib\Newtonsoft.Json.dll = lib\Newtonsoft.Json.dll 42 | lib\System.Xml.dll = lib\System.Xml.dll 43 | lib\UnityModManagerConfig.xml = lib\UnityModManagerConfig.xml 44 | lib\UnityModManagerConfigLocal.xml = lib\UnityModManagerConfigLocal.xml 45 | lib\winhttp.dll = lib\winhttp.dll 46 | EndProjectSection 47 | EndProject 48 | Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Console", "Console\Console.csproj", "{7151CE06-904E-485D-8BC3-A7174A9D5D29}" 49 | EndProject 50 | Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Assembly", "Assembly", "{7F920459-28E6-444D-8135-CE18911A38B9}" 51 | ProjectSection(SolutionItems) = preProject 52 | lib\Assembly\Assembly-CSharp-PathfinderKingmaker.dll = lib\Assembly\Assembly-CSharp-PathfinderKingmaker.dll 53 | lib\Assembly\Assembly-CSharp-PathfinderWrathOfTheRighteous.dll = lib\Assembly\Assembly-CSharp-PathfinderWrathOfTheRighteous.dll 54 | lib\Assembly\Assembly-CSharp-SolastaCrownOfTheMagister.dll = lib\Assembly\Assembly-CSharp-SolastaCrownOfTheMagister.dll 55 | EndProjectSection 56 | EndProject 57 | Global 58 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 59 | Debug|Any CPU = Debug|Any CPU 60 | Release|Any CPU = Release|Any CPU 61 | EndGlobalSection 62 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 63 | {0EEC949D-BF5C-4F12-9743-0A635ABC8DE4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 64 | {0EEC949D-BF5C-4F12-9743-0A635ABC8DE4}.Debug|Any CPU.Build.0 = Debug|Any CPU 65 | {0EEC949D-BF5C-4F12-9743-0A635ABC8DE4}.Release|Any CPU.ActiveCfg = Release|Any CPU 66 | {0EEC949D-BF5C-4F12-9743-0A635ABC8DE4}.Release|Any CPU.Build.0 = Release|Any CPU 67 | {6E8F8B45-2A2D-4E5A-8573-3559337E68F3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 68 | {6E8F8B45-2A2D-4E5A-8573-3559337E68F3}.Debug|Any CPU.Build.0 = Debug|Any CPU 69 | {6E8F8B45-2A2D-4E5A-8573-3559337E68F3}.Release|Any CPU.ActiveCfg = Release|Any CPU 70 | {6E8F8B45-2A2D-4E5A-8573-3559337E68F3}.Release|Any CPU.Build.0 = Release|Any CPU 71 | {A1FCAE3E-523E-4E33-8860-DD39DDDF0F62}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 72 | {A1FCAE3E-523E-4E33-8860-DD39DDDF0F62}.Debug|Any CPU.Build.0 = Debug|Any CPU 73 | {A1FCAE3E-523E-4E33-8860-DD39DDDF0F62}.Release|Any CPU.ActiveCfg = Release|Any CPU 74 | {A1FCAE3E-523E-4E33-8860-DD39DDDF0F62}.Release|Any CPU.Build.0 = Release|Any CPU 75 | {E953E4AD-49FD-4BD8-AFD0-5EDA98DC10C1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 76 | {E953E4AD-49FD-4BD8-AFD0-5EDA98DC10C1}.Release|Any CPU.ActiveCfg = Release|Any CPU 77 | {7151CE06-904E-485D-8BC3-A7174A9D5D29}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 78 | {7151CE06-904E-485D-8BC3-A7174A9D5D29}.Debug|Any CPU.Build.0 = Debug|Any CPU 79 | {7151CE06-904E-485D-8BC3-A7174A9D5D29}.Release|Any CPU.ActiveCfg = Release|Any CPU 80 | {7151CE06-904E-485D-8BC3-A7174A9D5D29}.Release|Any CPU.Build.0 = Release|Any CPU 81 | EndGlobalSection 82 | GlobalSection(SolutionProperties) = preSolution 83 | HideSolutionNode = FALSE 84 | EndGlobalSection 85 | GlobalSection(NestedProjects) = preSolution 86 | {7F920459-28E6-444D-8135-CE18911A38B9} = {26ABE49E-2A2F-4115-8425-9BAEE6E153A4} 87 | EndGlobalSection 88 | GlobalSection(ExtensibilityGlobals) = postSolution 89 | SolutionGuid = {96EBF082-C7A9-4780-B27A-EC4A0AEB90D7} 90 | EndGlobalSection 91 | EndGlobal 92 | -------------------------------------------------------------------------------- /UnityModManagerApp/UnityModManagerApp.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | {6E8F8B45-2A2D-4E5A-8573-3559337E68F3} 6 | false 7 | WinExe 8 | 512 9 | net472 10 | latest 11 | UnityModManagerNet.Installer 12 | UnityModManagerNet.Installer.Program 13 | DUMM.ico 14 | DearUnityModManager 15 | true 16 | 1.0.0.0 17 | 1.0.0.0 18 | 1.0.0.0 19 | 1.0.0.0 20 | 李允 21 | Legend 22 | Copyright © Legend 2011-$([System.DateTime]::Now.ToString('yyyy')) 23 | 亲爱的Unity游戏MOD管理器 24 | $(Description) 25 | 26 | 27 | none 28 | false 29 | 30 | 31 | 32 | ..\lib\0Harmony.dll 33 | 34 | 35 | ..\lib\0Harmony-1.2.dll 36 | 37 | 38 | ..\lib\0Harmony12.dll 39 | 40 | 41 | ..\lib\dnlib.dll 42 | 43 | 44 | ..\lib\Ionic.Zip.dll 45 | 46 | 47 | ..\lib\IrisSkin4.dll 48 | 49 | 50 | ..\lib\Newtonsoft.Json.dll 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | DownloadExtraFiles.cs 63 | 64 | 65 | 66 | DownloadMod.cs 67 | 68 | 69 | 70 | Form.cs 71 | 72 | 73 | 74 | 75 | DownloadExtraFiles.cs 76 | 77 | 78 | DownloadMod.cs 79 | 80 | 81 | Form.cs 82 | 83 | 84 | ResXFileCodeGenerator 85 | Resources.Designer.cs 86 | Designer 87 | 88 | 89 | True 90 | Resources.resx 91 | True 92 | 93 | 94 | 95 | SettingsSingleFileGenerator 96 | Settings.Designer.cs 97 | 98 | 99 | True 100 | Settings.settings 101 | True 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | D:\games\native\release\game\file -dd!~ . "$(TargetDir)\" 112 | D:\games\native\release\game\file "-cd!^~" "(?i)(unity\d+|assembly)$" "$(SolutionDir)lib" "$(TargetDir)\" 113 | 114 | 115 | D:\games\native\release\game\file -dd!~ . "$(TargetDir)\" 116 | D:\games\native\release\game\file "-cd!^~::-m!~" "(?i)(unity\d+|assembly)$::." "$(SolutionDir)lib::$(TargetDir)\" "$(TargetDir)$(TargetName)::*" "?::1" 117 | 118 | -------------------------------------------------------------------------------- /Updater/Properties/Resources.resx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | text/microsoft-resx 107 | 108 | 109 | 2.0 110 | 111 | 112 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 113 | 114 | 115 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | -------------------------------------------------------------------------------- /UnityModManagerApp/Updates.cs: -------------------------------------------------------------------------------- 1 | using Newtonsoft.Json; 2 | 3 | using System; 4 | using System.Collections.Generic; 5 | using System.Linq; 6 | using System.Net; 7 | using System.Net.NetworkInformation; 8 | using System.Windows.Forms; 9 | using UnityModManagerNet.ConsoleInstaller; 10 | 11 | namespace UnityModManagerNet.Installer 12 | { 13 | public partial class UnityModManagerForm 14 | { 15 | private readonly Dictionary> _repositories = new(); 16 | private const string RepositoryUrl = "raw.githubusercontent.com"; 17 | 18 | private void CheckModUpdates() 19 | { 20 | if (selectedGame == null || !HasNetworkConnection()) return; 21 | 22 | if (!_repositories.ContainsKey(selectedGame)) 23 | _repositories.Add(selectedGame, new HashSet()); 24 | 25 | var urls = new HashSet(); 26 | foreach (var mod in _mods.Where(mod => !string.IsNullOrEmpty(mod.Repository))) 27 | { 28 | urls.Add(mod.Repository); 29 | } 30 | 31 | if (urls.Count <= 0) return; 32 | foreach (var url in urls) 33 | { 34 | try 35 | { 36 | using var wc = new WebClient {Encoding = System.Text.Encoding.UTF8}; 37 | wc.DownloadStringCompleted += (sender, e) => { ModUpdates_DownloadStringCompleted(sender, e, selectedGame, url); }; 38 | wc.DownloadStringAsync(new Uri(url)); 39 | } 40 | catch (Exception e) 41 | { 42 | ConsoleInstaller.Log.Print(e.Message); 43 | ConsoleInstaller.Log.Print($"从网站“{url}”检查MOD新版本失败!"); 44 | } 45 | } 46 | } 47 | 48 | private void ModUpdates_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e, GameInfo game, string url) 49 | { 50 | if (e.Error != null) 51 | { 52 | ConsoleInstaller.Log.Print(e.Error.Message); 53 | return; 54 | } 55 | 56 | if (e.Cancelled || string.IsNullOrEmpty(e.Result) || !_repositories.ContainsKey(game)) return; 57 | try 58 | { 59 | var repository = JsonConvert.DeserializeObject(e.Result); 60 | if (repository == null || repository.Releases == null || repository.Releases.Length == 0) 61 | return; 62 | 63 | listMods.Invoke((MethodInvoker)delegate 64 | { 65 | foreach (var v in repository.Releases) 66 | { 67 | _repositories[game].Add(v); 68 | } 69 | if (selectedGame == game) 70 | RefreshModList(); 71 | }); 72 | } 73 | catch (Exception ex) 74 | { 75 | ConsoleInstaller.Log.Print(ex.Message); 76 | ConsoleInstaller.Log.Print($"从网站“{url}”检查MOD新版本失败!"); 77 | } 78 | } 79 | 80 | private void CheckLastVersion() 81 | { 82 | if (string.IsNullOrEmpty(config.Repository)) 83 | return; 84 | 85 | ConsoleInstaller.Log.Print("正在检查MOD管理器的新版本……"); 86 | 87 | if (!HasNetworkConnection()) 88 | { 89 | ConsoleInstaller.Log.Print("无法访问网站,请检查防火墙或代理设置!"); 90 | return; 91 | } 92 | 93 | try 94 | { 95 | using var wc = new WebClient {Encoding = System.Text.Encoding.UTF8}; 96 | wc.DownloadStringCompleted += LastVersion_DownloadStringCompleted; 97 | wc.DownloadStringAsync(new Uri(config.Repository)); 98 | } 99 | catch (Exception e) 100 | { 101 | ConsoleInstaller.Log.Print(e.Message); 102 | ConsoleInstaller.Log.Print($"下载MOD新版本失败!"); 103 | } 104 | } 105 | 106 | private void LastVersion_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e) 107 | { 108 | if (e.Error != null) 109 | { 110 | ConsoleInstaller.Log.Print(e.Error.Message); 111 | return; 112 | } 113 | 114 | if (e.Cancelled || string.IsNullOrEmpty(e.Result)) return; 115 | try 116 | { 117 | var repository = JsonConvert.DeserializeObject(e.Result); 118 | if (repository?.Releases == null || repository.Releases.Length == 0) return; 119 | 120 | var release = repository.Releases.FirstOrDefault(x => x.Id == nameof(UnityModManager)); 121 | if (release == null || string.IsNullOrEmpty(release.Version)) return; 122 | 123 | var ver = ConsoleInstaller.Utils.ParseVersion(release.Version); 124 | if (version < ver) 125 | { 126 | btnDownloadUpdate.Text = $@"下载V{release.Version}"; 127 | ConsoleInstaller.Log.Print($"有可用的新版本。"); 128 | } 129 | else ConsoleInstaller.Log.Print($"没有可用的新版本。"); 130 | } 131 | catch (Exception ex) 132 | { 133 | ConsoleInstaller.Log.Print(ex.Message); 134 | ConsoleInstaller.Log.Print($"检查MOD新版本时出错!"); 135 | } 136 | } 137 | 138 | public static bool HasNetworkConnection() 139 | { 140 | try 141 | { 142 | using var ping = new Ping(); 143 | var reply = ping.Send(RepositoryUrl, 3000); 144 | return reply?.Status == IPStatus.Success; 145 | } 146 | catch (Exception e) 147 | { 148 | ConsoleInstaller.Log.Print(e.Message); 149 | } 150 | 151 | return false; 152 | } 153 | } 154 | } -------------------------------------------------------------------------------- /UnityModManager/Properties/Resources.resx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | 121 | 下载最新的英文版本 122 | 123 | -------------------------------------------------------------------------------- /UnityModManagerApp/Properties/Resources.resx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | 121 | DUMMUpdater.exe 122 | 123 | 124 | 去GitHub网站下载亲爱的Unity游戏MOD管理器源代码 125 | 126 | 127 | 128 | ..\images\dragdropfiles.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a 129 | 130 | -------------------------------------------------------------------------------- /UnityModManager/Window_GUI.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | namespace UnityModManagerNet 6 | { 7 | public partial class UnityModManager 8 | { 9 | public partial class UI 10 | { 11 | internal class WindowParams 12 | { 13 | public int? Width { get; set; } 14 | public int? Height { get; set; } 15 | } 16 | 17 | internal class Window_GUI 18 | { 19 | internal static readonly List mList = new List(); 20 | internal readonly HashSet mDestroyCounter = new HashSet(); 21 | 22 | private const int MARGIN = 50; 23 | 24 | private int mId; 25 | private Rect mWindowRect; 26 | private Vector2 mScrollPosition; 27 | private int mWidth; 28 | private int mHeight; 29 | private int mRecalculateFrame; 30 | 31 | private bool Recalculating 32 | { 33 | get { return mRecalculateFrame == Time.frameCount; } 34 | } 35 | 36 | private bool mOpened; 37 | public bool Opened 38 | { 39 | get { return mOpened; } 40 | internal set 41 | { 42 | mOpened = value; 43 | if (value) 44 | { 45 | Reset(); 46 | } 47 | } 48 | } 49 | 50 | public WindowParams Params { get; internal set; } 51 | 52 | internal string title; 53 | internal int unique; 54 | internal Action onGui; 55 | internal Action onClose; 56 | 57 | public Window_GUI(Action onGui, Action onClose, string title, int unique, WindowParams @params = null) 58 | { 59 | mId = GetNextWindowId(); 60 | mList.Add(this); 61 | this.onGui = onGui; 62 | this.onClose = onClose; 63 | this.unique = unique; 64 | this.title = title; 65 | Params = @params ?? new WindowParams(); 66 | } 67 | 68 | public void Render() 69 | { 70 | if (Recalculating) 71 | { 72 | mWindowRect = GUILayout.Window(mId, mWindowRect, WindowFunction, "", window); 73 | if (mWindowRect.width > 0) 74 | { 75 | mWidth = (int)(Math.Min(Params.Width ?? mWindowRect.width, Screen.width - MARGIN * 2)); 76 | mHeight = (int)(Math.Min(Params.Height ?? mWindowRect.height, Screen.height - MARGIN * 2)); 77 | mWindowRect.x = (int)(Math.Max(Screen.width - mWidth, 0) / 2); 78 | mWindowRect.y = (int)(Math.Max(Screen.height - mHeight, 0) / 2); 79 | } 80 | } 81 | else 82 | { 83 | mWindowRect = GUILayout.Window(mId, mWindowRect, WindowFunction, "", window, GUILayout.Width(mWidth), GUILayout.Height(mHeight + 10)); 84 | GUI.BringWindowToFront(mId); 85 | } 86 | } 87 | 88 | private void WindowFunction(int windowId) 89 | { 90 | if (title != null) 91 | GUILayout.Label(title, h1); 92 | if (!Recalculating) 93 | mScrollPosition = GUILayout.BeginScrollView(mScrollPosition); 94 | onGui.Invoke(this); 95 | if (!Recalculating) 96 | GUILayout.EndScrollView(); 97 | //if (GUILayout.Button("Close", button)) 98 | // Opened = false; 99 | } 100 | 101 | internal void Reset() 102 | { 103 | mRecalculateFrame = Time.frameCount; 104 | mWindowRect = new Rect(-9000, 0, 0, 0); 105 | } 106 | 107 | /// 108 | /// [] 109 | /// 110 | public void Close() 111 | { 112 | if (!Opened) return; 113 | 114 | Opened = false; 115 | 116 | if (onClose != null) 117 | { 118 | try 119 | { 120 | onClose(); 121 | } 122 | catch (Exception e) 123 | { 124 | Logger.Error("Window.OnClose: " + e.GetType() + " - " + e.Message); 125 | Console.WriteLine(e.ToString()); 126 | } 127 | } 128 | } 129 | } 130 | 131 | /// 132 | /// Creates and displays window. Caches by title or unique. (deferred) [] 133 | /// 134 | internal static void ShowWindow(Action onGui, string title, int unique, WindowParams windowParams = null) 135 | { 136 | ShowWindow(onGui, null, title, unique, windowParams); 137 | } 138 | 139 | /// 140 | /// Creates and displays window. Caches by title or unique saving window parameters. (deferred) [] 141 | /// 142 | internal static void ShowWindow(Action onGui, Action onClose, string title, int unique, WindowParams windowParams = null) 143 | { 144 | if (onGui == null) 145 | { 146 | throw new ArgumentNullException("onGui"); 147 | } 148 | 149 | Window_GUI obj = null; 150 | foreach (var item in Window_GUI.mList) 151 | { 152 | if (unique == 0 && item.title == title || unique != 0 && item.unique == unique) 153 | { 154 | item.Close(); 155 | obj = item; 156 | obj.title = title; 157 | obj.onGui = onGui; 158 | obj.onClose = onClose; 159 | break; 160 | } 161 | } 162 | if (obj == null) 163 | { 164 | obj = new Window_GUI(onGui, onClose, title, unique, windowParams); 165 | } 166 | obj.Opened = true; 167 | } 168 | } 169 | } 170 | } --------------------------------------------------------------------------------