Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
VAI TER CEBOLA
Adds the CEBOLA scrap item with quieter audio, native item physics and smoother counter delivery.
| Date uploaded | 2 weeks ago |
| Version | 1.1.5 |
| Download link | BakaMODs-VAI_TER_CEBOLA-1.1.5.zip |
| Downloads | 80 |
| Dependency string | BakaMODs-VAI_TER_CEBOLA-1.1.5 |
This mod requires the following mods to function
BepInEx-BepInExPack
BepInEx pack for Mono Unity games. Preconfigured and ready to use.
Preferred version: 5.4.2100Evaisa-HookGenPatcher
Generates MonoMod.RuntimeDetour.HookGen's MMHOOK file during the BepInEx preloader phase.
Preferred version: 0.0.5README
Vai Ter Cebola
Adds the CEBOLA scrap item to Lethal Company.
What's new in 1.1.5
- Voices play only on the first pickup of each spawned onion by default, with a shared 60-second cooldown and no overlapping or queued clips.
- Default voice volume is 35%, with a 12-metre range. Dropping an onion plays its drop voice, replacing any current onion voice, with a separate 5-second cooldown.
- Press Q while holding an onion to mute/unmute all onion voices for yourself. Your preference is saved.
- Three extra onions are added to each interior scrap spawn plan, in addition to random selection. The game handles their placement and network synchronization. Valid spawn points are required.
- Native item movement handles falling and ship-relative positioning, with a corrected floor offset. Automatic NGO parenting is disabled before network registration so ship cargo keeps following the ship during landing and takeoff.
- Placing an onion on the Company counter keeps the normal sale, then plays the cursed sale voice and makes the Company attack, killing the player who delivered it and anyone nearby. Disable with
Effects.CurseOnDelivery. - Gradual dizziness while holding an onion is enabled by default: full strength after about 60 seconds, then gradual recovery over up to 120 seconds after dropping it. Re-pickup preserves accumulated dizziness; audio mute does not affect it. Recovery no longer depends on onion count. The onion directly identifies its holder and attaches one effect controller to that player. Inventory slot selection, audio playback and player Update patches are not required. Pickup and intensity diagnostics are written to the BepInEx log.
- The scanner shows the actual base scrap value and an approximate sale value separately.
Configuration
After launching with the mod, close the game and edit BepInEx/config/BakaMODs.VaiTerCebola.cfg.
| Section | Setting | Default |
|---|---|---|
| Audio | Enabled | true |
| Audio | PlayOncePerOnion | true |
| Audio | CooldownSeconds | 60 |
| Audio | DropCooldownSeconds | 5 |
| Audio | Volume | 0.35 |
| Effects | DizzinessEnabled | true |
| Effects | CurseOnDelivery | true |
| Spawn | GuaranteedOnions | 3 |
Upgrading to 1.1.1 restores dizziness once, including configurations saved with the disabled default from 1.1.0. You can disable it again afterward; subsequent launches preserve your choice. Muting the audio does not disable dizziness.
GuaranteedOnions is controlled by the host and applies on the next generated map. Set it to 0 for random-only spawns; the supported range is 0–20. Other preferences are local to each player. Pickup events are announced by the server; late joiners do not replay old events. Loading a save creates new onion instances, resetting their pickup history.
The base scrap value compensates for the Company buying rate to target an approximate $350 sale. Integer rounding may affect totals.
Installation
All players must use the same version. Replace the previous mod with the DLL and cebolaassets together in BepInEx/plugins/Cebola. Avoid duplicate DLLs in other plugin folders.
Requires BepInEx, LethalLib and HookGenPatcher.
A special thanks to Evaisa for creating the essential LethalLib library.
CHANGELOG
Changelog
All notable changes to this project will be documented in this file.
[1.1.5] - 2026-09-27
- Disabled NetworkObject.AutoObjectParentSync on the onion prefab before network registration and on runtime instances.
- Prevent automatic Netcode parenting from rejecting/overriding the game's local ship, item-holder and counter hierarchy.
- Updated the Unity source prefab to the same policy; the plugin also fixes the existing bundled prefab at load time.
- Kept spawn/ownership synchronization and native local falling targets intact. Existing saved onions receive the policy when reloaded.
- Restored the cursed sale: placing an onion on the Company counter keeps the normal delivery, plays its cursed voice and makes the Company attack, killing the delivering player and anyone nearby. Toggle with Effects.CurseOnDelivery.
[1.1.4] - 2026-09-27
- Restored direct holder detection from the onion component, avoiding stale inventory selection and held-object flags on the player.
- Replaced the PlayerControllerB.Update patch with one effect component attached to the actual local holder, applying dizziness in LateUpdate.
- Recovery persists after dropping/selling/destroying the item and does not multiply with onion count.
- Added prefab validation and holder diagnostics; effect detection runs before audio/network event handling.
- Corrected the release package identity to VAI_TER_CEBOLA.
- Added 14 integration regression checks for the production player-effect component.
[1.1.3] - 2026-09-27
- Apply dizziness directly from a local PlayerControllerB.Update postfix instead of the plugin MonoBehaviour Update.
- Detect the active onion from the player's inventory slot with replicated held-object fallback and item identity checks.
- Log effect activation, configuration and intensity every 15 seconds while held, for in-game verification.
- Restored server-announced drop voices, independent of the first-pickup rule and 60-second pickup cooldown.
- Drop voices replace the current onion voice and use a separate 5-second cooldown; local mute and volume still apply.
- Explicitly disable the voice source's optional spatializer plugin; retain normal 3D attenuation.
[1.1.2] - 2026-09-27
-
Preserved the original 60-second dizziness buildup and 120-second recovery; pickup now resumes from existing player drunkness, with audio mute remaining independent.
-
Restored three additional onions per interior generation by adding them to the native scrap spawn plan; random onions can still appear too.
-
Added the host configuration Spawn.GuaranteedOnions (default 3, range 0–20).
-
Preserved native placement, network spawning and scrap value synchronization instead of instantiating at raw spawn transforms.
-
Logs an explicit compatibility error if the native spawn-plan patch cannot be applied.
[1.1.1] - 2026-09-27
- Restored gradual onion dizziness as enabled by default.
- Added a one-time migration to re-enable the effect in configurations created by 1.1.0. Later manual opt-outs remain respected.
- Audio muting remains independent of the effect. Recovery still runs once per local player and continues after dropping/selling the onion.
[1.1.0] - 2026-09-27
Audio
- First-pickup-only voices, shared 60-second cooldown, lower volume and 12-metre range.
- Removed drop voice spam and overlapping clips.
- Local, persistent Q mute for all onions; server-announced pickups without replay for late joiners.
Physics and interaction
- Removed forced extra spawns and dynamic rigidbody overrides; use native scrap generation and movement.
- Corrected floor offset using the scaled collider.
- Restored normal counter placement and selling; removed the placement-blocking curse and forced death.
Other fixes
- Optional dizziness, disabled by default, with recovery independent of onion count.
- Scanner totals use the actual scrap base value.
- Existing asset bundle remains compatible.
[1.0.0] - 2025-09-21
Added
- Initial release of the VaiTerCebola mod.
- Introduced the Onion as a new scrap item.
- Added random events upon picking up and selling the cebola.
[1.0.1] - 2025-10-18
Fix
- The amount of spawns per round has been reduced
[1.0.3] - 2025-11-16
Audio Control
- Added a new option to mute/unmute audio