Enhanced Hearse AI [Fixed for v1.4+]
I fixed Skylines Overwatch for SnowFall.
Note: To use this version you need to unsubscribe original version first, and then subscribe to my version.
Note: I changed the code, so this may conflict with other mods’ code.
The following description was quoted from the original version.
Comparing to the vanilla AI, this AI:
1. Arranges pickups in a much more optimized way. Hearses should no longer travel back and forth across your city just to pick up 10 corpses. It will prioritize the ones close to its current location.
2. Respects district boundaries. If your cemetery/crematorium is inside a district, the hearses it send out will take care of the corpses within the district first, before venturing out.
There are two sets of important concepts to keep in mind for this mod:
1. Inside vs outside a district
2. Primary vs secondary pickup zone
If a cemetery/crematorium is inside a district, then:
1. Its primary pickup zone is the district
2. Its secondary pickup zone is its effective area, which is specified by the game as a radius range with the building as the center. This area is approximately 50% of one tile.
If a cemetery/crematorium does not belong to any district, then:
1. Its primary pickup zone include all the areas within its effective area that does not belong to a district
2. Its secondary pickup zone is the rest of its effective area
Hearses will always prioritize corpses in their primary pickup zone. However, there are several rules within this general rule:
1. Between problematic corpses (those showing the death sign) and nonproblematic ones (those that have no visual clues), hearses will prioritize the problematic ones for pickup
2. However, if they come across a nonproblematic one along their way, they will pick it up first; but only if it is not behind them
3. If there is a closer corpse of the same priority, they will redirect to the closer one; but only if it is along the original bearing
4. If there are no corpses left to pick up, hearses will “patrol” their primary pickup zone.
The pickup priority above exists to achieve a good balance between making the hearses as efficient as possible vs keeping your CIMs as happy as possible. When you see a death sign, that means a corpse has become a nusance and your CIMs are not happy about it. But if we were to prioritize getting rid of the death signs as fast as possible, we would have to take a large hit on overall efficiency; in fact, it would become counterproductive during death waves. On the other hand, if we were to do the opposite, then we would be ensuring maximum efficiency at the risk of losing buildings to abandonment. The existing setup benefits from both approaches by prioritizing problematic corpses for overall bearing, but at the same time allowing pickups of nonproblematic corpses along the way.
See Also: Skylines Overwatch [Fixed for v1.3+]Original version: [ARIS] Enhanced Hearse AI
Source: