View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0001698 | OpenClonk | Objects | public | 2016-03-03 15:15 | 2017-08-20 12:12 | ||||||||
Reporter | Zapper | ||||||||||||
Assigned To | |||||||||||||
Priority | normal | Severity | feature | Reproducibility | N/A | ||||||||
Status | new | Resolution | open | ||||||||||
Product Version | |||||||||||||
Target Version | 9.0 | Fixed in Version | |||||||||||
Summary | 0001698: New rule: population control | ||||||||||||
Description | It would be cool to have a (self-contained) population control rule for animals that integrates smoothly with the current (and future) stuff. I imagine it to work approximately like that: * remember the number of each animal type on startup * if the current amount of animals is lower, do the following: * call animal->Place(1) * check if the newborn animal can be seen by a player * if so, remove it and try again later * otherwise, let the animal live This would not force us to make up new spawn rules for every animal (aka "Birds fly in from the sides", "Fishes swim in from the background"), which would be required so that players who observe a respawn are not pulled out of the immersion. This would lead to animals having a higher chance to be spawned in placed where players do not frequently go. This is imo not necessarily a bad thing. It would require minimal (if any) overhead, because animals need to implement a Place() function anyway. The proposed solution would then be a very lightweight (in lines of code) solution. | ||||||||||||
Tags | Script | ||||||||||||
Attached Files |
|
![]() |
|
Sven2 (developer) 2016-03-03 20:37 |
This is already done in Deep Sea Mining. All non-piranha-fish usually end up in a corner (not sure if they spawn or swim there). It's probably better than nothing though. |