dedneves-BLOODLINK icon

BLOODLINK

Multiplayer co-op for ULTRAKILL: LAN/direct IP, Unity Relay join codes, synchronized combat, V1 customization and optional friendly fire. Experimental.

CHANGELOG

Changelog

0.114.0

  • Add museum chess VS PLAYER alongside VS BOT, with host-authoritative seats/turns, native legal moves, selectable promotion, ordered history and resync. Host is white; the guest is black; additional players spectate.
  • Recover players across the closed gate plane, including curved approaches and sliding doors. Capture closed blocker geometry and refresh anchors for new boss encounters even when an earlier door remains locked.
  • Make Restart Checkpoint recover living players as well as respawn dead players. Clients request a host-selected encounter/checkpoint destination; movement authority explicitly permits recovery. Do not restart the shared scene or arena music.
  • Replace continuous global projectile discovery with lifecycle registration and one initial scan. Send enemy projectile snapshots at 20 Hz with existing swept hit checks and interpolation. Reuse local weapon references and avoid unused host projectile request serialization.
  • Exclude dedicated projectile/chess objects early from generic scene mutation tracking.
  • Protocol 58: every participant must update. No runtime reflection added.
  • Verified by build, codec/policy checks and local UDP sessions. Museum panel layout, native chess visuals, arena geometry and actual FPS still require in-game validation.

0.113.2

  • Preserve reliable native hit effects independently of newer enemy pose/health snapshots; replay blood and dismemberment using the original limb, force and explosion flags.
  • Publish fatal hits after native damage completes instead of sending a bare death ahead of their gore event. Late impacts can affect existing corpses without restoring their health or AI.
  • Queue impacts until the replica resolves, with a bounded per-enemy backlog and one-time consumption. Protocol remains 57.
  • Automated build/protocol regression tested; visual blood and gib behavior still requires an in-game retest.

0.113.1

  • Keep replica AI disabled after death; cancel pending local AI invokes/coroutines when taking ownership and suppress replica animation attack events.
  • Complete the native body death when an authoritative death has already marked the identity dead but the body has not entered its death state. Completed corpses do not replay death callbacks.
  • Protocol remains 57. Tested with automated regression checks; the reported encounter still requires an in-game retest.

0.113.0

  • Client-initiated campaign exits are validated by the host and applied to the party, including the elevator's second pit and continue request.
  • Exit falls and scene transitions no longer trigger out-of-bounds recovery; abandoned solo position offsets are disabled for co-op transitions.
  • Arena recovery uses host-selected floor positions and actual locked gates, with bounded periodic checks and retry after room activation.
  • Enemy deaths are host-authoritative, sent reliably and scoped to their source map. Older damage packets cannot override newer health/phase snapshots.
  • Suppress live client enemy physics/controllers while retaining confirmed native corpse handling.
  • Add a conservative wave verifier for identifiable ordinary enemies; bosses, special deaths and missing/inactive objects are not force-counted.
  • Protocol 57; all players must update. No runtime reflection added.
  • Verified by build and local protocol/UDP regression tests. Unity scene geometry, elevator presentation and every boss encounter still require in-game testing.

0.112.5

  • Internal maintenance release: production code now uses direct, compile-time typed access to ULTRAKILL and Unity Gaming Services members instead of runtime reflection.
  • Rebuilt and repackaged with the current runtime libraries. Plugin build remains 0.112.0; network protocol remains 56.
  • No intentional gameplay, UI or synchronization changes. Every player must use the same plugin build and protocol.

0.112.4

  • Thunderstore package version bump for a new upload; plugin build and network protocol are unchanged (0.112.0 / 56).

0.112.0

  • Initial Thunderstore packaging of the existing 0.112.0 build, protocol 56.
  • Added the required root metadata and full third-party license notices.
  • Co-op connections through direct IP/LAN and Unity Relay.
  • Player, enemy, combat, object and progression synchronization.
  • Encounter-aware respawn recovery and protection against room optimization unloading multiplayer areas.
  • Optional host-controlled friendly fire for weapon fire and punches.
  • Compact teammate HUD with a raised white portrait frame and red health bar.
  • Interactive V1 customization and spectator support.
  • Packaging includes runtime libraries and the required scene-lifecycle configuration.

This package remains experimental; not all campaign encounters have been validated in multiplayer.