BONELAB
Install with App

Details

Latest version
2.1.1
Last Updated
First Uploaded
Downloads
29
Likes
0
Size
42KB
Dependants

Changelog

2.1.1

  • Packaging fix: the DLL is now inside Mods/ in the archive instead of at the root, so mod managers install it where MelonLoader actually looks.

2.1.0

Multiplayer is back. Stripping it in 2.0.0 was the wrong call — it is a visible, reciprocal physics interaction in a sandbox everyone in the lobby has opted into, not a hidden advantage.

  • Shove players. Aim at someone in a Fusion lobby and squeeze: they get launched. It goes through the game's own networked attack system rather than a local impulse, so it is authoritative and everyone sees the same thing — a remote rig is owner-locked, and a local push would simply be overwritten by the client that owns them.
  • Force push shoves players too, deduplicated per rig so somebody standing in the cone is hit once rather than once per limb collider the sphere caught.
  • Damage is a separate dial and defaults to zero. Out of the box a shove is a pure launch. The slider is there for anyone running a PvP gamemode. Only one damage receiver is ever hit, because hitting every body part stacks the damage per limb and turns a nudge into a kill.
  • Networked objects can be carried again. Ownership is claimed on grab and re-claimed every 0.15s while carrying, since colliding with another client's object can hand ownership away mid-carry and leave the object dead in your grip.
  • All of it is reached by reflection, so there is still no LabFusion reference and the mod loads and behaves identically for everyone without Fusion installed. A Multiplayer page and a Fusion Status button report what was found.

2.0.1

Five bugs from a review pass over 2.0.0, all of which left permanent damage in the level.

  • Freezing something removed its gravity forever. The object's original settings were held by the grab that froze it, but a freeze deliberately outlives its grab, so those settings were thrown away while the object was still modified. Unfreeze Everything then only knew how to undo isKinematic, handing back a dynamic object with gravity permanently off — it would hang in the air and never fall. Picking it up again made it stick, because the next grab recorded gravity-already-off as the original. The saved state now lives in the freeze registry, which restores all of it.
  • Both hands could grab the same object. Each hand only checked its own load, so the second grab recorded the state the first had already changed, and whichever released last wrote gravity-off and zero drag back permanently. On an enemy it pinned them ragdolled for the rest of the level. There is now one owner per object across both hands.
  • Force push and grab fought over the same NPC. Both set muscle weight to zero and both tried to save the original, so overlapping them left the enemy limp forever. Muscle weight is now reference counted — the first claim records the real value and only the last release restores it.
  • Kinematic scenery was permanently converted to dynamic. Grabbing a door or a lift unbolted it for good. Kinematic bodies are no longer valid targets unless the mod is the one that froze them.
  • Carrying more than one object per hand was unreachable. The trigger latch could never clear while holding, so the second grab never fired and Max Held did nothing above 1. Extra objects are now picked up by resting your aim on them for a moment, since one trigger cannot mean both "throw" and "also take that".
  • Grabbing fired at 30% trigger instead of 60%, collapsing the intended hysteresis into a hair trigger. Force push can no longer fire on the same input as a grab.

2.0.0

A rewrite. Same idea, almost none of the same code.

Fixed

  • It was not actually force grab. The old build put a 0.3m sphere half a metre in front of your hand and grabbed whatever was already touching it, which is ordinary grabbing with extra steps. Targeting now casts down your aim, so you can take something off a shelf across the room.
  • Held objects drifted upward. Gravity was switched off on the rigidbody and an equal and opposite anti-gravity force was added every frame, so everything held got a free 9.81 m/s² push toward the ceiling.
  • Physics was driven from Update. Velocity was assigned directly on the render clock while the simulation ran on its own, which is where the jitter came from. Everything is now forces applied in FixedUpdate.
  • Mass did nothing. Velocity was assigned outright, so a car and a coffee cup flew identically. The hold is now a force-capped critically damped spring, and weight is the main thing you feel.
  • Objects could tunnel through walls when thrown hard; held bodies switch to continuous collision detection and switch back on release.
  • Bodies are resolved through collider.attachedRigidbody instead of by climbing parents, which is what BONELAB's collider layout actually needs.
  • The beam was a LineRenderer on a DontDestroyOnLoad GameObject, created and destroyed on every toggle and leaking across scenes. It is now immediate-mode geometry with no object to own.
  • Shader.Find result was used unchecked, so on any setup where that one name failed to resolve the visuals silently never appeared. There is now a fallback chain and a log line naming what resolved.
  • Level changes now drop references without writing to rigidbodies that are already being destroyed.

Added

  • Grab enemies. Lifting an NPC drops its puppet muscle weight so it hangs limp instead of standing rigid in mid-air fighting the pull, and it gets up again when released.
  • Force push on an empty hand: a cone of impulse that knocks NPCs off their feet for a couple of seconds rather than nudging them.
  • Freeze in place, with an Unfreeze Everything button, because a frozen object outlives the grab and needs a way back.
  • Carry several objects at once, up to twelve per hand, orbiting your aim point.
  • Charged throws — hold before releasing for up to a 3.2x harder throw.
  • Held objects rotate with your wrist, so you can aim a crate before throwing it.
  • A strength ceiling: past Max Mass you get a flat refusal buzz instead of a silent nothing.
  • Synthesised sound throughout — grab, throw, push, freeze, refusal, and a carry drone that flattens and grows as something strains against you. Haptics scale with weight and strain.
  • Beam, aim reticle and target highlight, all on one property-block draw path, with a hue slider.
  • Diagnostics page with Report State.

Removed

  • Multiplayer player-shoving and network ownership stealing. The old build could apply a damaging Attack to other players in a Fusion lobby and yank objects out of their hands. Both are gone, along with the LabFusion dependency. Everything here now acts on props and NPCs.
Thunderstore development is made possible with ads. Please consider making an exception to your adblock.