Nanobots: Early Bots 3.0


This is an AI-fixed and improved version of the Nanobots2 mod I use, which hasn't been updated for 9 months already. The list of fixes is shown on the page.port. Thank you Nexela for creating this great mod. Это исправленная и доработанная при помощи ИИ версия используемого мною мода Nanobots2, который не обновлялся уже 9 месяцев. Список исправлений указан на странице.

Content
5 days ago
2.0
560
Logistic network

Changelog

Version: 4.7.1
Date: 2026-01-13
  Changes:
    - Repair visuals: repair shot now uses the dedicated nano-projectile-repair effect (green) instead of constructor projectile.
    - Repair cloud is now visual-only (removed duplicate healing logic from the repair smoke cloud; actual repair is handled by control scripts).
    - Termite visuals: changed termite cloud color from green to yellow.
    - Fixed "LuaEntity API call when LuaEntity was invalid" after deconstruction (entity name is cached before mining/destroying).
    - Default repair start threshold is now 1.00 (repairs trigger for any damage by default).
Version: 4.7.0
Date: 2026-01-13
  Changes:
    - Repair rework: added repair sessions (one nanobot shot → repair until the current repair-pack is exhausted → new shot if needed).
    - Repair-pack is now consumed correctly and gradually via stack.durability (no full pack removal per repair).
    - Added repair priorities: defense/radar/mines/transport/power chain/production/other.
    - Added repair start threshold (5% dropdown): ignores minor damage above the selected threshold.
    - Added per-player cap for parallel repair sessions (default: 15) to prevent queue overload during mass damage.
    - Added combat repair mode: when enemies are nearby or the player was recently damaged, only important targets are repaired (turrets/walls/gates → radar → mines → transport).
    - Optimized repair scanning: type filter + scan limit + per-entity throttle by unit_number.
    - Queue stability: repair continuation is scheduled via pending inserts after execute() (prevents rare hash_queue crashes).
    - Localization: moved settings strings into settings.cfg and added/updated translations for cs, de, es, es-ES, fr, it, ja, ko, nl, pl, pt-BR, tr, uk, zh-CN, zh-TW.
Version: 4.6.3
Date: 2026-01-13
  Changes:
    - Fixed repair logic: repair-pack is now consumed gradually via durability instead of being removed entirely per repair action.
    - Repairs are now performed in small steps rather than instantly restoring to full health.
    - Fixed repair visuals: nanobot "shot" is emitted once per repair session (not spammed every step).
    - Repair sessions: if the current repair-pack durability is not enough to fully repair an entity, a new "shot" is fired and repair continues.
    - Fixed rare hash_queue crash when re-queuing repairs: repair continuation is now scheduled via pending inserts after execute().
    - Removed invalid field access (e.g. max_condition) that could cause errors with some items/builds.
Version: 4.6.2
Date: 2025-01-07
  Changes:
    - Added incompatibility with legacy mods: Nanobots, Nanobots2, nanobots-refined.
    - This prevents conflicts when loading multiple nanobot mods simultaneously.
Version: 4.6.1
Date: 2025-06-06
  Locale:
    - Added auto-repair setting translations for 15 languages: cs, de, es, es-ES, fr, it, ja, ko, nl, pl, pt-BR, tr, uk, zh-CN, zh-TW.
    - Mod now supports 17 interface languages (including English and Russian).
Version: 4.6.0
Date: 2025-01-06
  Features:
    - Nanobots now automatically repair damaged entities within range.
    - Repair uses repair-packs from player inventory or vehicle.
    - Added "Nanobot auto-repair" setting (enabled by default).
    - Visual nanobot effect when repairing entities.
  Changes:
    - Added Queue.repair() function to handle repair in nanobot queue.
    - nano_repairable_entity() is now actively used to find damaged entities.
    - Repair tools list is extensible (modded repair packs can be added to repair_tools).
Version: 4.5.3
Date: 2026-01-05
  Bugfixes:
    - Fixed changelog.txt format to comply with Factorio's strict parser so the latest versions are shown correctly in-game.
Version: 4.5.2
Date: 2026-01-04
  Info:
    - Adjusted changelog.txt to follow the format recommended in the Factorio API docs so it displays properly in-game. See: https://lua-api.factorio.com/latest/auxiliary/changelog-format.html
Version: 4.5.1
Date: 2026-01-04
  Locale:
    - Added translations for new interface languages (cs, de, es, es-ES, fr, it, ja, ko, nl, pl, pt-BR, tr, uk, zh-CN, zh-TW).
