CleverRaven / CleverRaven/Cataclysm-DDA
Tone down spawning and splitting of slimes
- Dominant language
- C++
- Stars
- 13.1k
- Forks
- 4.6k
- Avg merge
- 2d 1h
- Merged PRs (30d)
- 205
Description
### Describe the bug
Playing with a lab underneath you, and labs are pretty common, is mostly that bad because of *hundreds* of slimes causing a massive slowdown. Resolving this should solve the worst part of the overall slowness when a lab is below you.
### Attach save file
n/a
### Steps to reproduce
1. Have e.g an evac shelter or anywhere really on top of an undiscovered lab.
2. Witness the crawl.
3. Despair.
### Expected behavior
Slimes need to be limited somehow. The big question is how?
Kevin said that adding a check to look for slimes in range is too slow and may make it even slower. But maybe this can be cached?
Maleclypse said that maybe we can add something that a slime splits in e.g slime2 then slime3 which have severely impacted and disabled splitting functionality.
### Screenshots
_No response_
### Versions and configuration
- OS: Linux
- OS Version: LSB Version: n/a; Distributor ID: Arch; Description: Arch Linux; Release: rolling; Codename: n/a;
- Game Version: cc4cb54 [64-bit]
- Graphics Version: Tiles
- Game Language: System language []
- Mods loaded: [
Dark Days Ahead [dda],
Disable NPC Needs [no_npc_food],
Portal Storms Ignore NPCs [personal_portal_storms],
Slowdown Fungal Growth [no_fungal_growth],
Bionic Professions [package_bionic_professions]
]
### Additional context
_No response_
Contributor guide
Research direction
No source files, tests, or entry points are named. Start by reproducing the slowdown with a lab beneath the player and inspect the slime spawning and splitting paths; done means reducing the resulting slime-driven slowdown without introducing excessive checking overhead.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- game-dev, performance
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100