Agricultural Roboport


Adds an agricultural roboport for automated crop management executed by robots.

Content
3 days ago
2.0
681
Logistic network

Changelog

Version: 1.4.6
Date: 2026-03-08
  Features:
    - Added "Harvest in logistic area only" checkbox to restrict harvesting to the logistic radius
  Bugfixes:
    - Fixed plants with empty tile_buildability_rules not being placeable 
    - Fixed virtual seeds not being placeable on special tiles like lava
    - Fixed settings not being preserved in blueprints for quality roboports
    - Fixed settings being lost when upgrading roboport quality via upgrade planner
  Technical:
    - Virtual seed entities now copy surface_conditions from their plants
    - Harvest function respects harvest_logistic_only setting for area calculation
    - Blueprint tag creation now uses radius search for better entity matching
    - Upgrade planner now preserves settings via temporary storage during quality replacement
Version: 1.4.5
Date: 2026-02-25
  Bugfixes:
    - Fixed multiplayer desync caused by sprite recreation during deferred rebuild after client joins
  Changes:
    - Sprites now recreate lazily on-demand instead of during on_load deferred tick
    - This eliminates calling rendering API during gameplay ticks, preventing multiplayer desynchronization
Version: 1.4.4
Date: 2026-02-25
  Bugfixes:
    - Fixed multiplayer desync caused by checking local startup settings instead of synchronized storage during runtime
  Technical:
    - Changed all runtime quality checks from is_quality_enabled() to storage.quality_level existence checks
    - Prevents desync when server and clients have different agricultural-roboport-enable-quality startup settings
    - Quality behavior now determined by server's startup setting (stored in synchronized storage), not each client's local setting
Version: 1.4.3
Date: 2026-02-25
  Bugfixes:
    - Fixed multiplayer desync when clients join servers with quality enabled (deferred rebuild was modifying storage during runtime instead of only in on_configuration_changed)
  Technical:
    - Moved quality table migration and virtual_seed_info rebuild to on_configuration_changed() only
    - handle_deferred_rebuild() now only recreates client-side rendering (sprites) without modifying game state
    - Hash format migration moved to proper lifecycle event
Version: 1.4.2
Date: 2026-02-25
  Bugfixes:
    - Fixed multiplayer desync issue when quality feature is enabled (caused by per-player setting access during deterministic game simulation)
  Changes:
    - Mutation visualization setting changed from per-player to global (server controlled)
    - Added Ukrainian (uk) localization
Version: 1.4.1
Date: 2026-02-23
  Bugfixes:
    - Fixed duplicate locale keys in non-English translations preventing mod from loading (agricultural-roboport-dense-seeding was duplicated in German, Spanish, French, Japanese, Russian, and Chinese locales)
Version: 1.4.0
Date: 2026-02-20
  Bugfixes:
    - Fixed critical bug where normal quality plants would mutate to "unknown" quality instead of uncommon
    - Fixed controlled mutations improvement chances being shifted by one tier down
    - Fixed quality tables including internal "quality-unknown" prototype (now excludes any quality with "unknown" in name)
    - Fixed maximum achievable quality being one tier lower than intended due to "unknown" contamination
  Changes:
    - Quality filtering now uses pattern matching to exclude any "unknown" variants from mutation system
Version: 1.3.9
Date: 2026-02-17
  Major Features:
    - Dynamic tech tree generation based on detected quality tiers (supports mods with custom quality systems)
    - Science pack requirements now properly inherit from quality unlock technologies and previous mutation levels
    - Added phantom recipe to display mutation improvement bonus in technology effects and bonuses tab
  Improvements:
    - Controlled Mutations technology now shows visible +20% productivity bonus per level in tech screen
    - Tech tree adapts to any number of quality tiers (tested with ic-more-qualities: 40 tiers)
  Bugfixes:
    - Fixed quality tier calculation for mods that skip prototype levels (e.g., ic-more-qualities)
    - Fixed mutation improvement chance calculation using sequential tiers instead of inflated prototype levels
    - Added automatic migration for saves using old quality table format
  Changes:
    - Quality tables now use sequential tier indices (0, 1, 2...) independent of prototype level assignments
    - Extreme quality (tier 40) now correctly shows 60% improvement chance at max research instead of -180%
