Alpha 46

Major player-facing additions this month

 * Foreign Office : added a means to perform bureaucracy to influence faction relations & trigger events
 * Boxed Modules : most building modules are now constructed in workshops rather than in-place
 * Fire : fire!!

Engine, misc

 * OPTIMIZATION: several AI side performance issues with > 50 characters
 * OPTIMIZATION: implemented various memory efficiency operations for loading very long, very large save games with an unreasonable number of goods lying around
 * OPTIMIZATION: slowdown by characters constantly checking if the thing they are holding in their hands is a bandit and if they should run away from it
 * OPTIMIZATION: colonists will no longer spend ~40% of their AI compute time considering if they should eat other colonists

Fire

 * added infrastructure for fire (heatmap, ignition system)
 * added Fire!!
 * updated object damage scripts to handle fire & added it to many objects
 * updated agent damage scripts to handle fire damage
 * (corpses set to not ignite because don’t wanna deal w/ that right now)

Boxed Module System

 * (added flatpackCrate.upm – aka boxed module – for Chris to use)
 * (added variations on boxed module crate w/ different icons)
 * added Boxed Module production/construction: (most) modules are now constructed in workshops rather than in-place. Most non-decor modules now work with this system.
 * then added all decor to the boxed module system
 * (added ability to default some stuff in job_times.edb to avoid some data entry tedium; done in response to the thought of having to define 50+ module assembly jobs)
 * (added generic "Assemble Module" case to building_transform_item.fsm & to job_times.edb)
 * FIXED: materials costs for several decor modules

Foreign Office & Related Events

 * added first implementation of foreign office, connected prestige system to empire faction interaction within foreign office. (work still to do includes: exposing current standing data with each faction, exposing data for how each mission affects faction standing, reworking bandit events and foreign faction events to be based on faction standing, and populating periodic passive and choice-based events for each faction related to current faction standing instead of using graph traversal (whew, yeah, there's a lot still to go here))
 * Foreign Office faction standing for the Empire hooked up to current faction standing
 * Bandits now hooked up to foreign office! you'll have to choose who to focus diplomatic efforts on
 * Foreign Office "missions" now hooked to custom event scripts!
 * did more UI work differentiating diplomacy points from faction standing, as well as disabling faction options if they aren't in the area)
 * added various UI assets in support of foreign office info display & hooked them up

Banditry

 * added new Bandit events: bombing run, propaganda drop, insult drop, false info, bandit guard town (and overhauled others to play nice in new system)
 * (attached bandit hostility state changes to foreign office plus certain events)
 * (updated bandit spawn, plunder, major plunder to work w/ new foreign office systems)
 * (disabled some old bandit events that didn’t work w/ new foreign office systems)
 * (friendly bandits can share sight radius w/ player now)
 * (changed banditFavour -> banditStanding for vocabulary consistency)
 * FIXED: goods stolen by bandits will be subtracted from colony commodity counts

"Office" UI & Scripts

 * added progress bar to mining in mineshaft job
 * Mines will display their outputs & mine depth in their UI window (and not crash the game)
 * (removed "mk1" from mineshaft module name)
 * (increased time between notifications for missing office workers when people do wait_for_X fsms)

Skills

 * adding skillup thought bubble + memory
 * changed "gathering" skill name to "naturalism" in prep for future skill overhaul
 * balance: set new skill levelup values appropriate for each profession
 * improved the interface for requesting specific job progress bars
 * (fixed foraging and skill use therein)
 * (overhauled part of building_transform_item.fsm to fix some rather broken stuff to do w/ skill inheritance from overseer and building quality memory creation)
 * FIXED: skill bar asset def oversight that caused display of incorrect skill levels!)
 * FIXED: some weird bugs with progress bars
 * FIXED: skill progression bar variations were not being displayed correctly

Other UI

 * UI: expanded workshop UI code to allow for more recipes since we have boxed modules now
 * Small icons will now hover above modules indicating when a required commodity for completing the module construction (i.e. a flatpack, or logs, or whatever) is missing.
 * removed a lot of unnecessary ticker text
 * (refreshed commodities.xml to fix broken icons)
 * added Building Quality tutorial
 * FIXED: haywire scrollbar issue
 * FIXED: Added/fixed a number of icons (generally to do w/ boxed module system)
 * FIXED: some typos in events
 * FIXED: manually cancelling burial will stop automatic burial (again)
 * FIXED: module repair alerts will reference material name required rather than internal tag string

Character Brain Surgery

 * (hearExclamation no longer becomes upset when it tries to query the name of non-agent damagers)
 * (removed a ton of unused thinkLock cruft)
 * (removed some old, unused script hooks)
 * (replaced all use of "sawActivity" with "hearExclamation" for simplification)
 * (cleaned up a bunch of possible minor problems w/ dead agent order handling)
 * FIXED: Soldiers ordered to beat colonists

#JustEldritchThings

 * colonists who are maddened or cultists will enjoy creepy dancing rather than be upset
 * airdrop crates now love doomed characters
 * FIXED: dissecting fishpeople could freeze game
 * FIXED: various minor issues w/ dissecting horrors
 * FIXED: Naturalist examination of rocks could result in spawning of infinite eldritch artifacts
 * FIXED: error when selecting dialog button in Naturalist studies fishperson/obeliskian
 * FIXED: corrected incorrect text in naturalist_study_fishperson_corpse event

Religion

 * balance: Chapel-assigned workcrew labourers can now take confession
 * FIXED: vicar deprogram cultist job would occasionally freeze the cultist in place forever
 * FIXED: people will no longer attend sermons while carrying hoes (nor will they seek services of the barber or pub while carrying tools)
 * FIXED: colonists sleeping in chapels will no longer receive positive memories for having attended a sermon (they will instead be rudely awoken)

Economy

 * FIXED: "unique" tag now works on gameSimRequireGameObject::RequirementMet (previously it didn’t) (this is important for jobs that require multiple instances of the same commodity)
 * reorganized workshop data files to be (much) more legible
 * (fixed broken job def in kitchen)
 * (added module requirements to some kitchen jobs)
 * (basicfood and basicdrink have been rolled into building_transform_item.fsm; extra fsms deleted)
 * (module repairs now work off table in modules.edb OR default to some values based on tier level OR just require planks ’cause yolo)
 * (removed a bunch of distance utilities from workshop_jobs.xml because they were irrelevant)

What's Cooking?

 * (added basic_food fallback which will make stew if a product isn't found for some reason)
 * FIXED: Sausage / inedible basic_food error
 * (added missing Steam Oven icon)

Misc. Business

 * military rally beacons will self-delete after a day (so that soldiers don’t accidentally starve to death)
 * (cleaned up attack_melee FSMS to use temptools rather than spawning and deleting actual tools)
 * added definitions for farmable coconut palms (not player-side)
 * (potentially fixed a "Clear" scripterror)
 * (cleaned more console spam while looking through fsms)
 * (immigration / loadout scripts now check for structures before placing colonists & cleaned up junk in spawning scripts)
 * FIXED: error when using "Daring" loadout
 * FIXED: assigning a Chemist to a Chemist would crash the game
 * FIXED: Refining Tutorial scripterror