Summary: I was building a single-storey house, and the workers stopped working on the roof to get food. After eating, they ganged up on the same task. Game was running at ~1FPS, and returned to normal when roof construction finished.
Steps to reproduce:
I have not reproduced this yet. Maybe I’ll try again this week
- Design building
- Have many berries in stock, nearby
- Have many workers working on building go on lunch break while placing roof.
- Hope they all return to work at the same time.
Workers spread out on the roof, taking a different task/tile each.
They all swarmed over to the same block. The roof was built slowly, one tile at a time. FPS dropped significantly, pathfinder was at 100% the whole time.
Confounder - I had a few trapper zones. Being the eejit that I am, I started removing them to “fix” the problem. I don’t think they were to blame as the FPS drop only fizzled out as the roof neared completion.
Building size - I designed a spiral building, outer dimensions of 24 x 18:
Roof - I think this bug is roof-placement-specific. My roof was 2 units tall, sloped on all 4 sides. I think the large surface area helped me get the timing right for this bug, as the villagers only started laying roof as they became hungry. If trying to reproduce, play around with your building size to have them be working on the roof when they drop everything to eat (or script something to trigger them getting hungry?)
Lastly, I had an abundance of berries all in the same area. They all ate near each other, which may have caused them to return to work at the same time (and plan to place the same block)
Edit: I get a similar FPS drop when I promote 5 or 6 villagers into farmers and then place large farms… they seem to crowd in that scenario as well, both when hoeing the earth and when planting. To be tested in the future!!
Versions and Mods:
b1687 / Candlearch Mod