From 343cdfffd9a13413e7c81401d135bbdfccfde2bd Mon Sep 17 00:00:00 2001 From: Aaron Veden Date: Fri, 11 Aug 2017 18:19:35 -0700 Subject: [PATCH] see readme --- README.md | 10 +++++- Upgrade.lua | 6 ++-- .../chest/itemCollectorOverlay2.5.png | Bin 52435 -> 52526 bytes .../entities/chest/itemCollectorOverlay2.png | Bin 0 -> 26272 bytes info.json | 2 +- libs/Constants.lua | 2 +- locale/en/locale.cfg | 6 ++-- prototypes/buildings/ItemCollector.lua | 31 +++++++++++++++--- 8 files changed, 43 insertions(+), 14 deletions(-) create mode 100755 graphics/entities/chest/itemCollectorOverlay2.png diff --git a/README.md b/README.md index f5f985f..9912711 100755 --- a/README.md +++ b/README.md @@ -7,6 +7,9 @@ https://forums.factorio.com/viewtopic.php?f=94&t=31445 # Notes +When playing on low sprite resolution, item collector range will appear to be less than it is. (By roughly a half chunk on all sides) +This is due to the max sprite size being 2048px on low and 4096px on high resolution. + 0.14.14 factorio version fixed save corruption 0.14.10 factorio version fixed more pathing issues 0.14.4 factorio version fixed some issues with unit groups commands @@ -58,12 +61,17 @@ Configure Options not in game menu: # Version History +0.15.20 - +- Fixed: Added Low Resolution version of overlay, ISSUE: range of collector extends past visual display because of 2048px limit on sprites +- Tweak: Increased item collector build time from 0.5 seconds to 10 seconds +- Improvement: Added an expensive recipe variant that doubles the cost of the item collector + 0.15.19 - - Fixed: Error when processing item collectors 0.15.18 - - Feature: Adds an item collector for things like alien artifacts -- Improvement: Added checks for how many squads have been created to enfore global limit over all squad creation methods +- Improvement: Added checks for how many squads have been created to enforce global limit over all squad creation methods - Tweak: Increased breach multiplier from 10000 to 100000 - Fixed: Current version wasn't be set causing the upgrade code to run repeatedly - Fixed: Neighbors function not correctly clearing its state between calls diff --git a/Upgrade.lua b/Upgrade.lua index 9027563..bc422ae 100755 --- a/Upgrade.lua +++ b/Upgrade.lua @@ -170,10 +170,10 @@ function upgrade.attempt(natives, world) game.surfaces[1].print("Rampant - Version 0.15.18") global.version = constants.VERSION_28 end - if (global.version < constants.VERSION_29) then + if (global.version < constants.VERSION_30) then - game.surfaces[1].print("Rampant - Version 0.15.19") - global.version = constants.VERSION_29 + game.surfaces[1].print("Rampant - Version 0.15.20") + global.version = constants.VERSION_30 end return starting ~= global.version, natives, world end diff --git a/graphics/entities/chest/itemCollectorOverlay2.5.png b/graphics/entities/chest/itemCollectorOverlay2.5.png index 57d5a0918eeb4082df60c9869ec035ceb838d268..46c518c8eaa9e58b5279aac52ffda92ffff9b11b 100755 GIT binary patch delta 5686 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 LI#K$^Z~y!cR7tmb diff --git a/graphics/entities/chest/itemCollectorOverlay2.png b/graphics/entities/chest/itemCollectorOverlay2.png new file mode 100755 index 0000000000000000000000000000000000000000..ab9a92a23fa68403f2c5a2f828951cf06c743e56 GIT binary patch literal 26272 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