Compare commits

..

4 Commits
2.1.1 ... 2.1.3

Author SHA1 Message Date
zznty
365fcfd2ef fix multiplayer manager patch
All checks were successful
Release / Get Version (push) Successful in 9s
Release / Build and Publish Nuget (push) Successful in 1m40s
Release / Build and Publish Package (push) Successful in 2m1s
2024-08-25 17:13:06 +07:00
zznty
9b9d8b7241 fix world checkpoint loading
All checks were successful
Release / Get Version (push) Successful in 10s
Release / Build and Publish Nuget (push) Successful in 1m46s
Release / Build and Publish Package (push) Successful in 1m58s
2024-08-25 16:53:19 +07:00
zznty
ba7ed276e6 also increase steam connect timeout 2024-08-25 16:53:04 +07:00
zznty
08063c4ce8 update harmonyx 2024-08-25 16:52:27 +07:00
8 changed files with 49 additions and 38 deletions

View File

@@ -58,10 +58,10 @@
},
"HarmonyX": {
"type": "Transitive",
"resolved": "2.10.2-prerelease.7",
"contentHash": "15kgPt5Cqeu7w1CHp4YqlVXuq6FKZj9iZwA/oNd7SaRVwvq2kZ9EODmJ2+U61ZLFasQY7nr2w/latSAv/Pjn/g==",
"resolved": "2.13.0-torch",
"contentHash": "ehrCDqzHrNNUlNnRgIys2npuQqbGZ378lixy4pg8/2yQMejctX/p448XTnGGfrCTx6DaHfgQv9Da89JALJgeWA==",
"dependencies": {
"MonoMod.RuntimeDetour": "25.1.0-prerelease.1"
"MonoMod.RuntimeDetour": "25.1.2"
}
},
"JetBrains.Annotations": {
@@ -625,11 +625,10 @@
"type": "Project",
"dependencies": {
"ControlzEx": "[5.0.2, )",
"HarmonyX": "[2.10.2-prerelease.7, )",
"HarmonyX": "[2.13.0-torch, )",
"MahApps.Metro": "[2.4.10, )",
"Microsoft.CodeAnalysis.CSharp": "[4.11.0, )",
"Microsoft.CodeAnalysis.Common": "[4.11.0, )",
"MonoMod.RuntimeDetour": "[25.1.2, )",
"NLog": "[5.3.3, )",
"System.ComponentModel.Annotations": "[5.0.0, )",
"Torch.API": "[1.0.0, )",

View File

@@ -128,7 +128,15 @@ namespace Torch.Server.Managers
return;
}
SelectWorld(DedicatedConfig.LoadWorld ?? DedicatedConfig.Worlds.First().WorldPath, false);
var worldPath = DedicatedConfig.LoadWorld;
if (worldPath == null)
worldPath = DedicatedConfig.Worlds.First().WorldPath;
else
// make sure we won't end up with a file path when we expect it to be a directory
worldPath = Path.EndsInDirectorySeparator(worldPath) ? worldPath : Path.GetDirectoryName(worldPath);
SelectWorld(worldPath, false);
_instanceLoaded?.Invoke(DedicatedConfig);
}

View File

@@ -10,7 +10,7 @@ namespace Torch.Server.Managers
public static void Patch(PatchContext ctx)
{
ctx.GetPattern(typeof(MyDedicatedServerBase).GetMethod(nameof(MyDedicatedServerBase.BanClient))).Prefixes.Add(typeof(MultiplayerManagerDedicatedPatchShim).GetMethod(nameof(BanPrefix)));
ctx.GetPattern(typeof(MyDedicatedServerBase).GetMethod(nameof(MyDedicatedServerBase.KickClient))).Prefixes.Add(typeof(MultiplayerManagerDedicatedPatchShim).GetMethod(nameof(KickPrefix)));
ctx.GetPattern(typeof(MyMultiplayerServerBase).GetMethod(nameof(MyMultiplayerServerBase.KickClient))).Prefixes.Add(typeof(MultiplayerManagerDedicatedPatchShim).GetMethod(nameof(KickPrefix)));
}
public static void BanPrefix(ulong userId, bool banned)

View File

