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.
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 | 8 months ago |
| Total downloads | 462 |
| Total rating | 2 |
| 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
SpheresPerPointspheres around every discovered point, placing them on a spiral with configurable radius. - Grid culling splits the map into squares (
CellSizemeters). 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 = 100MaxActiveCount = 800ActiveCellRadius = 1CellSize = 20
Other useful knobs (still configurable):
SphereScale = 0.3(size)PerPointJitterRadius = 1.5(spread radius per point)UseSpiralDistribution = trueHideRendererWhenCulled = trueCullRefreshInterval = 0.25ToggleBudgetPerFrame = 600SnapToGround = 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
SnapToGroundunless 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.