Pythonator


[Early development – feedback welcome] Programmable circuit controller scripted in a Python subset. Deterministic timing: read inputs, run loop(), write outputs – every tick.

Content
a day ago
2.0 - 2.1
30
Circuit network

Changelog

Version: 0.2.0
Date: 2026-10-23
  Compatibility:
    - Updated for Factorio 2.1. Factorio 2.0 players keep version 0.1.1.
    - Fixed a crash on game load with Pyanodon 3.1: the Pythonator recipe and technology now get the same
      helper methods that other mods attach to existing recipes.
    - Existing saves keep all buildings, programs, program state and researched technologies.
    - Tested with vanilla, Space Age, Pyanodon's, Bob's and AAI Industry on Factorio 2.1.
Version: 0.1.1
Date: 2026-10-11
  Bugfixes:
    - Circuit wires now attach to the correct terminals in every rotation (they stayed at the north position).
    - Status LED is drawn at the correct position in every rotation.
  Changes:
    - An output explicitly written as 0 is shown in the output panel. The circuit network never carries zero, so
      nothing is sent on the wire, same as with a constant combinator.
Version: 0.1.0
Date: 2026-10-09
  Features:
    - Programmable circuit controller scripted in a Python subset.
    - In-game editor window with line numbers, signal icon selector, error line highlight and a draft that survives
      closing the window.
    - Play, Pause, Reset and Step buttons, status with tick and cost of the last run, panels for input and output
      wires, global variables and a print() log.
    - Combinator library: vector operations (each, where, count, sum, max_key, min_key, out.set, out.add) and
      stateful elements (latch, timer, edge, counter, delay, pid).
    - Help window with language reference and examples that can be inserted into the editor.
    - Building display shows scrolling code while the program runs, frozen text while paused, red text on an
      error.
    - Tips and tricks category Pythonator with the full language reference and examples.