You are viewing a potentially older version of this package. View all versions.
mattymatty-AdditionalNetworking_Experimental-1.0.3 icon

AdditionalNetworking Experimental

This Releases are EXPERIMENTAL

Date uploaded 2 years ago
Version 1.0.3
Download link mattymatty-AdditionalNetworking_Experimental-1.0.3.zip
Downloads 172
Dependency string mattymatty-AdditionalNetworking_Experimental-1.0.3

This mod requires the following mods to function

BepInEx-BepInExPack-5.4.2304 icon
BepInEx-BepInExPack

BepInEx pack for Mono Unity games. Preconfigured and ready to use.

Preferred version: 5.4.2304
mattymatty-MonkeyInjectionLibrary-1.0.1 icon
mattymatty-MonkeyInjectionLibrary

A library mod that lets other mods add properties and methods to existing base-game classes at runtime, without modifying game files.

Preferred version: 1.0.1

README

This Releases are EXPERIMENTAL

Official Package

AdditionalNetworking

GitHub Release GitHub Pre-Release
Thunderstore Downloads

Towards a future with less de-syncs!

Use more Explicit networking for stuff like selected slot and inventory

Currently patched:

  • Current Held Slot ( using explicit slot id instead of forward/backward)
  • GrabbedObject slot ( streaming the entire inventory snapshot instead of relying on the other clients to guess where the objects are )
  • Shotgun ammo ( Owner will broadcast the explicit ammo amount )
  • Shotgun safety ( Owner will broadcast the explicit safety status instead of toggle )
  • Shotgun status ( Clients will request shotgun status from Host upon spawn )
  • Boombox playing ( Owner will broadcast the explicit track id and playing status )
  • Boombox status ( Clients will request Boombox status from Host upon spawn )
  • Player Username ( Owner will sync the name of his playerObject )
  • Explicit position and rotation of Items ( Owner will Broadcast )
  • Compute item fall only on Owner side
  • Force item to floor only once
  • Explicit position and rotation of Enemies ( Owner will Broadcast )
  • Explicit torso rotation of Nutcrackers ( Owner will Broadcast )
  • Compute torso rotation of Nutcrackers only on Owner side

Planned:

  • request scrap value on scan ( if value is missing )
  • Television sync ( status / play time )
  • Explicit position of players

Planned but might not happen:

  • Vanilla compatibility ( allow vanilla clients to join )

WARNING!

this mod will work only if both the host and the client have the mod

Installation

  • Install BepInEx
  • Unzip this mod into your BepInEx/plugins folder

Or use the mod manager to handle the installing for you.

CHANGELOG

v2.4.0

  • Update to V80

v2.3.5

  • use MonkeyInjectionLibrary for a more robust way of editing base-game classes

v2.3.4

  • update to v73 and use Interfaces to add properties more cleanly

v2.3.3

  • prevent host asking itself for values

v2.3.2

  • do not pocket and restore held items if they are already the correct item

v2.3.1

  • fix a conversion error that makes inventory re-sync each frame

v2.3.0

  • improve security of the namedMessages
  • sync shotgun values on grab
  • add replacement rpc for syncing grabbable values
  • add option to suppress vanilla grabbable sync

v2.2.2

  • actually upload the updated mod

v2.2.1

  • sync isCrouching state to Host so Host AIs can make use of it

v2.2.0

  • sync sound state for noise making animated objects ( eg: ToyRobot and Dentures )

v2.1.3

  • allow certain item types to skip updating the ScanNode when syncing the scrap value

v2.1.2

  • add more explicit logs in case of syncing errors
  • add try catches on network calls to prevent hard-crashes

v2.1.0

  • Do things the Unity Intended way

v2.0.0

  • Vanilla compatibility!!

v1.1.2

  • hide logs behind config toggle

v1.1.0

  • bundle our own Preloader to add the fields we need to the classes
  • less spammy check for scrap without a value

v1.0.9

  • Forgot to remove Cecil dependent code

v1.0.8

  • Rollback to Stable
  • Added request of 0-value scrap

v1.0.7

  • Remove Enemy syncing

v1.0.6

  • Remove position handling from Grabables
  • Remove Parent syncing
  • Grabbables now only sync Rotation

v1.0.5

  • revert v1.0.4
  • add Networking to sync object parents

v1.0.4

  • change Network Transform to World Space

v1.0.3

  • Added Config options

v1.0.2

  • Add Enemy transform sync
  • Add Nutcracker torso rotation sync
  • only compute Nutcracker rotation on Owner

v1.0.1

  • Add Item transform sync
  • only set item position to floor once
  • only perform fall calculations on Owner