@@ -26,10 +26,18 @@ namespace Torch.Patches
// Reduce response timeout from 100 seconds to 5 seconds.
foreach (var instruction in instructions)
{
if (instruction.OpCode == OpCodes.Ldc_I4 && instruction.Operand is MsilOperandInline.MsilOperandInt32 inlineI32 && inlineI32.Value == 1000)
if (instruction.OpCode == OpCodes.Ldc_I4 && instruction.Operand is
MsilOperandInline.MsilOperandInt32 { Value: 1000 } operandResponseTimeout)
{
_log.Info("Patching Steam response timeout to 5 seconds");
inlineI32.Value = 50;
operandResponseTimeout.Value = 50;
}
if (instruction.OpCode == OpCodes.Ldc_I4 && instruction.Operand is
MsilOperandInline.MsilOperandInt32 { Value: 10000 } inlineI32)
{
_log.Info("Patching Steam connect timeout to 60 seconds");
inlineI32.Value = 60000;
}
yield return instruction;

View File

@@ -159,10 +159,10 @@
},
"HarmonyX": {
"type": "Transitive",
"resolved": "2.10.2-prerelease.7",
"contentHash": "15kgPt5Cqeu7w1CHp4YqlVXuq6FKZj9iZwA/oNd7SaRVwvq2kZ9EODmJ2+U61ZLFasQY7nr2w/latSAv/Pjn/g==",
"resolved": "2.13.0-torch",
"contentHash": "ehrCDqzHrNNUlNnRgIys2npuQqbGZ378lixy4pg8/2yQMejctX/p448XTnGGfrCTx6DaHfgQv9Da89JALJgeWA==",
"dependencies": {
"MonoMod.RuntimeDetour": "25.1.0-prerelease.1"
"MonoMod.RuntimeDetour": "25.1.2"
}
},
"JetBrains.Annotations": {
@@ -576,11 +576,10 @@
"type": "Project",
"dependencies": {
"ControlzEx": "[5.0.2, )",
"HarmonyX": "[2.10.2-prerelease.7, )",
"HarmonyX": "[2.13.0-torch, )",
"MahApps.Metro": "[2.4.10, )",
"Microsoft.CodeAnalysis.CSharp": "[4.11.0, )",
"Microsoft.CodeAnalysis.Common": "[4.11.0, )",
"MonoMod.RuntimeDetour": "[25.1.2, )",
"NLog": "[5.3.3, )",
"System.ComponentModel.Annotations": "[5.0.0, )",
"Torch.API": "[1.0.0, )",

View File

@@ -40,10 +40,10 @@
},
"HarmonyX": {
"type": "Transitive",
"resolved": "2.10.2-prerelease.7",
"contentHash": "15kgPt5Cqeu7w1CHp4YqlVXuq6FKZj9iZwA/oNd7SaRVwvq2kZ9EODmJ2+U61ZLFasQY7nr2w/latSAv/Pjn/g==",
"resolved": "2.13.0-torch",
"contentHash": "ehrCDqzHrNNUlNnRgIys2npuQqbGZ378lixy4pg8/2yQMejctX/p448XTnGGfrCTx6DaHfgQv9Da89JALJgeWA==",
"dependencies": {
"MonoMod.RuntimeDetour": "25.1.0-prerelease.1"
"MonoMod.RuntimeDetour": "25.1.2"
}
},
"JetBrains.Annotations": {
@@ -449,11 +449,10 @@
"type": "Project",
"dependencies": {
"ControlzEx": "[5.0.2, )",
"HarmonyX": "[2.10.2-prerelease.7, )",
"HarmonyX": "[2.13.0-torch, )",
"MahApps.Metro": "[2.4.10, )",
"Microsoft.CodeAnalysis.CSharp": "[4.11.0, )",
"Microsoft.CodeAnalysis.Common": "[4.11.0, )",
"MonoMod.RuntimeDetour": "[25.1.2, )",
"NLog": "[5.3.3, )",
"System.ComponentModel.Annotations": "[5.0.0, )",
"Torch.API": "[1.0.0, )",

View File

@@ -14,8 +14,7 @@
<Import Project="..\Torch.Mod\Torch.Mod.projitems" Label="Shared" />
<ItemGroup>
<PackageReference Include="MonoMod.RuntimeDetour" Version="25.1.2" />
<PackageReference Include="HarmonyX" Version="2.10.2-prerelease.7" />
<PackageReference Include="HarmonyX" Version="2.13.0-torch" />
<PackageReference Include="ControlzEx" Version="5.0.2" />
<PackageReference Include="InfoOf.Fody" Version="2.2.0" PrivateAssets="all" />

View File

@@ -14,11 +14,11 @@
},
"HarmonyX": {
"type": "Direct",
"requested": "[2.10.2-prerelease.7, )",
"resolved": "2.10.2-prerelease.7",
"contentHash": "15kgPt5Cqeu7w1CHp4YqlVXuq6FKZj9iZwA/oNd7SaRVwvq2kZ9EODmJ2+U61ZLFasQY7nr2w/latSAv/Pjn/g==",
"requested": "[2.13.0-torch, )",
"resolved": "2.13.0-torch",
"contentHash": "ehrCDqzHrNNUlNnRgIys2npuQqbGZ378lixy4pg8/2yQMejctX/p448XTnGGfrCTx6DaHfgQv9Da89JALJgeWA==",
"dependencies": {
"MonoMod.RuntimeDetour": "25.1.0-prerelease.1"
"MonoMod.RuntimeDetour": "25.1.2"
}
},
"InfoOf.Fody": {
@@ -62,19 +62,6 @@
"System.Reflection.Metadata": "8.0.0"
}
},
"MonoMod.RuntimeDetour": {
"type": "Direct",
"requested": "[25.1.2, )",
"resolved": "25.1.2",
"contentHash": "eNf/V6FqS5ErkvdA+vyVM5d7SFeKCkltn5XhT2GrjJ2xec6BG3E7lk/52qVIqDSsMrU+M6dTM8W+fl4IxKQWHw==",
"dependencies": {
"Mono.Cecil": "0.11.5",
"MonoMod.Backports": "1.1.2",
"MonoMod.Core": "1.1.2",
"MonoMod.ILHelpers": "1.1.0",
"MonoMod.Utils": "25.0.6"
}
},
"NLog": {
"type": "Direct",
"requested": "[5.3.3, )",
@@ -203,6 +190,18 @@
"resolved": "1.1.0",
"contentHash": "L2FWjhTrv7tcIxshfZ+M3OcaNr4cNw0IwiVZEgwqRnZ5QAN3+RrNJ8ZwCzwXUWyPDqooJxMcjjg8PsSYUiNBjQ=="
},
"MonoMod.RuntimeDetour": {
"type": "Transitive",
"resolved": "25.1.2",
"contentHash": "eNf/V6FqS5ErkvdA+vyVM5d7SFeKCkltn5XhT2GrjJ2xec6BG3E7lk/52qVIqDSsMrU+M6dTM8W+fl4IxKQWHw==",
"dependencies": {
"Mono.Cecil": "0.11.5",
"MonoMod.Backports": "1.1.2",
"MonoMod.Core": "1.1.2",
"MonoMod.ILHelpers": "1.1.0",
"MonoMod.Utils": "25.0.6"
}
},
"MonoMod.Utils": {
"type": "Transitive",
"resolved": "25.0.6",