Rampant (forked)

by ldinc

Forked Rampant mod. Added adjustable relation beetween distance from (0,) and evo factor. Will be deleted after resolve pull request of original modder

Content
2 years ago
1.1
586
Enemies

Changelog

Version: 3.1.3
  Compatibility:
    - Added interface for adding and removing excluded surfaces
  Bugfixes:
    - Removed layer-13 from projectiles
    - script_raised_built now looks for enemy faction and registers as needed
Version: 3.1.2
  Contribution:
    - Updated RU locale for Rampant by Astorin
  Tweaks:
    - Siege groups have their attraction to resource patches reduced by 50%
    - Reduced resource patch pheromone when enemy structures exist on chunk by 100x
    - Increased enemy pheromone weight for pathing by 2.5x
    - Increased hive spawning outside resources chunks by 5x
    - Changed mod setting to default to disallowFriendlyFire
    - Increased spawner egg and wasp health by 5, 75, 200, 300, 400, 550, 725, 1700, 3675, 7650
    - Increased default mod settings max squads to 30
    - Increased default mod settings max enemy level to 6
    - Increased major,minor resistance percents and Increased minor weakness percents primarily in the lower enemy levels
    - Increased spawner faction spawned biters health by 25%
    - Capped max unit resistance at 99%
    - Increased number of spawner spitter shots per unit
    - Increased spawner faction eggs regeneration
  Bugfixes:
    - Fixed sent aggressive squads, builder count, squad count could be negative
    - Added missing sent and max siege groups on debug log
    - Fixed small amounts of death generator not being rounded to nil
    - Fixed enemy base pheromone missing decay based on radius
    - Fixed resource pheromone generator not be cancelled out by enemy structures
    - Fixed unit groups gathering and then being disbanded immediately after they finish gathering, which will prevent biter clumps when groups are disbanded at extreme distances from the player
    - Fixed max squads and builders being exhausted by the game engine with gathering unit groups
    - Fixed electric biter attack causing biters to attack each other and expanded friendly fire protection to additional projectiles
    - Fixed energy thief crystal pole spinning
  Framework:
    - Updated visualizer tool for debugging
Version: 3.1.1
  Bugfixes:
    - Fixed enemy ending tier level of 10 would crash on startup
Version: 3.1.0
  Improvements:
    - Readded enemy pheromone for pathfinding incorporating enemy bases
    - Migration and siege groups now try to avoid chunks with existing enemy structures
  Tweaks:
    - Runtime number generator just uses the map seed now
    - Changed inferno faction to a projectile with fire aoe
  Bugfixes:
    - Fixed the period of the xor number generator being cut in half
    - Fixed desync when hives would generate buildings using the landmine event (workaround before created_effect existed)
    - Fixed acid damage causing hit effects for enemies which caused UPS loss
    - Fixed initial scan generation of hives on resources patches not having resources set before determining upgrades
Version: 3.0.3
  Bugfixes:
    - Fixed settling squads not detecting players on a chunk when deciding to settle early
    - Fixed recycling bases not clearing processBaseAIs iterator
Version: 3.0.2
  Bugfixes:
    - Fixed on_rocket_launched enemy base not be close enough for point gain
    - Fixed when new enemies are disabled the ai trying to mutate to a new enemy faction that doesn't exist
Version: 3.0.1
  Contributions:
    - ahmedcharles provided a fix for the missing map parameter in rocket launch event
  Bugfixes:
    - Removed console print statement when recycling bases
    - Fixed entitySkipCountLookup being nil when new enemies are disabled
Version: 3.0.0
  Notes:
    - Will reset maps of in progress games. This means that all enemy units will be removed and new enemy faction mutations will be reset. if you have used a pre-release 3.0.0, you will need to reset your mod options otherwise startup will fail.
  Contributions:
    - Added custom colors from ErdwurmJim
    - Simplification and refactor of locale generation with local for zh-CN from PlexPt
    - Added KO locale from x2605 for Rampant 3.0.0
    - Added updated RU locale from Astorin for Rampant 3.0.0
  Improvement:
    - Modified death pheromone squad path scoring
    - AI is now per regional base
    - Regional bases now have there own aggressive and siege squad counter and cleanup process
    - Added beltlayer, pipelayer, minime, and blueprint-sandboxes mod surfaces to surface exclusion list
    - Added mod settings to customize factions colors
    - Added on_chunk_deleted event for updating map and base stats
    - Walking sounds have been added to new biters
    - Laser sounds to beam attacks
    - Biter melee attacks should now have a sound
    - Dying, working, roaring sounds should now better match the size and level of the new enemy entities
  Tweaks:
    - Increased unit spawner cooldown by 2x
    - Added point loss on unit death
    - Removed squad refunds when vanilla AI or other mods create enemy unit groups above the squad limit
    - Halved the base distance bonus per regional base level so regional base cover less ground
    - Walls and transport belts no longer provide points to the AI when they are destroyed
    - Siege groups should try to settle slightly further from player structures
    - AI Debugging states are now printed to console and in-game
    - Added mod description into locale for translation
    - Reduced inferno fire damage by 97%, added fire patch cluster per attack starting at 2 upto 4
  Bugfixes:
    - Fixed Krastorio2 on_force_created playerforces being nil
    - Fixed enemy map scan creating bases unnecessarily
    - Fixed base.index reference error in displaying ai state
    - Fixed rampantSetAIState command to work with multiple ais per surface
    - Fixed base recycling on invalid surfaces
    - Fixed base chunk count not being decremented when chunks are removed
    - Fixed base iterator processing being nil
    - Fixed spawner spawns and wasp drones being included in kill stats, death pheromones, and AI stats
Version: 2.2.0
Date: 29. 12. 2021
  Contributions:
    - PlexPt has provided an update Chinese locale
  Improvements:
    - Added integration with schallAlienLoot (Thank you garrotte for the code snippet)
    - New enemy hives only spawn structures during daylight hours now
  Tweaks:
    - Set maximum value on enemy seed to 4294967295
    - Slightly increased spacing between enemy structures
    - License has changed to GPLv3
    - Greatly reduced chance of hive outside resoure chunks on initial structure creation (1 in about 500 spawners will be hives)
    - Separated mod setting into printing settlers building and ai spending points
    - Reduced visual size of spawners and hives
    - Increased visual size of worms
    - Inverted Hive colors for easier visual identification
    - Decreased occupied resource pheromone generation by 10x
  Bugfixes:
    - Fixed added check for hives on resource chunks before early building
    - Fixed Hives spawning excessive amounts of entities
    - Fixed chunkPack nil in processNests (Thanks Skallywaggz for the report)
    - Fixed random generator seed overflow (Thanks NeveHanter for the report)
    - Fixed removing chunks could index outside processQueueLength (Thanks thecheat789 for the report)
    - Fixed processMap and processStaticMap could index outside processQueueLength
    - Fixed base alignments could be blank when removing factions (Thanks kind_killer for the report)
    - Fixed hive proxy entities would occasionally not be destroyed or upgraded correctly
    - Fixed hive proxy entities not respecting initial proxy type when determining initial upgrades
    - Fixed hive entities being initialized from turrets
  Optimizations:
    - Added early stopping to removeProcessQueueChunk
Version: 2.1.2
Date: 28. 12. 2021
  Bugfixes:
    - Fixed Chinese locale
Version: 2.1.1
Date: 28. 12. 2021
  Improvements:
    - Settlers now have a 40% chance to move roughly 50% of max expansion distance, 25% chance to move roughly 33% of max expansion distance, and 25% chance to move roughly 75% of max expansion distance, 5% chance to settler where the group formed, 5% chance to go 100% of max expansion distance
  Bugfixes:
    - Settlers in some cases not setting a maxDistance which caused settlers to build where they were formed
Version: 2.1.0
Date: 27. 12. 2021
  Contributions:
    - PlexPt has completed the Chinese locale
  Improvements:
    - re-added finding non-colliding position for enemy structures but if it can't find a position then overlap them
  Tweaks:
    - Modified spawning_time_modifier on biters to be roughly 25% faster at high tiers
    - Modified spawning_time_modifier on spitters to be roughly 20% faster at high tiers
Version: 2.0.4
Date: 17. 12. 2021
  Contributions:
    - PlexPt has added a Chinese locale
  Improvements:
    - Added RTStasisRealm to surface exclusion list
    - Added space exploration spaceship surface to exclusion list
    - Added pass during upgrade to remove in-memory maps that are on the exclusion list for surfaces
  Bugfixes:
    - Fixed onBuilderArrived if the builder was a unit and not a group (Thanks DBotThePony for reporting)
    - Fixed adding player to chunk crash
    - Fixed surface deletion with chunk processor indexing nil
    - Fixed enemy structures not being counted for faction adaptation
    - Fixed when new enemies is enabled partway through game that all enemy structures are registered correctly
Version: 2.0.3
Date: 15. 12. 2021
  Tweaks:
    - Added explosions to crystal pylon death
  Bugfixes:
    - Fixed typo in require import for upgrade on setChunkBase (Thanks Eerrikki for reporting)
    - Fixed upgradeEntity could return a nil name which failed in a surface.create_entity call (Thanks SimplyData for reporting)
    - Fixed energyThief crystal pylons turning into radar corpses when they died
    - Fixed energyThief crystal pylon hover picture not displaying
