Changelog/Beta

The following changelog only applies on the testing branch. For more information on how to activate betas, see here.

### 0.255

* Fixed build tasks that require a tile to be cleared beneath them not showing up in the task list.
* FIxed task priorities on tasks on top of tiles that need to be cleared being ignored (was using the skill priority of the clearing task)
* Added better handling for paths that take a long time to return. Causes a lot less re-pathing also better task persistence
* Added new Trapped Detection that will trigger if a unit is in a room < 50 tiles with no way out. This prevents recurring expensive task finding calcs
* Added a Trapped Alert.

### 0.253

* Removed a bunch of spam that tends to bloat the log files without providing useful info
* Added a sanity checker to try to catch error cases with haulable lists and repair them
* Added possible fix that could cause a null entry to be added to the haulable list after an items destruction if timed just right
* Optimized the Attribute Updater to use less memory and skip inactive attributes.
* Fixed haul not calculating its relative priority to other tasks properly in non Strict Skill Priorities (everything was at priority 5)
* Upgraded Closest Entity finder to categorize items in such a way that very large item counts are less of a problem CPU wise.
* Upgraded Attribute Manager with mass item finding system
* All foods given an equal +2 priority offset so hauling of different food types is consistent but prioritized over normal items
* Update Clear Tile and Harvest Tile to segregate their tasks by related work skill to lessen the impact of large masses of tasks
* Time Sliced the task update manager to remove the 1 second hitch that was sometimes visible under heavy cpu load.

### 0.252

* Updated French Language
* Fixed case where packing up an object on top of floor or roofs being built could disable those build jobs permanently
* Fixed cleanup of build tasks in the new optimized system that could lead to packup orders being ignored.
* Optimized PackupManager such that is tracks only the pack up object instead of all objects because it gets out of hand fast with huge homesteads.

### 0.251

* Cached tool finding code for large numbers of construction jobs, large CPU savings
* Added new internal build task sorting system to prioritize and cull build tasks better. fixes many large hitches when there are lots of build tasks.
* Added cached string system to lower memory usage in the Jobs Menu (reduces hitching)
* Haulable system checks for haulable destination stockpiles over time instead of on demand (reduces hitching with lots of haulables)
* Upgraded the Tasks Menu Updater to make it take 5x less CPU.
* Improved memory management with tilemaps.
* Fixed broken baby carry due to an optimization in v0.247. No more floating babies
* Clanfolk will only go after spoiling food to eat with higher desirability if it is in a stockpile (no more berry parades)
* Applied some CPU gains to making the task system update faster at higher time scales. This should lead to more consistent behavior at high speed
* Added new high priority Livestock task manager to make sure that they get enough updates when eating when there are a lot of livestock
* Added an update multiplier to task manager based on current unit count vs reference count of (20) So at 40 units, there will be double the updates (and cpu cost) But things should run more consistently.
* Starving Animals At Troughs Fixed!

### 0.250

* Fixed oddly drawn windows and vents as a result of v0.249

### 0.249

* Upgraded haulable system to better handle large numbers of haulables late game
* Upgraded to a newer TextMesh Pro, saving CPU by disabling Text Scaling of all things.
* Optimized the roof support updater for blueprints. Saves a lot of CPU when there are lots of roofs active.
* Optimized window lighting
* Optimized entity distance searches around walls

### 0.248

* Fixed problem introduced due to optimizations in v0.247 that prevented cooking

### 0.247

* Made Non Strict Priority checking more efficient
* Optimized task checking substantially such that checking for new tasks while other tasks are in progress happens less often, saving CPU
* Optimized all "feed object" tasks such that they will only see valid target objects before any expensive checks begin