Repository navigation
This milestone update marks the official release of the Shrapnel Overhaul Mod for Scav game version 6.1. It introduces deep performance optimizations, compiles zero-alloc JIT serialization delegates, fixes long-standing physical bugs (like floating shards), and significantly refines ballistic falling and visual visibility.
⚙️ Full Scav v6.1 Support
- Decompiled Signature Fix: Resolved a critical signature return type mismatch where the game changed Sound.Play to return an AudioSource instead of a float/single. Recompiled against the new game libraries, eliminating MissingMethodException and log spam.
⚡ Zero-Alloc Expression JIT Serialization
- Expression-Compiled Delegates: Replaced slow MethodInfo.Invoke reflection inside ShrapnelNetSync.cs with fast, JIT-compiled Expression delegates.
- Zero Garbage: This unboxes the Netcode FastBuffer structs directly on the heap at runtime, matching native execution speeds with absolute zero GC allocations, eliminating CPU micro-stutters during heavy network synchronization.
🧱 Dynamic Contact Support (No More Floating Shards)
- Contact Normal Evaluation: Stuck shards now track their landing contact normal (_lastHitNormal) to evaluate which block supports them.
- Real Falling: If you destroy a wall or ceiling that shards are embedded in, they will now correctly fall down under gravity instead of floating in mid-air.
☄️ Ballistic Physics & Polish
- Heavy Ballistics: Calibrated mass, gravity scales (0.7-1.2), and drag coefficients in ShrapnelWeightData. Shards now fall ballistically and heavy under gravity instead of floating like feathers.
- Aspect Ratio Optimization: Capped Y-stretch values (1.8x – 5.0x max) in ShrapnelFactory.cs, completely removing the "giant spinning rod" effect.
- Global 30% Damage Balance: Balanced combat by reducing base damages globally, while restoring limb hit registration (headOnlyDamage = false) on Hot shards to make flesh hits feel satisfyingly impactful.
✨ High-Energy Sparks & Enhanced Visibility
- Laser-Like Sparks: Boosted ParticleSystem stretch parameters (lengthScale = 3.5, velocityScale = 0.08), making trail sparks render as beautiful, high-velocity lines.
- Sparkle Glint: Specular glint rate doubled (interval halved) and spark emission brightness increased 2.5x so cold resting shards sparkle clearly like real metal under light.
- Glow Intensity: Elevated ground glow values for Heavy (0.4) and Massive (0.3) weights, and established their minimum heat floor to ensure dangerous shards emit warm light.
- Fraction Rebalance: Reallocated explosion budgets toward GPU-batched micro-shrapnel and needle sparks, increasing pyrotechnic density 3-fold.
📈 Extreme Performance Tuning
- Staggered Harmless Shard GC: Small, cold, harmless debris now cold-fades 3.5x faster, and resting ground debris lifetime has been cut by 65%.
- Crater Scan Optimization: Reduced block scanning samples by 50% in SpawnBlockDebris to eliminate micro-stutters during heavy detonations.
- Clean MSBuild Environment: Reference paths reorganized via absolute properties, resolving MSB4011 duplicate import warnings.
Full technical details are documented in the CHANGELOG.md file.
🛠️ Installation
- Requires BepInEx 5.4.21+ installed in your game directory.
- Place the ScavShrapnelMod.dll file into: CasualtiesUnknownDemo/BepInEx/plugins/
- Launch the game! (The configuration file will auto-generate and update safely on the first run).