Skycheg-repo_webcam icon

repo webcam

Displays your local webcam or virtual avatar over your character's head for local recording and streaming.

CHANGELOG

Changelog

2026-03-22

  • Reduced release-time logging overhead by buffering file writes instead of flushing every message synchronously from gameplay threads.
  • Throttled repetitive runtime diagnostics so preview, transport, and anchor logs no longer spam the log file during active sessions.
  • Moved outgoing webcam crop, mirror, and downscale work to a GPU blit path before JPEG encoding, reducing CPU load when capture devices force higher source resolutions such as 1280x720.
  • Changed remote anchor refresh to follow the tracked player lifecycle first, avoiding repeated alive/dead full-scene scans for every peer during steady-state gameplay.
  • Updated package version to 1.2.2.
  • Added this English changelog to the release archive so packaged builds include change history next to the DLL and manifest.
  • Updated the Thunderstore dependency to BepInEx-BepInExPack-5.4.2305.

2026-03-14

  • Split remote anchor resolution into separate alive/death paths so code_head_top and Player Death Head(Clone) are no longer mixed during lifecycle transitions.
  • Extended anchor failure diagnostics to log alive and death anchor candidates independently for the matched remote player hierarchy.
  • Reused the last trusted remote death anchor when Steam/Photon ID matching temporarily drops after death, preventing webcam loss above a valid Player Death Head(Clone).
  • Fixed an issue where webcams disappeared after entering a level due to failed Photon Owner ID matching; anchor resolution now scans all PhotonView components in the hierarchy.
  • Fixed an issue where webcams did not attach to dead players properly: implemented a direct child-search fallback for Player Death Head(Clone) when standard component resolution fails.
  • Disabled the parking coordinate threshold filter specifically for death heads, preventing them from being rejected when flung far away by physics.
  • Added a 5-second grace period for the Alive lifecycle state to prevent webcam flickering or disappearing during the transition between alive and dead states.
  • Implemented diagnostic logging (LogAnchorResolutionFailureDiagnostics) to track anchor resolution failures in real-time.

2026-03-07

  • Moved the custom Steam relay transport to a dedicated virtual port so it no longer collides with RepoSteamNetworking traffic when that library is installed locally.
  • Reworked the webcam send profile selection to use Steam lobby recipient count and a stricter bitrate budget, preventing 24 FPS / 360p from staying active in larger lobbies.
  • Switched video delivery from direct full-mesh fan-out to host-relay routing over Steam so larger lobbies no longer multiply every client frame across all peers.
  • Limited host-relay routing to larger lobbies only; 2-3 player sessions now keep direct peer fan-out because it is cheaper and lower-latency at that size.
  • Added a remote-anchor fallback grace mode so active webcam streams stay visible for a few seconds even if avatar anchor resolution temporarily fails during scene churn.
  • Expanded remote anchor discovery so webcam quads can reattach to corpse/ragdoll-style player hierarchies instead of staying frozen at the last live position.
  • Replaced corrupted and Cyrillic runtime strings in release-bound code with readable ASCII English text.
  • Rewrote package and repository README files to remove mojibake from shipped documentation.
  • Added .editorconfig to keep text files in UTF-8.
  • Added execution/check_text_encoding.py to catch mojibake before packaging.
  • Removed RuntimeStringVault string obfuscation and restored plain Twitch branding strings and channel URL.
  • Removed assembly-level obfuscation attributes and aligned assembly/plugin versioning with the Thunderstore manifest.
  • Removed all Twitch and author branding from runtime code and package metadata for Thunderstore compliance.
  • Added execution/release_sanity_check.py to validate package structure, manifest consistency, and forbidden legacy tokens before release.
  • Removed the obsolete Rune580-REPO_SteamNetworking_Lib dependency from Build/manifest.json.