Version: 2.0.2
Date: 15. 12. 2021
  Bugfixes:
    - Fixed base missing in unregisteredEnemyStructure with Rampant already active in a save before enabling new enemies (Thanks Biviho for the report)
Version: 2.0.1
Date: 23. 11. 2021
  Contributions:
    - RealSimplyData fixed missing map parameter in onUnitGroupCreated (Thanks illiander42 for reporting)
  Bugfixes:
    - Fixed chunkPassScanning not checking for enemy structures when determining passability
    - Fixed chunks that become impassable not being properly removed from all tables and iterators (Thanks ZwerOxotnik for reporting)
    - Potential bugfix for evolutionTable being nil, still need a save to verify (Thanks ZwerOxotnik for reporting)
    - Corrected Krastorio2 position parameter wanting xy pair. (Krastorio2 1.1.6 that is currently published at the time of this update is broken still, see thread https://mods.factorio.com/mod/Rampant/discussion/5f44980455e55634147d01f4)
    - Fixed vengence squad queue could get stuck if the surface it was about to process was invalidated
Version: 2.0.0
Date: 23. 11. 2021
  Contributions:
    - Special thanks to Garrotte13 for play testing early builds and providing invaluable feedback and bug reports.
    - Astorin has provide an updated RU locale up through Rampant 2.0.0
  Improvements:
    - Removed bounding box check when placing enemy buildings or upgrading buildings inplace
    - Limited base faction mutations to 2 (configurable) with a small probability to be granted additional mutations or be locked into those factions forever
    - Readded regional bases going dormant in regards to upgrading structures to allow for a buildup of base points to upgrade larger structures like hives. DOES NOT EFFECT ATTACK WAVES.
    - Number of groups that can be active in aggressive AI state now scales with the number of active nests. Rougly for every 30 pollution covered nests you will get an additional attack group.
    - Optimized regional base upgrades so that the work is spread over many ticks reducing lag spikes
    - Optimized adding new chunks to the Rampant in-memory state map
    - Added minimum building cost upgrade check before base upgrade performs scanning
    - Added max number of wander commands in a row for squads that aren't going anywhere before disbanding squad
    - Optimized energy thief faction by switch to electric AOE projectile
    - Factorissimo, Space Exploration Orbits, asteroid belts, secret maps, starmap, AAI-signal, NiceFill, Blueprint lab surfaces are no longer processed
    - Map processing around player now changes to the surface the player is standing on
    - Squads now get processed regardless of the current active map being processed
    - Added max number of move commands that touch the same chunk to squads before disbanding or settling based on if migration is enabled
    - Enemy structure upgrades now are processed regardless of current active map
    - Spawners covered by pollution are now processed regardless of current active map
    - Optimized processing spawners covered by pollution
    - Newly generated chunks are now processed regardless of current active map
    - Neutral death events that aren't cliffs are no longer processed
    - Added support for AbandonedRuins mod
    - Victory scent is now processed regardless of current active map
    - Pheromone map processing only does upto 5% of generated chunks on a surface before switching to the next surface
    - AI Planning will now happen on upto 15 surface per cycle
    - Spawners not covered by pollution are now processed regardless of current active map
    - Attack waves are processed regardless of current active map
    - Surfaces are allocated but don't begin processing until the first enemy structure or unit group is found
    - Map cleanup is now processed regardless of current active map
    - Chunk pass scanning is now processed regardless of current active map
    - Siege AI state now sends roughly 1 raid group every 2 settler groups if raiding is enabled
    - Siege groups now try to settle just outside player structures as opposed to attacking
    - Added Raid AI state to lower temperament scores @ 20% at 0 temperament and 15% at (0.2, 0.4)
    - Vengence squads now have a 7.5% chance to be a settler group if migration is enabled
    - Added configurable initial amount of time before the AI goes out of peaceful mode (Thank you Dimm2101)
  Tweaks:
    - Increase chance to upgrade an enemy structure from 5% to 30%
    - New enemy regional bases that have two factions now do 75% on one faction and 25% on the faction for building and upgrading enemy structures
    - Doubled the processing rate of regional faction bases with new enemies
    - Added a small chance (0.5%) that Hives can spawn outside resource patches (Thank you Dimm2101)
    - Increased suicide and nuclear biters attack range from 0.5 to 1
    - Increased base point accumulation by 3000%, used for enemy building upgrades
    - Added early stopping when determining the faction tier to use, so higher level factions will appear more frequently
    - Increased acceptance rate of higher evolution to tiers when calculated factions
    - Decreased evolution target variability when calculating bases faction type
    - Decreased wander time when a settle command fails to 20 seconds
    - Reduced player, enemy, resource scanned chunks to 2 every 7 ticks
    - Reduced pheromone map processed chunks to 105 every 7 ticks
    - All random numbers now are based of the mod settings seed added with the map seed. This means that the AI should always perform the same actions when loading a save.
    - Increased nest activeness duration upto 2 minutes between checks
    - Increased deathThreshold for adaptation to 4500<50%evo, 7500<75%evo, 11000<90%evo, 16000
    - Now one spawner covered in pollution is worth 25 raid spawners to offset temperament contribution
    - Now one spawner covered in pollution is worth 15 destroyed enemy structures to offset temperament contribution
    - Now one spawner covered in pollution is worth 22 built enemy structures to offset temperament contribution
    - Now one spawner covered in pollution is worth (69:<30%evo, 138:<50%evo, 276:<70%evo, 552:<90%, 1104:>90%evo) lost enemy units to offset temperament contribution
    - Now +/-0.05 temperament from 0.5 gives an extra 0.1 points to AI each cycle, +/-0.15 gives 0.2, +/-0.30 gives 0.3, +/-0.5 gives 0.5
    - Increased migration ai state chance at min temperament by 5% and if migration is disabled increased raiding to 70% chance
    - Increased siege chance to 60% chance between temperament (0.05, 0.20) and if migration is disabled increased raiding to 60%
    - Settling group formed during AI siege state are 2.5x more likely to be kamikaze
    - Reduced vengence chance by 25% so 2 out 100 units @ 0evo upto 6 out 100 units @ 100evo
    - Changed out aggressive state for raiding between (0.2, 0.4) temperament
    - Added raiding state to temperament (0.4, 0.6) at 10% chance
    - Reduced peaceful state only to 25% and added migration at 25% chance at (0.4, 0.6) temperament
  Bugfixes:
    - Fixed chunks not processed due to chunk not being actually generated by game engine. You may notice a small delay before the spawners and worms convert to Rampant new enemy versions.
    - Fixed vengence squads only processing half the expected chunks
    - Fixed nest processing only processing half the nests (Thank you Dimm2101)
    - Fixed active and raid nest processing only processing half the nests (Thank you Dimm2101)
    - Fixed new enemy building upgrade could replace an entity with the same entity (Thank you Dimm2101)
    - Fixed new enemy regional base recycling would only process half the bases
    - Fixed new enemy adaptation due to damage type not correctly calculating probability for adaptation
    - Fixed squad cleanup would periodically skip a squad when cleaning up dead unit groups
    - Fixed enemy destroying a player structure only processing half of the chunks it should have been
    - Fixed unit groups spawned by factorio in noctural mode during the day would give points to the AI (Thanks Deathlymad)
    - Added command timeout for unit groups in case a command hangs or unit groups are stuck gathering (Thank you Dimm2101)
    - Corrected spelling of wonder command to wander command
    - Fixed enemy structures destroyed by the enemy were not being unregistered from Rampants map
    - Fixed regional bases would not be corrected distributed or cleaned up on spawners
    - Fixed chunks that became impassable would not return an impassable chunk flag when pass scanned
    - Fixed kastorio creep code be spawned when the building failed to upgrade
    - Potential desync fix in relation to reference comparison and deserialization
    - Fixed squad attack move would not properly place warding pheromone on taken path
    - Fixed players added to a chunk not taking player surface into account
    - Fixed picking damageType during faction mutation (Thank you Garrotte13)
    - Fixed surfaceTileChange trying to use a boolean inplace of an object (Thank you Garrotte13)
    - Fixed onslaught AI state not using raid actived nests
    - Fixed settlers calculating kamikazeThreshold using attackWaveMaxSize instead of settlerWaveMaxSize
  Framework:
    - Fixed Rampant in-memory map visualization tool for debugging
    - Added debug mod settings for showing enemy structures being upgraded in place
    - Moved config methods into relevant code files
    - Removed unnecessary unregisterResource called on onMine event
    - Cleaned up energy thief code in control
    - Pre-allocated objects no longer cross function boundaries
  Removals:
    - Removed map deadzones as they were breaking regional bases
    - Removed make building safe mod option, now each individual toggle works as people are expecting
Version: 1.1.4
Date: 25. 07. 2021
  Tweaks:
    - Added mod setting to modify distance between factions
    - Added mod settings for debug values around faction mutation
  Bugfixes:
    - Fixed factions being added to damage table incorrectly
Version: 1.1.3
Date: 24. 07. 2021
  Bugfixes:
    - Account for optional Rampant new enemies
    - Corrected testing value
Version: 1.1.2
Date: 24. 07. 2021
  Features:
    - Rampant new enemies now adapt to the damage type they are killed with
  Tweaks:
    - Reduced default max number of active squads to 25 and active builders to 10
    - Added kux ion cannon optional dependency in info.json
Version: 1.1.1
Date: 02. 05. 2021
  Contributions:
    - Dagothur fixed factions removed mid-playthrough causing crash
    - Dagothur fixed aggressive ai state not creating attack groups
Version: 1.1.0
Date: 29. 04. 2021
  Contributions:
    - Astorin removed old unused ru.cfg locale
    - Dagothur added a mod setting to print ai point gains to chat
    - Dagothur added a mod setting to print ai point usage to chat
    - Dagothur added a /rampantSetAIState to modify the ai state
  Improvements:
    - Increased ai baseline point accumulation based on temperament
  Tweaks:
    - Increased spitter and worm projectile size by 20%
    - Decreased spitter and worm projectile speed by ~40%
    - Increased baseline ai point accumulation for active nests by x3
    - Increased baseline ai point accumulation at min and max temperament by 0.2
    - Increased raid nest contribution to temperament by x2.7
    - Increased siege chance at temperament above 50% by 50%
    - Decreased settler cost to ai by 33%
    - Increased base ai min and max duration by ~x1.8
    - Increased biter base point gain by x3.5
    - AI Siege state now tries to expand active spawners then raid spawners then all spawners
  Bugfixes:
    - Settlers not spawning as they should do to incorrect weighting on spawn locations
    - Fixed new enemies factions not mutating or upgrading structures over time
    - Spawners built on impassable chunks now get tracked properly
Version: 1.0.9
Date: 21. 04. 2021
  Bugfixes:
    - Surface tile changes using waterfill causing excess UPS usage
Version: 1.0.8
Date: 16. 04. 2021
  Contributions:
    - Dagothur has added a mod settings option for disabling the peaceful AI state of Rampant
    - Dagothur has added a mod settings option for displaying the Rampant state information on state change
    - Dagothur has added a tier level to new enemies names
    - Astorin has provided a corrected RU locale
  Improvements:
    - Added a debug map setting for AI temperament
  Tweaks:
    - Increased form group chance minimum by 100% and maximum by 75%
  Bugfixes:
    - Changed nest processing for siege state to work across all spawners not just active nests
Version: 1.0.7
Date: 03. 04. 2021
  Contributions:
    - Metallumere has added more distinct colors for each faction.
    - Metallumere has changed the names of sizes and some faction names to more common terms
    - Metallumere has increased attack speed of fast faction while keeping total DPS the same
    - Metallumere has increased movement speed of fast, nuclear, and suicide factions
  Tweaks:
    - Decreased Poison faction cloud damage by 25%
    - Increased suicide biters damage by 50%
    - Added scorchmark scaling to new enemies
    - Increased squad used chunks that are tracked by 30%
    - Reduced movement penalty on chunks added by squad movement by 50%
    - Increased minimum AI points allow for one settler group
    - Reworked AI point gain
  Bugfixes:
    - Fixed nocturnal biters mod setting description. As vanilla attacks have been integrated
    - Fixed missing locale for fire spitter acid pool
    - Fixed tooltip for suicide and nuclear biters
    - Fixed removing a faction mid play-through caused a crash
    - Fixed squads not getting commands processed every ticks
    - Fixed AI not gaining points at low levels of evolution
    - Fixed temperament not starting at 0.5
Version: 1.0.6
Date: 28. 03. 2021
  Tweaks:
    - Increased max ai points by 24%
    - Added chance for normal migration at minimum temperament
    - Added raiding at medium-high temperament
    - Increased raiding chance at high temperament
    - Added a max temperament stage that is all raiding, onslaught, and siege
    - Increased active nest contribution to temperament by 38%
  Bugfixes:
    - Fixed ion cannon event typo in points
    - Fixed suicide biters explosions being lots of small explosions to one big explosion
    - Fixed unit movement resolution modifer being to low to path effectively
    - Fixed range_mode not being set on new enemies for bounding box to bounding box
Version: 1.0.4
Date: 28. 02. 2021
  Bugfixes:
    - Fixed multipler not being defined above 0.9 evolution
    - Fixed nil indexing on unit group creation
Version: 1.0.3
Date: 06. 02. 2021
  Improvements:
    - AI temperament logic now will calm down after you destroy enough units and/or nests
    - Rampant now functions on all surfaces
    - Rampant no longer clears surface information on mod changes
    - Added a temperament modifer setting to adjust how quickly the ai will reach extremes in attacking and expansion.
  Tweaks:
    - Increased minimum points the AI can work with to 200
    - Reduced spitter range by 2 across all new enemy tiers
    - Increased spitter projectile collision box by 5x
    - Decreased movement debuff from spitter acid puddle by roughly 70%
    - Decreased acid pool sticker damage by 50%
    - Decreased suicide biter damage 90% and radius by roughly 50%
    - Decreased nuclear biter damage 90%
    - Decreased default max wave size to 75 units
    - Increased evolution requirement for suicide and nuclear biters to 20% and 45%
    - Decreased squad size ramp up to evolution_factor^1.4
    - Increased unit lost temperament contribution to 0.03
    - Decreased active spawner temperament contribution to 0.25
    - Increased builder squad cost to 400
    - Decreased siege ai state chance to 15% at peak temperament
    - Halved AI temperament rate of change
    - Increased ai state duration minimum to 10 and maximum to 25 minutes
    - Changed default enemy seed to non-zero
  Bugfixes:
    - Fixed suicide and nuclear enemies explosion centered on target instead self
    - Fixed process spawners function reading missing globals
    - Fixed potential desync in squad attack movement
    - Fixed potential desync in unit group creation event
    - Fixed potential desync in building native tables
    - Fixed find entity upgrade incorrectly calculating evolution
    - Fixed bug with the mod new game+
    - Fixed existing spawner upgrading in place over time
    - Fixed add wall acid resistance setting would overwrite higher resistance and not effect gates
Version: 1.0.2
Date: 06. 12. 2020
  Improvements:
    - Added setting for enabling fade time of corpses
  Bugfixes:
    - Fixed missing fade time for spawners
Version: 1.0.1
Date: 19. 10. 2020
  Contributions:
    - Astorin added RU locale
    - oralordos updated Rampant to Factorio 1.1.0
    - oralordos added support for Krastorio2 creep
  Tweaks:
    - AI Temperament per logic cycle normalized to full contribution
    - Increased active raid nest contribution to 0.00675
Version: 1.0.0
Date: 18. 10. 2020
  Improvements:
    - Added spawner creep from vanilla to Rampant spawners and worms
    - Added nuclear biters atomic shockwave
    - Added corpse expiration time setting in mod settings
  Tweaks:
    - Increased active raid nest contribution to AI temperament to 0.0075
    - Reduced destroyed player buildings effect on AI temperament to 5
    - Reduced destroyed enemy buildings effect on AI temperament to 5
    - Increased minimum logic cycle contribution change to AI temperament to 10%
    - Increased units to spawn around new enemy spawners by 6 and units owned by 2
    - Added caching to goto_location command
  Bugfixes:
    - Missing EN locale for acid pool on vanilla worm and spitter attack
    - Temporary unit group size check on build command to prevent infinite loop until factorio 1.1 is released
    - Fixed mod settings ordering for hive settings
  Optimizations:
    - Removed ai command completed event as cost was too high
Version: 0.18.17
Date: 08. 07. 2020
  Improvements:
    - Re-added siege toggle
  Tweaks:
    - Reduced Purple cloud damage by 72.5%
  Bugfixes:
    - Purple cloud triggering before builders arrived
    - Fixed factorio base update breaking slow sticker
  Framework:
    - Fixed spelling mistake in code
    - Fixed duplicate definition of loot in spawner utils
Version: 0.18.16
Date: 27. 04. 2020
  Bugfixes:
    - Fixed landmines being removed after arming
Version: 0.18.15
Date: 25. 04. 2020
  Bugfixes:
    - Fixed score resources nil neighborChunk
    - Fixed unit group gathering force and squad check
Version: 0.18.14
Date: 25. 04. 2020
  Bugfixes:
    - Tile placement fixed
Version: 0.18.13
Date: 16. 04. 2020
  Improvements:
    - Added neutral objects to scanning to decrease chunk rating based on number of things present
    - Swapped to ai command completed for unit movements
    - Added effect when spawners build to destroy build site
    - Integrated vanilla AI into Rampant for pollution management
    - Map processing sweep now does and forward and reverse pass
    - Better handling of death pheromone and squad coordination
    - Added support for script_raised_set_tiles
    - Added setting option for max squads active
    - Added setting option for max settlers active
  Tweaks:
    - Increased Victory scent to x10 pheromone value
    - Reduced active raid nest contribution to AI state to 0.002
    - Changed ai credits per rocket launched to 5000
    - Refactored calculateKamikazeThreshold based on member count and current evolution
    - Reduced enemy unit lost contribution to AI state to 0.001
    - Reduced RETREAT_MOVEMENT_PHEROMONE_LEVEL_MAX to 190000
    - Removed lite mode setting
    - Removed disable vanilla ai setting
  Bugfixes:
    - fixed add movement penalty not using squad chunk
    - fixed landfill and waterfill getting registered properly
    - fixed surface filter queries grabbing player buildings that didn't have a collision mask
    - fixed worm icon in kill stats
    - fixed units not counting for ai state shift
  Optimizations:
    - Cleaned up regroup squads
    - Cleaned up invalid group detection
    - Minimized use of group.members
    - Changed how settlers remove entities around build sites
    - Split map processing and unit group creation
    - Refactored pheromone map
Version: 0.18.11
Date: 13. 04. 2020
  Improvements:
    - Groups stolen from vanilla AI can now become settlers based on ai state
    - AI now gains extra credits based on the number of spawners in pollution
  Tweaks:
    - Increased chance to 45% for both attack and settle on a map processing logic cycle
    - Squads and settlers created per map scan capped at 7
  Bugfixes:
    - fixed script_raised_destroy not being pass to the onDeath handler
    - fixed SENTINEL_IMPASSABLE_CHUNK not being defined in base entity upgrade handler
    - fixed rapid in squad defense to rabid (Thanks to jnshi)
    - fixed squads being able to record movement penalties for SENTINEL_IMPASSABLE_CHUNK
    - fixed squads being able to be added to SENTINEL_IMPASSABLE_CHUNK
    - fixed new unit scalers now have a minimum of 0.0001
    - fixed tile changes using surface index instead of surface name
    - fixed squad cap due to spawning not taking into account pending squads
Version: 0.18.10
Date: 04. 04. 2020
  Bugfixes:
    - fixed gameSurfaces not being set after adding game surfaces by upgrade
Version: 0.18.9
Date: 03. 04. 2020
  Bugfixes:
    - gameSurfs crash on game upgrade
Version: 0.18.8
Date: 03. 04. 2020
  Improvements:
    - Rampant now has a mechanism to drain pollution around spawners as before they were filling up and stopped absorbing pollution.
  Bugfixes:
    - Spawner pollution proxies being counted against enemy force spawner evolution
Version: 0.18.7
Date: 03. 04. 2020
  Improvements:
    - Added logic for switching active surfaces and Rampant alerting when players enter new surfaces. Rampant can only handle one active surface still.
  Tweaks:
    - Spawners periodically spawn lower level units at higher evolutions
    - Reduced player pheromone cloud range by half (Player threshold setting from 7 to 20)
  Bugfixes:
    - Remove second info.json dependency entry for Rampant Resources
    - Remove desync warning message from biters affected by tiles as it was fixed in factorio 0.18.16
    - Fixed biter, spitters, worms, and spawner icons
Version: 0.18.6
Date: 25. 03. 2020
  Tweaks:
    - Changed setting default to true for units affected by tile as factorio 0.18.16 fixes the desync issue
    - AI now has a minimum number of points that it can always accrue up to (100)
    - Buffed Rampant Enemies biter close range damage by 70% for all tiers
    - Nerfed Rampant Enemies spitter damage by 75% for all tiers
    - Nerfed Rampant Enemies electric biter damage by 40%
    - Nerfed Rampant Enemies worm damage by taking the spitter damage range and multipling by 3
    - Nerfed damage for vanilla blockable projectile by roughly 50% for all tiers
    - Added a warmup pause for spitters to spit (30 ticks tier 1, 20 ticks tier 10)
    - Added cooldown deviation to Rampant Enemies
    - Reduced stdDev of Rampant enemies attributes to 17%
    - Reduced minimum of Rampant enemies attributes to 70%
    - Added a min_attack_distance to new Rampant enemies spitters
    - Added 0.18.18 new death effects for Rampant enemies
  Bugfixes:
    - Squads size correctly scales with evolution now.
Version: 0.18.5
Date: 14. 3. 2020
  Improvements:
    - Added on hit damage for biters include filter for fire
  Tweaks:
    - Increased range of visible size of enemy units
    - Full map scan has been re-enabled by default to ensure eventual map consistency
    - Decreased sticker movement speed reduction and removed friction modifier from vehicle
    - Vehicles are less slowed then the character on foot for stickers
    - Added setting to enable units affected_by_tiles (As of 0.18.15, this setting can cause desyncs)
  Bugfixes:
    - Fixed splash damage with friendly fire disabled not affecting neutral objects
    - Fixed rally flag being set by the wrong function
    - Fixed mod settings getting recalculated for rampant arsenal and rampant resources
    - Fixed desyncs around units having affected_by_tiles set to true (boskid)
  Optimizations:
    - Combined enemy structure query in full map scan
Version: 0.18.4
Date: 2. 2. 2020
  Improvements:
    - Unit groups created by factorio when shelling spawners are now converted to Rampant squads
  Bugfixes:
    - Re-added removed settings that were actual used with Rampant
    - Potential squad getting stuck on impassable terrain
Version: 0.18.3
Date: 1. 2. 2020
  Improvements:
    - Fixed scaler settings not applying to worms or unit spawners
    - Added scaler settings for hives
  Tweaks:
    - Increased Hive spawn times by 1.75
  Bugfixes:
    - Removed settings that were unused with Rampant
    - Fixed removing factions during play
Version: 0.18.2
Date: 1. 2. 2019
  Contributions:
    - RuZZone - Updated to 18.2 fixing engine breaking changes
  Improvements:
    - Added blood effects on damaged for new enemies
    - Added water reflections for new biters and spitters
  Bugfixes:
    - Fixed blood fountains not finding updated particles
    - removed water effect from blood particles
    - Reduced pollution to attack for vanilla AI on Rampant New Enemies
Version: 0.17.32
Date: 24. 12. 2019
  Contributions:
    - Billbo99 - Energy thief crystal next_upgrade was not getting set to nil.
  Bugfixes:
    - script_raised_revive was not being listened for (AMCH0507) (https://mods.factorio.com/mod/Rampant/discussion/5e02758ead17f4000c086b7b)
Version: 0.17.31
Date: 19. 12. 2019
  Tweaks:
    - Added setting to revert enemy map color change
Version: 0.17.30
Date: 17. 12. 2019
  Bugfixes:
    - Hive buildings not getting swapped out correctly
    - Hive and Spawner spawning cooldown was using wrong start and end values
Version: 0.17.29
Date: 15. 12. 2019
  Optional Graphics:
    - New Hi and Low resolution graphics for Troll and Physical Factions biters, armored biters (Thanks to CybranM, requires downloading separate mod Armoured Biters)
  Features:
    - Hives that can produce unit spawners, turrets, or more hives. Typically appear on resources patches.
  Improvements:
    - Pathfinding now looks two steps ahead
    - Squad formation now has a gathering delay to allow all members to make the initial group
    - Better tracking of squads on chunks to accommodate the two step path finding
    - Collision checker for squads and squad movement from a container to a unit
    - Attack waves should generate more localized squad formations, so that biters appear to attack from all sides less
    - New AI temperament system
    - Spawner pollution coverage detection
    - Acid biter melee attack now leaves acid puddle
  Tweaks:
    - Reduced size of new enemy lower tiers
    - Onslaught AI setting and aiAggressiveness setting removed
    - Increased minimum unit count for a retreat from 3 to 6
    - Biters and Spitters now are affected by tile modifiers
    - Nerfed inferno spitter fire damage and duration to reasonable levels
    - Buffed suicide biters damage and health
    - Nerfed poison biters cloud damage and duration
    - Added blood color to match new enemy color
    - Added blood explosions to each new enemy
    - Nuclear biters have more visual explosions
    - Changed poison biter death cloud to be generated using dying_trigger_effect
    - Reduced sticker damage and duration everywhere
    - Switched general spit projectile from direction only to positional targeting
    - Added spit projectile stickers to tooltip
    - Default for new enemies spit projectile stickers damage reduced by half
    - Spawner spitter and worm eggs now damage the immediate area around the egg
    - Acid pools no longer cause friendly fire
    - Prioritize settler group creation over attack squads
    - Biter faction color should match map color now
    - Increased unit spawner spawning time by 3x
  Optimizations:
    - Better object reuse for squad and pending attack, creating less garbage
    - Trimmed table creation where possible
    - Regrouping squads and builder clean up put onto separate intervals
    - Reusing chunk scanner tables
  Bugfixes:
    - Fixed spawner egg and wasp size being larger than intended
    - Fixed old savegames penalties having nil chunk index
    - Fixed that mining a resource by hand unregister all remaining resource on a tile
    - Fixed pheromone dispersal not following pathing restrictions
    - Fixed chunk scan and player building pheromone generator mismatch
    - Fixed ai credits being uncapped and accumulating more than Max Credits available for that evolution level
    - Fixed retreating squads being adding to squad set multiple times
    - Fixed retreating squads not waiting long enough to assemble all units before movement
    - Fixed spitter max projectile range could cause a spitter to attack but not hit a target
    - Fixed non retreating group formation not having a distraction modifier
    - Fixed icon size not being set energy thief drain crystal
    - Fixed new enemies attacks following naming levels instead effective levels
    - New spawner enemies color mask should fit much better now
    - Fixed blood particle size not increasing with tiers
    - Fixed enemy volume not changing based on tier
    - Fixed Nuclear and Suicide spawners instantly spawning low level units
    - Fixed Physical and troll spawner and worm scales
    - Fixed chunk processing not checking chunk generation status
  Framework:
    - Bobs enemies and Natural Evolution Enemies no longer able to be active with Rampant's new enemies
    - Cleaned up new enemy creation
    - Dropped support for 5 tier new enemy configuration
    - Changed default blood particle removal optimization to off
    - Added interop function that allows other mods to set the active surface for the AI processing
  License:
    - License change from Apache2 to CC BY-NC 4.0
Version: 0.17.28
Date: 8. 17. 2019
  Bugfixes:
    - Fixed uninitialized enemy seed lookup
Version: 0.17.27
Date: 8. 16. 2019
  Bugfixes:
    - Fixed settle move position error
    - Fixed gaussianRandom having min greater than max causing hangs
Version: 0.17.26
Date: 5. 14. 2019
  Contributions:
    - Choumiko - Added event hooks for script_built and script_destroyed events
  Optimizations:
    - Disabled full map scan by default in favor of script_built and script_destroyed events. If a mod does not use these events and creates or destroys entities through scripts, you may need to re-enable this feature in the mod map settings under Compatibility: enable full map scan.
  Improvements:
    - Added a check for script created resources in the script_built and script_destroyed events
    - When a squad is destroyed its last few chunk moves now receive a portion of the death generator pheromone from the chunk they died on
  Tweaks:
    - Removed unused mapping tables
    - Chunk properties now use <= instead of == when checking for minimum allowed values
    - Increased death pheromone generator amount to 1300
    - Increased retreat levels by 30%
    - Increased raiding base activition threshold to 550
    - Decreased minimum cooldown time for attack waves in aggressive state to 30 seconds
    - Reduced all player generator values by half
  Bugfixes:
    - Memory leak with settlers last tick map
    - Multiple version of chunks where in the processing queue causing double processing issues with a duplicate context
Version: 0.17.25
Date: 5. 8. 2019
  Improvements:
    - Added lite mode which causes the mod to run with a lower UPS cost by making the ai scan and process the game map slower
  Tweaks:
    - Reduced default spitter projectile AOE damage by 25%
    - Added default spitter projectile direct damage for 1/3 damage of AOE, spitters don't get stopped by trees now with friendly fire disabled
    - Renamed nest to spawner in unit-spawner prototypes
    - Normalized player building pheromone generation into six groups 50, 200, 1000, 2000, 3500, 12000
    - Increased player process tick interval to 63
  Optimizations:
    - Refactored player building scoring
Version: 0.17.24
Date: 5. 3. 2019
  Improvements:
    - Added interop functions for getSettlerCooldown and getSettlerWaveSize
  Tweaks:
    - Increased spitter projectile acceleration to 0.02
    - Increased spitter projectile starting speed to 0.6
    - Added projectile lead with default spitter and worm projectiles
    - Switched to water-tile collision mask in chunk scanning for surface queries
    - Added checks to spitter puddles on water so they dont happen
    - Reduced the settler standard deviation to 1/3 of the wave size
  Bugfixes:
    - Fixed settler cooldown increasing with evolution as opposed to decreasing
Version: 0.17.23
Date: 4. 30. 2019
  Tweaks:
    - Added support for lighted-big-poles for safety
  Bugfixes:
    - Fixed interop register unit group not actually registering new squad
Version: 0.17.22
Date: 4. 24. 2019
  Tweaks:
    - Normalized unit 10 tier evolution spawns ((1, 0%) -> (2, 30%) -> (3, 40%) -> (4, 50%) -> (5, 60%) -> (6, 70%) -> (7, 80%) -> (8, 85%) -> (9, 90%) -> (10, 93%))
    - Normalized unit 5 tier evolution spawns ((1, 0%) -> (2, 40%) -> (3, 60%) -> (4, 70%) -> (5, 90%))
    - Decreased default new enemy physical decrease for (level, newVal) (1, 1) (3, 3) (7, 8) (8, 10)
    - Changed default unit tiers to 10
    - Changed aggressive AI state to spawn unit groups with 1 to 3 minutes between groups, (raid, onslaught, siege, and migration still can mass spawn)
  Bugfixes:
    - Fixed random tick generator not being uniform over provided range
    - Fixed AI migration state not respecting peaceful surfaces
Version: 0.17.21
Date: 4. 21. 2019
  Bugfixes:
    - Fixed 1 and 2 levels of biters instantly spawning due to 0 spawn time modifier
Version: 0.17.20
Date: 4. 19. 2019
  Improvements:
    - Spawner faction spit spawned biters now lose life over time
    - Added mod setting that causes biter projectiles to no longer collide with other biters but still collides everything else
  Tweaks:
    - Doubled all spawner faction spit spawned biters health (30,60,90,120,150,180,220,500,1000,2000)
  Bugfixes:
    - Fixed unkillable construction robot settings not clearing and setting new resistance table
Version: 0.17.19
Date: 4. 08. 2019
  Bugfixes:
    - Fixed energy thief faction buildings not being hidden from filter bar
Version: 0.17.18
Date: 4. 08. 2019
  Bugfixes:
    - Fixed missing mod variables due to an internal update not taking place
Version: 0.17.17
Date: 4. 07. 2019
  Improvements:
    - When settlers start building they will clear the immediate area of colliding neutral objects
    - Added initial pause when forming squads allowing members time to group
  Bugfixes:
    - Fixed settlers groups being in a finished state when building
Version: 0.17.16
Date: 4. 07. 2019
  Tweaks:
    - Reduced biter AoE damage by 25%
    - Added biter direct target damage in the amount of 1/3 of the AoE damage
    - Reduced the average distance settlers travel by 50%
  Bugfixes:
    - Fixed biters not being able to kill neutral objects
Version: 0.17.15
Date: 4. 06. 2019
  Tweaks:
    - Split enable swarm setting and shrink nest + worm
  Bugfixes:
    - Fixed mod setting breathing and enable swarm not using correct valueu
Version: 0.17.14
Date: 4. 05. 2019
  Improvements:
    - Added mod setting to directly affect ai aggressiveness
    - Added mod setting to toggle construction bot and logistic being immune to all damage
    - Killing spawners cause the ai to gain points to spawn up to 1 squads per nest
    - Killing worms cause the ai to gain points to spawn up to 0.5 squads per worm
  Tweaks:
    - Increased new enemies default scale for levels 7+ by 0.2
    - Increased new enemies troll and physical scale for levels 6+ by 0.2
Version: 0.17.13
Date: 3. 28. 2019
  Bugfixes:
    - Fixed bobs and NE find non colliding error
Version: 0.17.12
Date: 3. 27. 2019
  Improvements:
    - Changed new enemy unit spawning probabilities to follow a gaussian distribution over the level of the nest, so lower level nest spawn lower level enemies longer.
    - Increased new enemy building spacing
  Tweaks:
    - Added a collision box reduction to all nests and worm turrets of 50% on the mod setting Enable the Swarm.
  Bugfixes:
    - Fixed spitter pollution to attack numbers
Version: 0.17.10
Date: 3. 17. 2019
  Bugfixes:
    - Fixed vanilla spawner autoplace requirement
    - Fixed unit spawner breath setting only working if new enemies is checked
Version: 0.17.9
Date: 3. 16. 2019
  Improvements:
    - Updated spit graphics to 0.17 version
    - Updated spit effects and damages to 0.17 vanilla
    - Allow mod settings toggle between blockable and unblockable projectiles for vanilla
    - Switched wasp drones to blockable projectiles
    - Added AOE to melee attacks based on size
    - Switch new enemies over to acid splash from vanilla
    - Updated stickers to work on vehicles
    - Added lead targeting to inferno biters
    - Added acid puddle slowdown from vanilla as default spitter attack effect
    - Added damaging acid puddle slowdown from vanilla as default worm attack effect
    - Added damaging acid puddle slowdown from vanilla on acid faction
  Tweaks:
    - Removed bob blockable projectile logic
    - Removed force old projectiles setting option
    - Changed color of spawner egg and wasp drone
    - Added better explosion effect to troll and physical worms
    - Increased on wasp range from spitter by 6
  Bugfixes:
    - Fixed troll spitters having a homing projectile
    - Fixed spitters changing color when attacking
    - Fixed biter attacks getting bonuses from player research
    - Fixed suicide biter level 9 and 10 wouldn't die when they attacked
    - Fixed physical and troll worm turrets having incorrect health values
    - Fixed physical and troll nests having incorrect health values
    - Fixed more damage then expected on enemy projectiles
Version: 0.17.8
Date: 3. 14. 2019
  Improvements:
    - Added some basic description of the faction to the mod settings description for each faction
    - Added rough approximation of health per tier to mod settings start and end tiers
    - Updated enemy variations description to better describe what it does for randomness per tier
  Tweaks:
    - Increased spawner egg life 2-10 (100->120, 110->120, 110->170, 120->170, 120->200, 130->200, 130->250, 140->300, 140->350)
  Bugfixes:
    - Fixed spelling from 0.17.12 factorio
    - Fixed upcoming emissions_per_tick to emissions_per_second
Version: 0.17.7
Date: 3. 12. 2019
  Improvements:
    - Added setting for unit spawners breathing air to allow poison capsules to affect them
Version: 0.17.6
Date: 3. 12. 2019
  Improvements:
    - Reworked base upgrade system
  Tweaks:
    - Increased max evolution level for new biters from 95% to 97%
    - Decreased distance to evolution from 1/7200 to 1/9600
    - Normalized evolution requirement for Neutral faction 1-9 (0.08->0, 0.16->0.1, 0.24->0.2, 0.35->0.3, 0.4->0.4, 0.45->0.5, 0.55->0.6, 0.65->0.7, 0.75->0.8)
    - Increased evolution requirement for levels 2+ by 2% per tier on Acid, Electric, Fire, Laser, Physical
    - Increased evolution requirement for levels 2+ by 5% per tier on Energy Thief, Inferno, Poison, Troll, Wasp
    - Increased evolution requirement for levels 2+ by 7% per tier on Nuclear, Spawner, Suicide
    - readded acid splash purple for spitter attacks
  Bugfixes:
    - Fixed nest and worms incorrectly being upgraded resulting in lost entities
    - Fixed NE and Bobs faction alignments being correctly selected
Version: 0.17.5
Date: 3. 10. 2019
  Improvements:
    - Added robot on pre cliff destroy to invoke a passability scan on the chunk
  Bugfixes:
    - Fixed cliff explosive error due to removed code fragment
    - Fixed expansion being forced on for testing
    - Fixed process scan chunk process removing potentially incorrect chunk from processing
Version: 0.17.4
Date: 3. 5. 2019
  Improvements:
    - Increased chunk processing from 825 to 1020 chunks
    - Settler groups now occasionally disregard everything to reach a spot to build a base, instead of attacking player or buildings
    - Reworked attack move commands and settle move commands
  Tweaks:
    - Reduced full chunk scan threshold for water from 0.4 to 0.25
    - Removed old map path finder settings
    - Added new find position centered flag to positions searches
    - Adjusted new enemy worm ranges to vanilla levels
    - Added kill_all_units on first add with new enemies for nest and worm space
    - Increased migration ai state to 10%
    - Removed attack wave message
    - Decreased max squads from 40 to 35
    - Increased squad movement penalty from 10000 to 300000
    - Balanced squad movement distance between straight and diagonals
    - Increased find path location entity size to 2x2 for better position resolution
    - Added exponential growth to squad movement penalties
  Optimizations:
    - Improved squad processing and squad cleanup
    - Refactored chunk utilities
    - Refactored unit group utilities
  Bugfixes:
    - Fixed player pheromone not having highest value on chunk player was on
    - Fixed settlers not being able to see chunks with resources on them
    - Fixed retreat command not disengaging biters
    - Fixed Poison faction poison death cloud crash
    - Fixed new enemies newly built settlements not creating nests or worms
    - Fixed find new enemy faction base by distance
    - Fixed base recycling
    - Fixed base alignment deadzone ttl and usage
    - Fixed squad movement penalty lookup
    - Fixed orphaned unit group recycling
    - Fixed retreat scoring causing retreat location to be on player buildings
Version: 0.17.3
Date: 2. 28. 2019
  Bugfixes:
    - Fixed NE enemies version numbering change
Version: 0.17.2
Date: 2. 27. 2019
  Bugfixes:
    - Readded renamed or missing assets
Version: 0.17.1
Date: 2. 27. 2019
  Bugfixes:
    - Fixed bobs enemies integration
Version: 0.17.0
Date: 2. 26. 2019
  Improvements:
    - Added thumbnail
  Tweaks:
    - Updated to 0.17
    - Synced worm vanilla to worm template
    - Synced spawner vanilla to spawner template
    - Changed ground shakes warning message to off by default
    - For now, acid-splash-purple replaced explosion
  Bugfixes:
    - Require statement path changes
    - Removed unused chunk scanner entity causing load errors
    - Removed acid splash spitter and worm decal as it no longer exist
    - Fixed 0.17.2 hide-from-bonus-gui
Version: 0.16.42
Date: 2. 18. 2019
  Improvements:
    - Reworked how nests are activated by pollution, player, and base pheromone for better nest tracking
    - Reworked chunk passability to only look for water or cliffs for impassable terrain
    - Removed use pollution map setting
    - Removed min and max attack threshold settings
  Tweaks:
    - Increased max squad count from 30 to 40
  Bugfixes:
    - Reverted pheromone projection
    - Reverted settings default player threshold to 7
    - Fixed radial pattern sort not being trigger on map rebuild
Version: 0.16.41
Date: 2. 18. 2019
  Note:
    - Enemy level maxes have changed what was 10 is now roughly equal to 8
  Tweaks:
    - Added energy thief crystal and pylon physical resistance 25%
    - Increased crystal pylon health from 150 to 750
    - Decreased electric and energy thiefs faction damages (7->6, 15->10, 22.5->15, 35->20, 45->30, 60->45, 75->60, 90->75, 150->90, 200->150)
    - Decreased energy thief beam width (1.5->1, 1.5->1, 1.6->1.2, 1.6->1.2, 1.7->1.3, 1.7->1.3, 1.8->1.4, 1.8->1.4, 1.9->1.5, 1.9->1.5)
    - Decreased energy thief range (11->9, 11->9, 12->10, 12->10, 13->11, 13->11, 14->12, 14->12, 15->13, 15->13)
    - Decreased crystal pylon resistances for fire, electric, laser from 100, 100, 100 to 85, 95, 90
    - Added energy drain to crystal pylon of 500kW
    - Increased drain crystal drain amount from 300kW per tier to 1.3MW
    - Increased drain crystal health from 100 per tier to 400 per tier
    - Increased all biter default health for levels 5 to 10 (400->1000, 750->2000, 1500->3500, 3000->7500, 5000->15000, 10000->30000)
    - Increased physical and troll biter default health for levels 5 to 10 (800->1500, 1500->3000, 3000->5000, 6000->12000, 10000->20000, 20000->40000)
    - Increased all spitter default health for levels 5 to 10 (750->1250, 1000->2250, 1500->3250, 2500->6500, 4500->12500, 7000->25000)
    - Increased all nests default health for levels 5 to 10 (2500->3500, 3500->7500, 5000->11000, 7000->20000, 10000->30000, 15000->45000)
    - Increased all worms default health for levels 5 to 10 (750->2000, 1000->3500, 1500->7500, 3000->12000, 5000->20000, 9000->25000)
    - Increased nuclear and suicide biter faction health for levels 9 to 10 (3000->5000, 5000->10000)
    - Increased spawner spawned biter faction health for levels 8 to 10 (145->250, 165->500, 180->1000)
  Bugfixes:
    - Fixed a chance that connecting wires on entity death has invalid target
    - Fixed electric turret not being counted for energy thief conversion
    - Fixed pylons not being targeted by turrets
Version: 0.16.40
Date: 2. 16. 2019
  Bugfixes:
    - Switched to numeric value to represent scoring functions
Version: 0.16.39
Date: 2. 15. 2019
  Bugfixes:
    - Reset squad scoring functions and set default scoring function
    - Switched to single instance require statements causing multiple sentinel memory objects
Version: 0.16.38
Date: 2. 14. 2019
  Bugfixes:
    - Fixed squad attack being nil due to timing delay in update
Version: 0.16.37
Date: 2. 10. 2019
  Improvements:
    - Added the energy thief faction that will convert powered player structure into electric draining crystals
    - Added the poison faction that when killed creates a damaging toxic cloud
    - Removed unnecessary grouping mechanism when spawner eggs produce units
    - Added individual base faction ai to manage base development
    - During onslaught ai state player building destroyed by biters credits x10 to the biters
    - Increased dispersion projection of pheromone by 20% allowing for further pathing
    - Reworked squad attack scoring to better account for death pheromone
    - Squads that kamikaze may now occasionally disregard death pheromone
    - Maintain sorted chunk array for processing in a radial pattern from origin
    - Hide spawner drones from the bonus gui screen
  Tweaks:
    - Increased resource pheromone min from 9000 to 15000
    - Increased resource pheromone max from 10000 to 20000
    - Increased retreat pheromone min from 1000 to 10000
    - Increased retreat pheromone max from 17000 to 170000
    - Increased player pheromone multipler from 500 to 2500
    - Increased bad squad movement penalty from 4000 to 10000
    - Increased death pheromone generator from 125 to 750
    - Increased victory pheromone by x3
    - Decreased death pheromone generator persistance from 0.995 to 0.9
    - Decreased death pheromone persistance from 0.99 to 0.975
    - Removed arbitrary player gen multipler in retreat scoring function
    - Increased default setting of player score attack contribution from 7 to 16
    - Added minor resistance to poison to acid faction
    - Added minor resistance to laser to electric faction
    - Added minor resistance to explosion to fast faction
    - Added minor resistance to electric to laser faction
    - Added major resistance to explosion to physical faction
    - Added minor resistance to poison to suicide faction
    - Added minor resistance to physical to troll faction
    - Added minor resistance to explosion to troll faction
    - Added minor weakness to poison to inferno faction
    - Added minor weakness to laser to physical faction
    - Added minor weakness to electric to physical faction
    - Increased general biters physical decrease for levels 7     - 10, (10->11,12->13,14->16,15->17)
    - Increased general biters physical percent for levels 7     - 10, (13->14,13->16,14->18,15->20)
    - Increased general biters explosion decrease for levels 6     - 10, (0->10,10->12,12->14,14->16,15->20)
    - Increased general biters explosion percent for levels 6     - 10, (12->13,13->15,13->16,14->17,15->20)
    - Added general spitters physical decrease for levels 1     - 10, (0,0,0,0,2,4,6,8,10,12)
    - Added general spitters physical percent for levels 1     - 10, (0,0,0,10,12,12,14,14,15,15)
    - Decreased base spawner upgrade from 300 to 250
    - Decreased base worm upgrade from 250 to 200
    - Removed evolution requirement rounding for bobs spawners and ne spawners
  Bugfixes:
    - Fixed pheromone dispersion when non-cardinal directions receiving pheromone when it shouldn't
    - Fixed ai states of migrating and seige when expansion is disabled on the map instead onslaught state happens 10% more in place
    - Fixed retreat score function not using correct player multiplier
    - Fixed kamikaze flag being removed on merged group if mergee group didn't have kamikaze
Version: 0.16.36
Date: 2. 5. 2019
  Improvements:
    - Integrated nocturnal mode with siege, migration, and raiding states so they work together now.
    - Swapped scoring function when in siege mode causing the biter lines to actually advance now.
    - Added Onslaught AI state where ai gets 2x credits per logic cycle
  Tweaks:
    - Reverted nest upgrade chance to 0.05%
    - Increased Biter credits per destroyed building by 10% after fixing 10x credit bug
    - Increased settler unit groups standard deviation by roughly 30%
    - Increased death pheromone persistance from 0.975 to 0.995
  Bugfixes:
    - Fix for squad movement penalties not be boosted alongside building pheromone causes units to repeat movement into chunks more frequently than needed
    - Fix for biter getting 10x credits for destroying buildings causing relentless onslaughts.
    - Fix Siege spelling
    - Updated retreat chunk scoring function to use negative for player and player base generator
Version: 0.16.35
Date: 2. 1. 2019
  Improvements:
    - Added options to toggle new enemy factions
    - Randomized base alignment array with map seed so faction distribution changes from map to map
    - Added a setting to disable siege ai state, which may have been causing extra non pollution biter movements
  Tweaks:
    - Added upgrade path for neutral faction to laser resist faction
    - Removed upgrade path from electric biters to laser resist faction
    - Increased nest upgrade chance from 0.05% to 1.5%
  Bugfixes:
    - Fix for base upgrade framework to leveling nests correctly due to rounding errors in floating percision for lookup
    - Fix for migration toggle setting not preventing the ai migration state
    - Fix for entity upgrades allowing for a evolution decrease instead of start from current evolution requirement
Version: 0.16.34
Date: 10. 19. 2018
  Improvements:
    - Reworked dispersion to process pheromone in two phases.
    - Switch to all adjacent neighbors instead of cardinal neighbors for dispersion
  Tweaks:
    - Reduced chunks process per interval from 400 to 300
    - Increased building pheromone generator by 10x
    - Reduced Retreat pheromone max level from 20000 to 17000
    - Reduced Retreat pheromone min level from 1500 to 1000
    - Increased death generator from 75 to 125
    - Increased movement persistence from 0.875 to 0.975
    - Increased player persistence from 0.98 to 0.97
    - Increased resource persistence from 0.99 to 0.97
  Bugfixes:
    - Fix for unit groups not being able to move off of impassable terrain
    - Fix for incorrect variable name in interop
Version: 0.16.33
Date: 9. 25. 2018
  Improvements:
    - Reworked how death pheromone sticks to terrain and how long it is active for
  Optimizations:
    - Reduced in memory map footprint increasing save speed
  Bugfixes:
    - Fix for unit groups getting stuck in random locations
    - Fix for unit retreats causing excessive retreats due to inverted comparison
    - Fix for unit groups not creating new settlements
Version: 0.16.32
Date: 8. 1. 2018
  Improvements:
    - Raiding AI Toggle     - toggles the ai raiding parties from outside your pollution cloud
    - Added a check for waterfill to trigger pass ability scan on affected chunks
  Tweaks:
    - Lowered base alignment selection threshold from 0.65 to 0.35, causing more variation in the later stages of the game for factions
    - Lowered upgrade entity selection threshold from 0.65 to 0.35, causing more variation in the later stages of the game for spawners and worms
  Bugfixes:
    - Invalid surface index for creative mode blueprinted tiles
    - Surface tile change event wasn't correctly accounting active surface
    - Normalized evolution requirements so when starting at a higher enemy level they are placed at the correct starting distances
    - Fixed NEE compatibility
    - Version upgrade map rebuild will no longer reapply deadzones
    - Parenthesis in the wrong spot in pheromone dispersal algorithm
    - Moved AI toggles to map settings instead of startup settings
    - Changing new biter settings mid game no longer crashes the saves, still can cause entity loss
Version: 0.16.31
Date: 7. 19. 2018
  Bugfixes:
    - MAJOR BUG: fixed typo in inverted filter for processing player buildings and enemy nests, which eventually lead to all aliens going inactive due to invalid targets [https://mods.factorio.com/mod/Rampant/discussion/5b48e84e1495c8000be8f961]
    - For changing start and end enemy level in relation to scaling value error [https://mods.factorio.com/mod/Rampant/discussion/5b4e37227ffb42000a2dc40d]
Version: 0.16.30
Date: 6. 7. 2018
  Improvements:
    - Raiding AI state nows requires an evolution of 0.04 before it can trigger
  Bugfixes:
    - Fixed fire biter nest size
    - Fixed Acid spitter resistances to be more inline with vanilla resistances
    - Fixed laser faction not having in-place evolution path from electric biters
    - Fixed range of unit levels being off by one, limiting the max units to level 9 only instead of 10
    - Fixed missing wasp worm drone locale entry
  Tweaks:
    - Increased troll units scale +0.2
    - Increased troll health regeneration for units by ~3x, spawners and worms by ~7x
    - Increased the lower attribute bound from 0.7 to 0.85
    - Increased the base distance to evolution index ratio from (1 / 5480) to (1 / 7200)
    - Increased the chance that initial base alignment picks a lower tier alignment by 0.15
    - Normalized all enemy faction attributes through the defaults, should be minor unit corrections
  Framework:
    - Refactored new enemy modules
    - Created default attributes for all unit, unit spawner, worms
Version: 0.16.29
Date: 6. 3. 2018
  Tweaks:
    - Increased ai state min time from 1 to 7 minutes
    - Increased ai state max time from 4 to 17 minutes
    - Increased ai temperament min time from 5 to 25 minutes
    - Increased ai temperament max time from 15 to 32 minutes
Version: 0.16.28
Date: 6. 1. 2018
  Bugfixes:
    - Fixed new enemies setting units and worms to different numbers for variations or tiers causing startup crash
Version: 0.16.27
Date: 5. 23. 2018
  Tweaks:
    - Changed spawner faction loot drops from green to orange.
    - Changed attack prototype for wasps so it doesn't show up in bonuses bullet gui
  Improvements:
    - Changes to player accounting to enable multi player forces in a pvp scenario.
    - Check for battle_surface_1 & 2 used in pvp and store and use discovered surface index.
Version: 0.16.26
Date: 5. 19. 2018
  Bugfixes:
    - Fix for combination of NE and Bobs with non-standard mod settings in relation to alien artifacts.
Version: 0.16.25
Date: 5. 19. 2018
  Improvements:
    - Configuration options for scaling biter, spitter, worm, and nests stats by a scaler.
  Optimizations:
    - Switched passScore per chunk calculation to use the mutli filter query instead of individual calls for tile counts
  Bugfixes:
    - Changed how mod settings are set in memory to prevent missing unit crashes (https://forums.factorio.com/viewtopic.php?f=190&t=31445&start=320#p362819)
    - Cleaned up NE and Bobs detection
    - Fixed locale typo in deadZoneFrequency description from with to without(https://forums.factorio.com/viewtopic.php?f=190&t=31445&start=320#p363436)
Version: 0.16.24
Date: 4. 14. 2018
  Tweaks:
    - Reduced Inferno biters damage at levels 8+
  Bugfixes:
    - Removed all conditional requires in data, data-update, and data-update-final
Version: 0.16.23
Date: 3. 1. 2018
  Improvements:
    - Changed nuclear blast damage to scale with tiers and increased explosion count at higher tiers (https://forums.factorio.com/viewtopic.php?f=94&t=31445&start=260#p346147)
  Bugfixes:
    - Fix for bobs enemies and ne dumb projectiles (https://forums.factorio.com/viewtopic.php?f=94&t=31445&start=260#p345778)
Version: 0.16.22
Date: 2. 18. 2018
  Features:
    - AI State Migration, where the ai looks for resources patches to setup new bases
    - AI State Siege, where the ai does a migration event but also builds towards the player and their base
    - Default is vanilla AI is off by default now
  Tweaks:
    - Death pheromone persistance increased from 0.9 to 0.99
    - Death pheromone per death increased from 600 to 3000
    - Death Retreat threshold switched to linear interpolation between, 2.5 deaths @ 0%, 400 @ 100% evolution
    - Increased player pheromone weight for squad movement from 100 to 500
    - Decreased victory scent multipler from 100000 to 10000
    - Increased ai max stored points from 10000 to 12500
  Improvements:
    - Added splitters to be detected by enemies
    - Added added a recycle waypoint threshold for paths that the unit seems to be stuck in a cycle
  Bugfixes:
    - Nests and worms not getting counted correctly when upgrading
    - Fixed getEntityOverlapping chunks returning more than it should have
  Framework:
    - Fixed exportaistate visualizer
Version: 0.16.21
Date: 2. 16. 2018
  Improvements:
    - All other robots now take damage from biter projectiles and explosions (https://mods.factorio.com/mod/Rampant/discussion/5a81bd380333a5000c939c7f)
    - Removed unnecessary squad roll during map processing
  Optimizations:
    - Switched over to the nth tick functions for logic and processing
Version: 0.16.20
Date: 2. 11. 2018
  Improvements:
    - Removed squad movement penalty before disband
    - Combat robots now take damage from biter projectiles and explosions
    - Spawner biters are now put into groups after they are spawned
    - Changed pheromone spread to no longer take into account water tiles
    - Added enemy nests to the resource pheromone field as a negative weight
  Bugfixes:
    - Removed Deadzone nests and worms from the internal memory map
    - Fix for unit spawner scaling based on tier (Existing saves will have spawners overlap due to scale increase)
    - Removed movement from spawner egg sacks
    - Fixed local of worm spawner eggs
  Tweaks:
    - Increased damage spawner spitters take when shooting
    - Increased resource persistance from 0.9 to 0.99
    - Increased base and resource dispersal from 0.3 to 0.35
    - Increased resource generation range from a min of 90 to a min of 900
    - Adjusted unit spawner collision and selection box
    - Reduced spawner biter size
  Optimizations:
    - Added property garbage collection for certain chunk properties
  Framework:
    - Fixed visualizer selection
Version: 0.16.19
Date: 2. 09. 2018
  Features:
    - Blockable projectiles, most projectiles will be stop by walls and other objects
    - Rocket launches now agitate biters
    - Added Raiding phase where for a short period of time the ai triggers based on player base proximity for an attack wave to form
  Improvements:
    - Switched linear tier generation from rounding using ceiling to nearest number
    - Spawner faction spitters now degrade when attacking and check buildability for units to prevent infinite biter masses when attacking
    - Added a random roll to form biters during map processing to cause a more spread out squad formations
  Bugfixes:
    - Added check for null group (https://github.com/veden/Rampant/issues/16)
    - Added check for null alignment table (https://forums.factorio.com/viewtopic.php?f=94&t=31445&start=240#p342122)
    - Fix for adaptive factions only adapting one chunk of each faction instead of the whole faction
  Tweaks:
    - Changed Spawner baseline evolution requirement from 60 to 70%
  Framework:
    - Added interop function for registering unit groups from other mods for Rampant AI management
Version: 0.16.18
Date: 2. 05. 2018
  Bugfixes:
    - Fixed the enemy naming so the enemy tiers can be changed without losing enemies (https://forums.factorio.com/viewtopic.php?f=94&t=31445&start=240#p340944)
    - Fixed bob enemies load error (https://forums.factorio.com/viewtopic.php?f=94&t=31445&start=240#p340897)
Version: 0.16.17
Date: 2. 02. 2018
  Features:
    - Added the Wasp faction, an enemy that throws smaller flying enemies
    - Added the Spawner faction, an enemy that throws egg sack that make biters
  Improvements:
    - Added setting to turn off most of the friendly fire for worm and spitter splash damage
    - Changed electric biters to target multiple entities with their beams at a time
    - Changed electric worms to shoot a projectile that explodes into an electrical cluster
    - Added settings for controlling what tier enemies start and end at
    - Changed laser spitters and worms to shoot a projectile that explodes into an laser cluster
  Bugfixes:
    - Added laser resistance to laser worms
Version: 0.16.16
Date: 1. 31. 2018
  Improvements:
    - Added support for NE Buildings artifacts
    - Switched biter clump scanner to chunk based search for roughly constant performance
  Bugfixes:
    - Potential desync fix relating to squads
    - unitGroup being nil (https://mods.factorio.com/mod/Rampant/discussion/5a72832d3b14f30009910dce)
    - Squads not being deallocated for chunks when group is no longer valid
    - Fix for 5 tier of units resulted in only the larva class
  Tweaks:
    - Increased player base pheromone generation by 10 times
    - Increased retreat threshold max from 10000 to 18000
    - Increased the spread of player base pheromone from 0.25 to 0.30 (this is only for pathfinding)
    - Increased the generation of player pheromone from 150 to 300
    - Increased the death pheromone from enemys from 500 to 600
    - Increased the player aggro distance from 4 chunks to just over 5 chunks
  Framework:
    - Changing squads on a chunk to a map instead of an array
Version: 0.16.15
Date: 1. 29. 2018
  Bugfixes:
    - Fixed NE and bobs integration
  Tweaks:
    - Increased base processing passes from every 5 to 2 seconds
Version: 0.16.14
Date: 1. 28. 2018
  Bugfixes:
    - Fixed inverted check for bobs and ne (https://mods.factorio.com/mod/Rampant/discussion/5a6ec83c1650e7000ee173b2)
Version: 0.16.13
Date: 1. 28. 2018
  Bugfixes:
    - Fixed load error for mod dependencies (https://github.com/veden/Rampant/issues/15)
Version: 0.16.12
Date: 1. 28. 2018
  Bugfixes:
    - Fixed an error where item could be nil (https://forums.factorio.com/viewtopic.php?f=94&t=31445&start=240#p339033)
  Improvements:
    - Added support for bobs and NE artifacts
    - Added options to include Bobs or NE as factions
Version: 0.16.11
Date: 1. 27. 2018
  Bugfixes:
    - A a null check for nil'ed squad groups (https://mods.factorio.com/mod/Rampant/discussion/5a6d09cb9a95f7000b165865)
  Improvements:
    - Added setting options for changing tiers and variations to allow for a smaller memory footprint
Version: 0.16.10
Date: 1. 27. 2018
  Bugfixes:
    - Fixed missing function in surfaceTileChange call (https://mods.factorio.com/mod/Rampant/discussion/5a6cf2ff68436500096b638b)
Version: 0.16.9
Date: 1. 27. 2018
  Bugfixes:
    - Fixed uninitialized kamikazeThreshold
    - Fixed that deadzones wouldn't expire allowing for resettling
Version: 0.16.8
Date: 1. 26. 2018
  Bugfixes:
    - Fixed on_tick empty interval (https://forums.factorio.com/viewtopic.php?f=94&t=31445&start=220#p338531)
Version: 0.16.7
Date: 1. 26. 2018
  Improvements:
    - Reduced the number of trivial smoke created to 4 from ~20
  Tweaks:
    - Turned off new enemies by default
    - Set default number of enemy variations per tier to 1
Version: 0.16.6
Date: 1. 25. 2018
  Features:
    - Generated enemies for a large variety of things to battle
    - Evolving bases now get stronger over time and specialize their units
    - Creates areas clear of biters
  Bugfixes:
    - Fixed a cause where squads could get stuck on hard to pass terrain
  Tweaks:
    - Increased squad movement penalty before removal from 8000 to 10000
Version: 0.16.5
Date: 1. 24. 2018
  Bugfixes:
    - Fix from Pxanych for calculatekamikazethreshold passing table instead of a number
Version: 0.16.4
Date: 1. 23. 2018
  Bugfixes:
    - Fix for invalid ai max squad variable reference
Version: 0.16.3
Date: 1. 13. 2018
  Bugfixes:
    - Fixed creative mode tile wand robot error (https://forums.factorio.com/viewtopic.php?f=94&t=31445&start=220&hilit=rampant#p335574)
    - Fix from CyaNox for build tile positions to array of tiles change in factorio 0.16.17
  Improvements:
    - Removed squad limit
    - Squads converted from vanilla control receive immediate kamikaze roll
    - Units not under a unit group, now get a kamikaze roll before being put into a retreating squad
  Optimizations:
    - Reworked squad regrouping to be surrounding chunks instead comparing against master list
  Framework:
    - Add squads to chunk map for faster location sensitive lookups
Version: 0.16.2
Date: 1. 2. 2018
  Bugfixes:
    - Fixed invalid function call due to a function renaming
Version: 0.16.1
Date: 1. 1. 2018
  Features:
    - Artillery shell impacts cause biter squads to form and prevents the single file line of retaliation
    - Unit spawners now rally troops when they die
  Improvements:
    - Cliffs and impassable areas due to object density have been added to the pathfinder
    - Terrain that is dynamically altered (landfilled, cleared of trees, cleared of cliffs) will be accounted for now
    - Added artillery turret to buildings that emit pheromones
    - Increased kamikaze frequency by increasing the chance to roll for Kamikaze from 70% to 100%
  Optimizations:
    - Switch scanning for cliffs, resources, and tiles to event based instead of polling
    - Reduced number of table allocations when working with squads
  Bugfixes:
    - fixed changelog so it shows up in-game interface
    - Added checks for correct surface before processing build events
  Framework:
    - Created visualler for viewing internal Rampant ai game state
Version: 0.16.0
Date: 13. 12. 2017
  Tweaks:
    - Updated info.json
  Bugfixes:
    - Fixed broken icon size prototypes
    - Fixed create-smoke calls
    - Fixed perimeter to radius
    - Fixed smoke
    - Fixed missing fire tile properties