mirror of
https://github.com/DorkSquadRR/DorkNet.git
synced 2026-10-25 23:18:44 -07:00
feat: Add DorkNet.DebugMod for optional diagnostic features and improved debugging capabilities
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
// DorkNet.DebugMod — opt-in debugging switch for DorkNet.ClientMod.
|
||||
//
|
||||
// This mod intentionally does almost nothing on its own. Its job is to
|
||||
// EXIST: when its DLL sits in the Mods folder next to DorkNet.ClientMod.dll,
|
||||
// the ClientMod detects it at startup (Cfg.EnableDiagnostics) and installs
|
||||
// its verbose diagnostic patches — HTTP header/callback tracing, join/quit
|
||||
// /studio traces, and the deep RegisterDiagnostics probes. Remove this DLL
|
||||
// to ship a quiet, minimal client that only carries the connect + anti-cheat
|
||||
// patches.
|
||||
//
|
||||
// Keeping the switch as a separate assembly (rather than a config flag baked
|
||||
// into the shipping mod) means the diagnostics literally cannot turn
|
||||
// themselves on in a normal install — you have to deliberately drop this
|
||||
// file in. That is the "as safe as possible" default the main mod wants.
|
||||
|
||||
using MelonLoader;
|
||||
|
||||
[assembly: MelonInfo(typeof(DorkNet.DebugMod.DebugMod), "DorkNet DebugMod", "1.0.0", "Dork Squad")]
|
||||
[assembly: MelonGame(null, null)]
|
||||
|
||||
namespace DorkNet.DebugMod;
|
||||
|
||||
public class DebugMod : MelonMod
|
||||
{
|
||||
public override void OnInitializeMelon()
|
||||
{
|
||||
LoggerInstance.Msg(
|
||||
"=== DorkNet DebugMod present — DorkNet.ClientMod diagnostics are ENABLED. " +
|
||||
"Remove DorkNet.DebugMod.dll from Mods to ship a quiet client. ===");
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<!--
|
||||
DorkNet.DebugMod — the opt-in debugging companion to DorkNet.ClientMod.
|
||||
|
||||
The shipping ClientMod installs ONLY the patches needed to connect and
|
||||
survive anti-cheat; all of its verbose diagnostic patches (HTTP header
|
||||
tracing, join/quit/studio traces, the deep RegisterDiagnostics path) are
|
||||
gated OFF by default. Dropping THIS dll into the Mods folder next to
|
||||
DorkNet.ClientMod.dll flips Cfg.EnableDiagnostics on (the ClientMod
|
||||
detects this dll's presence at startup), turning all of that tracing
|
||||
back on. Remove it to ship a quiet, minimal client.
|
||||
|
||||
Build: dotnet build DorkNet.DebugMod/DorkNet.DebugMod.csproj -c Release
|
||||
-->
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework Condition="'$(TargetFramework)' == ''">net6.0</TargetFramework>
|
||||
<LangVersion>latest</LangVersion>
|
||||
<Nullable>enable</Nullable>
|
||||
<RootNamespace>DorkNet.DebugMod</RootNamespace>
|
||||
<AssemblyName>DorkNet.DebugMod</AssemblyName>
|
||||
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
|
||||
<CopyLocalLockFileAssemblies>false</CopyLocalLockFileAssemblies>
|
||||
<NoWarn>$(NoWarn);CS8602;CS8604;CS0436</NoWarn>
|
||||
</PropertyGroup>
|
||||
|
||||
<!-- Reuse the MelonLoader the ClientMod build already downloads. -->
|
||||
<PropertyGroup>
|
||||
<MelonLoaderDir Condition="'$(MelonLoaderDir)' == ''">$(MSBuildThisFileDirectory)..\DorkNet.ClientMod\build\melonloader\MelonLoader\net6</MelonLoaderDir>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Reference Include="MelonLoader">
|
||||
<HintPath>$(MelonLoaderDir)\MelonLoader.dll</HintPath>
|
||||
<Private>false</Private>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
Reference in New Issue
Block a user