Fix #9242: Tree tick handler did not scale by map size. #9246
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Motivation / Problem
Tree tick handler did not scale by map size.
This means that random tree generation density is higher on small maps and lower on large maps. This difference is enough to make the Lumber Mill impractical to use on large maps.
Description
This change skips ticks on maps smaller than 256x256 and increases iterations or shortens the interval on maps larger than 256x256.
Although #9242 is primarily about the Lumber Mill, this issue affects all random tree generation after a game is started.
Limitations
For simplicity the counter decrement function now triggers when the counter passes zero, instead of when the counter reaches zero. Slight timing difference but shouldn't affect much.
Checklist for review
Some things are not automated, and forgotten often. This list is a reminder for the reviewers.