Version: 1.3.8
Date: 2026-02-13
  Major Features:
    - Quality mutation system overhaul with environmental scaling
    - Added Controlled Mutations research technology (8 levels) providing directional mutation control
    - Mutation chance now scales dynamically with pollution levels (0.5% base to 20% max at 50-500 pollution)
    - Solar intensity affects mutation rates (varies by planet)
    - Pollution reduces improvement chance while increasing overall mutation rate
    - Quality level penalty: each quality tier reduces improvement chance by 20%
  Improvements:
    - Added mutation visualization with colored flying text showing mutation events (green for improvements, red for degradation)
    - Mutation visualization is now a per-player setting allowing individual preferences
    - Localized mutation notification text for all supported languages
  Changes:
    - Removed mutation chance multiplier setting (replaced by environmental scaling system)
Version: 1.3.7
Date: 2026-02-09
  Major Features:
    - Added circuit network support for Agricultural Roboports
    - Operating mode can now be controlled by circuit signals (negative = harvest only, zero = both, positive = seed only)
    - Filters can be set from circuit signals - seed items with value > 0 become filters, quality is read from the signal
    - UI displays circuit-controlled values in real-time and disables manual controls when circuit takes over
  Improvements:
    - Circuit settings are preserved when copying/pasting, blueprinting, or when entities are destroyed and revived
    - Added translations for circuit network features in all supported languages
  Bugfixes:
    - Fixed settings being lost when destroyed roboports are auto-ghosted and later revived
Version: 1.3.6
Date: 2026-01-10
  Improvements:
    - Increased quality plant tracking resolution to improve quality handling for small plants in dense mode
Version: 1.3.5
Date: 2025-12-26
  Improvements:
    - Added backward compatibility with base game
    - Space Age DLC is now optional
    - Quality is now optional
