# ATM10 CC Control System Modulares CC:Tweaked-Steuerungssystem fuer die ATM10-Megabase. ## Create Factory Scheduler V1 `create_factory_scheduler.lua` ist der persistente Nachfolger des Logistiktests. Der funktionierende `create_factory_test.lua` bleibt als Rueckfallstand erhalten. ```lua delete create_factory_scheduler.lua wget https://git.peli-server.de/Dystroyer8/ATM10_CC_Codes/raw/branch/main/create_factory_scheduler.lua create_factory_scheduler.lua create_factory_scheduler ``` Neue normale Module und Rezepte werden oben in der Tabelle `RECIPES` registriert. Die Scheduler-Logik muss dafuer nicht veraendert werden. Mehrstufige oder zufaellige Produktionsketten erhalten einen benannten Planner. V1.2 nutzt einen gemeinsamen Metall-Planner fuer Asurine -> Zinc und Crimsite -> Iron. Im AUTO-Modus haelt der erste Keep-Stock-Regler kleine Cogwheels, grosse Cogwheels und Iron Nuggets auf jeweils 64 Stueck. Mixer-, Casing- und Precision-Rezepte sind ueber blätterbare Rezeptseiten erreichbar. ## Create-Fabrik: Peripherie erkennen Das rein lesende Diagnoseprogramm herunterladen und starten: ```lua delete create_factory_debug.lua wget https://git.peli-server.de/Dystroyer8/ATM10_CC_Codes/raw/branch/main/create_factory_debug.lua create_factory_debug.lua create_factory_debug ``` Es erzeugt auf dem CC-Computer die Datei `factory_peripheral_debug.txt`. Darin stehen alle verbundenen Peripherien, Methoden, Frogport-Adressen sowie abrufbare Paket-, Inventar- und Stock-Ticker-Daten. Das Programm versendet keine Pakete und veraendert keine Redstone-Ausgaenge. ### Erster Logistik-Funktionstest Nach erfolgreicher Erkennung kann der Monitor-Testcontroller installiert werden: ```lua delete create_factory_test.lua wget https://git.peli-server.de/Dystroyer8/ATM10_CC_Codes/raw/branch/main/create_factory_test.lua create_factory_test.lua create_factory_test ``` Der Controller zeigt automatisch alle Items des Stock-Ticker-Netzes auf durchblaetterbaren Lagerseiten und bietet doppelt zu bestaetigende Testbestellungen fuer `crushing`, `saw:1` und `saw:2`. Pro Verarbeitungslinie bleibt nur ein Auftrag aktiv, bis sein Ergebnis im Lager erkannt wurde. Er steuert noch keine Clutches oder sonstigen Redstone-Ausgaenge. Als erster generischer Fan-Prozess ist `fan:washing` enthalten. Der Testauftrag verarbeitet 64 vereinheitlichte Zinc Clumps zu mindestens 576 Zinc Nuggets; das zufaellige Gunpowder-Nebenprodukt erscheint automatisch in der Lagerliste. ## Zielbild - zentrale Leitwarte fuer Status, Energie, Alarme und Sektor-Hauptschalter - lokale Sektorcontroller fuer Create, Mekanism, Greenhouse und spaetere Mods - Sicherheitslogik bleibt immer im jeweiligen Sektor - versionierte Installation und Updates ueber Gitea ## Installation auf einem CC-Computer ```lua wget https://git.peli-server.de/Dystroyer8/ATM10_CC_Codes/raw/branch/main/install.lua install.lua install ``` Der Installer ist momentan ein Bootstrap. Hardwaretreiber und konkrete Anlagenlogik werden ergaenzt, sobald die Peripherie- und Methodennamen der gebauten Anlagen feststehen. ## Einfache Create-Boiler-Anzeige Fuer die erste Kraftwerksanzeige werden ein Monitor sowie pro Boiler ein Block Reader aus Advanced Peripherals benoetigt. Mindestens ein weiterer Block Reader zeigt auf das Create- Speedometer oder Stressometer der gemeinsamen Hauptwelle. Alle Reader und der Monitor werden ueber Wired Modems mit dem Computer verbunden. Installation und Start: ```lua wget https://git.peli-server.de/Dystroyer8/ATM10_CC_Codes/raw/branch/main/create_boiler_display.lua create_boiler_display.lua create_boiler_display ``` Das Programm liest Online-Status und Heizmodus jedes Boilers ueber dessen Block Reader. Drehzahl, Kapazitaet, Verbrauch und Auslastung liest es aus den Netzwerkdaten des Gauge-Readers. Die Monitoraufloesung wird automatisch erkannt und die groesste passende Textskalierung gewaehlt. Ein Boiler ohne Wasserversorgung oder angeschlossene Engine wird als IDLE angezeigt, selbst wenn eine Campfire- oder Blaze-Burner-Waermequelle erkannt wird. ### Clutch-Teststeuerung Die linke Seite des Computers ist als Redstone-Ausgang fuer die Test-Clutch konfiguriert. Zwischen Ausgang und Clutch sitzt eine Redstone-Fackel als Fail-safe-Inverter: Ausgang `ON` bedeutet `PRODUCTION: RUNNING`; Ausgang `OFF`, Programmabbruch oder Computerneustart bedeutet `PRODUCTION: STOPPED`. Die Verbindung kann direkt oder ueber Create Redstone Links erfolgen. Der gewuenschte Zustand wird nach jeder Touch-Bedienung in `create_boiler_state.txt` gespeichert. Beim naechsten Programmstart wird er wiederhergestellt. Fuer automatischen Start nach einem Computer- oder Weltneustart kann das Startprogramm als `startup.lua` installiert werden: ```lua wget https://git.peli-server.de/Dystroyer8/ATM10_CC_Codes/raw/branch/main/create_boiler_startup.lua startup.lua reboot ``` Waehrend der Computer aus ist, bleibt die Hardware durch den Fackel-Inverter abgeschaltet. Erst nach erfolgreichem Programmstart wird ein zuvor gespeicherter RUNNING-Zustand wieder aktiviert. Die Boiler werden nicht anhand wechselnder Peripheral-Namen, sondern fest ueber ihre Controller-Koordinaten `11266/64/10810`, `11260/64/10810` und `11254/64/10810` zugeordnet. Fehlt ein Reader, bleibt dadurch exakt die betroffene Boiler-Zeile auf `MISSING / NO READER`. Jeder Block Reader muss direkt auf den Controller-Tank seines Boiler-Multiblocks zeigen. ## Andesite-Alloy-Produktion Der erste lokale Create-Produktionscontroller ueberwacht einen Zink-Nugget-Vault, einen Andesite-Alloy-Vault und die per Clutch geschaltete Produktionsanlage. Die beiden Vaults muessen jeweils direkt ueber einen aktivierten Wired Modem Full Block als Inventory-Peripheral mit dem Computer verbunden sein. Der Redstone-Ausgang `left` steuert die Clutch ueber einen Fail-safe-Inverter: Redstone `ON` schaltet die Fackel aus und gibt die Welle frei; bei Redstone `OFF`, Programmabbruch oder Computer-Ausfall stoppt die Fackel die Welle. Installation und erster Start: ```lua wget https://git.peli-server.de/Dystroyer8/ATM10_CC_Codes/raw/branch/main/create_andesite_display.lua create_andesite_display.lua create_andesite_display ``` Der Controller erkennt die Vaults anhand von `create:zinc_nugget` und `create:andesite_alloy` und speichert ihre Peripheral-Namen. Die Freigabe wird ebenfalls gespeichert. Fehlendes Zink, ein voller Ausgang oder fehlende Vault-Daten schalten die Produktionsanlage ab; nach Behebung wird eine weiterhin freigegebene Anlage automatisch fortgesetzt. Globale RPM-, Kapazitaets- und Stresswerte gehoeren in den spaeteren Create- Serverraum, da ein Stressometer immer das gesamte zusammenhaengende kinetische Netzwerk misst. Fuer den automatischen Start: ```lua wget https://git.peli-server.de/Dystroyer8/ATM10_CC_Codes/raw/branch/main/create_andesite_startup.lua startup.lua reboot ``` ## Struktur ```text core/ Laufzeit, Netzwerk, Protokoll, Logging, Updates drivers/ Adapter fuer Redstone und Mod-Peripherie roles/ Zentrale und Sektorcontroller ui/ Monitore, Widgets und Alarmdarstellung config/ Konfigurationsvorlagen docs/ Architektur- und Protokolldokumentation ``` ## Sicherheitsprinzip Die Zentrale fordert nur einen Zielzustand an. Lokale Controller fuehren sichere Start-/Stoppsequenzen aus und bestaetigen den tatsaechlichen Zustand.