
Runtime Netcode Patcher
Patches Netcode RPC methods during runtime utilizing HarmonyDetails
Changelog
v0.2.0
Changed
- The final changes to the
NetcodeValidatorclass occur w/ this update. This will be the final form, the only change on your end is anew NetcodeValidator(YourPluginGUID)instead ofnew NetcodeValidator(YourPlugin). This is to be more in line with how Harmony instances are handled and to make things easier on the back-end. This includes a few new methods listed below following the pattern of the Harmony class. - NetcodeValidator.Patch(Type type)
- NetcodeValidator.Patch(Assembly assembly)
- NetcodeValidator.PatchAll()
v0.1.8
Fixed
- Pretty big README.md fix!
v0.1.7
Fixed
- Incorrect error logging in a few places.
- Project structure was out of control. It's now.. In control.
- Git fixes.
v0.1.1
Added
- Introduced a new
LogErrorAndReturnmethod inNetworkBehaviourExtensions.csto streamline error logging. - Implemented a new network logger in
Plugin.cs.
Changed
- Reorganized error reporting in
NetworkBehaviourExtensions.cs, now utilizingLogErrorAndReturnto improve coding practices. - Pruned extraneous variables in
RpcDatastruct. - Modified package dependencies in
.csprojfile, removing unnecessary ones and adding a supplemental package reference.
v0.1.0
Removed
- Imports: The namespaces
System.Collections.Generic, System.IO, System.Runtime.Serialization.Formatters.Binary, and HarmonyLibhave been removed. - Data structures: The dictionaries
NetRPCStates, NetRPCData, NetRPCParams, NetRPCSenderhave been removed which were being used to track RPC state, data, params, and senders. - Methods: The methods
GetNetworkState, GetNetworkData, LastRPCSender, VerifyAsRegisteredWithNetworkObject, ValidateRPCExecution, PrepareRPCParamsForSending, SendRPC, ProcessRPChave been removed.
Added
- Classes: New inner class
RpcDatahas been added. - Enumerators: An Enumerator
RpcSourcehas been added to the RpcData class andRpcStatehas been moved insideRpcData. EnumeratorRpcStatevalues changed from[AwaitingMessage, MessageReceived]to[FromUser, FromNetworking]. - Methods: The method
LastSenderIdhas been added to get the last SenderId from RpcData. - MethodPatchInternal Updates: The logic of MethodPatchInternal has been changed quite significantly.