Lethal Company
Install

Details

Last Updated
First Uploaded
Downloads
2.9M
Likes
14
Size
40KB
Dependency string
xilophor-StaticNetcodeLib-1.2.0
Dependants

StaticNetcodeLib

Build Latest Version Thunderstore Downloads NuGet Version

This lib allows BepInEx mods to use Netcode for GameObjects in a static context.

Usage

Add the appropriate BepInDependency attribute to your plugin class, like so:

[BepInDependency(StaticNetcodeLib.Guid, DependencyFlags.HardDependency)]
public class ExampleMod : BaseUnityPlugin

Then add the StaticNetcode attribute to any classes that have static rpcs.

[StaticNetcode]
public class ExampleNetworkingClass

After that, you can simply use Server & Client Rpcs as you normally would (even outside NetworkBehaviours), but in a static context, like so:

[ClientRpc]
public static void ExampleClientRpc(string exampleString)
{
    ExampleMod.Logger.LogDebug(exampleString);
}

/* ... */

ExampleClientRpc("Hello, world!");

Note: The Rpc attribute params are not respected for this. For example, ServerRpcs are static and thus cannot have an owner, and are used as if it had the RequireOwnership = false parameter.

Acknowledgements

Thank you @Lordfirespeed for being my rubber ducky.

Thunderstore development is made possible with ads. Please consider making an exception to your adblock.