Version: 4.5.0
Date: 2025-12-31
  Changes:
    - Default "Log Level" is now OFF (DEBUG_NANO = 0); unknown values are also clamped to 0 in update_settings().
    - "Standard" mode now logs only important module and initialization messages; item search and other verbose details moved to nlog_dbg().
  Features:
    - Added log aggregation system: nlog_agg(category, name, count) accumulates repeated events, flush_aggregated_messages() prints them after a short quiet period.
    - Aggregated messages use the [NANO:AGG] tag and merge long series of similar operations (building, landfill, upgrades, etc.) into a single summary.
Version: 4.4.0
Date: 2025-12-30
  Features:
    - "Log Level" runtime-global setting: off / standard / debug.
    - Standard: machine module listing, missing modules, inserted modules, targets.
    - Debug: full function tracing, slots, proxy/target info, serpent.dump.
Version: 4.3.0
Date: 2025-12-29
  Features:
    - Added nlog() / nlog_dbg() logging levels with detailed tracing of module request processing.
    - Logs now show machine module contents, missing modules, target entity and successful insertion.
  Bugfixes:
    - Added systematic .valid checks for proxy, entities, player and inventory to prevent "LuaEntity API call when LuaEntity was invalid" errors.
    - Fixed nanobot visual effect: proxy surface/force/position are saved before destroy(), so projectile is always created correctly.
    - Removed invalid satisfy_requests(target, target, player) call that caused "Entity is not a ghost or an item request proxy" errors.
Version: 4.2.1
Date: 2025-12-28
  Bugfixes:
    - FIX: Nanobots broke module blueprints by inserting the first available module instead of blueprint order.
    - New hasAllModules(): pre-checks ALL modules BEFORE insertion — all or nothing.
    - Added log showing which required module was missing.
Version: 4.2.0
Date: 2025-12-28
  Bugfixes:
    - Nanobots now correctly handle partially satisfied module requests: if slots are occupied, the proxy is ignored; if modules are partially inserted, the proxy remains for further processing.
    - Nanobot visual effect is drawn only when modules are actually inserted, preventing false animations.
    - Fixed item_requests normalization to properly support both data formats (number / table with name, count).
Version: 4.1.0
Date: 2025-12-25
  Features:
    - Nanobots now automatically place landfill under entities built on water (tile-ghost + entity-ghost).
    - Nanobots can insert and upgrade modules in entities according to their module requests.
    - Nanobots replace modules according to blueprints (old modules are returned to player or dropped on ground).
  Bugfixes:
    - Fixed nanobot item lookup to remove the stdlib2 table.find crash.
    - Improved logging around ghost handling and module request processing.
Version: 4.0.2
Date: 2025-12-24
  Bugfixes:
    - Fixed Russian locale keys for mod settings so all Nanobots3 options now display correctly in Russian.
Version: 4.0.1
  Bugfixes:
    - Fixed sound paths after renaming the mod to Nanobots3.
  Features:
    - Added full Russian localization (items, technologies, GUI, settings).
  Changes:
    - Minor description and metadata cleanup for the mod portal.
Version: 4.0.0
  Info:
    - AI-fixed and improved version of Nanobots2 (AI Improved Edition).
  Changes:
    - Factorio 2.0 compatibility: fixed crashes related to changed settings types and item_requests structure; added protection against invalid setting values (poll rate, queue rate, queue per cycle, AFK timer).
    - Reworked nanobot range logic to account for new BOT_RADIUS values and damage modifiers; eliminated errors like "attempt to compare number with table".
    - Fixed nanobot queue and tick processing: corrected tick_spacing calculations with safe handling of shot speed modifiers and proper division by player count for any number of connected players.
    - Tile-ghost landfilling: nanobots now always place landfill under tile-ghost even when an entity-ghost is on top; behavior depends only on the "build tiles" setting and player tile availability.
    - Module requests (item-request-proxy): rewrote item_requests handling for Factorio 2.0 array-of-structures format; module requests are normalized, taken from player inventory, and inserted into the entity module inventory; removed attempts to write to read-only requests.item_requests; proxy is properly destroyed after processing.
    - Overall stability: removed mismatched function/end blocks and leftover debug calls so the mod reliably handles construction, deconstruction, repair, landfilling and automatic module installation by nanobots.
Version: 3.3.2
  Info:
    - Previous Nanobots2 version (for reference).