13 Commits
Author SHA1 Message Date
miniduikboot c91706bd67 Merge pull request #94 from DaemonBeast/fix/github-ci
Update GitHub CI workflow
2025-04-19 08:17:31 +02:00
Daemon 25964208ac Update GitHub CI workflow 2025-03-30 07:13:50 +01:00
js6pak d50b40ab35 Update to 2025.3.25 (16.0.0) 2025-03-25 20:49:49 +01:00
Alexejheroandjs6pak e27a79249e Add ReactorCredits (#87)
Co-authored-by: js6pak <me@6pak.dev>
2024-08-22 23:58:12 +02:00
Alexejhero 2c1eeaff9d Update stylecop to support latest C# 2024-08-22 23:44:45 +02:00
js6pak 7d3ffa3975 Use a high default value for Window._lastWindowId to avoid conflicts with other mods 2024-08-20 21:08:04 +02:00
js6pak 2b357512c4 Cleanup text after calling GetTextInfo
Turns out GetTextInfo changes text internally and because TextBoxTMP#GiveFocus now sets caretPos based on text length it was causing crashes.
2024-08-20 21:08:04 +02:00
Alexejhero 32875a2d3d Bump patch version 2024-08-20 21:08:04 +02:00
Alexejhero de3b20e205 Fix free name textbox by not changing it as much
I dont care that the text is smaller and no one else cares either
2024-08-17 05:25:48 +02:00
Alexejhero bbdbd5bec8 Fix ambiguous patch exception 2024-08-17 05:25:48 +02:00
Alexejhero f55036efbc Update GameLibs to 2024.8.13 2024-08-17 05:25:47 +02:00
js6pak 809b8957a4 Add a "Hard crash" button to debugger
<!-- ps-id: 10f09e20-b954-4bd7-ac82-b1a523431770 -->
2024-08-17 05:25:47 +02:00
js6pak 27e8cb12e5 Fix a build warning in benchmarks 2024-08-17 05:25:47 +02:00
24 changed files with 760 additions and 529 deletions

No files matched your search

+10 -10
View File
@@ -4,14 +4,14 @@ on: ["push", "pull_request"]
jobs:
build:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
submodules: true
- uses: actions/cache@v3
- uses: actions/cache@v4
with:
path: |
~/.nuget/packages
@@ -21,36 +21,36 @@ jobs:
${{ runner.os }}-nuget-
- name: Setup .NET
uses: actions/setup-dotnet@v2
uses: actions/setup-dotnet@v4
with:
dotnet-version: 8.0.x
- name: Run the Cake script
uses: cake-build/cake-action@v1
uses: cake-build/cake-action@v3
with:
verbosity: Diagnostic
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Reactor.dll
path: Reactor/bin/Release/net6.0/Reactor.dll
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Reactor.nupkg
path: Reactor/bin/Release/Reactor.*.nupkg
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Reactor.Networking.Shared.nupkg
path: Reactor.Networking.Shared/bin/Release/*.nupkg
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Reactor.Debugger.dll
path: Reactor.Debugger/bin/Release/net6.0/Reactor.Debugger.dll
- uses: softprops/action-gh-release@v1
- uses: softprops/action-gh-release@v2
if: github.ref_type == 'tag'
with:
draft: true
+2 -2
View File
@@ -1,7 +1,7 @@
<Project>
<ItemGroup>
<PackageReference Include="BepInEx.Unity.IL2CPP" Version="6.0.0-be.679" Private="false" ExcludeAssets="runtime;native" />
<PackageReference Include="AmongUs.GameLibs.Steam" Version="2024.6.18" PrivateAssets="all" />
<PackageReference Include="BepInEx.Unity.IL2CPP" Version="6.0.0-be.733" Private="false" ExcludeAssets="runtime;native" />
<PackageReference Include="AmongUs.GameLibs.Steam" Version="2025.3.25" PrivateAssets="all" />
<PackageReference Include="BepInEx.AutoPlugin" Version="1.1.0" PrivateAssets="all" />
<PackageReference Include="BepInEx.IL2CPP.MSBuild" Version="2.0.1" PrivateAssets="all" ExcludeAssets="runtime" />
+2 -2
View File
@@ -8,7 +8,7 @@
<RestorePackagesWithLockFile>true</RestorePackagesWithLockFile>
<VersionPrefix>2.2.0</VersionPrefix>
<VersionPrefix>2.4.0</VersionPrefix>
<VersionSuffix>dev</VersionSuffix>
<Authors>NuclearPowered</Authors>
@@ -35,7 +35,7 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="StyleCop.Analyzers" Version="1.2.0-beta.507" PrivateAssets="all" />
<PackageReference Include="StyleCop.Analyzers" Version="1.2.0-beta.556" PrivateAssets="all" />
<AdditionalFiles Include="$(MSBuildThisFileDirectory)\stylecop.json" Link="stylecop.json" Visible="false" />
</ItemGroup>
<PropertyGroup>
+1 -1
View File
@@ -29,7 +29,7 @@ public class AssetBundleBenchmarks
public static IEnumerable<string> ValuesForAssetBundleName()
{
yield return $"default-{AssetBundleManager.TargetName}{AssetBundleManager.BundleExtension}";
yield return $"{AssetBundleManager.GetFileName("default", false)}";
// yield return "submerged";
}
+98 -107
View File
@@ -4,9 +4,9 @@
"net6.0": {
"AmongUs.GameLibs.Steam": {
"type": "Direct",
"requested": "[2024.6.18, )",
"resolved": "2024.6.18",
"contentHash": "xb+HP1xXn4/ES8AgXpk9xeoW568LFYw5NTjY6bHwd6vQjHDf2kT1xHMmQ1me5Vfee/Gp69YIMZDXUAUToG7Elg=="
"requested": "[2025.3.25, )",
"resolved": "2025.3.25",
"contentHash": "2QxQXgZDcQOdAIDXrNLrQ7veEzD6EBzuaRjzSbHptWUPUsuVc3I5Ur3xMkPPwmSGsDHjLuAGE84yRjV6oJxGxw=="
},
"BenchmarkDotNet": {
"type": "Direct",
@@ -40,64 +40,76 @@
},
"BepInEx.Unity.IL2CPP": {
"type": "Direct",
"requested": "[6.0.0-be.679, )",
"resolved": "6.0.0-be.679",
"contentHash": "KnfMjWSXI5+dxbkLCy8VssEnZtTN3MXUHDdBkvPbMiZ6oR1RGZWdLlA90/XQkY/4kMA5P4OCZP4eQ1o0XftbSQ==",
"requested": "[6.0.0-be.733, )",
"resolved": "6.0.0-be.733",
"contentHash": "lnoGaPHjIdGfEiKtf89knaTdLXe4IUqVLdoYqW8NYhhNqgxa3oNwScjTmuYQpa4Leew3937+slq2WIjvX/DUwQ==",
"dependencies": {
"BepInEx.Core": "6.0.0-be.679",
"BepInEx.Unity.Common": "6.0.0-be.679",
"HarmonyX": "2.10.1",
"Iced": "1.18.0",
"Il2CppInterop.Generator": "1.4.6-ci.389",
"Il2CppInterop.HarmonySupport": "1.4.6-ci.389",
"Il2CppInterop.Runtime": "1.4.6-ci.389",
"MonoMod.RuntimeDetour": "22.5.1.1",
"Samboy063.Cpp2IL.Core": "2022.1.0-development.866"
"BepInEx.Core": "6.0.0-be.733",
"BepInEx.Unity.Common": "6.0.0-be.733",
"HarmonyX": "2.10.2",
"Iced": "1.21.0",
"Il2CppInterop.Generator": "1.4.6-ci.426",
"Il2CppInterop.HarmonySupport": "1.4.6-ci.426",
"Il2CppInterop.Runtime": "1.4.6-ci.426",
"MonoMod.RuntimeDetour": "22.7.31.1",
"Samboy063.Cpp2IL.Core": "2022.1.0-pre-release.18"
}
},
"StyleCop.Analyzers": {
"type": "Direct",
"requested": "[1.2.0-beta.507, )",
"resolved": "1.2.0-beta.507",
"contentHash": "/FtugDT66cKJJ+GGH7rNpG6UDrT4iIWz45M6lrXXHobDUFDHw+q5VgkbiR+6ffTO564ge7w6fQh/eoQhVdJO8Q==",
"requested": "[1.2.0-beta.556, )",
"resolved": "1.2.0-beta.556",
"contentHash": "llRPgmA1fhC0I0QyFLEcjvtM2239QzKr/tcnbsjArLMJxJlu0AA5G7Fft0OI30pHF3MW63Gf4aSSsjc5m82J1Q==",
"dependencies": {
"StyleCop.Analyzers.Unstable": "1.2.0.507"
"StyleCop.Analyzers.Unstable": "1.2.0.556"
}
},
"AsmResolver": {
"type": "Transitive",
"resolved": "5.1.0",
"contentHash": "7PjujQzgQ3wjzqZYT4CY8SV6zx7FY6swIwj3Yk4QLolLqo9sBPb7FLF3W30QFvCsCkNfiVWXlSbeZKs4xGgQOQ=="
"resolved": "6.0.0-beta.1",
"contentHash": "M5btCR/rmrx32jZsoN6CLQ/VQk8lN8hvPb6lgojua7pjNoo7StAl92koMC8qz4vzZyH2CNqxLSDoswRvyyK/vA=="
},
"AsmResolver.DotNet": {
"type": "Transitive",
"resolved": "5.1.0",
"contentHash": "oKrBU94OaSrbbTwydvpLRFalYxozrNXGkl13nIkm823ZFQtPNYOiOMJb5DQLvkCJlWyis7q865tg803T5zg9IA==",
"resolved": "6.0.0-beta.1",
"contentHash": "PTq8nNQvhgTxF1iARCknffCsu7Iq9B0kN7TVC8iMaU7uEYog3xvVqH/0+TreY8GW74/+MqhZt/yEFsvS4oAduQ==",
"dependencies": {
"AsmResolver.PE": "5.1.0",
"System.Text.Json": "6.0.7"
"AsmResolver.PE": "6.0.0-beta.1"
}
},
"AsmResolver.PE": {
"type": "Transitive",
"resolved": "5.1.0",
"contentHash": "XD3iAgLSInJIODKUUlpHWXf8MR9H1SFMb1lsmabb4GxxxnDQRPjMxjglv2NOCjQQuNB2Oh0bvjHE7ewf82UqyQ==",
"resolved": "6.0.0-beta.1",
"contentHash": "KadLvx/zzFCJyF+E4jG6jPE1d0iJquzL6+hm8GBivBAs6nwHC8s6g4c857QwQCzXMWza6Vz5Q+3hFiNuOfKaWQ==",
"dependencies": {
"AsmResolver.PE.File": "5.1.0"
"AsmResolver.PE.File": "6.0.0-beta.1"
}
},
"AsmResolver.PE.File": {
"type": "Transitive",
"resolved": "5.1.0",
"contentHash": "YituBYe0Fh471sXQMfu+f4tWKX/JZvRwrX6g/SVsr4XkUIUzYi/aGT3/QvjHoYx19fE1KYOB6zBKqPkkOK7HPw==",
"resolved": "6.0.0-beta.1",
"contentHash": "+lusB9UMHevI5aQsu73NQ1ctPMLFvyHAsEf8vjaJ/py+kX1DkU0JkbERtBRmaf58/hBZ7cyrE7gFnjoo7Bbg7A==",
"dependencies": {
"AsmResolver": "5.1.0"
"AsmResolver": "6.0.0-beta.1"
}
},
"AssetRipper.VersionUtilities": {
"AssetRipper.CIL": {
"type": "Transitive",
"resolved": "1.3.1",
"contentHash": "/1D18NOpqm7rS7+qVUbAReVMNWwgDuYpsnf0RkX1Aah/I0a0irqldoFJ+Kku7YdbSm0zqD+Z6iYUGKoP3GwTNQ=="
"resolved": "1.1.0",
"contentHash": "nSz1cBjgVeKv+esfDtyQGC1mY9b4C4NFStytdoa9DMozDC8uth6930kAsuWZEivj9GqWSqENnaQUGnl23WpmnQ==",
"dependencies": {
"AsmResolver.DotNet": "6.0.0-beta.1"
}
},
"AssetRipper.Gee.External.Capstone": {
"type": "Transitive",
"resolved": "2.3.2",
"contentHash": "wOr5PQPL/2ZfD7+ebt6cpRbUhSzSY5nlHGHjjzuQRiU5zkQlqQNwWDLX0M3smrm5IkaDvONkmDjFMKTlZJmyuQ=="
},
"AssetRipper.Primitives": {
"type": "Transitive",
"resolved": "3.1.3",
"contentHash": "djZbN/+EXmI+Oia9Pm0LyjZVCPLf60TPSL5rGb7mBEYM5F4CN3nPFXvl2yA5LanPZoHS1Yq7PghGUmkP7Pv9RQ=="
},
"BenchmarkDotNet.Annotations": {
"type": "Transitive",
@@ -106,21 +118,21 @@
},
"BepInEx.Core": {
"type": "Transitive",
"resolved": "6.0.0-be.679",
"contentHash": "yg6NSGeevv86P2ERe3VDEa7W/l0lmM7m+AdPSW78dcBOe36Zc3QK/vmNEq57txGa+1kwv+macXLSwkL4UpucjA==",
"resolved": "6.0.0-be.733",
"contentHash": "uRzpyUdU3L8Y4ZW+ZnF73orq0E40MjGK6XcPzm24CrrWB5bUshwdrtFQfrwZB6jcZVNVV6PXE92hScEI+Jaoqw==",
"dependencies": {
"HarmonyX": "2.10.1",
"MonoMod.Utils": "22.5.1.1",
"HarmonyX": "2.10.2",
"MonoMod.Utils": "22.7.31.1",
"SemanticVersioning": "2.0.2"
}
},
"BepInEx.Unity.Common": {
"type": "Transitive",
"resolved": "6.0.0-be.679",
"contentHash": "q4Sux3ULBDasSQAtlAWzAKpAfCyV3ujxVJpK7ydV1bUIksaHNqw9yYTLCUrw8p4DQ/wHvShECFjzeMGHi+wylA==",
"resolved": "6.0.0-be.733",
"contentHash": "KfdiHVSOPnIbDEF7zLPTSXDjKqIEq7SgffqFFKIxOBkCws7LdtSRQsamUcxdD0H8yopcgdlqobIp6t8e4M/k9Q==",
"dependencies": {
"AssetRipper.VersionUtilities": "1.2.1",
"MonoMod.Utils": "22.5.1.1"
"AssetRipper.Primitives": "3.1.3",
"MonoMod.Utils": "22.7.31.1"
}
},
"CommandLineParser": {
@@ -130,8 +142,8 @@
},
"Disarm": {
"type": "Transitive",
"resolved": "2022.1.0-master.26",
"contentHash": "YnZEbRGr0nG+N3G8WbRQ4Lkg8dTD3oso9iJlCVBmyhEyhLyqs+drBs1kWQbQqFPnb9mi/RJ++R9bPb+L3HF03Q=="
"resolved": "2022.1.0-master.34",
"contentHash": "sxzTci5eSdl+sFoaGsMZIp7X/eB5ZzplM3CppvD1CWoiZ8rSa43XGLC19G5e8n6mjutNBfN9yL+RER5PCspHFg=="
},
"Gee.External.Capstone": {
"type": "Transitive",
@@ -140,8 +152,8 @@
},
"HarmonyX": {
"type": "Transitive",
"resolved": "2.10.1",
"contentHash": "9LodMC9Y0u1TW96eKJoWrFJFpmzbgojEO38/Q+e7c1mFPhmHt8xcR8qhI06iF1rf0Dnsk+hqENFVSgbtwl/bEw==",
"resolved": "2.10.2",
"contentHash": "/5WwkxXX8mPsRuigQt957rJGx1f0dDQxk+bvk4yYITKFjXas9Em+O71zEP8X0ym8OFQQ2XH/2SxS4NC7vEC+Xg==",
"dependencies": {
"MonoMod.RuntimeDetour": "22.3.23.4",
"System.Reflection.Emit": "4.7.0"
@@ -149,13 +161,13 @@
},
"Iced": {
"type": "Transitive",
"resolved": "1.18.0",
"contentHash": "G60lZOvbvqttA+SBSv/yY6/wUboXKJlkffhSNR9iOrx0M5gpcK1TRr6xrFR+qAhqIAhvrsPF1jkn9fYb4lEufQ=="
"resolved": "1.21.0",
"contentHash": "dv5+81Q1TBQvVMSOOOmRcjJmvWcX3BZPZsIq31+RLc5cNft0IHAyNlkdb7ZarOWG913PyBoFDsDXoCIlKmLclg=="
},
"Il2CppInterop.Common": {
"type": "Transitive",
"resolved": "1.4.6-ci.389",
"contentHash": "KTyf2f66Q2mS9a6xhvoPWwD0VzRIoskPMVQehaVMo1dx4Di1FPFsKqukQ+ob6wgP5Rbnx53kiH0PY+IRSb35XA==",
"resolved": "1.4.6-ci.426",
"contentHash": "pI0kU0qqJKMP6z9eFz4+WJtGIwklfPxW2yWEY9vKnrN9bbYMusK3v5uFWV8al7S/HPSATV5jNWH1hyTvP7kglA==",
"dependencies": {
"Iced": "1.17.0",
"Microsoft.Extensions.Logging.Abstractions": "6.0.1",
@@ -164,36 +176,31 @@
},
"Il2CppInterop.Generator": {
"type": "Transitive",
"resolved": "1.4.6-ci.389",
"contentHash": "XJX4sn/RzAEBNIZZXuyDcLZrFx5tCoahujDu5aKWjApiMj/nTRQAxZn17daIIvd9aHqLaAfiWWth5QDLIt2bKw==",
"resolved": "1.4.6-ci.426",
"contentHash": "kecdx/vbNl0RtfzfYW592jU8PMyq1JbzpvoJSvqwO+tV6icp9SljXy6yG8bT/wt0gaPj9mFUNDTe2Wu6M6XGZQ==",
"dependencies": {
"Il2CppInterop.Common": "1.4.6-ci.389",
"Il2CppInterop.Common": "1.4.6-ci.426",
"Mono.Cecil": "0.11.3"
}
},
"Il2CppInterop.HarmonySupport": {
"type": "Transitive",
"resolved": "1.4.6-ci.389",
"contentHash": "Xd2zK6sLqwA0ReyUy83SWKcALwY99fq6vVL5gFOMN5Ct8OOVhtNIws0ysCWsfx1GL0RJiRYfR4pza/MmWRz4PQ==",
"resolved": "1.4.6-ci.426",
"contentHash": "rd2T5o6SybIc12hmX3HktTF5n27hFb0w4mNSExq7h1YsmrNlt7x+Ac1MBnnB0JwPLIg7w8LjnKjoIX6Gf626ng==",
"dependencies": {
"HarmonyX": "2.10.0",
"Il2CppInterop.Runtime": "1.4.6-ci.389"
"Il2CppInterop.Runtime": "1.4.6-ci.426"
}
},
"Il2CppInterop.Runtime": {
"type": "Transitive",
"resolved": "1.4.6-ci.389",
"contentHash": "nzYjuVzDG/O8+AQ8ax3WVHf+ZVsQKrVtp/yvuW8XoEPLdkbgryIrMo75dvN+tPqxOU3o2MPt9MZ9j25P5aVJMw==",
"resolved": "1.4.6-ci.426",
"contentHash": "0O0oI7gOqJixrsjvh1firhuGYK3Yr0uDLp6Q+t5CfcTMmeEX8Plk3pqAP9ZYyilBvh7uW0gv4Golqz08L1GXug==",
"dependencies": {
"Iced": "1.17.0",
"Il2CppInterop.Common": "1.4.6-ci.389"
"Il2CppInterop.Common": "1.4.6-ci.426"
}
},
"js6pak.Gee.External.Capstone": {
"type": "Transitive",
"resolved": "2.1.0",
"contentHash": "YYpq7NM50bSSVUDjXyV/eiITk6syXqItPjKBOb3jEWS6RFsk0DNhpWMPW6b3hKDmArARuWDU6S2pVu1IeVrvIA=="
},
"Microsoft.Bcl.AsyncInterfaces": {
"type": "Transitive",
"resolved": "1.1.0",
@@ -347,11 +354,11 @@
},
"MonoMod.RuntimeDetour": {
"type": "Transitive",
"resolved": "22.5.1.1",
"contentHash": "WG5zLRuAr8KJEnIkKTuIG1OJCrGIT3pjvnAD43E0FDchHf3Dp985MF/8tmIQvAzCZV87JNs6QKeGGqmwDmpXpw==",
"resolved": "22.7.31.1",
"contentHash": "nxVJTvQbWAujaogt5XX3eAy7d22t66Z88aWg9sirPLO9rR/6yNCHAyZpgxXrOsIobZVW0IEZPqNMOBhgke25/w==",
"dependencies": {
"Mono.Cecil": "0.11.4",
"MonoMod.Utils": "22.5.1.1",
"MonoMod.Utils": "22.7.31.1",
"System.Collections.NonGeneric": "4.3.0",
"System.ComponentModel.TypeConverter": "4.3.0",
"System.IO.FileSystem.Primitives": "4.3.0",
@@ -362,8 +369,8 @@
},
"MonoMod.Utils": {
"type": "Transitive",
"resolved": "22.5.1.1",
"contentHash": "vBObO1atXxhi2C4AuC53y87Bqeogi9xIrD1Ym3YWr5uxc8Nrm8SrsFeD1i3x04R999+XQ3FdeHrbXScyWYEHqQ==",
"resolved": "22.7.31.1",
"contentHash": "nI0E1oadXS1iMbfwfCzYF08C1jRQR9cnnHv66a4BSPd4sGu2p6g4BmctCWsdAB6oGKkSJUhcfHfxcfTsDyB94Q==",
"dependencies": {
"Mono.Cecil": "0.11.4",
"System.Collections.NonGeneric": "4.3.0",
@@ -482,30 +489,31 @@
},
"Samboy063.Cpp2IL.Core": {
"type": "Transitive",
"resolved": "2022.1.0-development.866",
"contentHash": "QPMuix/3jRngWBdNSLhAbm9BHYf95Ln1Ph1eCK/cDZdVibxFDFP3a6Yczyx1p7GbN7bRQwrhs2skPJSS/z3m2w==",
"resolved": "2022.1.0-pre-release.18",
"contentHash": "eX9d1IK05jWaEaeuMAE0L5WYHT7thtxz+aWLL/CAaCzZ0TzRPD+WFTjJ0KQO0YWBVO300CX3GwmPmf7TNO+wUg==",
"dependencies": {
"AsmResolver.DotNet": "5.1.0",
"Disarm": "2022.1.0-master.26",
"Iced": "1.18.0",
"Samboy063.LibCpp2IL": "2022.1.0-development.866",
"StableNameDotNet": "0.1.0-development.866",
"js6pak.Gee.External.Capstone": "2.1.0"
"AsmResolver.DotNet": "6.0.0-beta.1",
"AssetRipper.CIL": "1.1.0",
"AssetRipper.Gee.External.Capstone": "2.3.2",
"Disarm": "2022.1.0-master.34",
"Iced": "1.21.0",
"Samboy063.LibCpp2IL": "2022.1.0-pre-release.18",
"StableNameDotNet": "0.1.0-pre-release.15"
}
},
"Samboy063.LibCpp2IL": {
"type": "Transitive",
"resolved": "2022.1.0-development.866",
"contentHash": "EcJSWTfQko8SQozozoUT+aQJVWC8wj8C0YUiPBF4rNRId19yTKp2IXcXnI747v+8/aal222QR6WHfoBK2WlVLg==",
"resolved": "2022.1.0-pre-release.18",
"contentHash": "9zJdTAeErpwJpYDHYwwI0MAC1OyBEfC1ce7dpAOYRUUYCfeaKVWxnSCcyaoY6HDzIoxPkhbfllbwOe49ZmUYuQ==",
"dependencies": {
"AssetRipper.VersionUtilities": "1.3.1",
"Samboy063.WasmDisassembler": "2022.1.0-development.866"
"AssetRipper.Primitives": "3.1.2",
"Samboy063.WasmDisassembler": "2022.1.0-pre-release.15"
}
},
"Samboy063.WasmDisassembler": {
"type": "Transitive",
"resolved": "2022.1.0-development.866",
"contentHash": "2QK8F3eISkLcoW/Nt7wtxyQh31EXAqEMBVXXjEnuxyvXpBXxOIGpjmE3pWhGwxQwDCbe4zBsLF1zUiqq3/pXRA=="
"resolved": "2022.1.0-pre-release.15",
"contentHash": "e6qw81SHS+fS7iZ3qfqZBavVarYbkPElNgDCANF6dNFTYq5+hc80am+4FqQDl+ZVNS47bZDZobxIzHhmriCXGg=="
},
"SemanticVersioning": {
"type": "Transitive",
@@ -514,13 +522,13 @@
},
"StableNameDotNet": {
"type": "Transitive",
"resolved": "0.1.0-development.866",
"contentHash": "DJb8x4dV3ucDgM12sU28HxCdeqY/JudJbeJG6mgXWDJzpFZw2Jd7JF1pKFRNLzh/0gpo8bCGLQS9gOWZmBjdtg=="
"resolved": "0.1.0-pre-release.15",
"contentHash": "aIkEOo8V76vE+9CppHpTFLGXalBw6TAl4/tb6vadmS+gHJMshTVehzQv9cJXy4xZDdANV1uGMRaUFZERcDA2xQ=="
},
"StyleCop.Analyzers.Unstable": {
"type": "Transitive",
"resolved": "1.2.0.507",
"contentHash": "gTY3IQdRqDJ4hbhSA3e/R48oE8b/OiKfvwkt1QdNVfrJK2gMHBV8ldaHJ885jxWZfllK66soa/sdcjh9bX49Tw=="
"resolved": "1.2.0.556",
"contentHash": "zvn9Mqs/ox/83cpYPignI8hJEM2A93s2HkHs8HYMOAQW0PkampyoErAiIyKxgTLqbbad29HX/shv/6LGSjPJNQ=="
},
"System.CodeDom": {
"type": "Transitive",
@@ -879,8 +887,8 @@
},
"System.Runtime.CompilerServices.Unsafe": {
"type": "Transitive",
"resolved": "6.0.0",
"contentHash": "/iUeP3tq1S0XdNNoMz5C9twLSrM/TH+qElHkXWaPvuNOt+99G75NrV0OS2EqHx5wMN7popYjpc8oTjC1y16DLg=="
"resolved": "5.0.0",
"contentHash": "ZD9TMpsmYJLrxbbmdvhwt9YEgG5WntEnZ/d1eH8JBX9LBp+Ju8BSBhUGbZMNVHHomWo2KVImJhTDl2hIgw/6MA=="
},
"System.Runtime.Extensions": {
"type": "Transitive",
@@ -1103,23 +1111,6 @@
"System.Runtime.CompilerServices.Unsafe": "4.5.2"
}
},
"System.Text.Encodings.Web": {
"type": "Transitive",
"resolved": "6.0.0",
"contentHash": "Vg8eB5Tawm1IFqj4TVK1czJX89rhFxJo9ELqc/Eiq0eXy13RK00eubyU6TJE6y+GQXjyV5gSfiewDUZjQgSE0w==",
"dependencies": {
"System.Runtime.CompilerServices.Unsafe": "6.0.0"
}
},
"System.Text.Json": {
"type": "Transitive",
"resolved": "6.0.7",
"contentHash": "/Tf/9XjprpHolbcDOrxsKVYy/mUG/FS7aGd9YUgBVEiHeQH4kAE0T1sMbde7q6B5xcrNUsJ5iW7D1RvHudQNqA==",
"dependencies": {
"System.Runtime.CompilerServices.Unsafe": "6.0.0",
"System.Text.Encodings.Web": "6.0.0"
}
},
"System.Threading": {
"type": "Transitive",
"resolved": "4.3.0",
@@ -1147,7 +1138,7 @@
"reactor": {
"type": "Project",
"dependencies": {
"BepInEx.Unity.IL2CPP": "[6.0.0-be.679, )"
"BepInEx.Unity.IL2CPP": "[6.0.0-be.733, )"
}
}
}
@@ -14,14 +14,12 @@ internal static class GameOptionsPatches
public static void Initialize()
{
var maxImpostors = (Il2CppStructArray<int>) Enumerable.Repeat((int) byte.MaxValue, byte.MaxValue).ToArray();
GameOptionsData.MaxImpostors = maxImpostors;
NormalGameOptionsV07.MaxImpostors = maxImpostors;
HideNSeekGameOptionsV07.MaxImpostors = maxImpostors;
NormalGameOptionsV09.MaxImpostors = maxImpostors;
NormalGameOptionsV09.MaxImpostors = maxImpostors;
var minPlayers = (Il2CppStructArray<int>) Enumerable.Repeat(1, byte.MaxValue).ToArray();
GameOptionsData.MinPlayers = minPlayers;
NormalGameOptionsV07.MinPlayers = minPlayers;
HideNSeekGameOptionsV07.MinPlayers = minPlayers;
NormalGameOptionsV09.MinPlayers = minPlayers;
NormalGameOptionsV09.MinPlayers = minPlayers;
}
[HarmonyPatch(typeof(GameSettingMenu), nameof(GameSettingMenu.Start))]
@@ -1,14 +0,0 @@
using HarmonyLib;
namespace Reactor.Debugger.Patches;
[HarmonyPatch]
internal static class MiscellaneousPatches
{
[HarmonyPatch(typeof(StatsManager), nameof(StatsManager.AmBanned), MethodType.Getter)]
[HarmonyPrefix]
public static void AmBannedPatch(out bool __result)
{
__result = false;
}
}
+69 -29
View File
@@ -1,9 +1,8 @@
using System;
using System.Globalization;
using System.Text;
using BepInEx.Logging;
using HarmonyLib;
using Object = UnityEngine.Object;
using Il2CppInterop.Runtime.InteropTypes.Arrays;
namespace Reactor.Debugger.Patches;
@@ -14,61 +13,102 @@ internal static class RedirectLoggerPatch
private static bool Enabled => DebuggerConfig.RedirectLogger.Value;
private static void Log(Logger logger, Logger.Level level, Il2CppSystem.Object message, Object? context = null)
private static void Log(Logger logger, LogLevel level, Il2CppStringArray? path, Il2CppSystem.Object message, UnityEngine.Object? context = null)
{
var finalMessage = new StringBuilder();
if (logger.category != Logger.Category.None) finalMessage.Append(CultureInfo.InvariantCulture, $"[{logger.category}] ");
if (!string.IsNullOrEmpty(logger.tag)) finalMessage.Append(CultureInfo.InvariantCulture, $"[{logger.tag}] ");
if (context != null) finalMessage.Append(CultureInfo.InvariantCulture, $"[{context.name} ({context.GetIl2CppType().FullName})]");
finalMessage.Append(CultureInfo.InvariantCulture, $" {message.ToString()} ");
_log.Log(
level switch
if (logger.subCategories != null)
{
foreach (var subCategory in logger.subCategories)
{
Logger.Level.Debug => LogLevel.Debug,
Logger.Level.Error => LogLevel.Error,
Logger.Level.Warning => LogLevel.Warning,
Logger.Level.Info => LogLevel.Info,
_ => throw new ArgumentOutOfRangeException(nameof(level), level, null),
},
finalMessage
);
finalMessage.Append(CultureInfo.InvariantCulture, $"[{subCategory}] ");
}
}
if (path != null)
{
foreach (var p in path)
{
finalMessage.Append(CultureInfo.InvariantCulture, $"[{p}] ");
}
}
if (context != null) finalMessage.Append(CultureInfo.InvariantCulture, $"[{context.name} ({context.GetIl2CppType().FullName})] ");
finalMessage.Append(message.ToString());
_log.Log(level, finalMessage);
}
[HarmonyPatch(nameof(Logger.Debug))]
[HarmonyPatch(nameof(Logger.Debug), typeof(Il2CppSystem.Object), typeof(UnityEngine.Object))]
[HarmonyPrefix]
public static bool DebugPatch(Logger __instance, Il2CppSystem.Object message, Object? context)
public static bool DebugPatch(Logger __instance, Il2CppSystem.Object message, UnityEngine.Object? context)
{
if (!Enabled) return true;
Log(__instance, Logger.Level.Debug, message, context);
Log(__instance, LogLevel.Debug, null, message, context);
return false;
}
[HarmonyPatch(nameof(Logger.Info))]
[HarmonyPatch(nameof(Logger.Info), typeof(Il2CppSystem.Object), typeof(UnityEngine.Object))]
[HarmonyPrefix]
public static bool InfoPatch(Logger __instance, Il2CppSystem.Object message, Object? context)
public static bool InfoPatch(Logger __instance, Il2CppSystem.Object message, UnityEngine.Object? context)
{
if (!Enabled) return true;
Log(__instance, Logger.Level.Info, message, context);
Log(__instance, LogLevel.Info, null, message, context);
return false;
}
[HarmonyPatch(nameof(Logger.Warning))]
[HarmonyPatch(nameof(Logger.Warning), typeof(Il2CppSystem.Object), typeof(UnityEngine.Object))]
[HarmonyPrefix]
public static bool WarningPatch(Logger __instance, Il2CppSystem.Object message, Object? context)
public static bool WarningPatch(Logger __instance, Il2CppSystem.Object message, UnityEngine.Object? context)
{
if (!Enabled) return true;
Log(__instance, Logger.Level.Warning, message, context);
Log(__instance, LogLevel.Warning, null, message, context);
return false;
}
[HarmonyPatch(nameof(Logger.Error))]
[HarmonyPatch(nameof(Logger.Error), typeof(Il2CppSystem.Object), typeof(UnityEngine.Object))]
[HarmonyPrefix]
public static bool ErrorPatch(Logger __instance, Il2CppSystem.Object message, Object? context)
public static bool ErrorPatch(Logger __instance, Il2CppSystem.Object message, UnityEngine.Object? context)
{
if (!Enabled) return true;
Log(__instance, Logger.Level.Error, message, context);
Log(__instance, LogLevel.Error, null, message, context);
return false;
}
[HarmonyPatch(nameof(Logger.Debug), typeof(Il2CppStringArray), typeof(Il2CppSystem.Object), typeof(UnityEngine.Object))]
[HarmonyPrefix]
public static bool DebugPatch(Logger __instance, Il2CppStringArray? path, Il2CppSystem.Object message, UnityEngine.Object? context)
{
if (!Enabled) return true;
Log(__instance, LogLevel.Debug, path, message, context);
return false;
}
[HarmonyPatch(nameof(Logger.Info), typeof(Il2CppStringArray), typeof(Il2CppSystem.Object), typeof(UnityEngine.Object))]
[HarmonyPrefix]
public static bool InfoPatch(Logger __instance, Il2CppStringArray? path, Il2CppSystem.Object message, UnityEngine.Object? context)
{
if (!Enabled) return true;
Log(__instance, LogLevel.Info, path, message, context);
return false;
}
[HarmonyPatch(nameof(Logger.Warning), typeof(Il2CppStringArray), typeof(Il2CppSystem.Object), typeof(UnityEngine.Object))]
[HarmonyPrefix]
public static bool WarningPatch(Logger __instance, Il2CppStringArray? path, Il2CppSystem.Object message, UnityEngine.Object? context)
{
if (!Enabled) return true;
Log(__instance, LogLevel.Warning, path, message, context);
return false;
}
[HarmonyPatch(nameof(Logger.Error), typeof(Il2CppStringArray), typeof(Il2CppSystem.Object), typeof(UnityEngine.Object))]
[HarmonyPrefix]
public static bool ErrorPatch(Logger __instance, Il2CppStringArray? path, Il2CppSystem.Object message, UnityEngine.Object? context)
{
if (!Enabled) return true;
Log(__instance, LogLevel.Error, path, message, context);
return false;
}
}
+18 -5
View File
@@ -7,17 +7,30 @@ namespace Reactor.Debugger.Utilities;
internal static class Extensions
{
public static IEnumerator CoCreateLocalGame(this AmongUsClient client)
public static IEnumerator CoCreateLocalGame(this AmongUsClient client, bool isFreePlay = false)
{
try
{
client.NetworkMode = NetworkModes.LocalGame;
if (isFreePlay)
{
client.NetworkMode = NetworkModes.FreePlay;
InnerNetServer.Instance.StartAsServer();
InnerNetServer.Instance.StartAsLocalServer();
client.MainMenuScene = "MainMenu";
client.OnlineScene = "Tutorial";
}
else
{
client.NetworkMode = NetworkModes.LocalGame;
InnerNetServer.Instance.StartAsServer();
client.MainMenuScene = "MatchMaking";
client.OnlineScene = "OnlineGame";
}
client.SetEndpoint(Constants.LocalNetAddress, Constants.GamePlayPort, false);
client.MainMenuScene = "MatchMaking";
client.OnlineScene = "OnlineGame";
}
catch (Il2CppException e)
{
+42
View File
@@ -1,6 +1,11 @@
using System;
using System.Collections;
using System.Linq;
using AmongUs.Data;
using BepInEx.Unity.IL2CPP.Utils;
using Il2CppInterop.Runtime.Attributes;
using Il2CppInterop.Runtime.InteropTypes;
using Reactor.Debugger.Utilities;
using Reactor.Debugger.Window.Tabs;
using Reactor.Utilities.Attributes;
using Reactor.Utilities.ImGui;
@@ -34,6 +39,43 @@ internal sealed class DebuggerWindow : MonoBehaviour
if (AmongUsClient.Instance && AmongUsClient.Instance.AmHost) clientName += " (host)";
GUILayout.Label("Name: " + clientName);
if (GUILayout.Button("Hard crash"))
{
static unsafe void Corrupt(Il2CppObjectBase o)
{
var x = (IntPtr*) o.Pointer;
x[0] = (IntPtr) 0xF00;
}
static IEnumerator CoCrash()
{
if (!PlayerControl.LocalPlayer || !ShipStatus.Instance)
{
yield return AmongUsClient.Instance.CoCreateLocalGame(true);
while (!PlayerControl.LocalPlayer || !ShipStatus.Instance)
{
yield return null;
}
}
var usable = FindObjectsOfType<MonoBehaviour>().First(x => x.TryCast<IUsable>() != null);
if (!usable)
{
Error("Failed to find an IUsable to crash with");
yield break;
}
var cloned = Instantiate(usable, PlayerControl.LocalPlayer.transform.position, default);
Warning($"Crashing with {cloned.name}");
Corrupt(cloned);
}
this.StartCoroutine(CoCrash());
}
GUILayout.BeginHorizontal();
{
foreach (var tab in Tabs)
+96 -110
View File
@@ -4,9 +4,9 @@
"net6.0": {
"AmongUs.GameLibs.Steam": {
"type": "Direct",
"requested": "[2024.6.18, )",
"resolved": "2024.6.18",
"contentHash": "xb+HP1xXn4/ES8AgXpk9xeoW568LFYw5NTjY6bHwd6vQjHDf2kT1xHMmQ1me5Vfee/Gp69YIMZDXUAUToG7Elg=="
"requested": "[2025.3.25, )",
"resolved": "2025.3.25",
"contentHash": "2QxQXgZDcQOdAIDXrNLrQ7veEzD6EBzuaRjzSbHptWUPUsuVc3I5Ur3xMkPPwmSGsDHjLuAGE84yRjV6oJxGxw=="
},
"BepInEx.AutoPlugin": {
"type": "Direct",
@@ -22,93 +22,105 @@
},
"BepInEx.Unity.IL2CPP": {
"type": "Direct",
"requested": "[6.0.0-be.679, )",
"resolved": "6.0.0-be.679",
"contentHash": "KnfMjWSXI5+dxbkLCy8VssEnZtTN3MXUHDdBkvPbMiZ6oR1RGZWdLlA90/XQkY/4kMA5P4OCZP4eQ1o0XftbSQ==",
"requested": "[6.0.0-be.733, )",
"resolved": "6.0.0-be.733",
"contentHash": "lnoGaPHjIdGfEiKtf89knaTdLXe4IUqVLdoYqW8NYhhNqgxa3oNwScjTmuYQpa4Leew3937+slq2WIjvX/DUwQ==",
"dependencies": {
"BepInEx.Core": "6.0.0-be.679",
"BepInEx.Unity.Common": "6.0.0-be.679",
"HarmonyX": "2.10.1",
"Iced": "1.18.0",
"Il2CppInterop.Generator": "1.4.6-ci.389",
"Il2CppInterop.HarmonySupport": "1.4.6-ci.389",
"Il2CppInterop.Runtime": "1.4.6-ci.389",
"MonoMod.RuntimeDetour": "22.5.1.1",
"Samboy063.Cpp2IL.Core": "2022.1.0-development.866"
"BepInEx.Core": "6.0.0-be.733",
"BepInEx.Unity.Common": "6.0.0-be.733",
"HarmonyX": "2.10.2",
"Iced": "1.21.0",
"Il2CppInterop.Generator": "1.4.6-ci.426",
"Il2CppInterop.HarmonySupport": "1.4.6-ci.426",
"Il2CppInterop.Runtime": "1.4.6-ci.426",
"MonoMod.RuntimeDetour": "22.7.31.1",
"Samboy063.Cpp2IL.Core": "2022.1.0-pre-release.18"
}
},
"StyleCop.Analyzers": {
"type": "Direct",
"requested": "[1.2.0-beta.507, )",
"resolved": "1.2.0-beta.507",
"contentHash": "/FtugDT66cKJJ+GGH7rNpG6UDrT4iIWz45M6lrXXHobDUFDHw+q5VgkbiR+6ffTO564ge7w6fQh/eoQhVdJO8Q==",
"requested": "[1.2.0-beta.556, )",
"resolved": "1.2.0-beta.556",
"contentHash": "llRPgmA1fhC0I0QyFLEcjvtM2239QzKr/tcnbsjArLMJxJlu0AA5G7Fft0OI30pHF3MW63Gf4aSSsjc5m82J1Q==",
"dependencies": {
"StyleCop.Analyzers.Unstable": "1.2.0.507"
"StyleCop.Analyzers.Unstable": "1.2.0.556"
}
},
"AsmResolver": {
"type": "Transitive",
"resolved": "5.1.0",
"contentHash": "7PjujQzgQ3wjzqZYT4CY8SV6zx7FY6swIwj3Yk4QLolLqo9sBPb7FLF3W30QFvCsCkNfiVWXlSbeZKs4xGgQOQ=="
"resolved": "6.0.0-beta.1",
"contentHash": "M5btCR/rmrx32jZsoN6CLQ/VQk8lN8hvPb6lgojua7pjNoo7StAl92koMC8qz4vzZyH2CNqxLSDoswRvyyK/vA=="
},
"AsmResolver.DotNet": {
"type": "Transitive",
"resolved": "5.1.0",
"contentHash": "oKrBU94OaSrbbTwydvpLRFalYxozrNXGkl13nIkm823ZFQtPNYOiOMJb5DQLvkCJlWyis7q865tg803T5zg9IA==",
"resolved": "6.0.0-beta.1",
"contentHash": "PTq8nNQvhgTxF1iARCknffCsu7Iq9B0kN7TVC8iMaU7uEYog3xvVqH/0+TreY8GW74/+MqhZt/yEFsvS4oAduQ==",
"dependencies": {
"AsmResolver.PE": "5.1.0",
"System.Text.Json": "6.0.7"
"AsmResolver.PE": "6.0.0-beta.1"
}
},
"AsmResolver.PE": {
"type": "Transitive",
"resolved": "5.1.0",
"contentHash": "XD3iAgLSInJIODKUUlpHWXf8MR9H1SFMb1lsmabb4GxxxnDQRPjMxjglv2NOCjQQuNB2Oh0bvjHE7ewf82UqyQ==",
"resolved": "6.0.0-beta.1",
"contentHash": "KadLvx/zzFCJyF+E4jG6jPE1d0iJquzL6+hm8GBivBAs6nwHC8s6g4c857QwQCzXMWza6Vz5Q+3hFiNuOfKaWQ==",
"dependencies": {
"AsmResolver.PE.File": "5.1.0"
"AsmResolver.PE.File": "6.0.0-beta.1"
}
},
"AsmResolver.PE.File": {
"type": "Transitive",
"resolved": "5.1.0",
"contentHash": "YituBYe0Fh471sXQMfu+f4tWKX/JZvRwrX6g/SVsr4XkUIUzYi/aGT3/QvjHoYx19fE1KYOB6zBKqPkkOK7HPw==",
"resolved": "6.0.0-beta.1",
"contentHash": "+lusB9UMHevI5aQsu73NQ1ctPMLFvyHAsEf8vjaJ/py+kX1DkU0JkbERtBRmaf58/hBZ7cyrE7gFnjoo7Bbg7A==",
"dependencies": {
"AsmResolver": "5.1.0"
"AsmResolver": "6.0.0-beta.1"
}
},
"AssetRipper.VersionUtilities": {
"AssetRipper.CIL": {
"type": "Transitive",
"resolved": "1.3.1",
"contentHash": "/1D18NOpqm7rS7+qVUbAReVMNWwgDuYpsnf0RkX1Aah/I0a0irqldoFJ+Kku7YdbSm0zqD+Z6iYUGKoP3GwTNQ=="
"resolved": "1.1.0",
"contentHash": "nSz1cBjgVeKv+esfDtyQGC1mY9b4C4NFStytdoa9DMozDC8uth6930kAsuWZEivj9GqWSqENnaQUGnl23WpmnQ==",
"dependencies": {
"AsmResolver.DotNet": "6.0.0-beta.1"
}
},
"AssetRipper.Gee.External.Capstone": {
"type": "Transitive",
"resolved": "2.3.2",
"contentHash": "wOr5PQPL/2ZfD7+ebt6cpRbUhSzSY5nlHGHjjzuQRiU5zkQlqQNwWDLX0M3smrm5IkaDvONkmDjFMKTlZJmyuQ=="
},
"AssetRipper.Primitives": {
"type": "Transitive",
"resolved": "3.1.3",
"contentHash": "djZbN/+EXmI+Oia9Pm0LyjZVCPLf60TPSL5rGb7mBEYM5F4CN3nPFXvl2yA5LanPZoHS1Yq7PghGUmkP7Pv9RQ=="
},
"BepInEx.Core": {
"type": "Transitive",
"resolved": "6.0.0-be.679",
"contentHash": "yg6NSGeevv86P2ERe3VDEa7W/l0lmM7m+AdPSW78dcBOe36Zc3QK/vmNEq57txGa+1kwv+macXLSwkL4UpucjA==",
"resolved": "6.0.0-be.733",
"contentHash": "uRzpyUdU3L8Y4ZW+ZnF73orq0E40MjGK6XcPzm24CrrWB5bUshwdrtFQfrwZB6jcZVNVV6PXE92hScEI+Jaoqw==",
"dependencies": {
"HarmonyX": "2.10.1",
"MonoMod.Utils": "22.5.1.1",
"HarmonyX": "2.10.2",
"MonoMod.Utils": "22.7.31.1",
"SemanticVersioning": "2.0.2"
}
},
"BepInEx.Unity.Common": {
"type": "Transitive",
"resolved": "6.0.0-be.679",
"contentHash": "q4Sux3ULBDasSQAtlAWzAKpAfCyV3ujxVJpK7ydV1bUIksaHNqw9yYTLCUrw8p4DQ/wHvShECFjzeMGHi+wylA==",
"resolved": "6.0.0-be.733",
"contentHash": "KfdiHVSOPnIbDEF7zLPTSXDjKqIEq7SgffqFFKIxOBkCws7LdtSRQsamUcxdD0H8yopcgdlqobIp6t8e4M/k9Q==",
"dependencies": {
"AssetRipper.VersionUtilities": "1.2.1",
"MonoMod.Utils": "22.5.1.1"
"AssetRipper.Primitives": "3.1.3",
"MonoMod.Utils": "22.7.31.1"
}
},
"Disarm": {
"type": "Transitive",
"resolved": "2022.1.0-master.26",
"contentHash": "YnZEbRGr0nG+N3G8WbRQ4Lkg8dTD3oso9iJlCVBmyhEyhLyqs+drBs1kWQbQqFPnb9mi/RJ++R9bPb+L3HF03Q=="
"resolved": "2022.1.0-master.34",
"contentHash": "sxzTci5eSdl+sFoaGsMZIp7X/eB5ZzplM3CppvD1CWoiZ8rSa43XGLC19G5e8n6mjutNBfN9yL+RER5PCspHFg=="
},
"HarmonyX": {
"type": "Transitive",
"resolved": "2.10.1",
"contentHash": "9LodMC9Y0u1TW96eKJoWrFJFpmzbgojEO38/Q+e7c1mFPhmHt8xcR8qhI06iF1rf0Dnsk+hqENFVSgbtwl/bEw==",
"resolved": "2.10.2",
"contentHash": "/5WwkxXX8mPsRuigQt957rJGx1f0dDQxk+bvk4yYITKFjXas9Em+O71zEP8X0ym8OFQQ2XH/2SxS4NC7vEC+Xg==",
"dependencies": {
"MonoMod.RuntimeDetour": "22.3.23.4",
"System.Reflection.Emit": "4.7.0"
@@ -116,13 +128,13 @@
},
"Iced": {
"type": "Transitive",
"resolved": "1.18.0",
"contentHash": "G60lZOvbvqttA+SBSv/yY6/wUboXKJlkffhSNR9iOrx0M5gpcK1TRr6xrFR+qAhqIAhvrsPF1jkn9fYb4lEufQ=="
"resolved": "1.21.0",
"contentHash": "dv5+81Q1TBQvVMSOOOmRcjJmvWcX3BZPZsIq31+RLc5cNft0IHAyNlkdb7ZarOWG913PyBoFDsDXoCIlKmLclg=="
},
"Il2CppInterop.Common": {
"type": "Transitive",
"resolved": "1.4.6-ci.389",
"contentHash": "KTyf2f66Q2mS9a6xhvoPWwD0VzRIoskPMVQehaVMo1dx4Di1FPFsKqukQ+ob6wgP5Rbnx53kiH0PY+IRSb35XA==",
"resolved": "1.4.6-ci.426",
"contentHash": "pI0kU0qqJKMP6z9eFz4+WJtGIwklfPxW2yWEY9vKnrN9bbYMusK3v5uFWV8al7S/HPSATV5jNWH1hyTvP7kglA==",
"dependencies": {
"Iced": "1.17.0",
"Microsoft.Extensions.Logging.Abstractions": "6.0.1",
@@ -131,36 +143,31 @@
},
"Il2CppInterop.Generator": {
"type": "Transitive",
"resolved": "1.4.6-ci.389",
"contentHash": "XJX4sn/RzAEBNIZZXuyDcLZrFx5tCoahujDu5aKWjApiMj/nTRQAxZn17daIIvd9aHqLaAfiWWth5QDLIt2bKw==",
"resolved": "1.4.6-ci.426",
"contentHash": "kecdx/vbNl0RtfzfYW592jU8PMyq1JbzpvoJSvqwO+tV6icp9SljXy6yG8bT/wt0gaPj9mFUNDTe2Wu6M6XGZQ==",
"dependencies": {
"Il2CppInterop.Common": "1.4.6-ci.389",
"Il2CppInterop.Common": "1.4.6-ci.426",
"Mono.Cecil": "0.11.3"
}
},
"Il2CppInterop.HarmonySupport": {
"type": "Transitive",
"resolved": "1.4.6-ci.389",
"contentHash": "Xd2zK6sLqwA0ReyUy83SWKcALwY99fq6vVL5gFOMN5Ct8OOVhtNIws0ysCWsfx1GL0RJiRYfR4pza/MmWRz4PQ==",
"resolved": "1.4.6-ci.426",
"contentHash": "rd2T5o6SybIc12hmX3HktTF5n27hFb0w4mNSExq7h1YsmrNlt7x+Ac1MBnnB0JwPLIg7w8LjnKjoIX6Gf626ng==",
"dependencies": {
"HarmonyX": "2.10.0",
"Il2CppInterop.Runtime": "1.4.6-ci.389"
"Il2CppInterop.Runtime": "1.4.6-ci.426"
}
},
"Il2CppInterop.Runtime": {
"type": "Transitive",
"resolved": "1.4.6-ci.389",
"contentHash": "nzYjuVzDG/O8+AQ8ax3WVHf+ZVsQKrVtp/yvuW8XoEPLdkbgryIrMo75dvN+tPqxOU3o2MPt9MZ9j25P5aVJMw==",
"resolved": "1.4.6-ci.426",
"contentHash": "0O0oI7gOqJixrsjvh1firhuGYK3Yr0uDLp6Q+t5CfcTMmeEX8Plk3pqAP9ZYyilBvh7uW0gv4Golqz08L1GXug==",
"dependencies": {
"Iced": "1.17.0",
"Il2CppInterop.Common": "1.4.6-ci.389"
"Il2CppInterop.Common": "1.4.6-ci.426"
}
},
"js6pak.Gee.External.Capstone": {
"type": "Transitive",
"resolved": "2.1.0",
"contentHash": "YYpq7NM50bSSVUDjXyV/eiITk6syXqItPjKBOb3jEWS6RFsk0DNhpWMPW6b3hKDmArARuWDU6S2pVu1IeVrvIA=="
},
"Microsoft.Extensions.Logging.Abstractions": {
"type": "Transitive",
"resolved": "6.0.1",
@@ -183,11 +190,11 @@
},
"MonoMod.RuntimeDetour": {
"type": "Transitive",
"resolved": "22.5.1.1",
"contentHash": "WG5zLRuAr8KJEnIkKTuIG1OJCrGIT3pjvnAD43E0FDchHf3Dp985MF/8tmIQvAzCZV87JNs6QKeGGqmwDmpXpw==",
"resolved": "22.7.31.1",
"contentHash": "nxVJTvQbWAujaogt5XX3eAy7d22t66Z88aWg9sirPLO9rR/6yNCHAyZpgxXrOsIobZVW0IEZPqNMOBhgke25/w==",
"dependencies": {
"Mono.Cecil": "0.11.4",
"MonoMod.Utils": "22.5.1.1",
"MonoMod.Utils": "22.7.31.1",
"System.Collections.NonGeneric": "4.3.0",
"System.ComponentModel.TypeConverter": "4.3.0",
"System.IO.FileSystem.Primitives": "4.3.0",
@@ -198,8 +205,8 @@
},
"MonoMod.Utils": {
"type": "Transitive",
"resolved": "22.5.1.1",
"contentHash": "vBObO1atXxhi2C4AuC53y87Bqeogi9xIrD1Ym3YWr5uxc8Nrm8SrsFeD1i3x04R999+XQ3FdeHrbXScyWYEHqQ==",
"resolved": "22.7.31.1",
"contentHash": "nI0E1oadXS1iMbfwfCzYF08C1jRQR9cnnHv66a4BSPd4sGu2p6g4BmctCWsdAB6oGKkSJUhcfHfxcfTsDyB94Q==",
"dependencies": {
"Mono.Cecil": "0.11.4",
"System.Collections.NonGeneric": "4.3.0",
@@ -310,30 +317,31 @@
},
"Samboy063.Cpp2IL.Core": {
"type": "Transitive",
"resolved": "2022.1.0-development.866",
"contentHash": "QPMuix/3jRngWBdNSLhAbm9BHYf95Ln1Ph1eCK/cDZdVibxFDFP3a6Yczyx1p7GbN7bRQwrhs2skPJSS/z3m2w==",
"resolved": "2022.1.0-pre-release.18",
"contentHash": "eX9d1IK05jWaEaeuMAE0L5WYHT7thtxz+aWLL/CAaCzZ0TzRPD+WFTjJ0KQO0YWBVO300CX3GwmPmf7TNO+wUg==",
"dependencies": {
"AsmResolver.DotNet": "5.1.0",
"Disarm": "2022.1.0-master.26",
"Iced": "1.18.0",
"Samboy063.LibCpp2IL": "2022.1.0-development.866",
"StableNameDotNet": "0.1.0-development.866",
"js6pak.Gee.External.Capstone": "2.1.0"
"AsmResolver.DotNet": "6.0.0-beta.1",
"AssetRipper.CIL": "1.1.0",
"AssetRipper.Gee.External.Capstone": "2.3.2",
"Disarm": "2022.1.0-master.34",
"Iced": "1.21.0",
"Samboy063.LibCpp2IL": "2022.1.0-pre-release.18",
"StableNameDotNet": "0.1.0-pre-release.15"
}
},
"Samboy063.LibCpp2IL": {
"type": "Transitive",
"resolved": "2022.1.0-development.866",
"contentHash": "EcJSWTfQko8SQozozoUT+aQJVWC8wj8C0YUiPBF4rNRId19yTKp2IXcXnI747v+8/aal222QR6WHfoBK2WlVLg==",
"resolved": "2022.1.0-pre-release.18",
"contentHash": "9zJdTAeErpwJpYDHYwwI0MAC1OyBEfC1ce7dpAOYRUUYCfeaKVWxnSCcyaoY6HDzIoxPkhbfllbwOe49ZmUYuQ==",
"dependencies": {
"AssetRipper.VersionUtilities": "1.3.1",
"Samboy063.WasmDisassembler": "2022.1.0-development.866"
"AssetRipper.Primitives": "3.1.2",
"Samboy063.WasmDisassembler": "2022.1.0-pre-release.15"
}
},
"Samboy063.WasmDisassembler": {
"type": "Transitive",
"resolved": "2022.1.0-development.866",
"contentHash": "2QK8F3eISkLcoW/Nt7wtxyQh31EXAqEMBVXXjEnuxyvXpBXxOIGpjmE3pWhGwxQwDCbe4zBsLF1zUiqq3/pXRA=="
"resolved": "2022.1.0-pre-release.15",
"contentHash": "e6qw81SHS+fS7iZ3qfqZBavVarYbkPElNgDCANF6dNFTYq5+hc80am+4FqQDl+ZVNS47bZDZobxIzHhmriCXGg=="
},
"SemanticVersioning": {
"type": "Transitive",
@@ -342,13 +350,13 @@
},
"StableNameDotNet": {
"type": "Transitive",
"resolved": "0.1.0-development.866",
"contentHash": "DJb8x4dV3ucDgM12sU28HxCdeqY/JudJbeJG6mgXWDJzpFZw2Jd7JF1pKFRNLzh/0gpo8bCGLQS9gOWZmBjdtg=="
"resolved": "0.1.0-pre-release.15",
"contentHash": "aIkEOo8V76vE+9CppHpTFLGXalBw6TAl4/tb6vadmS+gHJMshTVehzQv9cJXy4xZDdANV1uGMRaUFZERcDA2xQ=="
},
"StyleCop.Analyzers.Unstable": {
"type": "Transitive",
"resolved": "1.2.0.507",
"contentHash": "gTY3IQdRqDJ4hbhSA3e/R48oE8b/OiKfvwkt1QdNVfrJK2gMHBV8ldaHJ885jxWZfllK66soa/sdcjh9bX49Tw=="
"resolved": "1.2.0.556",
"contentHash": "zvn9Mqs/ox/83cpYPignI8hJEM2A93s2HkHs8HYMOAQW0PkampyoErAiIyKxgTLqbbad29HX/shv/6LGSjPJNQ=="
},
"System.Collections": {
"type": "Transitive",
@@ -675,11 +683,6 @@
"Microsoft.NETCore.Targets": "1.1.0"
}
},
"System.Runtime.CompilerServices.Unsafe": {
"type": "Transitive",
"resolved": "6.0.0",
"contentHash": "/iUeP3tq1S0XdNNoMz5C9twLSrM/TH+qElHkXWaPvuNOt+99G75NrV0OS2EqHx5wMN7popYjpc8oTjC1y16DLg=="
},
"System.Runtime.Extensions": {
"type": "Transitive",
"resolved": "4.3.0",
@@ -878,23 +881,6 @@
"System.Runtime": "4.3.0"
}
},
"System.Text.Encodings.Web": {
"type": "Transitive",
"resolved": "6.0.0",
"contentHash": "Vg8eB5Tawm1IFqj4TVK1czJX89rhFxJo9ELqc/Eiq0eXy13RK00eubyU6TJE6y+GQXjyV5gSfiewDUZjQgSE0w==",
"dependencies": {
"System.Runtime.CompilerServices.Unsafe": "6.0.0"
}
},
"System.Text.Json": {
"type": "Transitive",
"resolved": "6.0.7",
"contentHash": "/Tf/9XjprpHolbcDOrxsKVYy/mUG/FS7aGd9YUgBVEiHeQH4kAE0T1sMbde7q6B5xcrNUsJ5iW7D1RvHudQNqA==",
"dependencies": {
"System.Runtime.CompilerServices.Unsafe": "6.0.0",
"System.Text.Encodings.Web": "6.0.0"
}
},
"System.Threading": {
"type": "Transitive",
"resolved": "4.3.0",
@@ -917,7 +903,7 @@
"reactor": {
"type": "Project",
"dependencies": {
"BepInEx.Unity.IL2CPP": "[6.0.0-be.679, )"
"BepInEx.Unity.IL2CPP": "[6.0.0-be.733, )"
}
}
}
+2
View File
@@ -25,6 +25,8 @@ public partial class ExamplePlugin : BasePlugin
public override void Load()
{
ReactorCredits.Register<ExamplePlugin>(ReactorCredits.AlwaysShow);
this.AddComponent<ExampleComponent>();
_helloStringName = CustomStringName.CreateAndRegister("Hello!");
+96 -110
View File
@@ -4,9 +4,9 @@
"net6.0": {
"AmongUs.GameLibs.Steam": {
"type": "Direct",
"requested": "[2024.6.18, )",
"resolved": "2024.6.18",
"contentHash": "xb+HP1xXn4/ES8AgXpk9xeoW568LFYw5NTjY6bHwd6vQjHDf2kT1xHMmQ1me5Vfee/Gp69YIMZDXUAUToG7Elg=="
"requested": "[2025.3.25, )",
"resolved": "2025.3.25",
"contentHash": "2QxQXgZDcQOdAIDXrNLrQ7veEzD6EBzuaRjzSbHptWUPUsuVc3I5Ur3xMkPPwmSGsDHjLuAGE84yRjV6oJxGxw=="
},
"BepInEx.AutoPlugin": {
"type": "Direct",
@@ -22,93 +22,105 @@
},
"BepInEx.Unity.IL2CPP": {
"type": "Direct",
"requested": "[6.0.0-be.679, )",
"resolved": "6.0.0-be.679",
"contentHash": "KnfMjWSXI5+dxbkLCy8VssEnZtTN3MXUHDdBkvPbMiZ6oR1RGZWdLlA90/XQkY/4kMA5P4OCZP4eQ1o0XftbSQ==",
"requested": "[6.0.0-be.733, )",
"resolved": "6.0.0-be.733",
"contentHash": "lnoGaPHjIdGfEiKtf89knaTdLXe4IUqVLdoYqW8NYhhNqgxa3oNwScjTmuYQpa4Leew3937+slq2WIjvX/DUwQ==",
"dependencies": {
"BepInEx.Core": "6.0.0-be.679",
"BepInEx.Unity.Common": "6.0.0-be.679",
"HarmonyX": "2.10.1",
"Iced": "1.18.0",
"Il2CppInterop.Generator": "1.4.6-ci.389",
"Il2CppInterop.HarmonySupport": "1.4.6-ci.389",
"Il2CppInterop.Runtime": "1.4.6-ci.389",
"MonoMod.RuntimeDetour": "22.5.1.1",
"Samboy063.Cpp2IL.Core": "2022.1.0-development.866"
"BepInEx.Core": "6.0.0-be.733",
"BepInEx.Unity.Common": "6.0.0-be.733",
"HarmonyX": "2.10.2",
"Iced": "1.21.0",
"Il2CppInterop.Generator": "1.4.6-ci.426",
"Il2CppInterop.HarmonySupport": "1.4.6-ci.426",
"Il2CppInterop.Runtime": "1.4.6-ci.426",
"MonoMod.RuntimeDetour": "22.7.31.1",
"Samboy063.Cpp2IL.Core": "2022.1.0-pre-release.18"
}
},
"StyleCop.Analyzers": {
"type": "Direct",
"requested": "[1.2.0-beta.507, )",
"resolved": "1.2.0-beta.507",
"contentHash": "/FtugDT66cKJJ+GGH7rNpG6UDrT4iIWz45M6lrXXHobDUFDHw+q5VgkbiR+6ffTO564ge7w6fQh/eoQhVdJO8Q==",
"requested": "[1.2.0-beta.556, )",
"resolved": "1.2.0-beta.556",
"contentHash": "llRPgmA1fhC0I0QyFLEcjvtM2239QzKr/tcnbsjArLMJxJlu0AA5G7Fft0OI30pHF3MW63Gf4aSSsjc5m82J1Q==",
"dependencies": {
"StyleCop.Analyzers.Unstable": "1.2.0.507"
"StyleCop.Analyzers.Unstable": "1.2.0.556"
}
},
"AsmResolver": {
"type": "Transitive",
"resolved": "5.1.0",
"contentHash": "7PjujQzgQ3wjzqZYT4CY8SV6zx7FY6swIwj3Yk4QLolLqo9sBPb7FLF3W30QFvCsCkNfiVWXlSbeZKs4xGgQOQ=="
"resolved": "6.0.0-beta.1",
"contentHash": "M5btCR/rmrx32jZsoN6CLQ/VQk8lN8hvPb6lgojua7pjNoo7StAl92koMC8qz4vzZyH2CNqxLSDoswRvyyK/vA=="
},
"AsmResolver.DotNet": {
"type": "Transitive",
"resolved": "5.1.0",
"contentHash": "oKrBU94OaSrbbTwydvpLRFalYxozrNXGkl13nIkm823ZFQtPNYOiOMJb5DQLvkCJlWyis7q865tg803T5zg9IA==",
"resolved": "6.0.0-beta.1",
"contentHash": "PTq8nNQvhgTxF1iARCknffCsu7Iq9B0kN7TVC8iMaU7uEYog3xvVqH/0+TreY8GW74/+MqhZt/yEFsvS4oAduQ==",
"dependencies": {
"AsmResolver.PE": "5.1.0",
"System.Text.Json": "6.0.7"
"AsmResolver.PE": "6.0.0-beta.1"
}
},
"AsmResolver.PE": {
"type": "Transitive",
"resolved": "5.1.0",
"contentHash": "XD3iAgLSInJIODKUUlpHWXf8MR9H1SFMb1lsmabb4GxxxnDQRPjMxjglv2NOCjQQuNB2Oh0bvjHE7ewf82UqyQ==",
"resolved": "6.0.0-beta.1",
"contentHash": "KadLvx/zzFCJyF+E4jG6jPE1d0iJquzL6+hm8GBivBAs6nwHC8s6g4c857QwQCzXMWza6Vz5Q+3hFiNuOfKaWQ==",
"dependencies": {
"AsmResolver.PE.File": "5.1.0"
"AsmResolver.PE.File": "6.0.0-beta.1"
}
},
"AsmResolver.PE.File": {
"type": "Transitive",
"resolved": "5.1.0",
"contentHash": "YituBYe0Fh471sXQMfu+f4tWKX/JZvRwrX6g/SVsr4XkUIUzYi/aGT3/QvjHoYx19fE1KYOB6zBKqPkkOK7HPw==",
"resolved": "6.0.0-beta.1",
"contentHash": "+lusB9UMHevI5aQsu73NQ1ctPMLFvyHAsEf8vjaJ/py+kX1DkU0JkbERtBRmaf58/hBZ7cyrE7gFnjoo7Bbg7A==",
"dependencies": {
"AsmResolver": "5.1.0"
"AsmResolver": "6.0.0-beta.1"
}
},
"AssetRipper.VersionUtilities": {
"AssetRipper.CIL": {
"type": "Transitive",
"resolved": "1.3.1",
"contentHash": "/1D18NOpqm7rS7+qVUbAReVMNWwgDuYpsnf0RkX1Aah/I0a0irqldoFJ+Kku7YdbSm0zqD+Z6iYUGKoP3GwTNQ=="
"resolved": "1.1.0",
"contentHash": "nSz1cBjgVeKv+esfDtyQGC1mY9b4C4NFStytdoa9DMozDC8uth6930kAsuWZEivj9GqWSqENnaQUGnl23WpmnQ==",
"dependencies": {
"AsmResolver.DotNet": "6.0.0-beta.1"
}
},
"AssetRipper.Gee.External.Capstone": {
"type": "Transitive",
"resolved": "2.3.2",
"contentHash": "wOr5PQPL/2ZfD7+ebt6cpRbUhSzSY5nlHGHjjzuQRiU5zkQlqQNwWDLX0M3smrm5IkaDvONkmDjFMKTlZJmyuQ=="
},
"AssetRipper.Primitives": {
"type": "Transitive",
"resolved": "3.1.3",
"contentHash": "djZbN/+EXmI+Oia9Pm0LyjZVCPLf60TPSL5rGb7mBEYM5F4CN3nPFXvl2yA5LanPZoHS1Yq7PghGUmkP7Pv9RQ=="
},
"BepInEx.Core": {
"type": "Transitive",
"resolved": "6.0.0-be.679",
"contentHash": "yg6NSGeevv86P2ERe3VDEa7W/l0lmM7m+AdPSW78dcBOe36Zc3QK/vmNEq57txGa+1kwv+macXLSwkL4UpucjA==",
"resolved": "6.0.0-be.733",
"contentHash": "uRzpyUdU3L8Y4ZW+ZnF73orq0E40MjGK6XcPzm24CrrWB5bUshwdrtFQfrwZB6jcZVNVV6PXE92hScEI+Jaoqw==",
"dependencies": {
"HarmonyX": "2.10.1",
"MonoMod.Utils": "22.5.1.1",
"HarmonyX": "2.10.2",
"MonoMod.Utils": "22.7.31.1",
"SemanticVersioning": "2.0.2"
}
},
"BepInEx.Unity.Common": {
"type": "Transitive",
"resolved": "6.0.0-be.679",
"contentHash": "q4Sux3ULBDasSQAtlAWzAKpAfCyV3ujxVJpK7ydV1bUIksaHNqw9yYTLCUrw8p4DQ/wHvShECFjzeMGHi+wylA==",
"resolved": "6.0.0-be.733",
"contentHash": "KfdiHVSOPnIbDEF7zLPTSXDjKqIEq7SgffqFFKIxOBkCws7LdtSRQsamUcxdD0H8yopcgdlqobIp6t8e4M/k9Q==",
"dependencies": {
"AssetRipper.VersionUtilities": "1.2.1",
"MonoMod.Utils": "22.5.1.1"
"AssetRipper.Primitives": "3.1.3",
"MonoMod.Utils": "22.7.31.1"
}
},
"Disarm": {
"type": "Transitive",
"resolved": "2022.1.0-master.26",
"contentHash": "YnZEbRGr0nG+N3G8WbRQ4Lkg8dTD3oso9iJlCVBmyhEyhLyqs+drBs1kWQbQqFPnb9mi/RJ++R9bPb+L3HF03Q=="
"resolved": "2022.1.0-master.34",
"contentHash": "sxzTci5eSdl+sFoaGsMZIp7X/eB5ZzplM3CppvD1CWoiZ8rSa43XGLC19G5e8n6mjutNBfN9yL+RER5PCspHFg=="
},
"HarmonyX": {
"type": "Transitive",
"resolved": "2.10.1",
"contentHash": "9LodMC9Y0u1TW96eKJoWrFJFpmzbgojEO38/Q+e7c1mFPhmHt8xcR8qhI06iF1rf0Dnsk+hqENFVSgbtwl/bEw==",
"resolved": "2.10.2",
"contentHash": "/5WwkxXX8mPsRuigQt957rJGx1f0dDQxk+bvk4yYITKFjXas9Em+O71zEP8X0ym8OFQQ2XH/2SxS4NC7vEC+Xg==",
"dependencies": {
"MonoMod.RuntimeDetour": "22.3.23.4",
"System.Reflection.Emit": "4.7.0"
@@ -116,13 +128,13 @@
},
"Iced": {
"type": "Transitive",
"resolved": "1.18.0",
"contentHash": "G60lZOvbvqttA+SBSv/yY6/wUboXKJlkffhSNR9iOrx0M5gpcK1TRr6xrFR+qAhqIAhvrsPF1jkn9fYb4lEufQ=="
"resolved": "1.21.0",
"contentHash": "dv5+81Q1TBQvVMSOOOmRcjJmvWcX3BZPZsIq31+RLc5cNft0IHAyNlkdb7ZarOWG913PyBoFDsDXoCIlKmLclg=="
},
"Il2CppInterop.Common": {
"type": "Transitive",
"resolved": "1.4.6-ci.389",
"contentHash": "KTyf2f66Q2mS9a6xhvoPWwD0VzRIoskPMVQehaVMo1dx4Di1FPFsKqukQ+ob6wgP5Rbnx53kiH0PY+IRSb35XA==",
"resolved": "1.4.6-ci.426",
"contentHash": "pI0kU0qqJKMP6z9eFz4+WJtGIwklfPxW2yWEY9vKnrN9bbYMusK3v5uFWV8al7S/HPSATV5jNWH1hyTvP7kglA==",
"dependencies": {
"Iced": "1.17.0",
"Microsoft.Extensions.Logging.Abstractions": "6.0.1",
@@ -131,36 +143,31 @@
},
"Il2CppInterop.Generator": {
"type": "Transitive",
"resolved": "1.4.6-ci.389",
"contentHash": "XJX4sn/RzAEBNIZZXuyDcLZrFx5tCoahujDu5aKWjApiMj/nTRQAxZn17daIIvd9aHqLaAfiWWth5QDLIt2bKw==",
"resolved": "1.4.6-ci.426",
"contentHash": "kecdx/vbNl0RtfzfYW592jU8PMyq1JbzpvoJSvqwO+tV6icp9SljXy6yG8bT/wt0gaPj9mFUNDTe2Wu6M6XGZQ==",
"dependencies": {
"Il2CppInterop.Common": "1.4.6-ci.389",
"Il2CppInterop.Common": "1.4.6-ci.426",
"Mono.Cecil": "0.11.3"
}
},
"Il2CppInterop.HarmonySupport": {
"type": "Transitive",
"resolved": "1.4.6-ci.389",
"contentHash": "Xd2zK6sLqwA0ReyUy83SWKcALwY99fq6vVL5gFOMN5Ct8OOVhtNIws0ysCWsfx1GL0RJiRYfR4pza/MmWRz4PQ==",
"resolved": "1.4.6-ci.426",
"contentHash": "rd2T5o6SybIc12hmX3HktTF5n27hFb0w4mNSExq7h1YsmrNlt7x+Ac1MBnnB0JwPLIg7w8LjnKjoIX6Gf626ng==",
"dependencies": {
"HarmonyX": "2.10.0",
"Il2CppInterop.Runtime": "1.4.6-ci.389"
"Il2CppInterop.Runtime": "1.4.6-ci.426"
}
},
"Il2CppInterop.Runtime": {
"type": "Transitive",
"resolved": "1.4.6-ci.389",
"contentHash": "nzYjuVzDG/O8+AQ8ax3WVHf+ZVsQKrVtp/yvuW8XoEPLdkbgryIrMo75dvN+tPqxOU3o2MPt9MZ9j25P5aVJMw==",
"resolved": "1.4.6-ci.426",
"contentHash": "0O0oI7gOqJixrsjvh1firhuGYK3Yr0uDLp6Q+t5CfcTMmeEX8Plk3pqAP9ZYyilBvh7uW0gv4Golqz08L1GXug==",
"dependencies": {
"Iced": "1.17.0",
"Il2CppInterop.Common": "1.4.6-ci.389"
"Il2CppInterop.Common": "1.4.6-ci.426"
}
},
"js6pak.Gee.External.Capstone": {
"type": "Transitive",
"resolved": "2.1.0",
"contentHash": "YYpq7NM50bSSVUDjXyV/eiITk6syXqItPjKBOb3jEWS6RFsk0DNhpWMPW6b3hKDmArARuWDU6S2pVu1IeVrvIA=="
},
"Microsoft.Extensions.Logging.Abstractions": {
"type": "Transitive",
"resolved": "6.0.1",
@@ -183,11 +190,11 @@
},
"MonoMod.RuntimeDetour": {
"type": "Transitive",
"resolved": "22.5.1.1",
"contentHash": "WG5zLRuAr8KJEnIkKTuIG1OJCrGIT3pjvnAD43E0FDchHf3Dp985MF/8tmIQvAzCZV87JNs6QKeGGqmwDmpXpw==",
"resolved": "22.7.31.1",
"contentHash": "nxVJTvQbWAujaogt5XX3eAy7d22t66Z88aWg9sirPLO9rR/6yNCHAyZpgxXrOsIobZVW0IEZPqNMOBhgke25/w==",
"dependencies": {
"Mono.Cecil": "0.11.4",
"MonoMod.Utils": "22.5.1.1",
"MonoMod.Utils": "22.7.31.1",
"System.Collections.NonGeneric": "4.3.0",
"System.ComponentModel.TypeConverter": "4.3.0",
"System.IO.FileSystem.Primitives": "4.3.0",
@@ -198,8 +205,8 @@
},
"MonoMod.Utils": {
"type": "Transitive",
"resolved": "22.5.1.1",
"contentHash": "vBObO1atXxhi2C4AuC53y87Bqeogi9xIrD1Ym3YWr5uxc8Nrm8SrsFeD1i3x04R999+XQ3FdeHrbXScyWYEHqQ==",
"resolved": "22.7.31.1",
"contentHash": "nI0E1oadXS1iMbfwfCzYF08C1jRQR9cnnHv66a4BSPd4sGu2p6g4BmctCWsdAB6oGKkSJUhcfHfxcfTsDyB94Q==",
"dependencies": {
"Mono.Cecil": "0.11.4",
"System.Collections.NonGeneric": "4.3.0",
@@ -310,30 +317,31 @@
},
"Samboy063.Cpp2IL.Core": {
"type": "Transitive",
"resolved": "2022.1.0-development.866",
"contentHash": "QPMuix/3jRngWBdNSLhAbm9BHYf95Ln1Ph1eCK/cDZdVibxFDFP3a6Yczyx1p7GbN7bRQwrhs2skPJSS/z3m2w==",
"resolved": "2022.1.0-pre-release.18",
"contentHash": "eX9d1IK05jWaEaeuMAE0L5WYHT7thtxz+aWLL/CAaCzZ0TzRPD+WFTjJ0KQO0YWBVO300CX3GwmPmf7TNO+wUg==",
"dependencies": {
"AsmResolver.DotNet": "5.1.0",
"Disarm": "2022.1.0-master.26",
"Iced": "1.18.0",
"Samboy063.LibCpp2IL": "2022.1.0-development.866",
"StableNameDotNet": "0.1.0-development.866",
"js6pak.Gee.External.Capstone": "2.1.0"
"AsmResolver.DotNet": "6.0.0-beta.1",
"AssetRipper.CIL": "1.1.0",
"AssetRipper.Gee.External.Capstone": "2.3.2",
"Disarm": "2022.1.0-master.34",
"Iced": "1.21.0",
"Samboy063.LibCpp2IL": "2022.1.0-pre-release.18",
"StableNameDotNet": "0.1.0-pre-release.15"
}
},
"Samboy063.LibCpp2IL": {
"type": "Transitive",
"resolved": "2022.1.0-development.866",
"contentHash": "EcJSWTfQko8SQozozoUT+aQJVWC8wj8C0YUiPBF4rNRId19yTKp2IXcXnI747v+8/aal222QR6WHfoBK2WlVLg==",
"resolved": "2022.1.0-pre-release.18",
"contentHash": "9zJdTAeErpwJpYDHYwwI0MAC1OyBEfC1ce7dpAOYRUUYCfeaKVWxnSCcyaoY6HDzIoxPkhbfllbwOe49ZmUYuQ==",
"dependencies": {
"AssetRipper.VersionUtilities": "1.3.1",
"Samboy063.WasmDisassembler": "2022.1.0-development.866"
"AssetRipper.Primitives": "3.1.2",
"Samboy063.WasmDisassembler": "2022.1.0-pre-release.15"
}
},
"Samboy063.WasmDisassembler": {
"type": "Transitive",
"resolved": "2022.1.0-development.866",
"contentHash": "2QK8F3eISkLcoW/Nt7wtxyQh31EXAqEMBVXXjEnuxyvXpBXxOIGpjmE3pWhGwxQwDCbe4zBsLF1zUiqq3/pXRA=="
"resolved": "2022.1.0-pre-release.15",
"contentHash": "e6qw81SHS+fS7iZ3qfqZBavVarYbkPElNgDCANF6dNFTYq5+hc80am+4FqQDl+ZVNS47bZDZobxIzHhmriCXGg=="
},
"SemanticVersioning": {
"type": "Transitive",
@@ -342,13 +350,13 @@
},
"StableNameDotNet": {
"type": "Transitive",
"resolved": "0.1.0-development.866",
"contentHash": "DJb8x4dV3ucDgM12sU28HxCdeqY/JudJbeJG6mgXWDJzpFZw2Jd7JF1pKFRNLzh/0gpo8bCGLQS9gOWZmBjdtg=="
"resolved": "0.1.0-pre-release.15",
"contentHash": "aIkEOo8V76vE+9CppHpTFLGXalBw6TAl4/tb6vadmS+gHJMshTVehzQv9cJXy4xZDdANV1uGMRaUFZERcDA2xQ=="
},
"StyleCop.Analyzers.Unstable": {
"type": "Transitive",
"resolved": "1.2.0.507",
"contentHash": "gTY3IQdRqDJ4hbhSA3e/R48oE8b/OiKfvwkt1QdNVfrJK2gMHBV8ldaHJ885jxWZfllK66soa/sdcjh9bX49Tw=="
"resolved": "1.2.0.556",
"contentHash": "zvn9Mqs/ox/83cpYPignI8hJEM2A93s2HkHs8HYMOAQW0PkampyoErAiIyKxgTLqbbad29HX/shv/6LGSjPJNQ=="
},
"System.Collections": {
"type": "Transitive",
@@ -675,11 +683,6 @@
"Microsoft.NETCore.Targets": "1.1.0"
}
},
"System.Runtime.CompilerServices.Unsafe": {
"type": "Transitive",
"resolved": "6.0.0",
"contentHash": "/iUeP3tq1S0XdNNoMz5C9twLSrM/TH+qElHkXWaPvuNOt+99G75NrV0OS2EqHx5wMN7popYjpc8oTjC1y16DLg=="
},
"System.Runtime.Extensions": {
"type": "Transitive",
"resolved": "4.3.0",
@@ -878,23 +881,6 @@
"System.Runtime": "4.3.0"
}
},
"System.Text.Encodings.Web": {
"type": "Transitive",
"resolved": "6.0.0",
"contentHash": "Vg8eB5Tawm1IFqj4TVK1czJX89rhFxJo9ELqc/Eiq0eXy13RK00eubyU6TJE6y+GQXjyV5gSfiewDUZjQgSE0w==",
"dependencies": {
"System.Runtime.CompilerServices.Unsafe": "6.0.0"
}
},
"System.Text.Json": {
"type": "Transitive",
"resolved": "6.0.7",
"contentHash": "/Tf/9XjprpHolbcDOrxsKVYy/mUG/FS7aGd9YUgBVEiHeQH4kAE0T1sMbde7q6B5xcrNUsJ5iW7D1RvHudQNqA==",
"dependencies": {
"System.Runtime.CompilerServices.Unsafe": "6.0.0",
"System.Text.Encodings.Web": "6.0.0"
}
},
"System.Threading": {
"type": "Transitive",
"resolved": "4.3.0",
@@ -917,7 +903,7 @@
"reactor": {
"type": "Project",
"dependencies": {
"BepInEx.Unity.IL2CPP": "[6.0.0-be.679, )"
"BepInEx.Unity.IL2CPP": "[6.0.0-be.733, )"
}
}
}
+1
View File
@@ -0,0 +1 @@
global using AmongUsClient_CoFindGame = AmongUsClient._CoFindGame_d__6;
+1 -1
View File
@@ -5,7 +5,7 @@ namespace Reactor.Patches.Fixes;
/// <summary>
/// Fixes Game Lists not working on servers using legacy matchmaking.
/// </summary>
[HarmonyPatch(typeof(AmongUsClient._CoFindGame_d__3), nameof(AmongUsClient._CoFindGame_d__3.MoveNext))]
[HarmonyPatch(typeof(AmongUsClient_CoFindGame), nameof(AmongUsClient_CoFindGame.MoveNext))]
internal static class CoFindGamePatch
{
public static void Prefix()
+9 -1
View File
@@ -1,4 +1,6 @@
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using HarmonyLib;
using TMPro;
using UnityEngine;
@@ -8,14 +10,20 @@ namespace Reactor.Patches.Fixes;
/// <summary>
/// "Fixes" an issue where empty TextBoxes have wrong cursor positions.
/// </summary>
[HarmonyPatch(typeof(TextMeshProExtensions), nameof(TextMeshProExtensions.CursorPos))]
[HarmonyPatch]
internal static class CursorPosPatch
{
public static IEnumerable<MethodBase> TargetMethods()
{
return AccessTools.GetDeclaredMethods(typeof(TextMeshProExtensions)).Where(m => m.Name == nameof(TextMeshProExtensions.CursorPos));
}
public static bool Prefix(TextMeshPro self, ref Vector2 __result)
{
if (self.textInfo == null || self.textInfo.lineCount == 0 || self.textInfo.lineInfo[0].characterCount <= 0)
{
__result = self.GetTextInfo(" ").lineInfo.First().lineExtents.max;
self.text = string.Empty;
return false;
}
@@ -35,15 +35,12 @@ internal static class FreeNamePatch
var textBox = nameText.GetComponent<TextBoxTMP>();
textBox.outputText.alignment = TextAlignmentOptions.CenterGeoAligned;
textBox.outputText.transform.position = nameText.transform.position;
textBox.outputText.fontSize = 4f;
textBox.OnChange.AddListener((Action) (() =>
{
DataManager.Player.Customization.Name = textBox.text;
}));
textBox.OnEnter = textBox.OnFocusLost = textBox.OnChange;
textBox.Pipe.GetComponent<TextMeshPro>().fontSize = 4f;
}));
}
@@ -0,0 +1,21 @@
using System;
using HarmonyLib;
using Reactor.Utilities;
namespace Reactor.Patches.Miscellaneous;
[HarmonyPatch(typeof(PingTracker), nameof(PingTracker.Update))]
internal static class PingTrackerPatch
{
[HarmonyPostfix]
[HarmonyPriority(Priority.Last)]
public static void Postfix(PingTracker __instance)
{
var extraText = ReactorCredits.GetText(ReactorCredits.Location.PingTracker);
if (extraText != null)
{
if (!__instance.text.text.EndsWith("\n", StringComparison.InvariantCulture)) __instance.text.text += "\n";
__instance.text.text += extraText;
}
}
}
+10 -18
View File
@@ -1,7 +1,7 @@
using System;
using BepInEx;
using BepInEx.Unity.IL2CPP;
using HarmonyLib;
using Reactor.Utilities;
using Reactor.Utilities.Extensions;
using TMPro;
using UnityEngine;
@@ -89,30 +89,22 @@ public static class ReactorVersionShower
}));
}
private static string ToStringWithoutBuild(Version version)
{
return $"{version.Major}.{version.Minor}.{version.Patch}{(version.PreRelease == null ? string.Empty : $"-{version.PreRelease}")}";
}
/// <summary>
/// Updates <see cref="Text"/> with reactor version and fires <see cref="TextUpdated"/>.
/// </summary>
public static void UpdateText()
{
if (Text == null) return;
Text.text = "Reactor " + ReactorPlugin.Version;
Text.text += "\nBepInEx " + ToStringWithoutBuild(Paths.BepInExVersion);
Text.text = "Reactor " + Version.Parse(ReactorPlugin.Version).WithoutBuild();
Text.text += "\nBepInEx " + Paths.BepInExVersion.WithoutBuild();
Text.text += "\nMods: " + IL2CPPChainloader.Instance.Plugins.Count;
var creditsText = ReactorCredits.GetText(ReactorCredits.Location.MainMenu);
if (creditsText != null)
{
Text.text += "\n" + creditsText;
}
TextUpdated?.Invoke(Text);
}
[HarmonyPatch(typeof(FreeWeekendShower), nameof(FreeWeekendShower.Start))]
private static class FreeWeekendShowerPatch
{
public static bool Prefix(FreeWeekendShower __instance)
{
__instance.Output.Destroy();
return false;
}
}
}
@@ -0,0 +1,40 @@
namespace Reactor.Utilities.Extensions;
/// <summary>
/// Provides extension methods for TestMeshPro's Rich Text.
/// </summary>
internal static class RichTextExtensions
{
private static string Wrap(this string text, string tag)
{
return $"<{tag}>{text}</{tag}>";
}
private static string Wrap(this string text, string tag, string value)
{
return $"<{tag}={value}>{text}</{tag}>";
}
public static string Align(this string text, string value)
{
return text.Wrap("align", value);
}
public static string Color(this string text, string value)
{
return text.Wrap("color", value);
}
public static string Size(this string text, string value)
{
return text.Wrap("size", value);
}
public static string EscapeRichText(this string text)
{
return text
.Replace("<noparse>", string.Empty)
.Replace("</noparse>", string.Empty)
.Wrap("noparse");
}
}
@@ -0,0 +1,19 @@
using SemanticVersioning;
namespace Reactor.Utilities.Extensions;
/// <summary>
/// Provides extension methods for <see cref="SemanticVersioning.Version"/>.
/// </summary>
public static class VersionExtensions
{
/// <summary>
/// Gets the provided <paramref name="version"/> without the build string (everything after the + symbol like the commit hash is stripped).
/// </summary>
/// <param name="version">The <see cref="SemanticVersioning.Version"/>.</param>
/// <returns>The <paramref name="version"/> without build.</returns>
public static Version WithoutBuild(this Version version)
{
return new Version(version.Major, version.Minor, version.Patch, version.PreRelease);
}
}
+1 -1
View File
@@ -9,7 +9,7 @@ namespace Reactor.Utilities.ImGui;
/// </summary>
public class Window
{
private static int _lastWindowId;
private static int _lastWindowId = 2135184938;
/// <summary>
/// Gets the next window id.
+123
View File
@@ -0,0 +1,123 @@
using System;
using System.Collections.Generic;
using System.Linq;
using BepInEx.Unity.IL2CPP;
using Reactor.Patches;
using Reactor.Utilities.Extensions;
namespace Reactor.Utilities;
/// <summary>
/// Provides a way for mods to show their version information in-game.
/// </summary>
public static class ReactorCredits
{
private readonly struct ModIdentifier(string name, string version, Func<Location, bool>? shouldShow, bool isPreRelease)
{
private const string NormalColor = "#fff";
private const string PreReleaseColor = "#f00";
public string Name => name;
public string Text { get; } = $"{name} {version}".EscapeRichText().Color(isPreRelease ? PreReleaseColor : NormalColor);
public bool ShouldShow(Location location)
{
return shouldShow == AlwaysShow || shouldShow(location);
}
}
private static readonly List<ModIdentifier> _modIdentifiers = [];
/// <summary>
/// Represents the location of where the credit is shown.
/// </summary>
public enum Location
{
/// <summary>
/// In the main menu under Reactor/BepInEx versions.
/// </summary>
MainMenu,
/// <summary>
/// During game under the ping tracker.
/// </summary>
PingTracker,
}
/// <summary>
/// A special value indicating a mod should always show.
/// </summary>
public const Func<Location, bool>? AlwaysShow = null;
/// <summary>
/// Registers a mod with the <see cref="ReactorCredits"/>, adding it to the list of mods that will be displayed.
/// </summary>
/// <param name="name">The user-friendly name of the mod. Can contain spaces or special characters.</param>
/// <param name="version">The version of the mod.</param>
/// <param name="isPreRelease">If this version is a development or beta version. If true, it will display the mod in red.</param>
/// <param name="shouldShow">
/// This function will be called every frame to determine if the mod should be displayed or not.
/// This function should return false if your mod is currently disabled or has no effect on gameplay at the time.
/// If you want the mod to be displayed at all times, you can set this parameter to <see cref="ReactorCredits.AlwaysShow"/>.
/// </param>
public static void Register(string name, string version, bool isPreRelease, Func<Location, bool>? shouldShow)
{
const int MaxLength = 60;
if (name.Length + version.Length > MaxLength)
{
Error($"Not registering mod \"{name}\" with version \"{version}\" in {nameof(ReactorCredits)} because the combined length of the mod name and version is greater than {MaxLength} characters.");
return;
}
if (_modIdentifiers.Any(m => m.Name == name))
{
Error($"Mod \"{name}\" is already registered in {nameof(ReactorCredits)}.");
return;
}
_modIdentifiers.Add(new ModIdentifier(name, version, shouldShow, isPreRelease));
_modIdentifiers.Sort((a, b) => string.Compare(a.Name, b.Name, StringComparison.Ordinal));
if (!isPreRelease)
{
Info($"Mod \"{name}\" registered in {nameof(ReactorCredits)} with version {version}.");
}
else
{
Warning($"Mod \"{name}\" registered in {nameof(ReactorCredits)} with DEVELOPMENT/BETA version {version}.");
}
ReactorVersionShower.UpdateText();
}
/// <summary>
/// Registers a mod with the <see cref="ReactorCredits"/>, adding it to the list of mods that will be displayed.
/// </summary>
/// <typeparam name="T">The BepInEx plugin type to get the name and version from.</typeparam>
/// <param name="shouldShow"><inheritdoc cref="Register(string,string,bool,System.Func{Location,bool})" path="/param[@name='shouldShow']"/></param>
public static void Register<T>(Func<Location, bool>? shouldShow) where T : BasePlugin
{
var pluginInfo = IL2CPPChainloader.Instance.Plugins.Values.SingleOrDefault(p => p.TypeName == typeof(T).FullName)
?? throw new ArgumentException("Couldn't find the metadata for the provided plugin type", nameof(T));
var metadata = pluginInfo.Metadata;
Register(metadata.Name, metadata.Version.WithoutBuild().Clean(), metadata.Version.IsPreRelease, shouldShow);
}
internal static string? GetText(Location location)
{
var modTexts = _modIdentifiers.Where(m => m.ShouldShow(location)).Select(m => m.Text).ToArray();
if (modTexts.Length == 0) return null;
return location switch
{
Location.MainMenu => string.Join('\n', modTexts),
Location.PingTracker => ("<space=3em>" + string.Join(", ", modTexts)).Size("50%").Align("center"),
_ => throw new ArgumentOutOfRangeException(nameof(location), location, null),
};
}
}
+95 -109
View File
@@ -4,9 +4,9 @@
"net6.0": {
"AmongUs.GameLibs.Steam": {
"type": "Direct",
"requested": "[2024.6.18, )",
"resolved": "2024.6.18",
"contentHash": "xb+HP1xXn4/ES8AgXpk9xeoW568LFYw5NTjY6bHwd6vQjHDf2kT1xHMmQ1me5Vfee/Gp69YIMZDXUAUToG7Elg=="
"requested": "[2025.3.25, )",
"resolved": "2025.3.25",
"contentHash": "2QxQXgZDcQOdAIDXrNLrQ7veEzD6EBzuaRjzSbHptWUPUsuVc3I5Ur3xMkPPwmSGsDHjLuAGE84yRjV6oJxGxw=="
},
"BepInEx.AutoPlugin": {
"type": "Direct",
@@ -22,93 +22,105 @@
},
"BepInEx.Unity.IL2CPP": {
"type": "Direct",
"requested": "[6.0.0-be.679, )",
"resolved": "6.0.0-be.679",
"contentHash": "KnfMjWSXI5+dxbkLCy8VssEnZtTN3MXUHDdBkvPbMiZ6oR1RGZWdLlA90/XQkY/4kMA5P4OCZP4eQ1o0XftbSQ==",
"requested": "[6.0.0-be.733, )",
"resolved": "6.0.0-be.733",
"contentHash": "lnoGaPHjIdGfEiKtf89knaTdLXe4IUqVLdoYqW8NYhhNqgxa3oNwScjTmuYQpa4Leew3937+slq2WIjvX/DUwQ==",
"dependencies": {
"BepInEx.Core": "6.0.0-be.679",
"BepInEx.Unity.Common": "6.0.0-be.679",
"HarmonyX": "2.10.1",
"Iced": "1.18.0",
"Il2CppInterop.Generator": "1.4.6-ci.389",
"Il2CppInterop.HarmonySupport": "1.4.6-ci.389",
"Il2CppInterop.Runtime": "1.4.6-ci.389",
"MonoMod.RuntimeDetour": "22.5.1.1",
"Samboy063.Cpp2IL.Core": "2022.1.0-development.866"
"BepInEx.Core": "6.0.0-be.733",
"BepInEx.Unity.Common": "6.0.0-be.733",
"HarmonyX": "2.10.2",
"Iced": "1.21.0",
"Il2CppInterop.Generator": "1.4.6-ci.426",
"Il2CppInterop.HarmonySupport": "1.4.6-ci.426",
"Il2CppInterop.Runtime": "1.4.6-ci.426",
"MonoMod.RuntimeDetour": "22.7.31.1",
"Samboy063.Cpp2IL.Core": "2022.1.0-pre-release.18"
}
},
"StyleCop.Analyzers": {
"type": "Direct",
"requested": "[1.2.0-beta.507, )",
"resolved": "1.2.0-beta.507",
"contentHash": "/FtugDT66cKJJ+GGH7rNpG6UDrT4iIWz45M6lrXXHobDUFDHw+q5VgkbiR+6ffTO564ge7w6fQh/eoQhVdJO8Q==",
"requested": "[1.2.0-beta.556, )",
"resolved": "1.2.0-beta.556",
"contentHash": "llRPgmA1fhC0I0QyFLEcjvtM2239QzKr/tcnbsjArLMJxJlu0AA5G7Fft0OI30pHF3MW63Gf4aSSsjc5m82J1Q==",
"dependencies": {
"StyleCop.Analyzers.Unstable": "1.2.0.507"
"StyleCop.Analyzers.Unstable": "1.2.0.556"
}
},
"AsmResolver": {
"type": "Transitive",
"resolved": "5.1.0",
"contentHash": "7PjujQzgQ3wjzqZYT4CY8SV6zx7FY6swIwj3Yk4QLolLqo9sBPb7FLF3W30QFvCsCkNfiVWXlSbeZKs4xGgQOQ=="
"resolved": "6.0.0-beta.1",
"contentHash": "M5btCR/rmrx32jZsoN6CLQ/VQk8lN8hvPb6lgojua7pjNoo7StAl92koMC8qz4vzZyH2CNqxLSDoswRvyyK/vA=="
},
"AsmResolver.DotNet": {
"type": "Transitive",
"resolved": "5.1.0",
"contentHash": "oKrBU94OaSrbbTwydvpLRFalYxozrNXGkl13nIkm823ZFQtPNYOiOMJb5DQLvkCJlWyis7q865tg803T5zg9IA==",
"resolved": "6.0.0-beta.1",
"contentHash": "PTq8nNQvhgTxF1iARCknffCsu7Iq9B0kN7TVC8iMaU7uEYog3xvVqH/0+TreY8GW74/+MqhZt/yEFsvS4oAduQ==",
"dependencies": {
"AsmResolver.PE": "5.1.0",
"System.Text.Json": "6.0.7"
"AsmResolver.PE": "6.0.0-beta.1"
}
},
"AsmResolver.PE": {
"type": "Transitive",
"resolved": "5.1.0",
"contentHash": "XD3iAgLSInJIODKUUlpHWXf8MR9H1SFMb1lsmabb4GxxxnDQRPjMxjglv2NOCjQQuNB2Oh0bvjHE7ewf82UqyQ==",
"resolved": "6.0.0-beta.1",
"contentHash": "KadLvx/zzFCJyF+E4jG6jPE1d0iJquzL6+hm8GBivBAs6nwHC8s6g4c857QwQCzXMWza6Vz5Q+3hFiNuOfKaWQ==",
"dependencies": {
"AsmResolver.PE.File": "5.1.0"
"AsmResolver.PE.File": "6.0.0-beta.1"
}
},
"AsmResolver.PE.File": {
"type": "Transitive",
"resolved": "5.1.0",
"contentHash": "YituBYe0Fh471sXQMfu+f4tWKX/JZvRwrX6g/SVsr4XkUIUzYi/aGT3/QvjHoYx19fE1KYOB6zBKqPkkOK7HPw==",
"resolved": "6.0.0-beta.1",
"contentHash": "+lusB9UMHevI5aQsu73NQ1ctPMLFvyHAsEf8vjaJ/py+kX1DkU0JkbERtBRmaf58/hBZ7cyrE7gFnjoo7Bbg7A==",
"dependencies": {
"AsmResolver": "5.1.0"
"AsmResolver": "6.0.0-beta.1"
}
},
"AssetRipper.VersionUtilities": {
"AssetRipper.CIL": {
"type": "Transitive",
"resolved": "1.3.1",
"contentHash": "/1D18NOpqm7rS7+qVUbAReVMNWwgDuYpsnf0RkX1Aah/I0a0irqldoFJ+Kku7YdbSm0zqD+Z6iYUGKoP3GwTNQ=="
"resolved": "1.1.0",
"contentHash": "nSz1cBjgVeKv+esfDtyQGC1mY9b4C4NFStytdoa9DMozDC8uth6930kAsuWZEivj9GqWSqENnaQUGnl23WpmnQ==",
"dependencies": {
"AsmResolver.DotNet": "6.0.0-beta.1"
}
},
"AssetRipper.Gee.External.Capstone": {
"type": "Transitive",
"resolved": "2.3.2",
"contentHash": "wOr5PQPL/2ZfD7+ebt6cpRbUhSzSY5nlHGHjjzuQRiU5zkQlqQNwWDLX0M3smrm5IkaDvONkmDjFMKTlZJmyuQ=="
},
"AssetRipper.Primitives": {
"type": "Transitive",
"resolved": "3.1.3",
"contentHash": "djZbN/+EXmI+Oia9Pm0LyjZVCPLf60TPSL5rGb7mBEYM5F4CN3nPFXvl2yA5LanPZoHS1Yq7PghGUmkP7Pv9RQ=="
},
"BepInEx.Core": {
"type": "Transitive",
"resolved": "6.0.0-be.679",
"contentHash": "yg6NSGeevv86P2ERe3VDEa7W/l0lmM7m+AdPSW78dcBOe36Zc3QK/vmNEq57txGa+1kwv+macXLSwkL4UpucjA==",
"resolved": "6.0.0-be.733",
"contentHash": "uRzpyUdU3L8Y4ZW+ZnF73orq0E40MjGK6XcPzm24CrrWB5bUshwdrtFQfrwZB6jcZVNVV6PXE92hScEI+Jaoqw==",
"dependencies": {
"HarmonyX": "2.10.1",
"MonoMod.Utils": "22.5.1.1",
"HarmonyX": "2.10.2",
"MonoMod.Utils": "22.7.31.1",
"SemanticVersioning": "2.0.2"
}
},
"BepInEx.Unity.Common": {
"type": "Transitive",
"resolved": "6.0.0-be.679",
"contentHash": "q4Sux3ULBDasSQAtlAWzAKpAfCyV3ujxVJpK7ydV1bUIksaHNqw9yYTLCUrw8p4DQ/wHvShECFjzeMGHi+wylA==",
"resolved": "6.0.0-be.733",
"contentHash": "KfdiHVSOPnIbDEF7zLPTSXDjKqIEq7SgffqFFKIxOBkCws7LdtSRQsamUcxdD0H8yopcgdlqobIp6t8e4M/k9Q==",
"dependencies": {
"AssetRipper.VersionUtilities": "1.2.1",
"MonoMod.Utils": "22.5.1.1"
"AssetRipper.Primitives": "3.1.3",
"MonoMod.Utils": "22.7.31.1"
}
},
"Disarm": {
"type": "Transitive",
"resolved": "2022.1.0-master.26",
"contentHash": "YnZEbRGr0nG+N3G8WbRQ4Lkg8dTD3oso9iJlCVBmyhEyhLyqs+drBs1kWQbQqFPnb9mi/RJ++R9bPb+L3HF03Q=="
"resolved": "2022.1.0-master.34",
"contentHash": "sxzTci5eSdl+sFoaGsMZIp7X/eB5ZzplM3CppvD1CWoiZ8rSa43XGLC19G5e8n6mjutNBfN9yL+RER5PCspHFg=="
},
"HarmonyX": {
"type": "Transitive",
"resolved": "2.10.1",
"contentHash": "9LodMC9Y0u1TW96eKJoWrFJFpmzbgojEO38/Q+e7c1mFPhmHt8xcR8qhI06iF1rf0Dnsk+hqENFVSgbtwl/bEw==",
"resolved": "2.10.2",
"contentHash": "/5WwkxXX8mPsRuigQt957rJGx1f0dDQxk+bvk4yYITKFjXas9Em+O71zEP8X0ym8OFQQ2XH/2SxS4NC7vEC+Xg==",
"dependencies": {
"MonoMod.RuntimeDetour": "22.3.23.4",
"System.Reflection.Emit": "4.7.0"
@@ -116,13 +128,13 @@
},
"Iced": {
"type": "Transitive",
"resolved": "1.18.0",
"contentHash": "G60lZOvbvqttA+SBSv/yY6/wUboXKJlkffhSNR9iOrx0M5gpcK1TRr6xrFR+qAhqIAhvrsPF1jkn9fYb4lEufQ=="
"resolved": "1.21.0",
"contentHash": "dv5+81Q1TBQvVMSOOOmRcjJmvWcX3BZPZsIq31+RLc5cNft0IHAyNlkdb7ZarOWG913PyBoFDsDXoCIlKmLclg=="
},
"Il2CppInterop.Common": {
"type": "Transitive",
"resolved": "1.4.6-ci.389",
"contentHash": "KTyf2f66Q2mS9a6xhvoPWwD0VzRIoskPMVQehaVMo1dx4Di1FPFsKqukQ+ob6wgP5Rbnx53kiH0PY+IRSb35XA==",
"resolved": "1.4.6-ci.426",
"contentHash": "pI0kU0qqJKMP6z9eFz4+WJtGIwklfPxW2yWEY9vKnrN9bbYMusK3v5uFWV8al7S/HPSATV5jNWH1hyTvP7kglA==",
"dependencies": {
"Iced": "1.17.0",
"Microsoft.Extensions.Logging.Abstractions": "6.0.1",
@@ -131,36 +143,31 @@
},
"Il2CppInterop.Generator": {
"type": "Transitive",
"resolved": "1.4.6-ci.389",
"contentHash": "XJX4sn/RzAEBNIZZXuyDcLZrFx5tCoahujDu5aKWjApiMj/nTRQAxZn17daIIvd9aHqLaAfiWWth5QDLIt2bKw==",
"resolved": "1.4.6-ci.426",
"contentHash": "kecdx/vbNl0RtfzfYW592jU8PMyq1JbzpvoJSvqwO+tV6icp9SljXy6yG8bT/wt0gaPj9mFUNDTe2Wu6M6XGZQ==",
"dependencies": {
"Il2CppInterop.Common": "1.4.6-ci.389",
"Il2CppInterop.Common": "1.4.6-ci.426",
"Mono.Cecil": "0.11.3"
}
},
"Il2CppInterop.HarmonySupport": {
"type": "Transitive",
"resolved": "1.4.6-ci.389",
"contentHash": "Xd2zK6sLqwA0ReyUy83SWKcALwY99fq6vVL5gFOMN5Ct8OOVhtNIws0ysCWsfx1GL0RJiRYfR4pza/MmWRz4PQ==",
"resolved": "1.4.6-ci.426",
"contentHash": "rd2T5o6SybIc12hmX3HktTF5n27hFb0w4mNSExq7h1YsmrNlt7x+Ac1MBnnB0JwPLIg7w8LjnKjoIX6Gf626ng==",
"dependencies": {
"HarmonyX": "2.10.0",
"Il2CppInterop.Runtime": "1.4.6-ci.389"
"Il2CppInterop.Runtime": "1.4.6-ci.426"
}
},
"Il2CppInterop.Runtime": {
"type": "Transitive",
"resolved": "1.4.6-ci.389",
"contentHash": "nzYjuVzDG/O8+AQ8ax3WVHf+ZVsQKrVtp/yvuW8XoEPLdkbgryIrMo75dvN+tPqxOU3o2MPt9MZ9j25P5aVJMw==",
"resolved": "1.4.6-ci.426",
"contentHash": "0O0oI7gOqJixrsjvh1firhuGYK3Yr0uDLp6Q+t5CfcTMmeEX8Plk3pqAP9ZYyilBvh7uW0gv4Golqz08L1GXug==",
"dependencies": {
"Iced": "1.17.0",
"Il2CppInterop.Common": "1.4.6-ci.389"
"Il2CppInterop.Common": "1.4.6-ci.426"
}
},
"js6pak.Gee.External.Capstone": {
"type": "Transitive",
"resolved": "2.1.0",
"contentHash": "YYpq7NM50bSSVUDjXyV/eiITk6syXqItPjKBOb3jEWS6RFsk0DNhpWMPW6b3hKDmArARuWDU6S2pVu1IeVrvIA=="
},
"Microsoft.Extensions.Logging.Abstractions": {
"type": "Transitive",
"resolved": "6.0.1",
@@ -183,11 +190,11 @@
},
"MonoMod.RuntimeDetour": {
"type": "Transitive",
"resolved": "22.5.1.1",
"contentHash": "WG5zLRuAr8KJEnIkKTuIG1OJCrGIT3pjvnAD43E0FDchHf3Dp985MF/8tmIQvAzCZV87JNs6QKeGGqmwDmpXpw==",
"resolved": "22.7.31.1",
"contentHash": "nxVJTvQbWAujaogt5XX3eAy7d22t66Z88aWg9sirPLO9rR/6yNCHAyZpgxXrOsIobZVW0IEZPqNMOBhgke25/w==",
"dependencies": {
"Mono.Cecil": "0.11.4",
"MonoMod.Utils": "22.5.1.1",
"MonoMod.Utils": "22.7.31.1",
"System.Collections.NonGeneric": "4.3.0",
"System.ComponentModel.TypeConverter": "4.3.0",
"System.IO.FileSystem.Primitives": "4.3.0",
@@ -198,8 +205,8 @@
},
"MonoMod.Utils": {
"type": "Transitive",
"resolved": "22.5.1.1",
"contentHash": "vBObO1atXxhi2C4AuC53y87Bqeogi9xIrD1Ym3YWr5uxc8Nrm8SrsFeD1i3x04R999+XQ3FdeHrbXScyWYEHqQ==",
"resolved": "22.7.31.1",
"contentHash": "nI0E1oadXS1iMbfwfCzYF08C1jRQR9cnnHv66a4BSPd4sGu2p6g4BmctCWsdAB6oGKkSJUhcfHfxcfTsDyB94Q==",
"dependencies": {
"Mono.Cecil": "0.11.4",
"System.Collections.NonGeneric": "4.3.0",
@@ -310,30 +317,31 @@
},
"Samboy063.Cpp2IL.Core": {
"type": "Transitive",
"resolved": "2022.1.0-development.866",
"contentHash": "QPMuix/3jRngWBdNSLhAbm9BHYf95Ln1Ph1eCK/cDZdVibxFDFP3a6Yczyx1p7GbN7bRQwrhs2skPJSS/z3m2w==",
"resolved": "2022.1.0-pre-release.18",
"contentHash": "eX9d1IK05jWaEaeuMAE0L5WYHT7thtxz+aWLL/CAaCzZ0TzRPD+WFTjJ0KQO0YWBVO300CX3GwmPmf7TNO+wUg==",
"dependencies": {
"AsmResolver.DotNet": "5.1.0",
"Disarm": "2022.1.0-master.26",
"Iced": "1.18.0",
"Samboy063.LibCpp2IL": "2022.1.0-development.866",
"StableNameDotNet": "0.1.0-development.866",
"js6pak.Gee.External.Capstone": "2.1.0"
"AsmResolver.DotNet": "6.0.0-beta.1",
"AssetRipper.CIL": "1.1.0",
"AssetRipper.Gee.External.Capstone": "2.3.2",
"Disarm": "2022.1.0-master.34",
"Iced": "1.21.0",
"Samboy063.LibCpp2IL": "2022.1.0-pre-release.18",
"StableNameDotNet": "0.1.0-pre-release.15"
}
},
"Samboy063.LibCpp2IL": {
"type": "Transitive",
"resolved": "2022.1.0-development.866",
"contentHash": "EcJSWTfQko8SQozozoUT+aQJVWC8wj8C0YUiPBF4rNRId19yTKp2IXcXnI747v+8/aal222QR6WHfoBK2WlVLg==",
"resolved": "2022.1.0-pre-release.18",
"contentHash": "9zJdTAeErpwJpYDHYwwI0MAC1OyBEfC1ce7dpAOYRUUYCfeaKVWxnSCcyaoY6HDzIoxPkhbfllbwOe49ZmUYuQ==",
"dependencies": {
"AssetRipper.VersionUtilities": "1.3.1",
"Samboy063.WasmDisassembler": "2022.1.0-development.866"
"AssetRipper.Primitives": "3.1.2",
"Samboy063.WasmDisassembler": "2022.1.0-pre-release.15"
}
},
"Samboy063.WasmDisassembler": {
"type": "Transitive",
"resolved": "2022.1.0-development.866",
"contentHash": "2QK8F3eISkLcoW/Nt7wtxyQh31EXAqEMBVXXjEnuxyvXpBXxOIGpjmE3pWhGwxQwDCbe4zBsLF1zUiqq3/pXRA=="
"resolved": "2022.1.0-pre-release.15",
"contentHash": "e6qw81SHS+fS7iZ3qfqZBavVarYbkPElNgDCANF6dNFTYq5+hc80am+4FqQDl+ZVNS47bZDZobxIzHhmriCXGg=="
},
"SemanticVersioning": {
"type": "Transitive",
@@ -342,13 +350,13 @@
},
"StableNameDotNet": {
"type": "Transitive",
"resolved": "0.1.0-development.866",
"contentHash": "DJb8x4dV3ucDgM12sU28HxCdeqY/JudJbeJG6mgXWDJzpFZw2Jd7JF1pKFRNLzh/0gpo8bCGLQS9gOWZmBjdtg=="
"resolved": "0.1.0-pre-release.15",
"contentHash": "aIkEOo8V76vE+9CppHpTFLGXalBw6TAl4/tb6vadmS+gHJMshTVehzQv9cJXy4xZDdANV1uGMRaUFZERcDA2xQ=="
},
"StyleCop.Analyzers.Unstable": {
"type": "Transitive",
"resolved": "1.2.0.507",
"contentHash": "gTY3IQdRqDJ4hbhSA3e/R48oE8b/OiKfvwkt1QdNVfrJK2gMHBV8ldaHJ885jxWZfllK66soa/sdcjh9bX49Tw=="
"resolved": "1.2.0.556",
"contentHash": "zvn9Mqs/ox/83cpYPignI8hJEM2A93s2HkHs8HYMOAQW0PkampyoErAiIyKxgTLqbbad29HX/shv/6LGSjPJNQ=="
},
"System.Collections": {
"type": "Transitive",
@@ -675,11 +683,6 @@
"Microsoft.NETCore.Targets": "1.1.0"
}
},
"System.Runtime.CompilerServices.Unsafe": {
"type": "Transitive",
"resolved": "6.0.0",
"contentHash": "/iUeP3tq1S0XdNNoMz5C9twLSrM/TH+qElHkXWaPvuNOt+99G75NrV0OS2EqHx5wMN7popYjpc8oTjC1y16DLg=="
},
"System.Runtime.Extensions": {
"type": "Transitive",
"resolved": "4.3.0",
@@ -878,23 +881,6 @@
"System.Runtime": "4.3.0"
}
},
"System.Text.Encodings.Web": {
"type": "Transitive",
"resolved": "6.0.0",
"contentHash": "Vg8eB5Tawm1IFqj4TVK1czJX89rhFxJo9ELqc/Eiq0eXy13RK00eubyU6TJE6y+GQXjyV5gSfiewDUZjQgSE0w==",
"dependencies": {
"System.Runtime.CompilerServices.Unsafe": "6.0.0"
}
},
"System.Text.Json": {
"type": "Transitive",
"resolved": "6.0.7",
"contentHash": "/Tf/9XjprpHolbcDOrxsKVYy/mUG/FS7aGd9YUgBVEiHeQH4kAE0T1sMbde7q6B5xcrNUsJ5iW7D1RvHudQNqA==",
"dependencies": {
"System.Runtime.CompilerServices.Unsafe": "6.0.0",
"System.Text.Encodings.Web": "6.0.0"
}
},
"System.Threading": {
"type": "Transitive",
"resolved": "4.3.0",