Version: 1.3.4
Date: 2025-12-25
  Improvements:
    - Added graphics assets for agricultural roboports and related technology, thanks to Cackling Fiend: (https://mods.factorio.com/user/cackling.fiend)
  Bugfixes:
    - Tweaked technology prerequisites for Lignumis
Version: 1.3.3
Date: 2025-12-24
  Bugfixes:
    - Fixed game freeze when enabling filters with empty whitelist (infinite loop in seeding routine)
Version: 1.3.2
Date: 2025-12-23
  Improvements:
    - Added entity and technology descriptions for Agricultural Roboport
    - Updated dense seeding descriptions to remove outdated performance warnings
    - Virtual seed entities are now hidden from Factoriopedia
  Bugfixes:
    - Fixed crash in editor mode when deferred element setting tried to access non-existent players
Version: 1.3.1
Date: 2025-12-21
  Mod Compatibility:
    - Added support for Lignumis mod - unlocks Vegetation Planner early
Version: 1.3.0
Date: 2025-12-18
  Major Features:
    - Added Vegetation Planner - a manual selection tool for planning vegetation in specific areas
    - Accessible via shortcut bar or ALT+V hotkey after researching "Soil Analysis" technology
    - Independent filter configuration separate from roboport settings
    - Alt-select to clear vegetation ghosts from selected areas
  Improvements:
    - Improved terrain compatibility checks for more accurate plant placement
Version: 1.2.3
Date: 2025-12-16
  Performance:
    - Significantly improved seeding performance by pre-computing seed metadata once instead of on every tile check
    - Surface compatibility now checked once per seed type instead of repeatedly for each position
    - Collision check budget now properly accounts for wiggle attempts (prevents performance spikes in dense mode)
    - Optimized plant size sorting to use cached data instead of repeated prototype lookups
  Improvements:
    - Filter dropdowns now intelligently show only planet-compatible seeds (e.g., Gleba plants only appear on Gleba)
    - Quality seeds now require explicit whitelist configuration - unfiltered mode uses normal quality only
  Changes:
    - Dense mode seeding is now more CPU-friendly with proper collision check budgeting
Version: 1.2.2
Date: 2025-12-15
  Major Features:
    - Added startup setting 'Seed in dense grid' for planting seeds on every tile instead of every 3rd tile
    - Dense mode enables much tighter plant packing for higher crop density
    - Added 'agro-seed-info' console command to inspect plant properties (collision boxes, tile requirements, etc.)
  Changes:
    - Dense mode requires game restart to take effect (startup setting)
    - Performance impact: Dense seeding increases collision checks - use whitelist filters to limit load
  Info:
    - Dense mode recommended only with whitelist filters to control which plants are seeded
    - See mod description for performance tuning guidance
Version: 1.2.1
Date: 2025-12-10
  Changes:
    - Automatic detection of ALL seed items - no configuration needed
    - Removed 'agricultural-roboport-additional-seeds' startup setting (no longer necessary)
    - Prototype scanning now checks every data.raw category for items with plant_result
    - Supports any modded agricultural item regardless of naming convention or item category
  Info:
    - No user action required - mod automatically detects all seeds
    - Existing saves will work seamlessly (virtual seed info rebuilds automatically)
    - Better mod compatibility - works with any mod adding plantable items
Version: 1.2.0
Date: 2025-12-09
  Major Features:
    - Added support for non-standard seed items from other mods (e.g., boompuff-spore from Boompuff Agriculture)
    - Added startup setting 'agricultural-roboport-additional-seeds' to specify custom seed items by name
    - Virtual seed entities now created for items with plant_result in multiple categories (item, capsule, ammo, tool)
    - Custom seeds automatically appear in filter dropdowns and work with all roboport features
  Changes:
    - Blacklist filter mode now works at item level (quality-agnostic) - blocking an item blocks all qualities
    - Whitelist filter mode continues to support per-quality filtering
    - UI dynamically switches between item and item-with-quality selectors based on filter mode
    - Virtual seed info now rebuilt on every game load and mod configuration change for consistency
  Bugfixes:
    - Fixed filter UI crashes when switching between whitelist and blacklist modes
    - Fixed seeding logic to use prototype introspection instead of string pattern matching
    - Fixed virtual seed info indexing to use actual seed item names
  Compatibility:
    - Now compatible with mods adding custom agricultural items (e.g., Boompuff Agriculture)
    - Supports any item with plant_result regardless of naming convention
Version: 1.1.3
Date: 2025-12-06
  Bugfixes:
    - Fixed map_generator_bounding_box property being less than collision_box which caused game crash in conjunction with some mods.
Version: 1.1.2
Date: 2025-12-05
  Bugfixes:
    - Fixed game crash when pasting blueprints (index out of bounds in consumed_items)
Version: 1.1.1
Date: 2025-12-05
  Bugfixes:
    - Fixed quality mutation not properly extracting quality name from LuaQualityPrototype objects
    - Fixed manual planting not preserving quality from seeds (now uses consumed_items data)
  Changes:
    - Added "Chance of quality improvement" setting (0-100%, default 10%) to control upgrade vs downgrade probability for quality mutations
    - Increased maximum quality mutation multiplier from 100 to 200
Version: 1.1.0
Date: 2025-12-02
  Major Features:
    - Added quality plants and seeds support - plants now retain seed quality and display quality badges
    - Added quality mutation system when harvesting plants with configurable chance multiplier
    - Added startup setting to enable/disable quality tracking (requires game restart)
    - UI now dynamically switches between quality-aware and simple item selectors based on quality setting
    - Added quality mutation chance multiplier setting (0.5% base chance, configurable 0-100+)
  Changes:
    - Optimized sprite rendering using only_in_alt_mode flag for automatic visibility control
    - Improved plant registration to handle both table and userdata quality types
    - Added translations for new quality settings in all supported languages (EN, DE, ES, FR, JA, RU, ZH-CN)
Version: 1.0.5
Date: 2025-11-30
  Bugfixes:
    - Fixed quality roboports not being processed by TDM handler (using unit_number lookup and quality-aware entity search)
    - Fixed metatable behavior to properly return nil for non-existent storage keys
    - Added comprehensive debug logging for troubleshooting entity creation and storage
Version: 1.0.4
Date: 2024
  Bugfixes:
    - Fixed crash when seeds don't have tile restrictions (now placeable anywhere)
    - Added compatibility with mods using tile_buildability_rules (e.g., wayward-seas)
    - Fixed handling of plant specifications without autoplace or autoplace_specification
Version: 1.0.2
Date: 2024
  Bugfixes:
    - Fixed handling of entity prototypes using "icons" property instead of "icon"
Version: 1.0.1
Date: 2024
  Bugfixes:
    - Added support for mod-invoked ghost construction (e.g., Mouse-Over Construction mod)
    - Fixed property initialization issue where values were set to 0 instead of false
Version: 1.0.0
Date: 2024
  Major Features:
    - Initial release of Agricultural Roboport mod
    - Automated crop management with construction robots
    - Operating modes: Harvest and Seed, Harvest Only, Seed Only
    - Seed filtering system with up to 5 seed types
    - Logistic network integration for seed requests
    - Settings paste support between roboports
    - Blueprint support with settings preservation
    - Configurable TDM (Time-Division Multiplexing) processing
    - Multi-language localization support (EN, DE, ES, FR, JA, RU, ZH-CN)
    - Custom status indicators showing operating mode