
Too Many Balls
Adds thousands of tiny physics spheres to every level point. Smart cell culling + active caps keep it (mostly) sane. Still needs a DECENT CPU & GPU. Bring snacks.
Last updated | a day ago |
Total downloads | 33 |
Total rating | 1 |
Categories | Mods Client-side Cosmetics |
Dependency string | Omniscye-Too_Many_Balls-1.0.0 |
Dependants | 0 other packages depend on this package |
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.2100README
Too_Many_Balls (v1.0.0)
Adds thousands of tiny red physics spheres to every level.
They roll. They bonk. They form a beautiful, CPU-toasting carpet of chaos.
Yes, there’s culling. No, that doesn’t mean your PC is safe. Bring a DECENT CPU & GPU.
What it does
- Per-level-point swarms: For each discovered “level point,” the mod spawns a cluster of spheres around it.
- Feather-light physics: Low mass, low drag, aggressive sleep = easy to push without immediately melting the solver.
- Smart culling grid: World is split into cells; only cells near the player are live. Everything else is parked
(kinematic, colliders off, renderer off if you want). Hard active cap keeps the max number of “awake” balls down. - Deterministic spread: Golden-angle spiral around each point so you don’t birth a jittering singularity.
TL;DR — it looks like a hundred thousand balls. It only simulates around ~800 near you. Your fans still spin.
How it works (short and mean)
- Finds “level points” using a name/type scan (same tactic as the phone mod).
- Per-point mode is default: spawns
SpheresPerPoint
spheres around every discovered point, placing them on a spiral with configurable radius. - Grid culling splits the map into squares (
CellSize
meters). Only a square of cells around you (ActiveCellRadius
) is enabled. - A global cap (
MaxActiveCount
) picks the closest N spheres if too many are inside the active cells. - Toggling (enable/disable) is time-sliced so you don’t hitch when stepping into a dense area.
Requirements
- BepInEx 5 (dependency included in manifest)
- A DECENT CPU & GPU. If your laptop is powered by hopes and prayers, this mod will find out.
Default behavior / baked presets
These are hard-overridden in code (your config can’t fight them):
SpheresPerPoint = 100
MaxActiveCount = 800
ActiveCellRadius = 1
CellSize = 20
Other useful knobs (still configurable):
SphereScale = 0.3
(size)PerPointJitterRadius = 1.5
(spread radius per point)UseSpiralDistribution = true
HideRendererWhenCulled = true
CullRefreshInterval = 0.25
ToggleBudgetPerFrame = 600
SnapToGround = false
(leave OFF for huge counts)
Performance tips (because you will ask)
- If FPS dips: raise
CellSize
(20→24) or dropActiveCellRadius
(1), or lowerMaxActiveCount
(800→600). - Want more visible chaos? Increase
SpheresPerPoint
, but expect longer spawn time and memory usage. - Do not enable
SnapToGround
unless you enjoy 100,000 raycasts and the smell of hot silicon.
Known quirks
- First-time spawn on large maps can hitch while Unity instantiates the object army. That’s normal. It’s also funny.
- If you turn every dial to 11, Unity will comply… briefly.
Changelog
1.0.0
- Per-point swarms with spiral distribution
- World-cell culling with hard active cap
- Time-sliced toggling to avoid hitch spikes
- Light rigidbodies + shared instanced material
Credits
- Me, for giving the CPU a reason to exist.