AI Craftapalooza Parts: Difference between revisions

From The Perfect Tower II
Jump to navigation Jump to search
Troylaurin (talk | contribs)
No edit summary
Troylaurin (talk | contribs)
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
===Parts scripts===
===Parts scripts===


{| class="wikitable"
====Chips (1)====
|+
!Output
!Part
!Scripts
|-
|1
|chips
[[File:Chip recipe.png|frameless]]
[[File:Chip recipe.png|frameless]]
|


{| class="wikitable"
{| class="wikitable"
Line 19: Line 11:
|craft 3:1
|craft 3:1
|20
|20
|
|{{AIScript
{| class="wikitable mw-collapsible mw-collapsed"
|code=
!
CWNyYWZ0IDM6MQAAAAAAAAAAFAAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
|-
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuMRBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
|<syntaxhighlight lang="actionscript">
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My4xDmdlbmVyaWMuZ290
; Chips
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
:global double craft_inventory
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
:local int tier
Y29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
:local double count
dGFudAQBPghjb25zdGFudAIFAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
:local double board_lo
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/E2dlbmVy
:local double board_hi
aWMuZXhlY3V0ZXN5bmMIY29uc3RhbnQEDGNyYWZ0IDM6MTppbhBsb2NhbC5kb3VibGUuc2V0CGNvbnN0
:local double circuit_lo
YW50BAhib2FyZF9oaRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVj
:local double circuit_hi
b3VudAhjb25zdGFudAQBKgNpMmQOYXJpdGhtZXRpYy5pbnQOYXJpdGhtZXRpYy5pbnQIY29uc3RhbnQC
 
AigNAAhjb25zdGFudAQBLw5hcml0aG1ldGljLmludAhjb25zdGFudAIKAAAACGNvbnN0YW50BANwb3cN
tier = global.int.get("craft_tier:3.1")
bG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQDbW9kCGNvbnN0YW50AgoAAAAQbG9j
count = global.double.get("craft_count:3.1")
YWwuZG91YmxlLnNldAhjb25zdGFudAQKY2lyY3VpdF9oaRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5k
gotoif(99, tier < 1 | tier > 5 | count < 1.0)
b3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKgNpMmQOYXJpdGhtZXRpYy5pbnQOYXJp
 
dGhtZXRpYy5pbnQIY29uc3RhbnQCpGwDAAhjb25zdGFudAQBLw5hcml0aG1ldGljLmludAhjb25zdGFu
; Verify ingot resources
dAIKAAAACGNvbnN0YW50BANwb3cNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQD
; Also craft lower tier chips for input
bW9kCGNvbnN0YW50AgoAAAAOZ2xvYmFsLmludC5zZXQIY29uc3RhbnQEEGNyYWZ0X3RpZXI6aW5nb3QO
executesync("craft 3:1:in")
YXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25z
 
dGFudAICAAAAEWdsb2JhbC5kb3VibGUuc2V0CGNvbnN0YW50BBFjcmFmdF9jb3VudDppbmdvdBFhcml0
; Ensure we have enough ingots (hi)
aG1ldGljLmRvdWJsZQpkb3VibGUubWF4CGNvbnN0YW50AwAAAAAAAAAAEWFyaXRobWV0aWMuZG91Ymxl
board_hi = count * i2d((862210 / (10 ^ tier)) % 10)
EGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQECGJvYXJkX2hpCGNvbnN0YW50BAEtEWFyaXRobWV0aWMu
circuit_hi = count * i2d((224420 / (10 ^ tier)) % 10)
ZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQE
global.int.set("craft_tier:ingot", tier * 2)
ASoRYXJpdGhtZXRpYy5kb3VibGUTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQFcGxhdGUOYXJp
global.double.set("craft_count:ingot", max(0.0, board_hi - craft_inventory * (count("plate", tier * 2) + count("plate.circuit", tier * 2))) + max(0.0, ceil((circuit_hi - craft_inventory * (count("cable", tier * 2) + count("circuit", tier * 2)))/2.0)))
dGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFu
executesync("craft ingot")
dAICAAAACGNvbnN0YW50BAErE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEDXBsYXRlLmNpcmN1
gotoif(99, global.int.get("craft_status") > 199)
aXQOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghj
 
b25zdGFudAICAAAACGNvbnN0YW50BAErCmRvdWJsZS5tYXgIY29uc3RhbnQDAAAAAAAAAAALZG91Ymxl
; Ensure we have enough ingots (lo)
LmNlaWwRYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhj
board_lo = count * i2d((864410 / (10 ^ tier)) % 10)
b25zdGFudAQKY2lyY3VpdF9oaQhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91
circuit_lo = count * 2.0
YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqEWFyaXRobWV0aWMuZG91
global.int.set("craft_tier:ingot", tier * 2 - 1)
YmxlE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBWNhYmxlDmFyaXRobWV0aWMuaW50DWxvY2Fs
global.double.set("craft_count:ingot", max(0.0, board_lo - craft_inventory * (count("plate", tier * 2 - 1) + count("plate.circuit", tier * 2 - 1))) + max(0.0, ceil((circuit_lo - craft_inventory * (count("cable", tier * 2 - 1) + count("circuit", tier * 2 - 1)))/2.0)))
LmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQCAgAAAAhjb25zdGFudAQB
executesync("craft ingot")
KxNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAdjaXJjdWl0DmFyaXRobWV0aWMuaW50DWxvY2Fs
 
LmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQCAgAAAAhjb25zdGFudAQB
global.int.set("craft_status:3.1", 1)
Lwhjb25zdGFudAMAAAAAAAAAQBNnZW5lcmljLmV4ZWN1dGVzeW5jCGNvbnN0YW50BAtjcmFmdCBpbmdv
execute("craft 3:1:board")
dA5nZW5lcmljLmdvdG9pZghjb25zdGFudAJjAAAADmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0
execute("craft 3:1:circuit")
CGNvbnN0YW50BAxjcmFmdF9zdGF0dXMIY29uc3RhbnQEAT4IY29uc3RhbnQCxwAAABBsb2NhbC5kb3Vi
 
bGUuc2V0CGNvbnN0YW50BAhib2FyZF9sbxFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0
waituntil(global.int.get("craft_status:3.1") >= 7 & count("plate.circuit", tier * 2 - 1) >= board_lo & count("plate.circuit", tier * 2) >= board_hi & count("circuit", tier * 2 - 1) >= circuit_lo & count("circuit", tier * 2) >= circuit_hi)
CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKgNpMmQOYXJpdGhtZXRpYy5pbnQOYXJpdGhtZXRpYy5p
craft("chip", tier, count)
bnQIY29uc3RhbnQCmjANAAhjb25zdGFudAQBLw5hcml0aG1ldGljLmludAhjb25zdGFudAIKAAAACGNv
 
bnN0YW50BANwb3cNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQDbW9kCGNvbnN0
</syntaxhighlight>
YW50AgoAAAAQbG9jYWwuZG91YmxlLnNldAhjb25zdGFudAQKY2lyY3VpdF9sbxFhcml0aG1ldGljLmRv
|-
dWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25zdGFudAMA
|<syntaxhighlight lang="text">
AAAAAAAAQA5nbG9iYWwuaW50LnNldAhjb25zdGFudAQQY3JhZnRfdGllcjppbmdvdA5hcml0aG1ldGlj
CWNyYWZ0IDM6MQAAAAAAAAAAFAAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
LmludA5hcml0aG1ldGljLmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAEq
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuMRBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
CGNvbnN0YW50AgIAAAAIY29uc3RhbnQEAS0IY29uc3RhbnQCAQAAABFnbG9iYWwuZG91YmxlLnNldAhj
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My4xDmdlbmVyaWMuZ290
b25zdGFudAQRY3JhZnRfY291bnQ6aW5nb3QRYXJpdGhtZXRpYy5kb3VibGUKZG91YmxlLm1heAhjb25z
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
dGFudAMAAAAAAAAAABFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAhi
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
b2FyZF9sbwhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25z
Y29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
dGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqEWFyaXRobWV0aWMuZG91YmxlE2ZhY3Rvcnku
dGFudAQBPghjb25zdGFudAIFAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
aXRlbXMuY291bnQIY29uc3RhbnQEBXBsYXRlDmFyaXRobWV0aWMuaW50DmFyaXRobWV0aWMuaW50DWxv
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/E2dlbmVy
Y2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQCAgAAAAhjb25zdGFu
aWMuZXhlY3V0ZXN5bmMIY29uc3RhbnQEDGNyYWZ0IDM6MTppbhBsb2NhbC5kb3VibGUuc2V0CGNvbnN0
dAQBLQhjb25zdGFudAIBAAAACGNvbnN0YW50BAErE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQE
YW50BAhib2FyZF9oaRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVj
DXBsYXRlLmNpcmN1aXQOYXJpdGhtZXRpYy5pbnQOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhj
b3VudAhjb25zdGFudAQBKgNpMmQOYXJpdGhtZXRpYy5pbnQOYXJpdGhtZXRpYy5pbnQIY29uc3RhbnQC
b25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAICAAAACGNvbnN0YW50BAEtCGNvbnN0YW50
AigNAAhjb25zdGFudAQBLw5hcml0aG1ldGljLmludAhjb25zdGFudAIKAAAACGNvbnN0YW50BANwb3cN
AgEAAAAIY29uc3RhbnQEASsKZG91YmxlLm1heAhjb25zdGFudAMAAAAAAAAAAAtkb3VibGUuY2VpbBFh
bG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQDbW9kCGNvbnN0YW50AgoAAAAQbG9j
cml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50
YWwuZG91YmxlLnNldAhjb25zdGFudAQKY2lyY3VpdF9oaRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5k
BApjaXJjdWl0X2xvCGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0
b3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKgNpMmQOYXJpdGhtZXRpYy5pbnQOYXJp
CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoRYXJpdGhtZXRpYy5kb3VibGUTZmFj
dGhtZXRpYy5pbnQIY29uc3RhbnQCpGwDAAhjb25zdGFudAQBLw5hcml0aG1ldGljLmludAhjb25zdGFu
dG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQFY2FibGUOYXJpdGhtZXRpYy5pbnQOYXJpdGhtZXRpYy5p
dAIKAAAACGNvbnN0YW50BANwb3cNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQD
bnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAICAAAACGNv
bW9kCGNvbnN0YW50AgoAAAAOZ2xvYmFsLmludC5zZXQIY29uc3RhbnQEEGNyYWZ0X3RpZXI6aW5nb3QO
bnN0YW50BAEtCGNvbnN0YW50AgEAAAAIY29uc3RhbnQEASsTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25z
YXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25z
dGFudAQHY2lyY3VpdA5hcml0aG1ldGljLmludA5hcml0aG1ldGljLmludA1sb2NhbC5pbnQuZ2V0CGNv
dGFudAICAAAAEWdsb2JhbC5kb3VibGUuc2V0CGNvbnN0YW50BBFjcmFmdF9jb3VudDppbmdvdBFhcml0
bnN0YW50BAR0aWVyCGNvbnN0YW50BAEqCGNvbnN0YW50AgIAAAAIY29uc3RhbnQEAS0IY29uc3RhbnQC
aG1ldGljLmRvdWJsZQpkb3VibGUubWF4CGNvbnN0YW50AwAAAAAAAAAAEWFyaXRobWV0aWMuZG91Ymxl
AQAAAAhjb25zdGFudAQBLwhjb25zdGFudAMAAAAAAAAAQBNnZW5lcmljLmV4ZWN1dGVzeW5jCGNvbnN0
EGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQECGJvYXJkX2hpCGNvbnN0YW50BAEtEWFyaXRobWV0aWMu
YW50BAtjcmFmdCBpbmdvdA5nbG9iYWwuaW50LnNldAhjb25zdGFudAQQY3JhZnRfc3RhdHVzOjMuMQhj
ZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQE
b25zdGFudAIBAAAAD2dlbmVyaWMuZXhlY3V0ZQhjb25zdGFudAQPY3JhZnQgMzoxOmJvYXJkD2dlbmVy
ASoRYXJpdGhtZXRpYy5kb3VibGUTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQFcGxhdGUOYXJp
aWMuZXhlY3V0ZQhjb25zdGFudAQRY3JhZnQgMzoxOmNpcmN1aXQRZ2VuZXJpYy53YWl0dW50aWwPY29t
dGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFu
cGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA9jb21wYXJpc29uLmJvb2wPY29tcGFyaXNvbi5ib29s
dAICAAAACGNvbnN0YW50BAErE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEDXBsYXRlLmNpcmN1
DmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BBBjcmFmdF9zdGF0dXM6My4xCGNv
aXQOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghj
bnN0YW50BAI+PQhjb25zdGFudAIHAAAACGNvbnN0YW50BAEmEWNvbXBhcmlzb24uZG91YmxlE2ZhY3Rv
b25zdGFudAICAAAACGNvbnN0YW50BAErCmRvdWJsZS5tYXgIY29uc3RhbnQDAAAAAAAAAAALZG91Ymxl
cnkuaXRlbXMuY291bnQIY29uc3RhbnQEDXBsYXRlLmNpcmN1aXQOYXJpdGhtZXRpYy5pbnQOYXJpdGht
LmNlaWwRYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhj
ZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAIC
b25zdGFudAQKY2lyY3VpdF9oaQhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91
AAAACGNvbnN0YW50BAEtCGNvbnN0YW50AgEAAAAIY29uc3RhbnQEAj49EGxvY2FsLmRvdWJsZS5nZXQI
YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqEWFyaXRobWV0aWMuZG91
Y29uc3RhbnQECGJvYXJkX2xvCGNvbnN0YW50BAEmEWNvbXBhcmlzb24uZG91YmxlE2ZhY3RvcnkuaXRl
YmxlE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBWNhYmxlDmFyaXRobWV0aWMuaW50DWxvY2Fs
bXMuY291bnQIY29uc3RhbnQEDXBsYXRlLmNpcmN1aXQOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50Lmdl
LmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQCAgAAAAhjb25zdGFudAQB
dAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAICAAAACGNvbnN0YW50BAI+PRBsb2Nh
KxNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAdjaXJjdWl0DmFyaXRobWV0aWMuaW50DWxvY2Fs
bC5kb3VibGUuZ2V0CGNvbnN0YW50BAhib2FyZF9oaQhjb25zdGFudAQBJhFjb21wYXJpc29uLmRvdWJs
LmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQCAgAAAAhjb25zdGFudAQB
ZRNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAdjaXJjdWl0DmFyaXRobWV0aWMuaW50DmFyaXRo
Lwhjb25zdGFudAMAAAAAAAAAQBNnZW5lcmljLmV4ZWN1dGVzeW5jCGNvbnN0YW50BAtjcmFmdCBpbmdv
bWV0aWMuaW50DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQC
dA5nZW5lcmljLmdvdG9pZghjb25zdGFudAJjAAAADmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0
AgAAAAhjb25zdGFudAQBLQhjb25zdGFudAIBAAAACGNvbnN0YW50BAI+PRBsb2NhbC5kb3VibGUuZ2V0
CGNvbnN0YW50BAxjcmFmdF9zdGF0dXMIY29uc3RhbnQEAT4IY29uc3RhbnQCxwAAABBsb2NhbC5kb3Vi
CGNvbnN0YW50BApjaXJjdWl0X2xvCGNvbnN0YW50BAEmEWNvbXBhcmlzb24uZG91YmxlE2ZhY3Rvcnku
bGUuc2V0CGNvbnN0YW50BAhib2FyZF9sbxFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0
aXRlbXMuY291bnQIY29uc3RhbnQEB2NpcmN1aXQOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhj
CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKgNpMmQOYXJpdGhtZXRpYy5pbnQOYXJpdGhtZXRpYy5p
b25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAICAAAACGNvbnN0YW50BAI+PRBsb2NhbC5k
bnQIY29uc3RhbnQCmjANAAhjb25zdGFudAQBLw5hcml0aG1ldGljLmludAhjb25zdGFudAIKAAAACGNv
b3VibGUuZ2V0CGNvbnN0YW50BApjaXJjdWl0X2hpDWZhY3RvcnkuY3JhZnQIY29uc3RhbnQEBGNoaXAN
bnN0YW50BANwb3cNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQDbW9kCGNvbnN0
bG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3Vu
YW50AgoAAAAQbG9jYWwuZG91YmxlLnNldAhjb25zdGFudAQKY2lyY3VpdF9sbxFhcml0aG1ldGljLmRv
dA==
dWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25zdGFudAMA
|src=
AAAAAAAAQA5nbG9iYWwuaW50LnNldAhjb25zdGFudAQQY3JhZnRfdGllcjppbmdvdA5hcml0aG1ldGlj
; Chips
LmludA5hcml0aG1ldGljLmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAEq
:global double craft_inventory
CGNvbnN0YW50AgIAAAAIY29uc3RhbnQEAS0IY29uc3RhbnQCAQAAABFnbG9iYWwuZG91YmxlLnNldAhj
:local int tier
b25zdGFudAQRY3JhZnRfY291bnQ6aW5nb3QRYXJpdGhtZXRpYy5kb3VibGUKZG91YmxlLm1heAhjb25z
:local double count
dGFudAMAAAAAAAAAABFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAhi
:local double board_lo
b2FyZF9sbwhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25z
:local double board_hi
dGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqEWFyaXRobWV0aWMuZG91YmxlE2ZhY3Rvcnku
:local double circuit_lo
aXRlbXMuY291bnQIY29uc3RhbnQEBXBsYXRlDmFyaXRobWV0aWMuaW50DmFyaXRobWV0aWMuaW50DWxv
:local double circuit_hi
Y2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQCAgAAAAhjb25zdGFu
 
dAQBLQhjb25zdGFudAIBAAAACGNvbnN0YW50BAErE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQE
tier = global.int.get("craft_tier:3.1")
DXBsYXRlLmNpcmN1aXQOYXJpdGhtZXRpYy5pbnQOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhj
count = global.double.get("craft_count:3.1")
b25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAICAAAACGNvbnN0YW50BAEtCGNvbnN0YW50
gotoif(99, tier < 1 {{!}} tier > 5 {{!}} count < 1.0)
AgEAAAAIY29uc3RhbnQEASsKZG91YmxlLm1heAhjb25zdGFudAMAAAAAAAAAAAtkb3VibGUuY2VpbBFh
 
cml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50
; Verify ingot resources
BApjaXJjdWl0X2xvCGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0
; Also craft lower tier chips for input
CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoRYXJpdGhtZXRpYy5kb3VibGUTZmFj
executesync("craft 3:1:in")
dG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQFY2FibGUOYXJpdGhtZXRpYy5pbnQOYXJpdGhtZXRpYy5p
bnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAICAAAACGNv
bnN0YW50BAEtCGNvbnN0YW50AgEAAAAIY29uc3RhbnQEASsTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25z
dGFudAQHY2lyY3VpdA5hcml0aG1ldGljLmludA5hcml0aG1ldGljLmludA1sb2NhbC5pbnQuZ2V0CGNv
bnN0YW50BAR0aWVyCGNvbnN0YW50BAEqCGNvbnN0YW50AgIAAAAIY29uc3RhbnQEAS0IY29uc3RhbnQC
AQAAAAhjb25zdGFudAQBLwhjb25zdGFudAMAAAAAAAAAQBNnZW5lcmljLmV4ZWN1dGVzeW5jCGNvbnN0
YW50BAtjcmFmdCBpbmdvdA5nbG9iYWwuaW50LnNldAhjb25zdGFudAQQY3JhZnRfc3RhdHVzOjMuMQhj
b25zdGFudAIBAAAAD2dlbmVyaWMuZXhlY3V0ZQhjb25zdGFudAQPY3JhZnQgMzoxOmJvYXJkD2dlbmVy
aWMuZXhlY3V0ZQhjb25zdGFudAQRY3JhZnQgMzoxOmNpcmN1aXQRZ2VuZXJpYy53YWl0dW50aWwPY29t
cGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA9jb21wYXJpc29uLmJvb2wPY29tcGFyaXNvbi5ib29s
DmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BBBjcmFmdF9zdGF0dXM6My4xCGNv
bnN0YW50BAI+PQhjb25zdGFudAIHAAAACGNvbnN0YW50BAEmEWNvbXBhcmlzb24uZG91YmxlE2ZhY3Rv
cnkuaXRlbXMuY291bnQIY29uc3RhbnQEDXBsYXRlLmNpcmN1aXQOYXJpdGhtZXRpYy5pbnQOYXJpdGht
ZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAIC
AAAACGNvbnN0YW50BAEtCGNvbnN0YW50AgEAAAAIY29uc3RhbnQEAj49EGxvY2FsLmRvdWJsZS5nZXQI
Y29uc3RhbnQECGJvYXJkX2xvCGNvbnN0YW50BAEmEWNvbXBhcmlzb24uZG91YmxlE2ZhY3RvcnkuaXRl
bXMuY291bnQIY29uc3RhbnQEDXBsYXRlLmNpcmN1aXQOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50Lmdl
dAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAICAAAACGNvbnN0YW50BAI+PRBsb2Nh
bC5kb3VibGUuZ2V0CGNvbnN0YW50BAhib2FyZF9oaQhjb25zdGFudAQBJhFjb21wYXJpc29uLmRvdWJs
ZRNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAdjaXJjdWl0DmFyaXRobWV0aWMuaW50DmFyaXRo
bWV0aWMuaW50DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQC
AgAAAAhjb25zdGFudAQBLQhjb25zdGFudAIBAAAACGNvbnN0YW50BAI+PRBsb2NhbC5kb3VibGUuZ2V0
CGNvbnN0YW50BApjaXJjdWl0X2xvCGNvbnN0YW50BAEmEWNvbXBhcmlzb24uZG91YmxlE2ZhY3Rvcnku
aXRlbXMuY291bnQIY29uc3RhbnQEB2NpcmN1aXQOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhj
b25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAICAAAACGNvbnN0YW50BAI+PRBsb2NhbC5k
b3VibGUuZ2V0CGNvbnN0YW50BApjaXJjdWl0X2hpDWZhY3RvcnkuY3JhZnQIY29uc3RhbnQEBGNoaXAN
bG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3Vu
dA==


</syntaxhighlight>
; Ensure we have enough ingots (hi)
|}
board_hi = count * i2d((862210 / (10 ^ tier)) % 10)
|-
circuit_hi = count * i2d((224420 / (10 ^ tier)) % 10)
|craft 3:1:in
|18
|
{| class="wikitable mw-collapsible mw-collapsed"
!
|-
|<syntaxhighlight lang="actionscript">
:global double craft_inventory
:local int tier
:local double count
 
tier = global.int.get("craft_tier:3.1")
count = global.double.get("craft_count:3.1")
 
; Ingots (hi)
;  board_hi = global.double.get("craft_count:3.1") * i2d((862210 / (10 ^ mytier)) % 10)
;  circuit_hi = global.double.get("craft_count:3.1") * i2d((224420 / (10 ^ mytier)) % 10)
global.int.set("craft_tier:ingot", tier * 2)
global.int.set("craft_tier:ingot", tier * 2)
global.double.set("craft_count:ingot", max(0.0, count * i2d((862210 / (10 ^ tier)) % 10) - craft_inventory * (count("plate", tier * 2) + count("plate.circuit", tier * 2))) + max(0.0, ceil((count * i2d((224420 / (10 ^ tier)) % 10) - craft_inventory * (count("cable", tier * 2) + count("circuit", tier * 2)))/2.0)))
global.double.set("craft_count:ingot", max(0.0, board_hi - craft_inventory * (count("plate", tier * 2) + count("plate.circuit", tier * 2))) + max(0.0, ceil((circuit_hi - craft_inventory * (count("cable", tier * 2) + count("circuit", tier * 2)))/2.0)))
global.int.set("craft_verify:ingot", 1)
executesync("craft ingot")
executesync("craft ingot")
gotoif(99, global.int.get("craft_status") > 199)
gotoif(99, global.int.get("craft_status") > 199)


; Ingots (lo)
; Ensure we have enough ingots (lo)
;  board_lo = global.double.get("craft_count:3.1") * i2d((864410 / (10 ^ mytier)) % 10)
board_lo = count * i2d((864410 / (10 ^ tier)) % 10)
;  circuit_lo = global.double.get("craft_count:3.1") * 2.0
circuit_lo = count * 2.0
global.int.set("craft_tier:ingot", tier * 2 - 1)
global.int.set("craft_tier:ingot", tier * 2 - 1)
global.double.set("craft_count:ingot", max(0.0, count * i2d((864410 / (10 ^ tier)) % 10) - craft_inventory * (count("plate", tier * 2 - 1) + count("plate.circuit", tier * 2 - 1))) + max(0.0, ceil((count*2.0 - craft_inventory * (count("cable", tier * 2 - 1) + count("circuit", tier * 2 - 1)))/2.0)))
global.double.set("craft_count:ingot", max(0.0, board_lo - craft_inventory * (count("plate", tier * 2 - 1) + count("plate.circuit", tier * 2 - 1))) + max(0.0, ceil((circuit_lo - craft_inventory * (count("cable", tier * 2 - 1) + count("circuit", tier * 2 - 1)))/2.0)))
global.int.set("craft_verify:ingot", 1)
executesync("craft ingot")
executesync("craft ingot")
gotoif(99, global.int.get("craft_status") > 199)


; Input chips
global.int.set("craft_status:3.1", 1)
global.int.set("craft_tier:3.1", tier - 1)
execute("craft 3:1:board")
global.double.set("craft_count:3.1", count * 2.0 * (floor(664200.0 / (10.0 ^ i2d(tier))) % 10.0) - craft_inventory * count("chip", tier - 1))
execute("craft 3:1:circuit")
executesync("craft 3:1")
gotoif(99, global.int.get("craft_status") > 199)


; Restore state for this tier
waituntil(global.int.get("craft_status:3.1") >= 7 & count("plate.circuit", tier * 2 - 1) >= board_lo & count("plate.circuit", tier * 2) >= board_hi & count("circuit", tier * 2 - 1) >= circuit_lo & count("circuit", tier * 2) >= circuit_hi)
global.int.set("craft_tier:3.1", tier)
craft("chip", tier, count)
global.double.set("craft_count:3.1", count)
}}


</syntaxhighlight>
|-
|-
|<syntaxhighlight lang="text">
|craft 3:1:in
|18
|{{AIScript
|code=
DGNyYWZ0IDM6MTppbgAAAAAAAAAAEgAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2Jh
DGNyYWZ0IDM6MTppbgAAAAAAAAAAEgAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2Jh
bC5pbnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuMRBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50
bC5pbnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuMRBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50
Line 279: Line 223:
aWVyEWdsb2JhbC5kb3VibGUuc2V0CGNvbnN0YW50BA9jcmFmdF9jb3VudDozLjEQbG9jYWwuZG91Ymxl
aWVyEWdsb2JhbC5kb3VibGUuc2V0CGNvbnN0YW50BA9jcmFmdF9jb3VudDozLjEQbG9jYWwuZG91Ymxl
LmdldAhjb25zdGFudAQFY291bnQ=
LmdldAhjb25zdGFudAQFY291bnQ=
 
|src=
</syntaxhighlight>
|}
|-
|craft 3:1:board
|16
|
{| class="wikitable mw-collapsible mw-collapsed"
!
|-
|<syntaxhighlight lang="actionscript">
:global double craft_inventory
:global double craft_inventory
:local int tier
:local int tier
:local double board_lo
:local double count
:local double board_hi


tier = global.int.get("craft_tier:3.1")
tier = global.int.get("craft_tier:3.1")
board_lo = global.double.get("craft_count:3.1") * i2d((864410 / (10 ^ tier)) % 10)
count = global.double.get("craft_count:3.1")
board_hi = global.double.get("craft_count:3.1") * i2d((862210 / (10 ^ tier)) % 10)


; Craft plates
; Ingots (hi)
lo1: gotoif(hi1, board_lo <= craft_inventory * (count("plate.circuit", tier * 2 - 1) + count("plate", tier * 2 - 1)))
;  board_hi = global.double.get("craft_count:3.1") * i2d((862210 / (10 ^ mytier)) % 10)
  waitwhile(active("presser"))
;  circuit_hi = global.double.get("craft_count:3.1") * i2d((224420 / (10 ^ mytier)) % 10)
  produce("ingot", tier * 2 - 1, board_lo - craft_inventory * (count("plate.circuit", tier * 2 - 1) + count("plate", tier * 2 - 1)), "presser")
global.int.set("craft_tier:ingot", tier * 2)
global.double.set("craft_count:ingot", max(0.0, count * i2d((862210 / (10 ^ tier)) % 10) - craft_inventory * (count("plate", tier * 2) + count("plate.circuit", tier * 2))) + max(0.0, ceil((count * i2d((224420 / (10 ^ tier)) % 10) - craft_inventory * (count("cable", tier * 2) + count("circuit", tier * 2)))/2.0)))
global.int.set("craft_verify:ingot", 1)
executesync("craft ingot")
gotoif(99, global.int.get("craft_status") > 199)


hi1: gotoif(lo2, board_hi <= craft_inventory * (count("plate.circuit", tier * 2) + count("plate", tier * 2)))
; Ingots (lo)
  waitwhile(active("presser"))
;  board_lo = global.double.get("craft_count:3.1") * i2d((864410 / (10 ^ mytier)) % 10)
  produce("ingot", tier * 2, board_hi - craft_inventory * (count("plate.circuit", tier * 2) + count("plate", tier * 2)), "presser")
;  circuit_lo = global.double.get("craft_count:3.1") * 2.0
 
global.int.set("craft_tier:ingot", tier * 2 - 1)
; Craft circuit boards
global.double.set("craft_count:ingot", max(0.0, count * i2d((864410 / (10 ^ tier)) % 10) - craft_inventory * (count("plate", tier * 2 - 1) + count("plate.circuit", tier * 2 - 1))) + max(0.0, ceil((count*2.0 - craft_inventory * (count("cable", tier * 2 - 1) + count("circuit", tier * 2 - 1)))/2.0)))
lo2: gotoif(hi2, board_lo <= craft_inventory * (count("plate.circuit", tier * 2 - 1)))
global.int.set("craft_verify:ingot", 1)
  waitwhile(active("refinery") | count("plate", tier * 2 - 1) < board_lo - craft_inventory * (count("plate.circuit", tier * 2 - 1)))
executesync("craft ingot")
  produce("plate", tier * 2 - 1, board_lo - craft_inventory * (count("plate.circuit", tier * 2 - 1)), "refinery")
gotoif(99, global.int.get("craft_status") > 199)


hi2: gotoif(end, board_hi <= craft_inventory * (count("plate.circuit", tier * 2)))
; Input chips
  waitwhile(active("refinery") | count("plate", tier * 2) < board_hi - craft_inventory * (count("plate.circuit", tier * 2)))
global.int.set("craft_tier:3.1", tier - 1)
  produce("plate", tier * 2, board_hi - craft_inventory * (count("plate.circuit", tier * 2)), "refinery")
global.double.set("craft_count:3.1", count * 2.0 * (floor(664200.0 / (10.0 ^ i2d(tier))) % 10.0) - craft_inventory * count("chip", tier - 1))
executesync("craft 3:1")
gotoif(99, global.int.get("craft_status") > 199)


end: global.int.set("craft_status:3.1", global.int.get("craft_status:3.1") + 2)
; Restore state for this tier
global.int.set("craft_tier:3.1", tier)
global.double.set("craft_count:3.1", count)
}}


</syntaxhighlight>
|-
|-
|<syntaxhighlight lang="text">
|craft 3:1:board
|16
|{{AIScript
|code=
D2NyYWZ0IDM6MTpib2FyZAAAAAAAAAAAEAAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmds
D2NyYWZ0IDM6MTpib2FyZAAAAAAAAAAAEAAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmds
b2JhbC5pbnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuMRBsb2NhbC5kb3VibGUuc2V0CGNvbnN0
b2JhbC5pbnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuMRBsb2NhbC5kb3VibGUuc2V0CGNvbnN0
Line 413: Line 356:
MQ5hcml0aG1ldGljLmludA5nbG9iYWwuaW50LmdldAhjb25zdGFudAQQY3JhZnRfc3RhdHVzOjMuMQhj
MQ5hcml0aG1ldGljLmludA5nbG9iYWwuaW50LmdldAhjb25zdGFudAQQY3JhZnRfc3RhdHVzOjMuMQhj
b25zdGFudAQBKwhjb25zdGFudAICAAAA
b25zdGFudAQBKwhjb25zdGFudAICAAAA
 
|src=
</syntaxhighlight>
|}
|-
|craft 3:1:circuit
|16
|
{| class="wikitable mw-collapsible mw-collapsed"
!
|-
|<syntaxhighlight lang="actionscript">
:global double craft_inventory
:global double craft_inventory
:local int tier
:local int tier
:local double circuit_lo
:local double board_lo
:local double circuit_hi
:local double board_hi


tier = global.int.get("craft_tier:3.1")
tier = global.int.get("craft_tier:3.1")
circuit_lo = global.double.get("craft_count:3.1") * 2.0
board_lo = global.double.get("craft_count:3.1") * i2d((864410 / (10 ^ tier)) % 10)
circuit_hi = global.double.get("craft_count:3.1") * i2d((224420 / (10 ^ tier)) % 10)
board_hi = global.double.get("craft_count:3.1") * i2d((862210 / (10 ^ tier)) % 10)


; Craft cables
; Craft plates
lo1: gotoif(hi1, circuit_lo <= craft_inventory * (count("circuit", tier * 2 - 1) + count("cable", tier * 2 - 1)))
lo1: gotoif(hi1, board_lo <= craft_inventory * (count("plate.circuit", tier * 2 - 1) + count("plate", tier * 2 - 1)))
waitwhile(active("refinery"))
  waitwhile(active("presser"))
produce("ingot", tier * 2 - 1, ceil((circuit_lo - craft_inventory * (count("circuit", tier * 2 - 1) + count("cable", tier * 2 - 1))) / 2.0), "refinery")
  produce("ingot", tier * 2 - 1, board_lo - craft_inventory * (count("plate.circuit", tier * 2 - 1) + count("plate", tier * 2 - 1)), "presser")


hi1: gotoif(lo2, circuit_hi <= craft_inventory * (count("circuit", tier * 2) + count("cable", tier * 2)))
hi1: gotoif(lo2, board_hi <= craft_inventory * (count("plate.circuit", tier * 2) + count("plate", tier * 2)))
waitwhile(active("refinery"))
  waitwhile(active("presser"))
produce("ingot", tier * 2, ceil((circuit_hi - craft_inventory * (count("circuit", tier * 2) + count("cable", tier * 2))) / 2.0), "refinery")
  produce("ingot", tier * 2, board_hi - craft_inventory * (count("plate.circuit", tier * 2) + count("plate", tier * 2)), "presser")


; Craft circuit wires
; Craft circuit boards
lo2: gotoif(hi2, circuit_lo <= craft_inventory * count("circuit", tier * 2 - 1))
lo2: gotoif(hi2, board_lo <= craft_inventory * (count("plate.circuit", tier * 2 - 1)))
   waitwhile(count("cable", tier * 2 - 1) < circuit_lo - craft_inventory * count("circuit", tier * 2 - 1) | active("assembler"))
   waitwhile(active("refinery") {{!}} count("plate", tier * 2 - 1) < board_lo - craft_inventory * (count("plate.circuit", tier * 2 - 1)))
   produce("cable", tier * 2 - 1, circuit_lo - craft_inventory * count("circuit", tier * 2 - 1), "assembler")
   produce("plate", tier * 2 - 1, board_lo - craft_inventory * (count("plate.circuit", tier * 2 - 1)), "refinery")


hi2: gotoif(end, circuit_hi <= craft_inventory * count("circuit", tier * 2))
hi2: gotoif(end, board_hi <= craft_inventory * (count("plate.circuit", tier * 2)))
   waitwhile(count("cable", tier * 2) < circuit_hi - craft_inventory * count("circuit", tier * 2) | active("assembler"))
   waitwhile(active("refinery") {{!}} count("plate", tier * 2) < board_hi - craft_inventory * (count("plate.circuit", tier * 2)))
   produce("cable", tier * 2, circuit_hi - craft_inventory * count("circuit", tier * 2), "assembler")
   produce("plate", tier * 2, board_hi - craft_inventory * (count("plate.circuit", tier * 2)), "refinery")


end: global.int.set("craft_status:3.1", global.int.get("craft_status:3.1") + 4)
end: global.int.set("craft_status:3.1", global.int.get("craft_status:3.1") + 2)
}}


</syntaxhighlight>
|-
|-
|<syntaxhighlight lang="text">
|craft 3:1:circuit
|16
|{{AIScript
|code=
EWNyYWZ0IDM6MTpjaXJjdWl0AAAAAAAAAAAQAAAADWxvY2FsLmludC5zZXQIY29uc3RhbnQEBHRpZXIO
EWNyYWZ0IDM6MTpjaXJjdWl0AAAAAAAAAAAQAAAADWxvY2FsLmludC5zZXQIY29uc3RhbnQEBHRpZXIO
Z2xvYmFsLmludC5nZXQIY29uc3RhbnQEDmNyYWZ0X3RpZXI6My4xEGxvY2FsLmRvdWJsZS5zZXQIY29u
Z2xvYmFsLmludC5nZXQIY29uc3RhbnQEDmNyYWZ0X3RpZXI6My4xEGxvY2FsLmRvdWJsZS5zZXQIY29u
Line 546: Line 482:
ZnRfc3RhdHVzOjMuMQ5hcml0aG1ldGljLmludA5nbG9iYWwuaW50LmdldAhjb25zdGFudAQQY3JhZnRf
ZnRfc3RhdHVzOjMuMQ5hcml0aG1ldGljLmludA5nbG9iYWwuaW50LmdldAhjb25zdGFudAQQY3JhZnRf
c3RhdHVzOjMuMQhjb25zdGFudAQBKwhjb25zdGFudAIEAAAA
c3RhdHVzOjMuMQhjb25zdGFudAQBKwhjb25zdGFudAIEAAAA
|src=
:global double craft_inventory
:local int tier
:local double circuit_lo
:local double circuit_hi
tier = global.int.get("craft_tier:3.1")
circuit_lo = global.double.get("craft_count:3.1") * 2.0
circuit_hi = global.double.get("craft_count:3.1") * i2d((224420 / (10 ^ tier)) % 10)


</syntaxhighlight>
; Craft cables
|}
lo1: gotoif(hi1, circuit_lo <= craft_inventory * (count("circuit", tier * 2 - 1) + count("cable", tier * 2 - 1)))
|}
waitwhile(active("refinery"))
|-
produce("ingot", tier * 2 - 1, ceil((circuit_lo - craft_inventory * (count("circuit", tier * 2 - 1) + count("cable", tier * 2 - 1))) / 2.0), "refinery")
|2
 
|plates
hi1: gotoif(lo2, circuit_hi <= craft_inventory * (count("circuit", tier * 2) + count("cable", tier * 2)))
[[File:Gold plate.png|frameless]]
waitwhile(active("refinery"))
|
produce("ingot", tier * 2, ceil((circuit_hi - craft_inventory * (count("circuit", tier * 2) + count("cable", tier * 2))) / 2.0), "refinery")
{| class="wikitable"
 
!Name
; Craft circuit wires
!Lines
lo2: gotoif(hi2, circuit_lo <= craft_inventory * count("circuit", tier * 2 - 1))
  waitwhile(count("cable", tier * 2 - 1) < circuit_lo - craft_inventory * count("circuit", tier * 2 - 1) {{!}} active("assembler"))
  produce("cable", tier * 2 - 1, circuit_lo - craft_inventory * count("circuit", tier * 2 - 1), "assembler")
 
hi2: gotoif(end, circuit_hi <= craft_inventory * count("circuit", tier * 2))
  waitwhile(count("cable", tier * 2) < circuit_hi - craft_inventory * count("circuit", tier * 2) {{!}} active("assembler"))
  produce("cable", tier * 2, circuit_hi - craft_inventory * count("circuit", tier * 2), "assembler")
 
end: global.int.set("craft_status:3.1", global.int.get("craft_status:3.1") + 4)
}}
|}
 
 
====Plates (2)====
[[File:Gold plate.png|frameless]]
 
{| class="wikitable"
!Name
!Lines
!Code
!Code
|-
|-
|craft 3:2
|craft 3:2
|9
|9
|
|{{AIScript
{| class="wikitable mw-collapsible mw-collapsed"
|code=
!
CWNyYWZ0IDM6MgAAAAAAAAAACQAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
|-
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuMhBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
|<syntaxhighlight lang="actionscript">
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My4yDmdlbmVyaWMuZ290
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
Y29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
dGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/Dmdsb2Jh
bC5pbnQuc2V0CGNvbnN0YW50BBBjcmFmdF90aWVyOmluZ290DWxvY2FsLmludC5nZXQIY29uc3RhbnQE
BHRpZXIRZ2xvYmFsLmRvdWJsZS5zZXQIY29uc3RhbnQEEWNyYWZ0X2NvdW50OmluZ290EGxvY2FsLmRv
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50E2dlbmVyaWMuZXhlY3V0ZXN5bmMIY29uc3RhbnQEC2NyYWZ0
IGluZ290DmdlbmVyaWMuZ290b2lmCGNvbnN0YW50AmMAAAAOY29tcGFyaXNvbi5pbnQOZ2xvYmFsLmlu
dC5nZXQIY29uc3RhbnQEDGNyYWZ0X3N0YXR1cwhjb25zdGFudAQBPghjb25zdGFudALHAAAAEWdlbmVy
aWMud2FpdHdoaWxlFmZhY3RvcnkubWFjaGluZS5hY3RpdmUIY29uc3RhbnQEB3ByZXNzZXIPZmFjdG9y
eS5wcm9kdWNlCGNvbnN0YW50BAVpbmdvdA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEGxvY2Fs
LmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAdwcmVzc2Vy
|src=
; Regular plates
; Regular plates
:global int craft_status
:global int craft_status
Line 574: Line 551:
tier = global.int.get("craft_tier:3.2")
tier = global.int.get("craft_tier:3.2")
count = global.double.get("craft_count:3.2")
count = global.double.get("craft_count:3.2")
gotoif(99, tier < 1 | tier > 10 | count < 1.0)
gotoif(99, tier < 1 {{!}} tier > 10 {{!}} count < 1.0)


global.int.set("craft_tier:ingot", tier)
global.int.set("craft_tier:ingot", tier)
Line 583: Line 560:
waitwhile(active("presser"))
waitwhile(active("presser"))
produce("ingot", tier, count, "presser")
produce("ingot", tier, count, "presser")
</syntaxhighlight>
}}
|}
 
 
====Dense plates (3)====
[[File:Dense gold plate.png|frameless]]
 
{| class="wikitable"
!Name
!Lines
!Code
|-
|-
|<syntaxhighlight lang="text">
|craft 3:3
CWNyYWZ0IDM6MgAAAAAAAAAACQAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
|14
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuMhBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
|{{AIScript
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My4yDmdlbmVyaWMuZ290
|code=
CWNyYWZ0IDM6MwAAAAAAAAAADgAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuMxBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My4zDmdlbmVyaWMuZ290
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
Y29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
Y29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
dGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
dGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/Dmdsb2Jh
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/EGxvY2Fs
bC5pbnQuc2V0CGNvbnN0YW50BBBjcmFmdF90aWVyOmluZ290DWxvY2FsLmludC5nZXQIY29uc3RhbnQE
LmRvdWJsZS5zZXQIY29uc3RhbnQEBnBsYXRlcxFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRv
BHRpZXIRZ2xvYmFsLmRvdWJsZS5zZXQIY29uc3RhbnQEEWNyYWZ0X2NvdW50OmluZ290EGxvY2FsLmRv
dWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25zdGFudAMA
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50E2dlbmVyaWMuZXhlY3V0ZXN5bmMIY29uc3RhbnQEC2NyYWZ0
AAAAAAAiQAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25z
IGluZ290DmdlbmVyaWMuZ290b2lmCGNvbnN0YW50AmMAAAAOY29tcGFyaXNvbi5pbnQOZ2xvYmFsLmlu
dGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3Rh
dC5nZXQIY29uc3RhbnQEDGNyYWZ0X3N0YXR1cwhjb25zdGFudAQBPghjb25zdGFudALHAAAAEWdlbmVy
bnQEC3BsYXRlLnN0YWNrDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIOZ2xvYmFsLmludC5zZXQI
aWMud2FpdHdoaWxlFmZhY3RvcnkubWFjaGluZS5hY3RpdmUIY29uc3RhbnQEB3ByZXNzZXIPZmFjdG9y
Y29uc3RhbnQEEGNyYWZ0X3RpZXI6aW5nb3QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchFnbG9i
eS5wcm9kdWNlCGNvbnN0YW50BAVpbmdvdA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEGxvY2Fs
YWwuZG91YmxlLnNldAhjb25zdGFudAQRY3JhZnRfY291bnQ6aW5nb3QRYXJpdGhtZXRpYy5kb3VibGUQ
LmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAdwcmVzc2Vy
bG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQGcGxhdGVzCGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91
 
YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoT
</syntaxhighlight>
ZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQFcGxhdGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQE
|}
dGllchNnZW5lcmljLmV4ZWN1dGVzeW5jCGNvbnN0YW50BAtjcmFmdCBpbmdvdA5nZW5lcmljLmdvdG9p
|}
Zghjb25zdGFudAJjAAAADmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BAxjcmFm
|-
dF9zdGF0dXMIY29uc3RhbnQEAT4IY29uc3RhbnQCxwAAAA5nZW5lcmljLmdvdG9pZghjb25zdGFudAIM
|3
AAAAEWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBnBsYXRlcwhjb25z
|dense plates
dGFudAQCPD0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0
[[File:Dense gold plate.png|frameless]]
X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVwbGF0ZQ1s
|
b2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdlbmVyaWMud2FpdHdoaWxlFmZhY3RvcnkubWFjaGlu
{| class="wikitable"
ZS5hY3RpdmUIY29uc3RhbnQEB3ByZXNzZXIPZmFjdG9yeS5wcm9kdWNlCGNvbnN0YW50BAVpbmdvdA1s
!Name
b2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5n
!Lines
ZXQIY29uc3RhbnQEBnBsYXRlcwhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91
!Code
YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMu
|-
Y291bnQIY29uc3RhbnQEBXBsYXRlDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQE
|craft 3:3
B3ByZXNzZXIRZ2VuZXJpYy53YWl0d2hpbGUPY29tcGFyaXNvbi5ib29sEWNvbXBhcmlzb24uZG91Ymxl
|14
E2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBXBsYXRlDWxvY2FsLmludC5nZXQIY29uc3RhbnQE
|
BHRpZXIIY29uc3RhbnQEATwQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQGcGxhdGVzCGNvbnN0YW50
{| class="wikitable mw-collapsible mw-collapsed"
BAF8FmZhY3RvcnkubWFjaGluZS5hY3RpdmUIY29uc3RhbnQEB3ByZXNzZXINZmFjdG9yeS5jcmFmdAhj
!
b25zdGFudAQLcGxhdGUuc3RhY2sNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchFhcml0aG1ldGlj
|-
LmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBLRFhcml0aG1l
|<syntaxhighlight lang="actionscript">
dGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0
; Dense plates
YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEC3BsYXRlLnN0YWNrDWxvY2FsLmludC5n
ZXQIY29uc3RhbnQEBHRpZXIPZmFjdG9yeS5wcm9kdWNlCGNvbnN0YW50BAtwbGF0ZS5zdGFjaw1sb2Nh
bC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNv
bnN0YW50BAdwcmVzc2Vy
|src=
; Dense plates
:global double craft_inventory
:global double craft_inventory
:local int tier
:local int tier
Line 631: Line 626:
tier = global.int.get("craft_tier:3.3")
tier = global.int.get("craft_tier:3.3")
count = global.double.get("craft_count:3.3")
count = global.double.get("craft_count:3.3")
gotoif(99, tier < 1 | tier > 10 | count < 1.0)
gotoif(99, tier < 1 {{!}} tier > 10 {{!}} count < 1.0)


plates = count * 9.0 - craft_inventory * count("plate.stack", tier)
plates = count * 9.0 - craft_inventory * count("plate.stack", tier)
Line 644: Line 639:
   produce("ingot", tier, plates - craft_inventory * count("plate", tier), "presser")
   produce("ingot", tier, plates - craft_inventory * count("plate", tier), "presser")


stacks: waitwhile(count("plate", tier) < plates | active("presser"))
stacks: waitwhile(count("plate", tier) < plates {{!}} active("presser"))
   craft("plate.stack", tier, count - craft_inventory * count("plate.stack", tier))
   craft("plate.stack", tier, count - craft_inventory * count("plate.stack", tier))
   produce("plate.stack", tier, count, "presser")
   produce("plate.stack", tier, count, "presser")
}}
|}


====Blocks (4)====
[[File:Gold block.png|frameless]]


</syntaxhighlight>
{| class="wikitable"
!Name
!Lines
!Code
|-
|-
|<syntaxhighlight lang="text">
|craft 3:4
CWNyYWZ0IDM6MwAAAAAAAAAADgAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
|10
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuMxBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
|{{AIScript
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My4zDmdlbmVyaWMuZ290
|code=
CWNyYWZ0IDM6NAAAAAAAAAAACgAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuNBBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My40DmdlbmVyaWMuZ290
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
Line 660: Line 666:
dGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
dGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/EGxvY2Fs
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/EGxvY2Fs
LmRvdWJsZS5zZXQIY29uc3RhbnQEBnBsYXRlcxFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRv
LmRvdWJsZS5zZXQIY29uc3RhbnQEDnBsYXRlc3BlcmJsb2NrEWFyaXRobWV0aWMuZG91YmxlCGNvbnN0
dWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25zdGFudAMA
YW50AwAAAAAAABBACGNvbnN0YW50BAEqDGRvdWJsZS5yb3VuZBFhcml0aG1ldGljLmRvdWJsZRFhcml0
AAAAAAAiQAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25z
aG1ldGljLmRvdWJsZQhjb25zdGFudAMAADBkBQsfQghjb25zdGFudAQBLxFhcml0aG1ldGljLmRvdWJs
dGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3Rh
ZQhjb25zdGFudAMAAAAAAAAkQAhjb25zdGFudAQDcG93A2kyZA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50
bnQEC3BsYXRlLnN0YWNrDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIOZ2xvYmFsLmludC5zZXQI
BAR0aWVyCGNvbnN0YW50BANtb2QIY29uc3RhbnQDAAAAAAAAJEAOZ2xvYmFsLmludC5zZXQIY29uc3Rh
Y29uc3RhbnQEEGNyYWZ0X3RpZXI6aW5nb3QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchFnbG9i
bnQEDmNyYWZ0X3RpZXI6My4zDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIRZ2xvYmFsLmRvdWJs
YWwuZG91YmxlLnNldAhjb25zdGFudAQRY3JhZnRfY291bnQ6aW5nb3QRYXJpdGhtZXRpYy5kb3VibGUQ
ZS5zZXQIY29uc3RhbnQED2NyYWZ0X2NvdW50OjMuMxFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGlj
bG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQGcGxhdGVzCGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91
LmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKhBsb2NhbC5k
YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoT
b3VibGUuZ2V0CGNvbnN0YW50BA5wbGF0ZXNwZXJibG9jawhjb25zdGFudAQBLRFhcml0aG1ldGljLmRv
ZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQFcGxhdGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQE
dWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEq
dGllchNnZW5lcmljLmV4ZWN1dGVzeW5jCGNvbnN0YW50BAtjcmFmdCBpbmdvdA5nZW5lcmljLmdvdG9p
E2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEC3BsYXRlLmRlbnNlDWxvY2FsLmludC5nZXQIY29u
Zghjb25zdGFudAJjAAAADmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BAxjcmFm
c3RhbnQEBHRpZXITZ2VuZXJpYy5leGVjdXRlc3luYwhjb25zdGFudAQJY3JhZnQgMzozDmdlbmVyaWMu
dF9zdGF0dXMIY29uc3RhbnQEAT4IY29uc3RhbnQCxwAAAA5nZW5lcmljLmdvdG9pZghjb25zdGFudAIM
Z290b2lmCGNvbnN0YW50AmMAAAAOY29tcGFyaXNvbi5pbnQOZ2xvYmFsLmludC5nZXQIY29uc3RhbnQE
AAAAEWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBnBsYXRlcwhjb25z
DGNyYWZ0X3N0YXR1cwhjb25zdGFudAQBPghjb25zdGFudALHAAAAEWdlbmVyaWMud2FpdHdoaWxlEWNv
dGFudAQCPD0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0
bXBhcmlzb24uZG91YmxlE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEC3BsYXRlLmRlbnNlDWxv
X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVwbGF0ZQ1s
Y2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEATwRYXJpdGhtZXRpYy5kb3VibGUQbG9j
b2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdlbmVyaWMud2FpdHdoaWxlFmZhY3RvcnkubWFjaGlu
YWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEASoQbG9jYWwuZG91YmxlLmdldAhj
ZS5hY3RpdmUIY29uc3RhbnQEB3ByZXNzZXIPZmFjdG9yeS5wcm9kdWNlCGNvbnN0YW50BAVpbmdvdA1s
b25zdGFudAQOcGxhdGVzcGVyYmxvY2sNZmFjdG9yeS5jcmFmdAhjb25zdGFudAQFYmxvY2sNbG9jYWwu
b2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5n
aW50LmdldAhjb25zdGFudAQEdGllchBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudA==
ZXQIY29uc3RhbnQEBnBsYXRlcwhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91
|src=
YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMu
; Blocks
Y291bnQIY29uc3RhbnQEBXBsYXRlDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQE
:global double craft_inventory
B3ByZXNzZXIRZ2VuZXJpYy53YWl0d2hpbGUPY29tcGFyaXNvbi5ib29sEWNvbXBhcmlzb24uZG91Ymxl
:local int tier
E2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBXBsYXRlDWxvY2FsLmludC5nZXQIY29uc3RhbnQE
:local double count
BHRpZXIIY29uc3RhbnQEATwQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQGcGxhdGVzCGNvbnN0YW50
:local double platesperblock
BAF8FmZhY3RvcnkubWFjaGluZS5hY3RpdmUIY29uc3RhbnQEB3ByZXNzZXINZmFjdG9yeS5jcmFmdAhj
:local double stacks
b25zdGFudAQLcGxhdGUuc3RhY2sNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchFhcml0aG1ldGlj
:local double plates
LmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBLRFhcml0aG1l
 
dGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0
tier = global.int.get("craft_tier:3.4")
YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEC3BsYXRlLnN0YWNrDWxvY2FsLmludC5n
count = global.double.get("craft_count:3.4")
ZXQIY29uc3RhbnQEBHRpZXIPZmFjdG9yeS5wcm9kdWNlCGNvbnN0YW50BAtwbGF0ZS5zdGFjaw1sb2Nh
gotoif(99, tier < 1 {{!}} tier > 10 {{!}} count < 1.0)
bC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNv
 
bnN0YW50BAdwcmVzc2Vy
plates: platesperblock = 4.0 * round((33332222220.0 / (10.0 ^ i2d(tier))) % 10.0)
  global.int.set("craft_tier:3.3", tier)
  global.double.set("craft_count:3.3", count * platesperblock - craft_inventory * count("plate.dense", tier))
  executesync("craft 3:3")
gotoif(99, global.int.get("craft_status") > 199)


</syntaxhighlight>
waitwhile(count("plate.dense", tier) < count * platesperblock)
craft("block", tier, count)
}}
|}
|}
|}
 
|-
 
|4
====Cables (5)====
|blocks
[[File:Golden cable.png|frameless]]
[[File:Gold block.png|frameless]]
 
|
{| class="wikitable"
{| class="wikitable"
!Name
!Name
Line 707: Line 718:
!Code
!Code
|-
|-
|craft 3:4
|craft 3:5
|10
|9
|
|{{AIScript
{| class="wikitable mw-collapsible mw-collapsed"
|code=
!
CWNyYWZ0IDM6NQAAAAAAAAAACQAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
|-
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuNRBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
|<syntaxhighlight lang="actionscript">
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My41DmdlbmVyaWMuZ290
; Blocks
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
Y29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
dGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/Dmdsb2Jh
bC5pbnQuc2V0CGNvbnN0YW50BBBjcmFmdF90aWVyOmluZ290DWxvY2FsLmludC5nZXQIY29uc3RhbnQE
BHRpZXIRZ2xvYmFsLmRvdWJsZS5zZXQIY29uc3RhbnQEEWNyYWZ0X2NvdW50OmluZ290EWFyaXRobWV0
aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEvCGNvbnN0
YW50AwAAAAAAAABAE2dlbmVyaWMuZXhlY3V0ZXN5bmMIY29uc3RhbnQEC2NyYWZ0IGluZ290DmdlbmVy
aWMuZ290b2lmCGNvbnN0YW50AmMAAAAOY29tcGFyaXNvbi5pbnQOZ2xvYmFsLmludC5nZXQIY29uc3Rh
bnQEDGNyYWZ0X3N0YXR1cwhjb25zdGFudAQBPghjb25zdGFudALHAAAAEWdlbmVyaWMud2FpdHdoaWxl
FmZhY3RvcnkubWFjaGluZS5hY3RpdmUIY29uc3RhbnQECHJlZmluZXJ5D2ZhY3RvcnkucHJvZHVjZQhj
b25zdGFudAQFaW5nb3QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcgtkb3VibGUuY2VpbBFhcml0
aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBLwhj
b25zdGFudAMAAAAAAAAAQAhjb25zdGFudAQIcmVmaW5lcnk=
|src=
; Cables
:global double craft_inventory
:global double craft_inventory
:local int tier
:local int tier
:local double count
:local double count
:local double platesperblock
:local double stacks
:local double plates


tier = global.int.get("craft_tier:3.4")
tier = global.int.get("craft_tier:3.5")
count = global.double.get("craft_count:3.4")
count = global.double.get("craft_count:3.5")
gotoif(99, tier < 1 | tier > 10 | count < 1.0)
gotoif(99, tier < 1 {{!}} tier > 10 {{!}} count < 1.0)
 
global.int.set("craft_tier:ingot", tier)
global.double.set("craft_count:ingot", count / 2.0)
executesync("craft ingot")
gotoif(99, global.int.get("craft_status") > 199)
 
waitwhile(active("refinery"))
produce("ingot", tier, ceil(count / 2.0), "refinery")
}}
|}


plates: platesperblock = 4.0 * round((33332222220.0 / (10.0 ^ i2d(tier))) % 10.0)
  global.int.set("craft_tier:3.3", tier)
  global.double.set("craft_count:3.3", count * platesperblock - craft_inventory * count("plate.dense", tier))
  executesync("craft 3:3")
gotoif(99, global.int.get("craft_status") > 199)


waitwhile(count("plate.dense", tier) < count * platesperblock)
====Insulated cables (6)====
craft("block", tier, count)
[[File:Golden insulated cable.png|frameless]]
</syntaxhighlight>
 
|-
{| class="wikitable"
|<syntaxhighlight lang="text">
!Name
CWNyYWZ0IDM6NAAAAAAAAAAACgAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
!Lines
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuNBBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
!Code
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My40DmdlbmVyaWMuZ290
|-
|craft 3:6
|21
|{{AIScript
|code=
CWNyYWZ0IDM6NgAAAAAAAAAAFQAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuNhBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My42DmdlbmVyaWMuZ290
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
Line 745: Line 781:
dGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
dGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/EGxvY2Fs
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/EGxvY2Fs
LmRvdWJsZS5zZXQIY29uc3RhbnQEDnBsYXRlc3BlcmJsb2NrEWFyaXRobWV0aWMuZG91YmxlCGNvbnN0
LmRvdWJsZS5zZXQIY29uc3RhbnQEBmNhYmxlcxFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUu
YW50AwAAAAAAABBACGNvbnN0YW50BAEqDGRvdWJsZS5yb3VuZBFhcml0aG1ldGljLmRvdWJsZRFhcml0
Z2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKgpkb3VibGUubWF4CmRvdWJsZS5tYXgIY29uc3Rh
aG1ldGljLmRvdWJsZQhjb25zdGFudAMAADBkBQsfQghjb25zdGFudAQBLxFhcml0aG1ldGljLmRvdWJs
bnQDAAAAAAAA8D8RYXJpdGhtZXRpYy5kb3VibGUDaTJkDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRp
ZQhjb25zdGFudAMAAAAAAAAkQAhjb25zdGFudAQDcG93A2kyZA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50
ZXIIY29uc3RhbnQEAS0IY29uc3RhbnQDAAAAAAAAAEAKZG91YmxlLm1heBFhcml0aG1ldGljLmRvdWJs
BAR0aWVyCGNvbnN0YW50BANtb2QIY29uc3RhbnQDAAAAAAAAJEAOZ2xvYmFsLmludC5zZXQIY29uc3Rh
ZQhjb25zdGFudAMAAAAAAAAkQAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZQhjb25zdGFudAMA
bnQEDmNyYWZ0X3RpZXI6My4zDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIRZ2xvYmFsLmRvdWJs
AAAAAAAUQAhjb25zdGFudAQBKhFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZQNpMmQN
ZS5zZXQIY29uc3RhbnQED2NyYWZ0X2NvdW50OjMuMxFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGlj
bG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLQhjb25zdGFudAMAAAAAAAAgQAhj
LmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKhBsb2NhbC5k
b25zdGFudAQDcG93CGNvbnN0YW50AwAAAAAAAABAC2RvdWJsZS5jZWlsEWFyaXRobWV0aWMuZG91Ymxl
b3VibGUuZ2V0CGNvbnN0YW50BA5wbGF0ZXNwZXJibG9jawhjb25zdGFudAQBLRFhcml0aG1ldGljLmRv
EWFyaXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlA2kyZA1sb2NhbC5pbnQuZ2V0CGNvbnN0
dWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEq
YW50BAR0aWVyCGNvbnN0YW50BAEtCGNvbnN0YW50AwAAAAAAAPA/CGNvbnN0YW50BANwb3cIY29uc3Rh
E2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEC3BsYXRlLmRlbnNlDWxvY2FsLmludC5nZXQIY29u
bnQDAAAAAAAA+D8IY29uc3RhbnQEAS0IY29uc3RhbnQDAAAAAAAAJkAQbG9jYWwuZG91YmxlLnNldAhj
c3RhbnQEBHRpZXITZ2VuZXJpYy5leGVjdXRlc3luYwhjb25zdGFudAQJY3JhZnQgMzozDmdlbmVyaWMu
b25zdGFudAQGcnViYmVyEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQE
Z290b2lmCGNvbnN0YW50AmMAAAAOY29tcGFyaXNvbi5pbnQOZ2xvYmFsLmludC5nZXQIY29uc3RhbnQE
BWNvdW50CGNvbnN0YW50BAEqCmRvdWJsZS5tYXgIY29uc3RhbnQDAAAAAAAAAAARYXJpdGhtZXRpYy5k
DGNyYWZ0X3N0YXR1cwhjb25zdGFudAQBPghjb25zdGFudALHAAAAEWdlbmVyaWMud2FpdHdoaWxlEWNv
b3VibGURYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUIY29uc3RhbnQDAAAAAAAAAEAI
bXBhcmlzb24uZG91YmxlE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEC3BsYXRlLmRlbnNlDWxv
Y29uc3RhbnQEASoDaTJkDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEAS0IY29u
Y2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEATwRYXJpdGhtZXRpYy5kb3VibGUQbG9j
c3RhbnQDAAAAAAAAEEAIY29uc3RhbnQEAS0KZG91YmxlLm1heAhjb25zdGFudAMAAAAAAAAAABFhcml0
YWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEASoQbG9jYWwuZG91YmxlLmdldAhj
aG1ldGljLmRvdWJsZQhjb25zdGFudAMAAAAAAAAAQAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJs
b25zdGFudAQOcGxhdGVzcGVyYmxvY2sNZmFjdG9yeS5jcmFmdAhjb25zdGFudAQFYmxvY2sNbG9jYWwu
ZRFhcml0aG1ldGljLmRvdWJsZQNpMmQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFu
aW50LmdldAhjb25zdGFudAQEdGllchBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudA==
dAQBLQhjb25zdGFudAMAAAAAAAAgQAhjb25zdGFudAQBKhFhcml0aG1ldGljLmRvdWJsZQNpMmQNbG9j
 
YWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLQhjb25zdGFudAMAAAAAAAAiQA5nZW5l
</syntaxhighlight>
cmljLmdvdG9pZghjb25zdGFudAIKAAAAEWNvbXBhcmlzb24uZG91YmxlE2ZhY3RvcnkuaXRlbXMuY291
|}
bnQIY29uc3RhbnQEBnJ1YmJlcghjb25zdGFudAIBAAAACGNvbnN0YW50BAI+PRFhcml0aG1ldGljLmRv
|}
dWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAZydWJiZXIIY29uc3RhbnQEAS0RYXJpdGhtZXRp
|-
Yy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFu
|5
dAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAxwbGF0ZS5ydWJiZXIIY29uc3RhbnQCAQAA
|cables
AA5nbG9iYWwuaW50LnNldAhjb25zdGFudAQMY3JhZnRfc3RhdHVzCGNvbnN0YW50ApwBAAAOZ2xvYmFs
[[File:Golden cable.png|frameless]]
LmludC5zZXQIY29uc3RhbnQEEmNyYWZ0X3JlcXVpcmVfdGllcghjb25zdGFudAL/////EWdsb2JhbC5k
|
b3VibGUuc2V0CGNvbnN0YW50BBNjcmFmdF9yZXF1aXJlX2NvdW50EGxvY2FsLmRvdWJsZS5nZXQIY29u
{| class="wikitable"
c3RhbnQEBnJ1YmJlcg5nbG9iYWwuaW50LnNldAhjb25zdGFudAQQY3JhZnRfdGllcjppbmdvdA1sb2Nh
!Name
bC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdsb2JhbC5kb3VibGUuc2V0CGNvbnN0YW50BBFjcmFmdF9j
!Lines
b3VudDppbmdvdBFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUu
!Code
Z2V0CGNvbnN0YW50BAZjYWJsZXMIY29uc3RhbnQEAS0TZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFu
|-
dAQFY2FibGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLwhjb25zdGFudAMA
|craft 3:5
AAAAAAAAQBNnZW5lcmljLmV4ZWN1dGVzeW5jCGNvbnN0YW50BAtjcmFmdCBpbmdvdA5nZW5lcmljLmdv
|9
dG9pZghjb25zdGFudAJjAAAADmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BAxj
|
cmFmdF9zdGF0dXMIY29uc3RhbnQEAT4IY29uc3RhbnQCxwAAAA5nZW5lcmljLmdvdG9pZghjb25zdGFu
{| class="wikitable mw-collapsible mw-collapsed"
dAIRAAAAEWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBmNhYmxlcwhj
!
b25zdGFudAQCPD0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2Ny
|-
YWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVjYWJs
|<syntaxhighlight lang="actionscript">
ZQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdlbmVyaWMud2FpdHdoaWxlFmZhY3RvcnkubWFj
; Cables
aGluZS5hY3RpdmUIY29uc3RhbnQECHJlZmluZXJ5D2ZhY3RvcnkucHJvZHVjZQhjb25zdGFudAQFaW5n
:global double craft_inventory
b3QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcgtkb3VibGUuY2VpbBFhcml0aG1ldGljLmRvdWJs
:local int tier
ZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAZjYWJsZXMIY29uc3Rh
:local double count
bnQEAS0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2lu
 
dmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVjYWJsZQ1sb2Nh
tier = global.int.get("craft_tier:3.5")
bC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAEvCGNvbnN0YW50AwAAAAAAAABACGNvbnN0
count = global.double.get("craft_count:3.5")
YW50BAhyZWZpbmVyeQ5nZW5lcmljLmdvdG9pZghjb25zdGFudAIUAAAAEWNvbXBhcmlzb24uZG91Ymxl
gotoif(99, tier < 1 | tier > 10 | count < 1.0)
EGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBnJ1YmJlcghjb25zdGFudAQCPD0TZmFjdG9yeS5pdGVt
 
cy5jb3VudAhjb25zdGFudAQMcGxhdGUucnViYmVyCGNvbnN0YW50AgEAAAARZ2VuZXJpYy53YWl0d2hp
global.int.set("craft_tier:ingot", tier)
bGUWZmFjdG9yeS5tYWNoaW5lLmFjdGl2ZQhjb25zdGFudAQHcHJlc3Nlcg9mYWN0b3J5LnByb2R1Y2UI
global.double.set("craft_count:ingot", count / 2.0)
Y29uc3RhbnQEBnJ1YmJlcg1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWFyaXRobWV0aWMuZG91
executesync("craft ingot")
YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBnJ1YmJlcghjb25zdGFudAQBLRFhcml0aG1ldGlj
gotoif(99, global.int.get("craft_status") > 199)
LmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50
 
BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEDHBsYXRlLnJ1YmJlcghjb25zdGFudAIBAAAA
waitwhile(active("refinery"))
CGNvbnN0YW50BAdwcmVzc2VyEWdlbmVyaWMud2FpdHVudGlsD2NvbXBhcmlzb24uYm9vbBFjb21wYXJp
produce("ingot", tier, ceil(count / 2.0), "refinery")
c29uLmRvdWJsZRNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVjYWJsZQ1sb2NhbC5pbnQuZ2V0
</syntaxhighlight>
CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAI+PRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAZjYWJs
|-
ZXMIY29uc3RhbnQEASYRY29tcGFyaXNvbi5kb3VibGUTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFu
|<syntaxhighlight lang="text">
dAQMcGxhdGUucnViYmVyCGNvbnN0YW50AgEAAAAIY29uc3RhbnQEAj49EGxvY2FsLmRvdWJsZS5nZXQI
CWNyYWZ0IDM6NQAAAAAAAAAACQAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
Y29uc3RhbnQEBnJ1YmJlcg1mYWN0b3J5LmNyYWZ0CGNvbnN0YW50BA9jYWJsZS5pbnN1bGF0ZWQNbG9j
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuNRBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
YWwuaW50LmdldAhjb25zdGFudAQEdGllchBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudA==
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My41DmdlbmVyaWMuZ290
|src=
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
Y29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
dGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/Dmdsb2Jh
bC5pbnQuc2V0CGNvbnN0YW50BBBjcmFmdF90aWVyOmluZ290DWxvY2FsLmludC5nZXQIY29uc3RhbnQE
BHRpZXIRZ2xvYmFsLmRvdWJsZS5zZXQIY29uc3RhbnQEEWNyYWZ0X2NvdW50OmluZ290EWFyaXRobWV0
aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEvCGNvbnN0
YW50AwAAAAAAAABAE2dlbmVyaWMuZXhlY3V0ZXN5bmMIY29uc3RhbnQEC2NyYWZ0IGluZ290DmdlbmVy
aWMuZ290b2lmCGNvbnN0YW50AmMAAAAOY29tcGFyaXNvbi5pbnQOZ2xvYmFsLmludC5nZXQIY29uc3Rh
bnQEDGNyYWZ0X3N0YXR1cwhjb25zdGFudAQBPghjb25zdGFudALHAAAAEWdlbmVyaWMud2FpdHdoaWxl
FmZhY3RvcnkubWFjaGluZS5hY3RpdmUIY29uc3RhbnQECHJlZmluZXJ5D2ZhY3RvcnkucHJvZHVjZQhj
b25zdGFudAQFaW5nb3QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcgtkb3VibGUuY2VpbBFhcml0
aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBLwhj
b25zdGFudAMAAAAAAAAAQAhjb25zdGFudAQIcmVmaW5lcnk=
 
</syntaxhighlight>
|}
|}
|-
|6
|insulated cables
[[File:Golden insulated cable.png|frameless]]
|
{| class="wikitable"
!Name
!Lines
!Code
|-
|craft 3:6
|21
|
{| class="wikitable mw-collapsible mw-collapsed"
!
|-
|<syntaxhighlight lang="actionscript">
; Insulated cables
; Insulated cables
:global double craft_inventory
:global double craft_inventory
Line 852: Line 852:
tier = global.int.get("craft_tier:3.6")
tier = global.int.get("craft_tier:3.6")
count = global.double.get("craft_count:3.6")
count = global.double.get("craft_count:3.6")
gotoif(99, tier < 1 | tier > 10 | count < 1.0)
gotoif(99, tier < 1 {{!}} tier > 10 {{!}} count < 1.0)


cables = count * max(max(1.0, i2d(tier) - 2.0), max(10.0 - (5.0 * ((i2d(tier) - 8.0) ^ 2.0)), ceil(((i2d(tier) - 1.0) ^ 1.5) - 11.0)))
cables = count * max(max(1.0, i2d(tier) - 2.0), max(10.0 - (5.0 * ((i2d(tier) - 8.0) ^ 2.0)), ceil(((i2d(tier) - 1.0) ^ 1.5) - 11.0)))
Line 877: Line 877:
craft: waituntil(count("cable", tier) >= cables & count("plate.rubber", 1) >= rubber)
craft: waituntil(count("cable", tier) >= cables & count("plate.rubber", 1) >= rubber)
craft("cable.insulated", tier, count)
craft("cable.insulated", tier, count)
}}
|}


</syntaxhighlight>
====Rods (7)====
|-
[[File:Golden rod.png|frameless]]
|<syntaxhighlight lang="text">
 
CWNyYWZ0IDM6NgAAAAAAAAAAFQAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
{| class="wikitable"
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuNhBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
!Name
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My42DmdlbmVyaWMuZ290
!Lines
!Code
|-
|craft 3:7
|9
|{{AIScript
|code=
CWNyYWZ0IDM6NwAAAAAAAAAACQAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuNxBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My43DmdlbmVyaWMuZ290
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
Y29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
Y29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
dGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
dGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/EGxvY2Fs
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/Dmdsb2Jh
LmRvdWJsZS5zZXQIY29uc3RhbnQEBmNhYmxlcxFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUu
bC5pbnQuc2V0CGNvbnN0YW50BBBjcmFmdF90aWVyOmluZ290DWxvY2FsLmludC5nZXQIY29uc3RhbnQE
Z2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKgpkb3VibGUubWF4CmRvdWJsZS5tYXgIY29uc3Rh
BHRpZXIRZ2xvYmFsLmRvdWJsZS5zZXQIY29uc3RhbnQEEWNyYWZ0X2NvdW50OmluZ290EWFyaXRobWV0
bnQDAAAAAAAA8D8RYXJpdGhtZXRpYy5kb3VibGUDaTJkDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRp
aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEvCGNvbnN0
ZXIIY29uc3RhbnQEAS0IY29uc3RhbnQDAAAAAAAAAEAKZG91YmxlLm1heBFhcml0aG1ldGljLmRvdWJs
YW50AwAAAAAAAABAE2dlbmVyaWMuZXhlY3V0ZXN5bmMIY29uc3RhbnQEC2NyYWZ0IGluZ290DmdlbmVy
ZQhjb25zdGFudAMAAAAAAAAkQAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZQhjb25zdGFudAMA
aWMuZ290b2lmCGNvbnN0YW50AmMAAAAOY29tcGFyaXNvbi5pbnQOZ2xvYmFsLmludC5nZXQIY29uc3Rh
AAAAAAAUQAhjb25zdGFudAQBKhFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZQNpMmQN
bnQEDGNyYWZ0X3N0YXR1cwhjb25zdGFudAQBPghjb25zdGFudALHAAAAEWdlbmVyaWMud2FpdHdoaWxl
bG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLQhjb25zdGFudAMAAAAAAAAgQAhj
FmZhY3RvcnkubWFjaGluZS5hY3RpdmUIY29uc3RhbnQECHJlZmluZXJ5D2ZhY3RvcnkucHJvZHVjZQhj
b25zdGFudAQDcG93CGNvbnN0YW50AwAAAAAAAABAC2RvdWJsZS5jZWlsEWFyaXRobWV0aWMuZG91Ymxl
b25zdGFudAQFaW5nb3QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcgtkb3VibGUuY2VpbBFhcml0
EWFyaXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlA2kyZA1sb2NhbC5pbnQuZ2V0CGNvbnN0
aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBLwhj
YW50BAR0aWVyCGNvbnN0YW50BAEtCGNvbnN0YW50AwAAAAAAAPA/CGNvbnN0YW50BANwb3cIY29uc3Rh
b25zdGFudAMAAAAAAAAAQAhjb25zdGFudAQGc2hhcGVy
bnQDAAAAAAAA+D8IY29uc3RhbnQEAS0IY29uc3RhbnQDAAAAAAAAJkAQbG9jYWwuZG91YmxlLnNldAhj
|src=
b25zdGFudAQGcnViYmVyEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQE
; Rods
BWNvdW50CGNvbnN0YW50BAEqCmRvdWJsZS5tYXgIY29uc3RhbnQDAAAAAAAAAAARYXJpdGhtZXRpYy5k
:global double craft_inventory
b3VibGURYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUIY29uc3RhbnQDAAAAAAAAAEAI
:local int tier
Y29uc3RhbnQEASoDaTJkDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEAS0IY29u
:local double count
c3RhbnQDAAAAAAAAEEAIY29uc3RhbnQEAS0KZG91YmxlLm1heAhjb25zdGFudAMAAAAAAAAAABFhcml0
 
aG1ldGljLmRvdWJsZQhjb25zdGFudAMAAAAAAAAAQAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJs
tier = global.int.get("craft_tier:3.7")
ZRFhcml0aG1ldGljLmRvdWJsZQNpMmQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFu
count = global.double.get("craft_count:3.7")
dAQBLQhjb25zdGFudAMAAAAAAAAgQAhjb25zdGFudAQBKhFhcml0aG1ldGljLmRvdWJsZQNpMmQNbG9j
gotoif(99, tier < 1 {{!}} tier > 10 {{!}} count < 1.0)
YWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLQhjb25zdGFudAMAAAAAAAAiQA5nZW5l
 
cmljLmdvdG9pZghjb25zdGFudAIKAAAAEWNvbXBhcmlzb24uZG91YmxlE2ZhY3RvcnkuaXRlbXMuY291
global.int.set("craft_tier:ingot", tier)
bnQIY29uc3RhbnQEBnJ1YmJlcghjb25zdGFudAIBAAAACGNvbnN0YW50BAI+PRFhcml0aG1ldGljLmRv
global.double.set("craft_count:ingot", count / 2.0)
dWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAZydWJiZXIIY29uc3RhbnQEAS0RYXJpdGhtZXRp
executesync("craft ingot")
Yy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFu
gotoif(99, global.int.get("craft_status") > 199)
dAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAxwbGF0ZS5ydWJiZXIIY29uc3RhbnQCAQAA
 
AA5nbG9iYWwuaW50LnNldAhjb25zdGFudAQMY3JhZnRfc3RhdHVzCGNvbnN0YW50ApwBAAAOZ2xvYmFs
waitwhile(active("refinery"))
LmludC5zZXQIY29uc3RhbnQEEmNyYWZ0X3JlcXVpcmVfdGllcghjb25zdGFudAL/////EWdsb2JhbC5k
produce("ingot", tier, ceil(count / 2.0), "shaper")
b3VibGUuc2V0CGNvbnN0YW50BBNjcmFmdF9yZXF1aXJlX2NvdW50EGxvY2FsLmRvdWJsZS5nZXQIY29u
}}
c3RhbnQEBnJ1YmJlcg5nbG9iYWwuaW50LnNldAhjb25zdGFudAQQY3JhZnRfdGllcjppbmdvdA1sb2Nh
|}
bC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdsb2JhbC5kb3VibGUuc2V0CGNvbnN0YW50BBFjcmFmdF9j
 
b3VudDppbmdvdBFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUu
 
Z2V0CGNvbnN0YW50BAZjYWJsZXMIY29uc3RhbnQEAS0TZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFu
====Motors (8)====
dAQFY2FibGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLwhjb25zdGFudAMA
[[File:Golden motor.png|frameless]]
AAAAAAAAQBNnZW5lcmljLmV4ZWN1dGVzeW5jCGNvbnN0YW50BAtjcmFmdCBpbmdvdA5nZW5lcmljLmdv
 
dG9pZghjb25zdGFudAJjAAAADmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BAxj
{| class="wikitable"
cmFmdF9zdGF0dXMIY29uc3RhbnQEAT4IY29uc3RhbnQCxwAAAA5nZW5lcmljLmdvdG9pZghjb25zdGFu
!Name
dAIRAAAAEWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBmNhYmxlcwhj
!Lines
b25zdGFudAQCPD0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2Ny
!Code
YWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVjYWJs
|-
ZQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdlbmVyaWMud2FpdHdoaWxlFmZhY3RvcnkubWFj
|craft 3:8
aGluZS5hY3RpdmUIY29uc3RhbnQECHJlZmluZXJ5D2ZhY3RvcnkucHJvZHVjZQhjb25zdGFudAQFaW5n
|20
b3QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcgtkb3VibGUuY2VpbBFhcml0aG1ldGljLmRvdWJs
|{{AIScript
ZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAZjYWJsZXMIY29uc3Rh
|code=
bnQEAS0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2lu
CWNyYWZ0IDM6OAAAAAAAAAAAFAAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
dmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVjYWJsZQ1sb2Nh
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuOBBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
bC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAEvCGNvbnN0YW50AwAAAAAAAABACGNvbnN0
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My44DmdlbmVyaWMuZ290
YW50BAhyZWZpbmVyeQ5nZW5lcmljLmdvdG9pZghjb25zdGFudAIUAAAAEWNvbXBhcmlzb24uZG91Ymxl
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
EGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBnJ1YmJlcghjb25zdGFudAQCPD0TZmFjdG9yeS5pdGVt
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
cy5jb3VudAhjb25zdGFudAQMcGxhdGUucnViYmVyCGNvbnN0YW50AgEAAAARZ2VuZXJpYy53YWl0d2hp
Y29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
bGUWZmFjdG9yeS5tYWNoaW5lLmFjdGl2ZQhjb25zdGFudAQHcHJlc3Nlcg9mYWN0b3J5LnByb2R1Y2UI
dGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
Y29uc3RhbnQEBnJ1YmJlcg1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWFyaXRobWV0aWMuZG91
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/EGxvY2Fs
YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBnJ1YmJlcghjb25zdGFudAQBLRFhcml0aG1ldGlj
LmRvdWJsZS5zZXQIY29uc3RhbnQEBHJvZHMRYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3Vi
LmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50
bGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEASoIY29uc3RhbnQDAAAA
BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEDHBsYXRlLnJ1YmJlcghjb25zdGFudAIBAAAA
AAAAAEAIY29uc3RhbnQEASsKZG91YmxlLm1heAhjb25zdGFudAMAAAAAAAAAAAtkb3VibGUuY2VpbBFh
CGNvbnN0YW50BAdwcmVzc2VyEWdlbmVyaWMud2FpdHVudGlsD2NvbXBhcmlzb24uYm9vbBFjb21wYXJp
cml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50
c29uLmRvdWJsZRNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVjYWJsZQ1sb2NhbC5pbnQuZ2V0
BAVjb3VudAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25z
CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAI+PRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAZjYWJs
dGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3Rh
ZXMIY29uc3RhbnQEASYRY29tcGFyaXNvbi5kb3VibGUTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFu
bnQEBXNjcmV3DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEAS8IY29uc3RhbnQD
dAQMcGxhdGUucnViYmVyCGNvbnN0YW50AgEAAAAIY29uc3RhbnQEAj49EGxvY2FsLmRvdWJsZS5nZXQI
AAAAAAAAEEAOZ2VuZXJpYy5nb3RvaWYIY29uc3RhbnQCCQAAABFjb21wYXJpc29uLmRvdWJsZRBsb2Nh
Y29uc3RhbnQEBnJ1YmJlcg1mYWN0b3J5LmNyYWZ0CGNvbnN0YW50BA9jYWJsZS5pbnN1bGF0ZWQNbG9j
bC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQCPD0TZmFjdG9yeS5pdGVtcy5jb3Vu
YWwuaW50LmdldAhjb25zdGFudAQEdGllchBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudA==
dAhjb25zdGFudAQGcnViYmVyCGNvbnN0YW50AgEAAAAOZ2xvYmFsLmludC5zZXQIY29uc3RhbnQEDGNy
 
YWZ0X3N0YXR1cwhjb25zdGFudAKcAQAADmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BBJjcmFmdF9yZXF1
</syntaxhighlight>
aXJlX3RpZXIIY29uc3RhbnQC/////xFnbG9iYWwuZG91YmxlLnNldAhjb25zdGFudAQTY3JhZnRfcmVx
|}
dWlyZV9jb3VudBBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudA5nbG9iYWwuaW50LnNldAhj
|}
b25zdGFudAQQY3JhZnRfdGllcjppbmdvdA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdsb2Jh
|-
bC5kb3VibGUuc2V0CGNvbnN0YW50BBFjcmFmdF9jb3VudDppbmdvdBFhcml0aG1ldGljLmRvdWJsZRFh
|7
cml0aG1ldGljLmRvdWJsZQpkb3VibGUubWF4CGNvbnN0YW50AwAAAAAAAAAAC2RvdWJsZS5jZWlsEWFy
|rods
aXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQE
[[File:Golden rod.png|frameless]]
BHJvZHMIY29uc3RhbnQEAS0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3Rh
|
bnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50
{| class="wikitable"
BANyb2QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLwhjb25zdGFudAMAAAAA
!Name
AAAAQAhjb25zdGFudAQBKwpkb3VibGUubWF4CGNvbnN0YW50AwAAAAAAAAAAC2RvdWJsZS5jZWlsEWFy
!Lines
aXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQE
!Code
BWNvdW50CGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0
|-
YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoRYXJpdGhtZXRpYy5kb3VibGUTZmFjdG9yeS5p
|craft 3:7
dGVtcy5jb3VudAhjb25zdGFudAQFY2FibGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
|9
dGFudAQBKxNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAR3aXJlDWxvY2FsLmludC5nZXQIY29u
|
c3RhbnQEBHRpZXIIY29uc3RhbnQEAS8IY29uc3RhbnQDAAAAAAAAAEAIY29uc3RhbnQEASsKZG91Ymxl
{| class="wikitable mw-collapsible mw-collapsed"
Lm1heAhjb25zdGFudAMAAAAAAAAAABFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBs
!
b2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25zdGFudAMAAAAAAAAQ
|-
QAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQP
|<syntaxhighlight lang="actionscript">
Y3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBXBs
; Rods
YXRlDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXITZ2VuZXJpYy5leGVjdXRlc3luYwhjb25zdGFu
:global double craft_inventory
dAQLY3JhZnQgaW5nb3QOZ2VuZXJpYy5nb3RvaWYIY29uc3RhbnQCYwAAAA5jb21wYXJpc29uLmludA5n
:local int tier
bG9iYWwuaW50LmdldAhjb25zdGFudAQMY3JhZnRfc3RhdHVzCGNvbnN0YW50BAE+CGNvbnN0YW50AscA
:local double count
AAAOZ2xvYmFsLmludC5zZXQIY29uc3RhbnQEEGNyYWZ0X3N0YXR1czozLjgIY29uc3RhbnQCAQAAAA9n
 
ZW5lcmljLmV4ZWN1dGUIY29uc3RhbnQEDmNyYWZ0IDM6ODpyb2RzD2dlbmVyaWMuZXhlY3V0ZQhjb25z
tier = global.int.get("craft_tier:3.7")
dGFudAQOY3JhZnQgMzo4OndpcmUOZ2VuZXJpYy5nb3RvaWYIY29uc3RhbnQCEwAAABFjb21wYXJpc29u
count = global.double.get("craft_count:3.7")
LmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhj
gotoif(99, tier < 1 | tier > 10 | count < 1.0)
b25zdGFudAQBKghjb25zdGFudAMAAAAAAAAQQAhjb25zdGFudAQCPD0RYXJpdGhtZXRpYy5kb3VibGUR
 
Z2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0
global.int.set("craft_tier:ingot", tier)
b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVwbGF0ZQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVy
global.double.set("craft_count:ingot", count / 2.0)
EWdlbmVyaWMud2FpdHdoaWxlFmZhY3RvcnkubWFjaGluZS5hY3RpdmUIY29uc3RhbnQEB3ByZXNzZXIP
executesync("craft ingot")
ZmFjdG9yeS5wcm9kdWNlCGNvbnN0YW50BAVpbmdvdA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVy
gotoif(99, global.int.get("craft_status") > 199)
EWFyaXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3Rh
 
bnQEBWNvdW50CGNvbnN0YW50BAEqCGNvbnN0YW50AwAAAAAAABBACGNvbnN0YW50BAEtEWFyaXRobWV0
waitwhile(active("refinery"))
aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3Rh
produce("ingot", tier, ceil(count / 2.0), "shaper")
bnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQFcGxhdGUNbG9jYWwuaW50LmdldAhjb25z
</syntaxhighlight>
dGFudAQEdGllcghjb25zdGFudAQHcHJlc3NlchFnZW5lcmljLndhaXR1bnRpbA9jb21wYXJpc29uLmJv
|-
b2wPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA9jb21wYXJpc29uLmJvb2wOY29tcGFyaXNv
|<syntaxhighlight lang="text">
bi5pbnQOZ2xvYmFsLmludC5nZXQIY29uc3RhbnQEEGNyYWZ0X3N0YXR1czozLjgIY29uc3RhbnQEAj49
CWNyYWZ0IDM6NwAAAAAAAAAACQAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
CGNvbnN0YW50AgcAAAAIY29uc3RhbnQEASYRY29tcGFyaXNvbi5kb3VibGUTZmFjdG9yeS5pdGVtcy5j
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuNxBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
b3VudAhjb25zdGFudAQFcGxhdGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQC
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My43DmdlbmVyaWMuZ290
Pj0RYXJpdGhtZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3Rh
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
bnQEASoIY29uc3RhbnQDAAAAAAAAEEAIY29uc3RhbnQEASYRY29tcGFyaXNvbi5kb3VibGUTZmFjdG9y
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
eS5pdGVtcy5jb3VudAhjb25zdGFudAQDcm9kDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29u
Y29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
c3RhbnQEAj49EWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50
dGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
CGNvbnN0YW50BAEqCGNvbnN0YW50AwAAAAAAAABACGNvbnN0YW50BAEmEWNvbXBhcmlzb24uZG91Ymxl
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/Dmdsb2Jh
E2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBXNjcmV3DWxvY2FsLmludC5nZXQIY29uc3RhbnQE
bC5pbnQuc2V0CGNvbnN0YW50BBBjcmFmdF90aWVyOmluZ290DWxvY2FsLmludC5nZXQIY29uc3RhbnQE
BHRpZXIIY29uc3RhbnQEAj49EGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50
BHRpZXIRZ2xvYmFsLmRvdWJsZS5zZXQIY29uc3RhbnQEEWNyYWZ0X2NvdW50OmluZ290EWFyaXRobWV0
BAEmEWNvbXBhcmlzb24uZG91YmxlE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBHdpcmUNbG9j
aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEvCGNvbnN0
YWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQCPj0QbG9jYWwuZG91YmxlLmdldAhjb25z
YW50AwAAAAAAAABAE2dlbmVyaWMuZXhlY3V0ZXN5bmMIY29uc3RhbnQEC2NyYWZ0IGluZ290DmdlbmVy
dGFudAQFY291bnQNZmFjdG9yeS5jcmFmdAhjb25zdGFudAQFbW90b3INbG9jYWwuaW50LmdldAhjb25z
aWMuZ290b2lmCGNvbnN0YW50AmMAAAAOY29tcGFyaXNvbi5pbnQOZ2xvYmFsLmludC5nZXQIY29uc3Rh
dGFudAQEdGllchBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudA==
bnQEDGNyYWZ0X3N0YXR1cwhjb25zdGFudAQBPghjb25zdGFudALHAAAAEWdlbmVyaWMud2FpdHdoaWxl
|src=
FmZhY3RvcnkubWFjaGluZS5hY3RpdmUIY29uc3RhbnQECHJlZmluZXJ5D2ZhY3RvcnkucHJvZHVjZQhj
; Motor
b25zdGFudAQFaW5nb3QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcgtkb3VibGUuY2VpbBFhcml0
:global double craft_inventory
aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBLwhj
b25zdGFudAMAAAAAAAAAQAhjb25zdGFudAQGc2hhcGVy
 
</syntaxhighlight>
|}
|}
|-
|8
|motors
[[File:Golden motor.png|frameless]]
|
{| class="wikitable"
!Name
!Lines
!Code
|-
|craft 3:8
|20
|
{| class="wikitable mw-collapsible mw-collapsed"
!
|-
|<syntaxhighlight lang="actionscript">
; Motor
:global double craft_inventory
:local int tier
:local int tier
:local double count
:local double count
Line 1,038: Line 1,025:
tier = global.int.get("craft_tier:3.8")
tier = global.int.get("craft_tier:3.8")
count = global.double.get("craft_count:3.8")
count = global.double.get("craft_count:3.8")
gotoif(99, tier < 1 | tier > 10 | count < 1.0)
gotoif(99, tier < 1 {{!}} tier > 10 {{!}} count < 1.0)


; ingots
; ingots
Line 1,069: Line 1,056:
wait: waituntil(global.int.get("craft_status:3.8") >= 7 & count("plate", tier) >= count * 4.0 & count("rod", tier) >= count * 2.0 & count("screw", tier) >= count & count("wire", tier) >= count)
wait: waituntil(global.int.get("craft_status:3.8") >= 7 & count("plate", tier) >= count * 4.0 & count("rod", tier) >= count * 2.0 & count("screw", tier) >= count & count("wire", tier) >= count)
craft("motor", tier, count)
craft("motor", tier, count)
</syntaxhighlight>
}}
 
|-
|-
|<syntaxhighlight lang="text">
|craft 3:8:rods
CWNyYWZ0IDM6OAAAAAAAAAAAFAAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
|10
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuOBBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
|{{AIScript
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My44DmdlbmVyaWMuZ290
|code=
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
DmNyYWZ0IDM6ODpyb2RzAAAAAAAAAAAKAAAADWxvY2FsLmludC5zZXQIY29uc3RhbnQEBHRpZXIOZ2xv
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
YmFsLmludC5nZXQIY29uc3RhbnQEDmNyYWZ0X3RpZXI6My44EGxvY2FsLmRvdWJsZS5zZXQIY29uc3Rh
Y29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
bnQEBWNvdW50EWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9jb3VudDozLjgQbG9jYWwu
dGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
ZG91YmxlLnNldAhjb25zdGFudAQEcm9kcxFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJs
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/EGxvY2Fs
ZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25zdGFudAMAAAAA
LmRvdWJsZS5zZXQIY29uc3RhbnQEBHJvZHMRYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3Vi
bGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEASoIY29uc3RhbnQDAAAA
AAAAAEAIY29uc3RhbnQEASsKZG91YmxlLm1heAhjb25zdGFudAMAAAAAAAAAAAtkb3VibGUuY2VpbBFh
cml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50
BAVjb3VudAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25z
dGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3Rh
bnQEBXNjcmV3DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEAS8IY29uc3RhbnQD
AAAAAAAAEEAOZ2VuZXJpYy5nb3RvaWYIY29uc3RhbnQCCQAAABFjb21wYXJpc29uLmRvdWJsZRBsb2Nh
bC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQCPD0TZmFjdG9yeS5pdGVtcy5jb3Vu
dAhjb25zdGFudAQGcnViYmVyCGNvbnN0YW50AgEAAAAOZ2xvYmFsLmludC5zZXQIY29uc3RhbnQEDGNy
YWZ0X3N0YXR1cwhjb25zdGFudAKcAQAADmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BBJjcmFmdF9yZXF1
aXJlX3RpZXIIY29uc3RhbnQC/////xFnbG9iYWwuZG91YmxlLnNldAhjb25zdGFudAQTY3JhZnRfcmVx
dWlyZV9jb3VudBBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudA5nbG9iYWwuaW50LnNldAhj
b25zdGFudAQQY3JhZnRfdGllcjppbmdvdA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdsb2Jh
bC5kb3VibGUuc2V0CGNvbnN0YW50BBFjcmFmdF9jb3VudDppbmdvdBFhcml0aG1ldGljLmRvdWJsZRFh
cml0aG1ldGljLmRvdWJsZQpkb3VibGUubWF4CGNvbnN0YW50AwAAAAAAAAAAC2RvdWJsZS5jZWlsEWFy
aXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQE
BHJvZHMIY29uc3RhbnQEAS0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3Rh
bnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50
BANyb2QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLwhjb25zdGFudAMAAAAA
AAAAQAhjb25zdGFudAQBKwpkb3VibGUubWF4CGNvbnN0YW50AwAAAAAAAAAAC2RvdWJsZS5jZWlsEWFy
AAAAQAhjb25zdGFudAQBKwpkb3VibGUubWF4CGNvbnN0YW50AwAAAAAAAAAAC2RvdWJsZS5jZWlsEWFy
aXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQE
aXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQE
BWNvdW50CGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0
BWNvdW50CGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0
YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoRYXJpdGhtZXRpYy5kb3VibGUTZmFjdG9yeS5p
YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFu
dGVtcy5jb3VudAhjb25zdGFudAQFY2FibGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
dAQFc2NyZXcNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLwhjb25zdGFudAMA
dGFudAQBKxNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAR3aXJlDWxvY2FsLmludC5nZXQIY29u
AAAAAAAQQA5nZW5lcmljLmdvdG9pZghjb25zdGFudAIHAAAAEWNvbXBhcmlzb24uZG91YmxlEGxvY2Fs
c3RhbnQEBHRpZXIIY29uc3RhbnQEAS8IY29uc3RhbnQDAAAAAAAAAEAIY29uc3RhbnQEASsKZG91Ymxl
LmRvdWJsZS5nZXQIY29uc3RhbnQEBHJvZHMIY29uc3RhbnQEAjw9EWFyaXRobWV0aWMuZG91YmxlEWds
Lm1heAhjb25zdGFudAMAAAAAAAAAABFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBs
b2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9y
b2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25zdGFudAMAAAAAAAAQ
eS5pdGVtcy5jb3VudAhjb25zdGFudAQDcm9kDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIRZ2Vu
QAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQP
ZXJpYy53YWl0d2hpbGUWZmFjdG9yeS5tYWNoaW5lLmFjdGl2ZQhjb25zdGFudAQGc2hhcGVyD2ZhY3Rv
Y3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBXBs
cnkucHJvZHVjZQhjb25zdGFudAQFaW5nb3QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcgtkb3Vi
YXRlDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXITZ2VuZXJpYy5leGVjdXRlc3luYwhjb25zdGFu
bGUuY2VpbBFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0
dAQLY3JhZnQgaW5nb3QOZ2VuZXJpYy5nb3RvaWYIY29uc3RhbnQCYwAAAA5jb21wYXJpc29uLmludA5n
CGNvbnN0YW50BARyb2RzCGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUu
bG9iYWwuaW50LmdldAhjb25zdGFudAQMY3JhZnRfc3RhdHVzCGNvbnN0YW50BAE+CGNvbnN0YW50AscA
Z2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3Vu
AAAOZ2xvYmFsLmludC5zZXQIY29uc3RhbnQEEGNyYWZ0X3N0YXR1czozLjgIY29uc3RhbnQCAQAAAA9n
dAhjb25zdGFudAQDcm9kDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEAS8IY29u
ZW5lcmljLmV4ZWN1dGUIY29uc3RhbnQEDmNyYWZ0IDM6ODpyb2RzD2dlbmVyaWMuZXhlY3V0ZQhjb25z
c3RhbnQDAAAAAAAAAEAIY29uc3RhbnQEBnNoYXBlcg5nZW5lcmljLmdvdG9pZghjb25zdGFudAIKAAAA
dGFudAQOY3JhZnQgMzo4OndpcmUOZ2VuZXJpYy5nb3RvaWYIY29uc3RhbnQCEwAAABFjb21wYXJpc29u
EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50
LmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhj
BAI8PRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52
b25zdGFudAQBKghjb25zdGFudAMAAAAAAAAQQAhjb25zdGFudAQCPD0RYXJpdGhtZXRpYy5kb3VibGUR
ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBXNjcmV3DWxvY2Fs
Z2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0
LmludC5nZXQIY29uc3RhbnQEBHRpZXIRZ2VuZXJpYy53YWl0d2hpbGUPY29tcGFyaXNvbi5ib29sEWNv
b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVwbGF0ZQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVy
bXBhcmlzb24uZG91YmxlE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEA3JvZA1sb2NhbC5pbnQu
EWdlbmVyaWMud2FpdHdoaWxlFmZhY3RvcnkubWFjaGluZS5hY3RpdmUIY29uc3RhbnQEB3ByZXNzZXIP
Z2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8EWFyaXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMu
ZmFjdG9yeS5wcm9kdWNlCGNvbnN0YW50BAVpbmdvdA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVy
ZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEtEWFyaXRobWV0
EWFyaXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3Rh
bnQEBWNvdW50CGNvbnN0YW50BAEqCGNvbnN0YW50AwAAAAAAABBACGNvbnN0YW50BAEtEWFyaXRobWV0
aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3Rh
aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3Rh
bnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQFcGxhdGUNbG9jYWwuaW50LmdldAhjb25z
bnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQFc2NyZXcNbG9jYWwuaW50LmdldAhjb25z
dGFudAQEdGllcghjb25zdGFudAQHcHJlc3NlchFnZW5lcmljLndhaXR1bnRpbA9jb21wYXJpc29uLmJv
dGFudAQEdGllcghjb25zdGFudAQBLwhjb25zdGFudAMAAAAAAAAQQAhjb25zdGFudAQBfBZmYWN0b3J5
b2wPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA9jb21wYXJpc29uLmJvb2wOY29tcGFyaXNv
Lm1hY2hpbmUuYWN0aXZlCGNvbnN0YW50BAZjdXR0ZXIPZmFjdG9yeS5wcm9kdWNlCGNvbnN0YW50BANy
bi5pbnQOZ2xvYmFsLmludC5nZXQIY29uc3RhbnQEEGNyYWZ0X3N0YXR1czozLjgIY29uc3RhbnQEAj49
b2QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcgtkb3VibGUuY2VpbBFhcml0aG1ldGljLmRvdWJs
CGNvbnN0YW50AgcAAAAIY29uc3RhbnQEASYRY29tcGFyaXNvbi5kb3VibGUTZmFjdG9yeS5pdGVtcy5j
ZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFu
b3VudAhjb25zdGFudAQFcGxhdGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQC
dAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52
Pj0RYXJpdGhtZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3Rh
ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBXNjcmV3DWxvY2Fs
bnQEASoIY29uc3RhbnQDAAAAAAAAEEAIY29uc3RhbnQEASYRY29tcGFyaXNvbi5kb3VibGUTZmFjdG9y
LmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEAS8IY29uc3RhbnQDAAAAAAAAEEAIY29uc3Rh
eS5pdGVtcy5jb3VudAhjb25zdGFudAQDcm9kDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29u
bnQEBmN1dHRlcg5nbG9iYWwuaW50LnNldAhjb25zdGFudAQQY3JhZnRfc3RhdHVzOjMuOA5hcml0aG1l
c3RhbnQEAj49EWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50
dGljLmludA5nbG9iYWwuaW50LmdldAhjb25zdGFudAQQY3JhZnRfc3RhdHVzOjMuOAhjb25zdGFudAQB
CGNvbnN0YW50BAEqCGNvbnN0YW50AwAAAAAAAABACGNvbnN0YW50BAEmEWNvbXBhcmlzb24uZG91Ymxl
Kwhjb25zdGFudAICAAAA
E2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBXNjcmV3DWxvY2FsLmludC5nZXQIY29uc3RhbnQE
|src=
BHRpZXIIY29uc3RhbnQEAj49EGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50
BAEmEWNvbXBhcmlzb24uZG91YmxlE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBHdpcmUNbG9j
YWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQCPj0QbG9jYWwuZG91YmxlLmdldAhjb25z
dGFudAQFY291bnQNZmFjdG9yeS5jcmFmdAhjb25zdGFudAQFbW90b3INbG9jYWwuaW50LmdldAhjb25z
dGFudAQEdGllchBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudA==
</syntaxhighlight>
|}
|-
|craft 3:8:rods
|10
|
{| class="wikitable mw-collapsible mw-collapsed"
!
|-
|<syntaxhighlight lang="actionscript">
:global double craft_inventory
:global double craft_inventory
:local int tier
:local int tier
Line 1,170: Line 1,121:


screws: gotoif(end, count <= craft_inventory * count("screw", tier))
screws: gotoif(end, count <= craft_inventory * count("screw", tier))
waitwhile(count("rod", tier) < (count - craft_inventory * count("screw", tier))/4.0 | active("cutter"))
waitwhile(count("rod", tier) < (count - craft_inventory * count("screw", tier))/4.0 {{!}} active("cutter"))
produce("rod", tier, ceil((count - craft_inventory * count("screw", tier))/4.0), "cutter")
produce("rod", tier, ceil((count - craft_inventory * count("screw", tier))/4.0), "cutter")


end: global.int.set("craft_status:3.8", global.int.get("craft_status:3.8") + 2)
end: global.int.set("craft_status:3.8", global.int.get("craft_status:3.8") + 2)
</syntaxhighlight>
}}
 
|-
|-
|<syntaxhighlight lang="text">
|craft 3:8:wire
DmNyYWZ0IDM6ODpyb2RzAAAAAAAAAAAKAAAADWxvY2FsLmludC5zZXQIY29uc3RhbnQEBHRpZXIOZ2xv
|9
|{{AIScript
|code=
DmNyYWZ0IDM6ODp3aXJlAAAAAAAAAAAJAAAADWxvY2FsLmludC5zZXQIY29uc3RhbnQEBHRpZXIOZ2xv
YmFsLmludC5nZXQIY29uc3RhbnQEDmNyYWZ0X3RpZXI6My44EGxvY2FsLmRvdWJsZS5zZXQIY29uc3Rh
YmFsLmludC5nZXQIY29uc3RhbnQEDmNyYWZ0X3RpZXI6My44EGxvY2FsLmRvdWJsZS5zZXQIY29uc3Rh
bnQEBWNvdW50EWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9jb3VudDozLjgQbG9jYWwu
bnQEBWNvdW50EWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9jb3VudDozLjgOZ2VuZXJp
ZG91YmxlLnNldAhjb25zdGFudAQEcm9kcxFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJs
Yy5nb3RvaWYIY29uc3RhbnQCBgAAABFjb21wYXJpc29uLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNv
ZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25zdGFudAMAAAAA
bnN0YW50BAVjb3VudAhjb25zdGFudAQCPD0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5n
AAAAQAhjb25zdGFudAQBKwpkb3VibGUubWF4CGNvbnN0YW50AwAAAAAAAAAAC2RvdWJsZS5jZWlsEWFy
ZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhFhcml0aG1ldGljLmRvdWJsZRNm
aXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQE
YWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVjYWJsZQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0
BWNvdW50CGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0
aWVyCGNvbnN0YW50BAErE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBHdpcmUNbG9jYWwuaW50
YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFu
LmdldAhjb25zdGFudAQEdGllchFnZW5lcmljLndhaXR3aGlsZRZmYWN0b3J5Lm1hY2hpbmUuYWN0aXZl
dAQFc2NyZXcNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLwhjb25zdGFudAMA
CGNvbnN0YW50BAhyZWZpbmVyeQ9mYWN0b3J5LnByb2R1Y2UIY29uc3RhbnQEBWluZ290DWxvY2FsLmlu
AAAAAAAQQA5nZW5lcmljLmdvdG9pZghjb25zdGFudAIHAAAAEWNvbXBhcmlzb24uZG91YmxlEGxvY2Fs
dC5nZXQIY29uc3RhbnQEBHRpZXILZG91YmxlLmNlaWwRYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRp
LmRvdWJsZS5nZXQIY29uc3RhbnQEBHJvZHMIY29uc3RhbnQEAjw9EWFyaXRobWV0aWMuZG91YmxlEWds
Yy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEAS0RYXJpdGht
b2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9y
ZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25z
eS5pdGVtcy5jb3VudAhjb25zdGFudAQDcm9kDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIRZ2Vu
dGFudAQBKhFhcml0aG1ldGljLmRvdWJsZRNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVjYWJs
ZXJpYy53YWl0d2hpbGUWZmFjdG9yeS5tYWNoaW5lLmFjdGl2ZQhjb25zdGFudAQGc2hhcGVyD2ZhY3Rv
ZQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAErE2ZhY3RvcnkuaXRlbXMuY291
cnkucHJvZHVjZQhjb25zdGFudAQFaW5nb3QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcgtkb3Vi
bnQIY29uc3RhbnQEBHdpcmUNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLwhj
bGUuY2VpbBFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0
b25zdGFudAMAAAAAAAAAQAhjb25zdGFudAQIcmVmaW5lcnkOZ2VuZXJpYy5nb3RvaWYIY29uc3RhbnQC
CGNvbnN0YW50BARyb2RzCGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUu
CQAAABFjb21wYXJpc29uLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25z
Z2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3Vu
dGFudAQCPD0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0
dAhjb25zdGFudAQDcm9kDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEAS8IY29u
X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAR3aXJlDWxv
c3RhbnQDAAAAAAAAAEAIY29uc3RhbnQEBnNoYXBlcg5nZW5lcmljLmdvdG9pZghjb25zdGFudAIKAAAA
Y2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIRZ2VuZXJpYy53YWl0d2hpbGUPY29tcGFyaXNvbi5ib29s
EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50
EWNvbXBhcmlzb24uZG91YmxlE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBWNhYmxlDWxvY2Fs
BAI8PRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52
LmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEATwRYXJpdGhtZXRpYy5kb3VibGURYXJpdGht
ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBXNjcmV3DWxvY2Fs
ZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEAS0QbG9j
LmludC5nZXQIY29uc3RhbnQEBHRpZXIRZ2VuZXJpYy53YWl0d2hpbGUPY29tcGFyaXNvbi5ib29sEWNv
YWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEAS0RYXJpdGhtZXRpYy5kb3VibGUR
bXBhcmlzb24uZG91YmxlE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEA3JvZA1sb2NhbC5pbnQu
Z2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0
Z2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8EWFyaXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMu
b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAR3aXJlDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXII
ZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEtEWFyaXRobWV0
Y29uc3RhbnQEAXwWZmFjdG9yeS5tYWNoaW5lLmFjdGl2ZQhjb25zdGFudAQIcmVmaW5lcnkPZmFjdG9y
aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3Rh
eS5wcm9kdWNlCGNvbnN0YW50BAVjYWJsZQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWFyaXRo
bnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQFc2NyZXcNbG9jYWwuaW50LmdldAhjb25z
bWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEtEWFy
dGFudAQEdGllcghjb25zdGFudAQBLwhjb25zdGFudAMAAAAAAAAQQAhjb25zdGFudAQBfBZmYWN0b3J5
aXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkI
Lm1hY2hpbmUuYWN0aXZlCGNvbnN0YW50BAZjdXR0ZXIPZmFjdG9yeS5wcm9kdWNlCGNvbnN0YW50BANy
Y29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQEd2lyZQ1sb2NhbC5pbnQuZ2V0
b2QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcgtkb3VibGUuY2VpbBFhcml0aG1ldGljLmRvdWJs
CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAhyZWZpbmVyeQ5nbG9iYWwuaW50LnNldAhjb25zdGFudAQQ
ZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFu
Y3JhZnRfc3RhdHVzOjMuOA5hcml0aG1ldGljLmludA5nbG9iYWwuaW50LmdldAhjb25zdGFudAQQY3Jh
dAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52
ZnRfc3RhdHVzOjMuOAhjb25zdGFudAQBKwhjb25zdGFudAIEAAAA
ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBXNjcmV3DWxvY2Fs
|src=
LmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEAS8IY29uc3RhbnQDAAAAAAAAEEAIY29uc3Rh
bnQEBmN1dHRlcg5nbG9iYWwuaW50LnNldAhjb25zdGFudAQQY3JhZnRfc3RhdHVzOjMuOA5hcml0aG1l
dGljLmludA5nbG9iYWwuaW50LmdldAhjb25zdGFudAQQY3JhZnRfc3RhdHVzOjMuOAhjb25zdGFudAQB
Kwhjb25zdGFudAICAAAA
</syntaxhighlight>
|}
|-
|craft 3:8:wire
|9
|
{| class="wikitable mw-collapsible mw-collapsed"
!
|-
|<syntaxhighlight lang="actionscript">
:global double craft_inventory
:global double craft_inventory
:local int tier
:local int tier
Line 1,240: Line 1,181:


wire: gotoif(end, count <= craft_inventory * count("wire", tier))
wire: gotoif(end, count <= craft_inventory * count("wire", tier))
waitwhile(count("cable", tier) < count - count - craft_inventory * count("wire", tier) | active("refinery"))
waitwhile(count("cable", tier) < count - count - craft_inventory * count("wire", tier) {{!}} active("refinery"))
produce("cable", tier, count - craft_inventory * count("wire", tier), "refinery")
produce("cable", tier, count - craft_inventory * count("wire", tier), "refinery")


end: global.int.set("craft_status:3.8", global.int.get("craft_status:3.8") + 4)
end: global.int.set("craft_status:3.8", global.int.get("craft_status:3.8") + 4)
</syntaxhighlight>
}}
|-
|}
|<syntaxhighlight lang="text">
 
DmNyYWZ0IDM6ODp3aXJlAAAAAAAAAAAJAAAADWxvY2FsLmludC5zZXQIY29uc3RhbnQEBHRpZXIOZ2xv
 
YmFsLmludC5nZXQIY29uc3RhbnQEDmNyYWZ0X3RpZXI6My44EGxvY2FsLmRvdWJsZS5zZXQIY29uc3Rh
====Pumps (9)====
bnQEBWNvdW50EWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9jb3VudDozLjgOZ2VuZXJp
[[File:Golden pump.png|frameless]]
Yy5nb3RvaWYIY29uc3RhbnQCBgAAABFjb21wYXJpc29uLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNv
 
bnN0YW50BAVjb3VudAhjb25zdGFudAQCPD0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5n
{| class="wikitable"
ZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhFhcml0aG1ldGljLmRvdWJsZRNm
!Name
YWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVjYWJsZQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0
!Lines
aWVyCGNvbnN0YW50BAErE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBHdpcmUNbG9jYWwuaW50
!Code
LmdldAhjb25zdGFudAQEdGllchFnZW5lcmljLndhaXR3aGlsZRZmYWN0b3J5Lm1hY2hpbmUuYWN0aXZl
|-
CGNvbnN0YW50BAhyZWZpbmVyeQ9mYWN0b3J5LnByb2R1Y2UIY29uc3RhbnQEBWluZ290DWxvY2FsLmlu
|craft 3:9
dC5nZXQIY29uc3RhbnQEBHRpZXILZG91YmxlLmNlaWwRYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRp
|10
Yy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEAS0RYXJpdGht
|{{AIScript
ZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25z
|code=
dGFudAQBKhFhcml0aG1ldGljLmRvdWJsZRNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVjYWJs
CWNyYWZ0IDM6OQAAAAAAAAAACgAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
ZQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAErE2ZhY3RvcnkuaXRlbXMuY291
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuORBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
bnQIY29uc3RhbnQEBHdpcmUNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLwhj
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My45DmdlbmVyaWMuZ290
b25zdGFudAMAAAAAAAAAQAhjb25zdGFudAQIcmVmaW5lcnkOZ2VuZXJpYy5nb3RvaWYIY29uc3RhbnQC
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
CQAAABFjb21wYXJpc29uLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25z
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
dGFudAQCPD0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0
Y29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAR3aXJlDWxv
dGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
Y2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIRZ2VuZXJpYy53YWl0d2hpbGUPY29tcGFyaXNvbi5ib29s
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/E2dlbmVy
EWNvbXBhcmlzb24uZG91YmxlE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBWNhYmxlDWxvY2Fs
aWMuZXhlY3V0ZXN5bmMIY29uc3RhbnQEDGNyYWZ0IDM6OTppbg5nZW5lcmljLmdvdG9pZghjb25zdGFu
LmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEATwRYXJpdGhtZXRpYy5kb3VibGURYXJpdGht
dAJjAAAADmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BAxjcmFmdF9zdGF0dXMI
ZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEAS0QbG9j
Y29uc3RhbnQEAT4IY29uc3RhbnQCxwAAAA5nbG9iYWwuaW50LnNldAhjb25zdGFudAQQY3JhZnRfc3Rh
YWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEAS0RYXJpdGhtZXRpYy5kb3VibGUR
dHVzOjMuOQhjb25zdGFudAIBAAAAD2dlbmVyaWMuZXhlY3V0ZQhjb25zdGFudAQQY3JhZnQgMzo5OnBs
Z2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0
YXRlcw9nZW5lcmljLmV4ZWN1dGUIY29uc3RhbnQED2NyYWZ0IDM6OTpyaW5ncxFnZW5lcmljLndhaXR1
b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAR3aXJlDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXII
bnRpbA9jb21wYXJpc29uLmJvb2wPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJp
Y29uc3RhbnQEAXwWZmFjdG9yeS5tYWNoaW5lLmFjdGl2ZQhjb25zdGFudAQIcmVmaW5lcnkPZmFjdG9y
c29uLmludA5nbG9iYWwuaW50LmdldAhjb25zdGFudAQQY3JhZnRfc3RhdHVzOjMuOQhjb25zdGFudAQC
eS5wcm9kdWNlCGNvbnN0YW50BAVjYWJsZQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWFyaXRo
Pj0IY29uc3RhbnQCBwAAAAhjb25zdGFudAQBJhFjb21wYXJpc29uLmRvdWJsZRNmYWN0b3J5Lml0ZW1z
bWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEtEWFy
LmNvdW50CGNvbnN0YW50BAVwbGF0ZQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50
aXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkI
BAI+PRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25z
Y29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQEd2lyZQ1sb2NhbC5pbnQuZ2V0
dGFudAQBKghjb25zdGFudAMAAAAAAAAAQAhjb25zdGFudAQBJhFjb21wYXJpc29uLmRvdWJsZRNmYWN0
CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAhyZWZpbmVyeQ5nbG9iYWwuaW50LnNldAhjb25zdGFudAQQ
b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAxwbGF0ZS5ydWJiZXIIY29uc3RhbnQCAQAAAAhjb25zdGFu
Y3JhZnRfc3RhdHVzOjMuOA5hcml0aG1ldGljLmludA5nbG9iYWwuaW50LmdldAhjb25zdGFudAQQY3Jh
dAQCPj0RYXJpdGhtZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29u
ZnRfc3RhdHVzOjMuOAhjb25zdGFudAQBKwhjb25zdGFudAIEAAAA
c3RhbnQEASoIY29uc3RhbnQDAAAAAAAAEEAIY29uc3RhbnQEASYRY29tcGFyaXNvbi5kb3VibGUTZmFj
</syntaxhighlight>
dG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQEcmluZw1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVy
|}
CGNvbnN0YW50BAI+PRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVj
|}
b3VudAhjb25zdGFudAQBKghjb25zdGFudAMAAAAAAAAAQA1mYWN0b3J5LmNyYWZ0CGNvbnN0YW50BARw
|-
dW1wDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQF
|9
Y291bnQ=
|pumps
|src=
[[File:Golden pump.png|frameless]]
; Pumps
|
{| class="wikitable"
!Name
!Lines
!Code
|-
|craft 3:9
|10
|
{| class="wikitable mw-collapsible mw-collapsed"
!
|-
|<syntaxhighlight lang="actionscript">
; Pumps
:global double craft_inventory
:global double craft_inventory
:local int tier
:local int tier
Line 1,311: Line 1,238:
tier = global.int.get("craft_tier:3.9")
tier = global.int.get("craft_tier:3.9")
count = global.double.get("craft_count:3.9")
count = global.double.get("craft_count:3.9")
gotoif(99, tier < 1 | tier > 10 | count < 1.0)
gotoif(99, tier < 1 {{!}} tier > 10 {{!}} count < 1.0)


executesync("craft 3:9:in")
executesync("craft 3:9:in")
Line 1,322: Line 1,249:
waituntil(global.int.get("craft_status:3.9") >= 7 & count("plate", tier) >= count*2.0 & count("plate.rubber", 1) >= count*4.0 & count("ring", tier) >= count*2.0)
waituntil(global.int.get("craft_status:3.9") >= 7 & count("plate", tier) >= count*2.0 & count("plate.rubber", 1) >= count*4.0 & count("ring", tier) >= count*2.0)
craft("pump", tier, count)
craft("pump", tier, count)
</syntaxhighlight>
}}
 
|-
|-
|<syntaxhighlight lang="text">
|craft 3:9:in
CWNyYWZ0IDM6OQAAAAAAAAAACgAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
|16
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuORBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
|{{AIScript
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My45DmdlbmVyaWMuZ290
|code=
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
DGNyYWZ0IDM6OTppbgAAAAAAAAAAEAAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2Jh
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
bC5pbnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuORBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50
Y29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
BAVjb3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My45EGxvY2FsLmRv
dGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
dWJsZS5zZXQIY29uc3RhbnQEBnJ1YmJlchFhcml0aG1ldGljLmRvdWJsZQpkb3VibGUubWF4CGNvbnN0
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/E2dlbmVy
YW50AwAAAAAAAAAAEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNv
aWMuZXhlY3V0ZXN5bmMIY29uc3RhbnQEDGNyYWZ0IDM6OTppbg5nZW5lcmljLmdvdG9pZghjb25zdGFu
dW50CGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50
dAJjAAAADmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BAxjcmFmdF9zdGF0dXMI
BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQF
Y29uc3RhbnQEAT4IY29uc3RhbnQCxwAAAA5nbG9iYWwuaW50LnNldAhjb25zdGFudAQQY3JhZnRfc3Rh
bW90b3INbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKwpkb3VibGUubWF4CGNv
dHVzOjMuOQhjb25zdGFudAIBAAAAD2dlbmVyaWMuZXhlY3V0ZQhjb25zdGFudAQQY3JhZnQgMzo5OnBs
bnN0YW50AwAAAAAAAAAAEWFyaXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRv
YXRlcw9nZW5lcmljLmV4ZWN1dGUIY29uc3RhbnQED2NyYWZ0IDM6OTpyaW5ncxFnZW5lcmljLndhaXR1
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEqCGNvbnN0YW50AwAAAAAAABBACGNvbnN0
bnRpbA9jb21wYXJpc29uLmJvb2wPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJp
YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9p
c29uLmludA5nbG9iYWwuaW50LmdldAhjb25zdGFudAQQY3JhZnRfc3RhdHVzOjMuOQhjb25zdGFudAQC
bnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQMcGxhdGUucnVi
Pj0IY29uc3RhbnQCBwAAAAhjb25zdGFudAQBJhFjb21wYXJpc29uLmRvdWJsZRNmYWN0b3J5Lml0ZW1z
YmVyDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIOZ2VuZXJpYy5nb3RvaWYIY29uc3RhbnQCCAAA
LmNvdW50CGNvbnN0YW50BAVwbGF0ZQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50
ABFjb21wYXJpc29uLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAZydWJiZXIIY29uc3Rh
BAI+PRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25z
bnQEAjw9E2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBnJ1YmJlcghjb25zdGFudAIBAAAADmds
dGFudAQBKghjb25zdGFudAMAAAAAAAAAQAhjb25zdGFudAQBJhFjb21wYXJpc29uLmRvdWJsZRNmYWN0
b2JhbC5pbnQuc2V0CGNvbnN0YW50BAxjcmFmdF9zdGF0dXMIY29uc3RhbnQCnAEAAA5nbG9iYWwuaW50
b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAxwbGF0ZS5ydWJiZXIIY29uc3RhbnQCAQAAAAhjb25zdGFu
LnNldAhjb25zdGFudAQSY3JhZnRfcmVxdWlyZV90aWVyCGNvbnN0YW50Av////8RZ2xvYmFsLmRvdWJs
dAQCPj0RYXJpdGhtZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29u
ZS5zZXQIY29uc3RhbnQEE2NyYWZ0X3JlcXVpcmVfY291bnQQbG9jYWwuZG91YmxlLmdldAhjb25zdGFu
c3RhbnQEASoIY29uc3RhbnQDAAAAAAAAEEAIY29uc3RhbnQEASYRY29tcGFyaXNvbi5kb3VibGUTZmFj
dAQGcnViYmVyDmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BBBjcmFmdF90aWVyOmluZ290DWxvY2FsLmlu
dG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQEcmluZw1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVy
dC5nZXQIY29uc3RhbnQEBHRpZXIQbG9jYWwuZG91YmxlLnNldAhjb25zdGFudAQKbmVlZF9wdW1wcwpk
CGNvbnN0YW50BAI+PRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVj
b3VibGUubWF4CGNvbnN0YW50AwAAAAAAAAAAEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5n
b3VudAhjb25zdGFudAQBKghjb25zdGFudAMAAAAAAAAAQA1mYWN0b3J5LmNyYWZ0CGNvbnN0YW50BARw
ZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3Vi
dW1wDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQF
bGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5j
Y291bnQ=
b3VudAhjb25zdGFudAQFbW90b3INbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchBsb2NhbC5kb3Vi
</syntaxhighlight>
bGUuc2V0CGNvbnN0YW50BARyb2RzEWFyaXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlCmRv
|}
dWJsZS5tYXgIY29uc3RhbnQDAAAAAAAAAAARYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3Vi
|-
bGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEASoIY29uc3RhbnQDAAAA
|craft 3:9:in
AAAAAEAIY29uc3RhbnQEAS0TZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQEcmluZw1sb2NhbC5p
|16
bnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAErEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRv
|
dWJsZS5nZXQIY29uc3RhbnQECm5lZWRfcHVtcHMIY29uc3RhbnQEASoIY29uc3RhbnQDAAAAAAAAAEAI
{| class="wikitable mw-collapsible mw-collapsed"
Y29uc3RhbnQEASsKZG91YmxlLm1heAhjb25zdGFudAMAAAAAAAAAAAtkb3VibGUuY2VpbBFhcml0aG1l
!
dGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BApuZWVk
|-
X3B1bXBzCGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0
|<syntaxhighlight lang="actionscript">
YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFu
:global double craft_inventory
dAQFc2NyZXcNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLwhjb25zdGFudAMA
:local int tier
AAAAAAAQQBFnbG9iYWwuZG91YmxlLnNldAhjb25zdGFudAQRY3JhZnRfY291bnQ6aW5nb3QRYXJpdGht
:local double count
ZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUKZG91YmxlLm1heAhjb25zdGFudAMAAAAAAAAAABFh
:local double rubber
cml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5k
:local double need_pumps
b3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25zdGFudAMAAAAAAAAAQAhjb25z
:local double rods
dGFudAQBKxFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BApuZWVkX3B1
:local double plates
bXBzCGNvbnN0YW50BAEqCGNvbnN0YW50AwAAAAAAABBACGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91
 
YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoT
tier = global.int.get("craft_tier:3.9")
ZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQFcGxhdGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQE
count = global.double.get("craft_count:3.9")
dGllcghjb25zdGFudAQBKwpkb3VibGUubWF4CGNvbnN0YW50AwAAAAAAAAAAC2RvdWJsZS5jZWlsEWFy
 
aXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQE
; rubber and ingots
BHJvZHMIY29uc3RhbnQEAS0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3Rh
rubber = max(0.0, count - craft_inventory * count("motor", tier)) + max(0.0, count*4.0 - craft_inventory * count("plate.rubber", tier))
bnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50
gotoif(ingots, rubber <= count("rubber", 1))
BANyb2QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLwhjb25zdGFudAMAAAAA
  global.int.set("craft_status", 412)
AAAAQAhjb25zdGFudAQBKwpkb3VibGUubWF4CGNvbnN0YW50AwAAAAAAAAAAC2RvdWJsZS5jZWlsEWFy
  global.int.set("craft_require_tier", -1)
aXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQE
  global.double.set("craft_require_count", rubber)
BWNvdW50CGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0
 
YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoRYXJpdGhtZXRpYy5kb3VibGUTZmFjdG9yeS5p
ingots: global.int.set("craft_tier:ingot", tier)
dGVtcy5jb3VudAhjb25zdGFudAQFY2FibGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
; plates: count*2.0 - craft_inventory * count("plate", tier)
dGFudAQBKxNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAR3aXJlDWxvY2FsLmludC5nZXQIY29u
; rods = count * 2.0 - count("ring", tier)
c3RhbnQEBHRpZXIIY29uc3RhbnQEAS8IY29uc3RhbnQDAAAAAAAAAEATZ2VuZXJpYy5leGVjdXRlc3lu
; rings: ceil((rods - craft_inventory * count("rod", tier))/2.0)
Ywhjb25zdGFudAQLY3JhZnQgaW5nb3QOZ2VuZXJpYy5nb3RvaWYIY29uc3RhbnQCYwAAAA5jb21wYXJp
; motors...
c29uLmludA5nbG9iYWwuaW50LmdldAhjb25zdGFudAQMY3JhZnRfc3RhdHVzCGNvbnN0YW50BAE+CGNv
;    rods = count * 2.0 + max(0.0, ceil((count - craft_inventory * count("screw", tier))/4.0))
bnN0YW50AscAAAAOZ2xvYmFsLmludC5zZXQIY29uc3RhbnQEDmNyYWZ0X3RpZXI6My44DWxvY2FsLmlu
;    global.double.set("craft_count:ingot", max(0.0, ceil((rods - craft_inventory * count("rod", tier))/2.0)) + max(0.0, ceil((count - craft_inventory * (count("cable", tier) + count("wire", tier)))/2.0)) + max(0.0, count * 4.0 - craft_inventory * count("plate", tier)))
dC5nZXQIY29uc3RhbnQEBHRpZXIRZ2xvYmFsLmRvdWJsZS5zZXQIY29uc3RhbnQED2NyYWZ0X2NvdW50
  need_pumps = max(0.0, count - craft_inventory * count("motor", tier))
OjMuOBFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25z
  rods = max(0.0, count * 2.0 - count("ring", tier)) + need_pumps * 2.0 + max(0.0, ceil((need_pumps - craft_inventory * count("screw", tier))/4.0))
dGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRf
  global.double.set("craft_count:ingot", max(0.0, count*2.0 + need_pumps * 4.0 - craft_inventory * count("plate", tier)) + max(0.0, ceil((rods - craft_inventory * count("rod", tier))/2.0)) + max(0.0, ceil((count - craft_inventory * (count("cable", tier) + count("wire", tier)))/2.0)))
aW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBW1vdG9yDWxv
  executesync("craft ingot")
Y2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXITZ2VuZXJpYy5leGVjdXRlc3luYwhjb25zdGFudAQJY3Jh
gotoif(99, global.int.get("craft_status") > 199)
ZnQgMzo4
|src=
:global double craft_inventory
:local int tier
:local double count
:local double rubber
:local double need_pumps
:local double rods
:local double plates
 
tier = global.int.get("craft_tier:3.9")
count = global.double.get("craft_count:3.9")


global.int.set("craft_tier:3.8", tier)
; rubber and ingots
global.double.set("craft_count:3.8", count - craft_inventory * count("motor", tier))
rubber = max(0.0, count - craft_inventory * count("motor", tier)) + max(0.0, count*4.0 - craft_inventory * count("plate.rubber", tier))
executesync("craft 3:8")
gotoif(ingots, rubber <= count("rubber", 1))
</syntaxhighlight>
  global.int.set("craft_status", 412)
|-
  global.int.set("craft_require_tier", -1)
|<syntaxhighlight lang="text">
  global.double.set("craft_require_count", rubber)
DGNyYWZ0IDM6OTppbgAAAAAAAAAAEAAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2Jh
 
bC5pbnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuORBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50
ingots: global.int.set("craft_tier:ingot", tier)
BAVjb3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My45EGxvY2FsLmRv
; plates: count*2.0 - craft_inventory * count("plate", tier)
dWJsZS5zZXQIY29uc3RhbnQEBnJ1YmJlchFhcml0aG1ldGljLmRvdWJsZQpkb3VibGUubWF4CGNvbnN0
; rods = count * 2.0 - count("ring", tier)
YW50AwAAAAAAAAAAEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNv
; rings: ceil((rods - craft_inventory * count("rod", tier))/2.0)
dW50CGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50
; motors...
BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQF
;    rods = count * 2.0 + max(0.0, ceil((count - craft_inventory * count("screw", tier))/4.0))
bW90b3INbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKwpkb3VibGUubWF4CGNv
;    global.double.set("craft_count:ingot", max(0.0, ceil((rods - craft_inventory * count("rod", tier))/2.0)) + max(0.0, ceil((count - craft_inventory * (count("cable", tier) + count("wire", tier)))/2.0)) + max(0.0, count * 4.0 - craft_inventory * count("plate", tier)))
bnN0YW50AwAAAAAAAAAAEWFyaXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRv
  need_pumps = max(0.0, count - craft_inventory * count("motor", tier))
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEqCGNvbnN0YW50AwAAAAAAABBACGNvbnN0
  rods = max(0.0, count * 2.0 - count("ring", tier)) + need_pumps * 2.0 + max(0.0, ceil((need_pumps - craft_inventory * count("screw", tier))/4.0))
YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9p
  global.double.set("craft_count:ingot", max(0.0, count*2.0 + need_pumps * 4.0 - craft_inventory * count("plate", tier)) + max(0.0, ceil((rods - craft_inventory * count("rod", tier))/2.0)) + max(0.0, ceil((count - craft_inventory * (count("cable", tier) + count("wire", tier)))/2.0)))
bnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQMcGxhdGUucnVi
  executesync("craft ingot")
YmVyDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIOZ2VuZXJpYy5nb3RvaWYIY29uc3RhbnQCCAAA
gotoif(99, global.int.get("craft_status") > 199)
ABFjb21wYXJpc29uLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAZydWJiZXIIY29uc3Rh
 
bnQEAjw9E2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBnJ1YmJlcghjb25zdGFudAIBAAAADmds
global.int.set("craft_tier:3.8", tier)
b2JhbC5pbnQuc2V0CGNvbnN0YW50BAxjcmFmdF9zdGF0dXMIY29uc3RhbnQCnAEAAA5nbG9iYWwuaW50
global.double.set("craft_count:3.8", count - craft_inventory * count("motor", tier))
LnNldAhjb25zdGFudAQSY3JhZnRfcmVxdWlyZV90aWVyCGNvbnN0YW50Av////8RZ2xvYmFsLmRvdWJs
executesync("craft 3:8")
ZS5zZXQIY29uc3RhbnQEE2NyYWZ0X3JlcXVpcmVfY291bnQQbG9jYWwuZG91YmxlLmdldAhjb25zdGFu
}}
dAQGcnViYmVyDmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BBBjcmFmdF90aWVyOmluZ290DWxvY2FsLmlu
 
dC5nZXQIY29uc3RhbnQEBHRpZXIQbG9jYWwuZG91YmxlLnNldAhjb25zdGFudAQKbmVlZF9wdW1wcwpk
|-
b3VibGUubWF4CGNvbnN0YW50AwAAAAAAAAAAEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5n
|craft 3:9:plates
ZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3Vi
|9
bGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5j
|{{AIScript
b3VudAhjb25zdGFudAQFbW90b3INbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchBsb2NhbC5kb3Vi
|code=
bGUuc2V0CGNvbnN0YW50BARyb2RzEWFyaXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlCmRv
EGNyYWZ0IDM6OTpwbGF0ZXMAAAAAAAAAAAkAAAANbG9jYWwuaW50LnNldAhjb25zdGFudAQEdGllcg5n
dWJsZS5tYXgIY29uc3RhbnQDAAAAAAAAAAARYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3Vi
bG9iYWwuaW50LmdldAhjb25zdGFudAQOY3JhZnRfdGllcjozLjkQbG9jYWwuZG91YmxlLnNldAhjb25z
bGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEASoIY29uc3RhbnQDAAAA
dGFudAQFY291bnQRZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2NvdW50OjMuOQ5nZW5l
AAAAAEAIY29uc3RhbnQEAS0TZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQEcmluZw1sb2NhbC5p
cmljLmdvdG9pZghjb25zdGFudAIGAAAAEWNvbXBhcmlzb24uZG91YmxlEWFyaXRobWV0aWMuZG91Ymxl
bnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAErEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRv
EGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEqCGNvbnN0YW50AwAAAAAA
dWJsZS5nZXQIY29uc3RhbnQECm5lZWRfcHVtcHMIY29uc3RhbnQEASoIY29uc3RhbnQDAAAAAAAAAEAI
AABACGNvbnN0YW50BAE8EWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50
Y29uc3RhbnQEASsKZG91YmxlLm1heAhjb25zdGFudAMAAAAAAAAAAAtkb3VibGUuY2VpbBFhcml0aG1l
BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQF
dGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BApuZWVk
cGxhdGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchFnZW5lcmljLndhaXR3aGlsZRZmYWN0b3J5
X3B1bXBzCGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0
Lm1hY2hpbmUuYWN0aXZlCGNvbnN0YW50BAdwcmVzc2VyD2ZhY3RvcnkucHJvZHVjZQhjb25zdGFudAQF
YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFu
aW5nb3QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1l
dAQFc2NyZXcNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLwhjb25zdGFudAMA
dGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25z
AAAAAAAQQBFnbG9iYWwuZG91YmxlLnNldAhjb25zdGFudAQRY3JhZnRfY291bnQ6aW5nb3QRYXJpdGht
dGFudAMAAAAAAAAAQAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdl
ZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUKZG91YmxlLm1heAhjb25zdGFudAMAAAAAAAAAABFh
dAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQI
cml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5k
Y29uc3RhbnQEBXBsYXRlDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEB3ByZXNz
b3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25zdGFudAMAAAAAAAAAQAhjb25z
ZXIOZ2VuZXJpYy5nb3RvaWYIY29uc3RhbnQCCQAAABFjb21wYXJpc29uLmRvdWJsZRFhcml0aG1ldGlj
dGFudAQBKxFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BApuZWVkX3B1
LmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25zdGFu
bXBzCGNvbnN0YW50BAEqCGNvbnN0YW50AwAAAAAAABBACGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91
dAMAAAAAAAAQQAhjb25zdGFudAQBPBFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhj
YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoT
b25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29u
ZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQFcGxhdGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQE
c3RhbnQEDHBsYXRlLnJ1YmJlcg1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdlbmVyaWMud2Fp
dGllcghjb25zdGFudAQBKwpkb3VibGUubWF4CGNvbnN0YW50AwAAAAAAAAAAC2RvdWJsZS5jZWlsEWFy
dHdoaWxlFmZhY3RvcnkubWFjaGluZS5hY3RpdmUIY29uc3RhbnQEB3ByZXNzZXIPZmFjdG9yeS5wcm9k
aXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQE
dWNlCGNvbnN0YW50BAZydWJiZXIIY29uc3RhbnQCAQAAABFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1l
BHJvZHMIY29uc3RhbnQEAS0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3Rh
dGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25z
bnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50
dGFudAMAAAAAAAAQQAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdl
BANyb2QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLwhjb25zdGFudAMAAAAA
dAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQI
AAAAQAhjb25zdGFudAQBKwpkb3VibGUubWF4CGNvbnN0YW50AwAAAAAAAAAAC2RvdWJsZS5jZWlsEWFy
Y29uc3RhbnQEDHBsYXRlLnJ1YmJlcg1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50
aXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQE
BAdwcmVzc2VyDmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BBBjcmFmdF9zdGF0dXM6My45DmFyaXRobWV0
BWNvdW50CGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0
aWMuaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BBBjcmFmdF9zdGF0dXM6My45CGNvbnN0YW50BAEr
YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoRYXJpdGhtZXRpYy5kb3VibGUTZmFjdG9yeS5p
CGNvbnN0YW50AgIAAAA=
dGVtcy5jb3VudAhjb25zdGFudAQFY2FibGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
|src=
dGFudAQBKxNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAR3aXJlDWxvY2FsLmludC5nZXQIY29u
c3RhbnQEBHRpZXIIY29uc3RhbnQEAS8IY29uc3RhbnQDAAAAAAAAAEATZ2VuZXJpYy5leGVjdXRlc3lu
Ywhjb25zdGFudAQLY3JhZnQgaW5nb3QOZ2VuZXJpYy5nb3RvaWYIY29uc3RhbnQCYwAAAA5jb21wYXJp
c29uLmludA5nbG9iYWwuaW50LmdldAhjb25zdGFudAQMY3JhZnRfc3RhdHVzCGNvbnN0YW50BAE+CGNv
bnN0YW50AscAAAAOZ2xvYmFsLmludC5zZXQIY29uc3RhbnQEDmNyYWZ0X3RpZXI6My44DWxvY2FsLmlu
dC5nZXQIY29uc3RhbnQEBHRpZXIRZ2xvYmFsLmRvdWJsZS5zZXQIY29uc3RhbnQED2NyYWZ0X2NvdW50
OjMuOBFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25z
dGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRf
aW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBW1vdG9yDWxv
Y2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXITZ2VuZXJpYy5leGVjdXRlc3luYwhjb25zdGFudAQJY3Jh
ZnQgMzo4
</syntaxhighlight>
|}
|-
|craft 3:9:plates
|9
|
{| class="wikitable mw-collapsible mw-collapsed"
!
|-
|<syntaxhighlight lang="actionscript">
:global double craft_inventory
:global double craft_inventory
:local int tier
:local int tier
Line 1,490: Line 1,408:


end: global.int.set("craft_status:3.9", global.int.get("craft_status:3.9") + 2)
end: global.int.set("craft_status:3.9", global.int.get("craft_status:3.9") + 2)
</syntaxhighlight>
}}
 
|-
|-
|<syntaxhighlight lang="text">
|craft 3:9:rings
EGNyYWZ0IDM6OTpwbGF0ZXMAAAAAAAAAAAkAAAANbG9jYWwuaW50LnNldAhjb25zdGFudAQEdGllcg5n
|10
bG9iYWwuaW50LmdldAhjb25zdGFudAQOY3JhZnRfdGllcjozLjkQbG9jYWwuZG91YmxlLnNldAhjb25z
|{{AIScript
dGFudAQFY291bnQRZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2NvdW50OjMuOQ5nZW5l
|code=
cmljLmdvdG9pZghjb25zdGFudAIGAAAAEWNvbXBhcmlzb24uZG91YmxlEWFyaXRobWV0aWMuZG91Ymxl
D2NyYWZ0IDM6OTpyaW5ncwAAAAAAAAAACgAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmds
EGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEqCGNvbnN0YW50AwAAAAAA
b2JhbC5pbnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuORBsb2NhbC5kb3VibGUuc2V0CGNvbnN0
AABACGNvbnN0YW50BAE8EWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50
YW50BAVjb3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My45EGxvY2Fs
BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQF
LmRvdWJsZS5zZXQIY29uc3RhbnQEBHJvZHMRYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3Vi
cGxhdGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchFnZW5lcmljLndhaXR3aGlsZRZmYWN0b3J5
bGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEASoIY29uc3RhbnQDAAAA
Lm1hY2hpbmUuYWN0aXZlCGNvbnN0YW50BAdwcmVzc2VyD2ZhY3RvcnkucHJvZHVjZQhjb25zdGFudAQF
AAAAAEAIY29uc3RhbnQEAS0TZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQEcmluZw1sb2NhbC5p
aW5nb3QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1l
bnQuZ2V0CGNvbnN0YW50BAR0aWVyDmdlbmVyaWMuZ290b2lmCGNvbnN0YW50AgcAAAARY29tcGFyaXNv
dGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25z
bi5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQEcm9kcwhjb25zdGFudAQBPBFhcml0aG1l
dGFudAMAAAAAAAAAQAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdl
dGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0
dAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQI
YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEA3JvZA1sb2NhbC5pbnQuZ2V0CGNvbnN0
Y29uc3RhbnQEBXBsYXRlDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEB3ByZXNz
YW50BAR0aWVyEWdlbmVyaWMud2FpdHdoaWxlFmZhY3RvcnkubWFjaGluZS5hY3RpdmUIY29uc3RhbnQE
ZXIOZ2VuZXJpYy5nb3RvaWYIY29uc3RhbnQCCQAAABFjb21wYXJpc29uLmRvdWJsZRFhcml0aG1ldGlj
BnNoYXBlcg9mYWN0b3J5LnByb2R1Y2UIY29uc3RhbnQEBWluZ290DWxvY2FsLmludC5nZXQIY29uc3Rh
LmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25zdGFu
bnQEBHRpZXILZG91YmxlLmNlaWwRYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUQbG9j
dAMAAAAAAAAQQAhjb25zdGFudAQBPBFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhj
YWwuZG91YmxlLmdldAhjb25zdGFudAQEcm9kcwhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFn
b25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29u
bG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3Rv
c3RhbnQEDHBsYXRlLnJ1YmJlcg1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdlbmVyaWMud2Fp
cnkuaXRlbXMuY291bnQIY29uc3RhbnQEA3JvZA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNv
dHdoaWxlFmZhY3RvcnkubWFjaGluZS5hY3RpdmUIY29uc3RhbnQEB3ByZXNzZXIPZmFjdG9yeS5wcm9k
bnN0YW50BAEvCGNvbnN0YW50AwAAAAAAAABACGNvbnN0YW50BAZzaGFwZXIOZ2VuZXJpYy5nb3RvaWYI
dWNlCGNvbnN0YW50BAZydWJiZXIIY29uc3RhbnQCAQAAABFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1l
Y29uc3RhbnQCCgAAABFjb21wYXJpc29uLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3Vi
dGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25z
bGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25zdGFudAMAAAAAAAAAQAhjb25zdGFu
dGFudAMAAAAAAAAQQAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdl
dAQBPBFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52
dAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQI
ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBHJpbmcNbG9jYWwu
Y29uc3RhbnQEDHBsYXRlLnJ1YmJlcg1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50
aW50LmdldAhjb25zdGFudAQEdGllchFnZW5lcmljLndhaXR3aGlsZQ9jb21wYXJpc29uLmJvb2wRY29t
BAdwcmVzc2VyDmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BBBjcmFmdF9zdGF0dXM6My45DmFyaXRobWV0
cGFyaXNvbi5kb3VibGUTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQDcm9kDWxvY2FsLmludC5n
aWMuaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BBBjcmFmdF9zdGF0dXM6My45CGNvbnN0YW50BAEr
ZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEATwQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQEcm9k
CGNvbnN0YW50AgIAAAA=
cwhjb25zdGFudAQBfBZmYWN0b3J5Lm1hY2hpbmUuYWN0aXZlCGNvbnN0YW50BAZzaGFwZXIPZmFjdG9y
</syntaxhighlight>
eS5wcm9kdWNlCGNvbnN0YW50BANyb2QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchFhcml0aG1l
|}
dGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3Vu
|-
dAhjb25zdGFudAQBKghjb25zdGFudAMAAAAAAAAAQAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJs
|craft 3:9:rings
ZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2Zh
|10
Y3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBHJpbmcNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGll
|
cghjb25zdGFudAQGc2hhcGVyDmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BBBjcmFmdF9zdGF0dXM6My45
{| class="wikitable mw-collapsible mw-collapsed"
DmFyaXRobWV0aWMuaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BBBjcmFmdF9zdGF0dXM6My45CGNv
!
bnN0YW50BAErCGNvbnN0YW50AgQAAAA=
|-
|src=
|<syntaxhighlight lang="actionscript">
:global double craft_inventory
:global double craft_inventory
:local int tier
:local int tier
Line 1,546: Line 1,464:


rings: gotoif(end, count*2.0 < craft_inventory * count("ring", tier))
rings: gotoif(end, count*2.0 < craft_inventory * count("ring", tier))
   waitwhile(count("rod", tier) < rods | active("shaper"))
   waitwhile(count("rod", tier) < rods {{!}} active("shaper"))
   produce("rod", tier, count*2.0 - craft_inventory * count("ring", tier), "shaper")
   produce("rod", tier, count*2.0 - craft_inventory * count("ring", tier), "shaper")


end: global.int.set("craft_status:3.9", global.int.get("craft_status:3.9") + 4)
end: global.int.set("craft_status:3.9", global.int.get("craft_status:3.9") + 4)
</syntaxhighlight>
}}
|}
 
 
====Wires====
(pic)
{| class="wikitable"
!Name
!Lines
!Code
|-
|-
|<syntaxhighlight lang="text">
|craft part:wire
D2NyYWZ0IDM6OTpyaW5ncwAAAAAAAAAACgAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmds
|9
b2JhbC5pbnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuORBsb2NhbC5kb3VibGUuc2V0CGNvbnN0
|{{AIScript
YW50BAVjb3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My45EGxvY2Fs
|code=
LmRvdWJsZS5zZXQIY29uc3RhbnQEBHJvZHMRYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3Vi
D2NyYWZ0IHBhcnQ6d2lyZQAAAAAAAAAACQAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmds
bGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEASoIY29uc3RhbnQDAAAA
b2JhbC5pbnQuZ2V0CGNvbnN0YW50BA9jcmFmdF90aWVyOndpcmUQbG9jYWwuZG91YmxlLnNldAhjb25z
AAAAAEAIY29uc3RhbnQEAS0TZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQEcmluZw1sb2NhbC5p
dGFudAQFY291bnQRZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQEEGNyYWZ0X2NvdW50OndpcmUOZ2Vu
bnQuZ2V0CGNvbnN0YW50BAR0aWVyDmdlbmVyaWMuZ290b2lmCGNvbnN0YW50AgcAAAARY29tcGFyaXNv
ZXJpYy5nb3RvaWYIY29uc3RhbnQCYwAAAA9jb21wYXJpc29uLmJvb2wPY29tcGFyaXNvbi5ib29sD2Nv
bi5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQEcm9kcwhjb25zdGFudAQBPBFhcml0aG1l
bXBhcmlzb24uYm9vbA5jb21wYXJpc29uLmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNv
dGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0
bnN0YW50BAE8CGNvbnN0YW50AgEAAAAIY29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50
YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEA3JvZA1sb2NhbC5pbnQuZ2V0CGNvbnN0
LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNv
YW50BAR0aWVyEWdlbmVyaWMud2FpdHdoaWxlFmZhY3RvcnkubWFjaGluZS5hY3RpdmUIY29uc3RhbnQE
bXBhcmlzb24uZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8
BnNoYXBlcg9mYWN0b3J5LnByb2R1Y2UIY29uc3RhbnQEBWluZ290DWxvY2FsLmludC5nZXQIY29uc3Rh
CGNvbnN0YW50AwAAAAAAAPA/CGNvbnN0YW50BAF8DmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0
bnQEBHRpZXILZG91YmxlLmNlaWwRYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUQbG9j
CGNvbnN0YW50BAxjcmFmdF9zdGF0dXMIY29uc3RhbnQEAT4IY29uc3RhbnQCxwAAAA5nZW5lcmljLmdv
YWwuZG91YmxlLmdldAhjb25zdGFudAQEcm9kcwhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFn
dG9pZghjb25zdGFudAIIAAAAEWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3Rh
bG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3Rv
bnQEBWNvdW50CGNvbnN0YW50BAE8EWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNv
cnkuaXRlbXMuY291bnQIY29uc3RhbnQEA3JvZA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNv
bnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25z
bnN0YW50BAEvCGNvbnN0YW50AwAAAAAAAABACGNvbnN0YW50BAZzaGFwZXIOZ2VuZXJpYy5nb3RvaWYI
dGFudAQFY2FibGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchFnZW5lcmljLndhaXR3aGlsZRZm
Y29uc3RhbnQCCgAAABFjb21wYXJpc29uLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3Vi
YWN0b3J5Lm1hY2hpbmUuYWN0aXZlCGNvbnN0YW50BAhyZWZpbmVyeQ9mYWN0b3J5LnByb2R1Y2UIY29u
bGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25zdGFudAMAAAAAAAAAQAhjb25zdGFu
c3RhbnQEBWluZ290DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXILZG91YmxlLmNlaWwRYXJpdGht
dAQBPBFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52
ZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291
ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBHJpbmcNbG9jYWwu
bnQIY29uc3RhbnQEAS0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQE
aW50LmdldAhjb25zdGFudAQEdGllchFnZW5lcmljLndhaXR3aGlsZQ9jb21wYXJpc29uLmJvb2wRY29t
D2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVj
cGFyaXNvbi5kb3VibGUTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQDcm9kDWxvY2FsLmludC5n
YWJsZQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAEvCGNvbnN0YW50AwAAAAAA
ZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEATwQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQEcm9k
AABACGNvbnN0YW50BAhyZWZpbmVyeRFnZW5lcmljLndhaXR3aGlsZRZmYWN0b3J5Lm1hY2hpbmUuYWN0
cwhjb25zdGFudAQBfBZmYWN0b3J5Lm1hY2hpbmUuYWN0aXZlCGNvbnN0YW50BAZzaGFwZXIPZmFjdG9y
aXZlCGNvbnN0YW50BAhyZWZpbmVyeQ9mYWN0b3J5LnByb2R1Y2UIY29uc3RhbnQEBWNhYmxlDWxvY2Fs
eS5wcm9kdWNlCGNvbnN0YW50BANyb2QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchFhcml0aG1l
LmludC5nZXQIY29uc3RhbnQEBHRpZXIQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29u
dGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3Vu
c3RhbnQECHJlZmluZXJ5EWdlbmVyaWMud2FpdHVudGlsEWNvbXBhcmlzb24uZG91YmxlE2ZhY3Rvcnku
dAhjb25zdGFudAQBKghjb25zdGFudAMAAAAAAAAAQAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJs
aXRlbXMuY291bnQIY29uc3RhbnQEBHdpcmUNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
ZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2Zh
dGFudAQCPj0QbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQ=
Y3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBHJpbmcNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGll
|src=
cghjb25zdGFudAQGc2hhcGVyDmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BBBjcmFmdF9zdGF0dXM6My45
:global double craft_inventory
DmFyaXRobWV0aWMuaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BBBjcmFmdF9zdGF0dXM6My45CGNv
:local int tier
bnN0YW50BAErCGNvbnN0YW50AgQAAAA=
:local double count
</syntaxhighlight>
 
|}
tier = global.int.get("craft_tier:wire")
|}
count = global.double.get("craft_count:wire")
gotoif(99, tier < 1 {{!}} tier > 10 {{!}} count < 1.0 {{!}} global.int.get("craft_status") > 199)
 
cables: gotoif(wires, count < craft_inventory * count("cable", tier))
  waitwhile(active("refinery"))
  produce("ingot", tier, ceil((count - craft_inventory * count("cable", tier)) / 2.0), "refinery")
  waitwhile(active("refinery"))
 
wires: produce("cable", tier, count, "refinery")
  waituntil(count("wire", tier) >= count)
}}
|}
 
 
====Screws====
(pic)
{| class="wikitable"
!Name
!Lines
!Code
|-
|craft part:screw
|12
|{{AIScript
|code=
EGNyYWZ0IHBhcnQ6c2NyZXcAAAAAAAAAAAwAAAANbG9jYWwuaW50LnNldAhjb25zdGFudAQEdGllcg5n
bG9iYWwuaW50LmdldAhjb25zdGFudAQQY3JhZnRfdGllcjpzY3JldxBsb2NhbC5kb3VibGUuc2V0CGNv
bnN0YW50BAVjb3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQRY3JhZnRfY291bnQ6c2NyZXcO
Z2VuZXJpYy5nb3RvaWYIY29uc3RhbnQCYwAAAA9jb21wYXJpc29uLmJvb2wPY29tcGFyaXNvbi5ib29s
D2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29uLmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVy
CGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAIY29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwu
aW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8
EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50
BAE8CGNvbnN0YW50AwAAAAAAAPA/CGNvbnN0YW50BAF8DmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQu
Z2V0CGNvbnN0YW50BAxjcmFmdF9zdGF0dXMIY29uc3RhbnQEAT4IY29uc3RhbnQCxwAAABBsb2NhbC5k
b3VibGUuc2V0CGNvbnN0YW50BARyb2RzC2RvdWJsZS5jZWlsEWFyaXRobWV0aWMuZG91YmxlEGxvY2Fs
LmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEvCGNvbnN0YW50AwAAAAAAABBADmdl
bmVyaWMuZ290b2lmCGNvbnN0YW50AgkAAAARY29tcGFyaXNvbi5kb3VibGUQbG9jYWwuZG91YmxlLmdl
dAhjb25zdGFudAQEcm9kcwhjb25zdGFudAQCPD0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJs
ZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNv
dW50CGNvbnN0YW50BANyb2QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchFnZW5lcmljLndhaXR3
aGlsZRZmYWN0b3J5Lm1hY2hpbmUuYWN0aXZlCGNvbnN0YW50BAZzaGFwZXIPZmFjdG9yeS5wcm9kdWNl
CGNvbnN0YW50BAVpbmdvdA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyC2RvdWJsZS5jZWlsEWFy
aXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQE
BHJvZHMIY29uc3RhbnQEAS0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3Rh
bnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50
BANyb2QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLwhjb25zdGFudAMAAAAA
AAAAQAhjb25zdGFudAQGc2hhcGVyEWdlbmVyaWMud2FpdHdoaWxlFmZhY3RvcnkubWFjaGluZS5hY3Rp
dmUIY29uc3RhbnQEBnNoYXBlchFnZW5lcmljLndhaXR3aGlsZRZmYWN0b3J5Lm1hY2hpbmUuYWN0aXZl
CGNvbnN0YW50BAZjdXR0ZXIPZmFjdG9yeS5wcm9kdWNlCGNvbnN0YW50BANyb2QNbG9jYWwuaW50Lmdl
dAhjb25zdGFudAQEdGllchBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BARyb2RzCGNvbnN0YW50BAZj
dXR0ZXIRZ2VuZXJpYy53YWl0d2hpbGUWZmFjdG9yeS5tYWNoaW5lLmFjdGl2ZQhjb25zdGFudAQGY3V0
dGVyDGdlbmVyaWMud2FpdAhjb25zdGFudAMAAAAAAAAAAA==
|src=
:global double craft_inventory
:local int tier
:local double count
 
tier = global.int.get("craft_tier:screw")
count = global.double.get("craft_count:screw")
gotoif(99, tier < 1 {{!}} tier > 10 {{!}} count < 1.0 {{!}} global.int.get("craft_status") > 199)
 
:local double rods
rods = ceil(count / 4.0)
 
rods: gotoif(screws, rods <= craft_inventory * count("rod", tier))
waitwhile(active("shaper"))
produce("ingot", tier, ceil((rods - craft_inventory * count("rod", tier)) / 2.0), "shaper")
waitwhile(active("shaper"))
 
screws: waitwhile(active("cutter"))
produce("rod", tier, rods, "cutter")
waitwhile(active("cutter"))
 
wait(0.0)
}}
|}
|}

Latest revision as of 07:28, 27 January 2021

Parts scripts

Chips (1)

Name Lines Code
craft 3:1 20
CWNyYWZ0IDM6MQAAAAAAAAAAFAAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuMRBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My4xDmdlbmVyaWMuZ290
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
Y29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
dGFudAQBPghjb25zdGFudAIFAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/E2dlbmVy
aWMuZXhlY3V0ZXN5bmMIY29uc3RhbnQEDGNyYWZ0IDM6MTppbhBsb2NhbC5kb3VibGUuc2V0CGNvbnN0
YW50BAhib2FyZF9oaRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVj
b3VudAhjb25zdGFudAQBKgNpMmQOYXJpdGhtZXRpYy5pbnQOYXJpdGhtZXRpYy5pbnQIY29uc3RhbnQC
AigNAAhjb25zdGFudAQBLw5hcml0aG1ldGljLmludAhjb25zdGFudAIKAAAACGNvbnN0YW50BANwb3cN
bG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQDbW9kCGNvbnN0YW50AgoAAAAQbG9j
YWwuZG91YmxlLnNldAhjb25zdGFudAQKY2lyY3VpdF9oaRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5k
b3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKgNpMmQOYXJpdGhtZXRpYy5pbnQOYXJp
dGhtZXRpYy5pbnQIY29uc3RhbnQCpGwDAAhjb25zdGFudAQBLw5hcml0aG1ldGljLmludAhjb25zdGFu
dAIKAAAACGNvbnN0YW50BANwb3cNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQD
bW9kCGNvbnN0YW50AgoAAAAOZ2xvYmFsLmludC5zZXQIY29uc3RhbnQEEGNyYWZ0X3RpZXI6aW5nb3QO
YXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25z
dGFudAICAAAAEWdsb2JhbC5kb3VibGUuc2V0CGNvbnN0YW50BBFjcmFmdF9jb3VudDppbmdvdBFhcml0
aG1ldGljLmRvdWJsZQpkb3VibGUubWF4CGNvbnN0YW50AwAAAAAAAAAAEWFyaXRobWV0aWMuZG91Ymxl
EGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQECGJvYXJkX2hpCGNvbnN0YW50BAEtEWFyaXRobWV0aWMu
ZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQE
ASoRYXJpdGhtZXRpYy5kb3VibGUTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQFcGxhdGUOYXJp
dGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFu
dAICAAAACGNvbnN0YW50BAErE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEDXBsYXRlLmNpcmN1
aXQOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghj
b25zdGFudAICAAAACGNvbnN0YW50BAErCmRvdWJsZS5tYXgIY29uc3RhbnQDAAAAAAAAAAALZG91Ymxl
LmNlaWwRYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhj
b25zdGFudAQKY2lyY3VpdF9oaQhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91
YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqEWFyaXRobWV0aWMuZG91
YmxlE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBWNhYmxlDmFyaXRobWV0aWMuaW50DWxvY2Fs
LmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQCAgAAAAhjb25zdGFudAQB
KxNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAdjaXJjdWl0DmFyaXRobWV0aWMuaW50DWxvY2Fs
LmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQCAgAAAAhjb25zdGFudAQB
Lwhjb25zdGFudAMAAAAAAAAAQBNnZW5lcmljLmV4ZWN1dGVzeW5jCGNvbnN0YW50BAtjcmFmdCBpbmdv
dA5nZW5lcmljLmdvdG9pZghjb25zdGFudAJjAAAADmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0
CGNvbnN0YW50BAxjcmFmdF9zdGF0dXMIY29uc3RhbnQEAT4IY29uc3RhbnQCxwAAABBsb2NhbC5kb3Vi
bGUuc2V0CGNvbnN0YW50BAhib2FyZF9sbxFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0
CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKgNpMmQOYXJpdGhtZXRpYy5pbnQOYXJpdGhtZXRpYy5p
bnQIY29uc3RhbnQCmjANAAhjb25zdGFudAQBLw5hcml0aG1ldGljLmludAhjb25zdGFudAIKAAAACGNv
bnN0YW50BANwb3cNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQDbW9kCGNvbnN0
YW50AgoAAAAQbG9jYWwuZG91YmxlLnNldAhjb25zdGFudAQKY2lyY3VpdF9sbxFhcml0aG1ldGljLmRv
dWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25zdGFudAMA
AAAAAAAAQA5nbG9iYWwuaW50LnNldAhjb25zdGFudAQQY3JhZnRfdGllcjppbmdvdA5hcml0aG1ldGlj
LmludA5hcml0aG1ldGljLmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAEq
CGNvbnN0YW50AgIAAAAIY29uc3RhbnQEAS0IY29uc3RhbnQCAQAAABFnbG9iYWwuZG91YmxlLnNldAhj
b25zdGFudAQRY3JhZnRfY291bnQ6aW5nb3QRYXJpdGhtZXRpYy5kb3VibGUKZG91YmxlLm1heAhjb25z
dGFudAMAAAAAAAAAABFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAhi
b2FyZF9sbwhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25z
dGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqEWFyaXRobWV0aWMuZG91YmxlE2ZhY3Rvcnku
aXRlbXMuY291bnQIY29uc3RhbnQEBXBsYXRlDmFyaXRobWV0aWMuaW50DmFyaXRobWV0aWMuaW50DWxv
Y2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQCAgAAAAhjb25zdGFu
dAQBLQhjb25zdGFudAIBAAAACGNvbnN0YW50BAErE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQE
DXBsYXRlLmNpcmN1aXQOYXJpdGhtZXRpYy5pbnQOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhj
b25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAICAAAACGNvbnN0YW50BAEtCGNvbnN0YW50
AgEAAAAIY29uc3RhbnQEASsKZG91YmxlLm1heAhjb25zdGFudAMAAAAAAAAAAAtkb3VibGUuY2VpbBFh
cml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50
BApjaXJjdWl0X2xvCGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0
CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoRYXJpdGhtZXRpYy5kb3VibGUTZmFj
dG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQFY2FibGUOYXJpdGhtZXRpYy5pbnQOYXJpdGhtZXRpYy5p
bnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAICAAAACGNv
bnN0YW50BAEtCGNvbnN0YW50AgEAAAAIY29uc3RhbnQEASsTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25z
dGFudAQHY2lyY3VpdA5hcml0aG1ldGljLmludA5hcml0aG1ldGljLmludA1sb2NhbC5pbnQuZ2V0CGNv
bnN0YW50BAR0aWVyCGNvbnN0YW50BAEqCGNvbnN0YW50AgIAAAAIY29uc3RhbnQEAS0IY29uc3RhbnQC
AQAAAAhjb25zdGFudAQBLwhjb25zdGFudAMAAAAAAAAAQBNnZW5lcmljLmV4ZWN1dGVzeW5jCGNvbnN0
YW50BAtjcmFmdCBpbmdvdA5nbG9iYWwuaW50LnNldAhjb25zdGFudAQQY3JhZnRfc3RhdHVzOjMuMQhj
b25zdGFudAIBAAAAD2dlbmVyaWMuZXhlY3V0ZQhjb25zdGFudAQPY3JhZnQgMzoxOmJvYXJkD2dlbmVy
aWMuZXhlY3V0ZQhjb25zdGFudAQRY3JhZnQgMzoxOmNpcmN1aXQRZ2VuZXJpYy53YWl0dW50aWwPY29t
cGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA9jb21wYXJpc29uLmJvb2wPY29tcGFyaXNvbi5ib29s
DmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BBBjcmFmdF9zdGF0dXM6My4xCGNv
bnN0YW50BAI+PQhjb25zdGFudAIHAAAACGNvbnN0YW50BAEmEWNvbXBhcmlzb24uZG91YmxlE2ZhY3Rv
cnkuaXRlbXMuY291bnQIY29uc3RhbnQEDXBsYXRlLmNpcmN1aXQOYXJpdGhtZXRpYy5pbnQOYXJpdGht
ZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAIC
AAAACGNvbnN0YW50BAEtCGNvbnN0YW50AgEAAAAIY29uc3RhbnQEAj49EGxvY2FsLmRvdWJsZS5nZXQI
Y29uc3RhbnQECGJvYXJkX2xvCGNvbnN0YW50BAEmEWNvbXBhcmlzb24uZG91YmxlE2ZhY3RvcnkuaXRl
bXMuY291bnQIY29uc3RhbnQEDXBsYXRlLmNpcmN1aXQOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50Lmdl
dAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAICAAAACGNvbnN0YW50BAI+PRBsb2Nh
bC5kb3VibGUuZ2V0CGNvbnN0YW50BAhib2FyZF9oaQhjb25zdGFudAQBJhFjb21wYXJpc29uLmRvdWJs
ZRNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAdjaXJjdWl0DmFyaXRobWV0aWMuaW50DmFyaXRo
bWV0aWMuaW50DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQC
AgAAAAhjb25zdGFudAQBLQhjb25zdGFudAIBAAAACGNvbnN0YW50BAI+PRBsb2NhbC5kb3VibGUuZ2V0
CGNvbnN0YW50BApjaXJjdWl0X2xvCGNvbnN0YW50BAEmEWNvbXBhcmlzb24uZG91YmxlE2ZhY3Rvcnku
aXRlbXMuY291bnQIY29uc3RhbnQEB2NpcmN1aXQOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhj
b25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAICAAAACGNvbnN0YW50BAI+PRBsb2NhbC5k
b3VibGUuZ2V0CGNvbnN0YW50BApjaXJjdWl0X2hpDWZhY3RvcnkuY3JhZnQIY29uc3RhbnQEBGNoaXAN
bG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3Vu
dA==
; Chips
:global double craft_inventory
:local int tier
:local double count
:local double board_lo
:local double board_hi
:local double circuit_lo
:local double circuit_hi

tier = global.int.get("craft_tier:3.1")
count = global.double.get("craft_count:3.1")
gotoif(99, tier < 1 | tier > 5 | count < 1.0)

; Verify ingot resources
; Also craft lower tier chips for input
executesync("craft 3:1:in")

; Ensure we have enough ingots (hi)
board_hi = count * i2d((862210 / (10 ^ tier)) % 10)
circuit_hi = count * i2d((224420 / (10 ^ tier)) % 10)
global.int.set("craft_tier:ingot", tier * 2)
global.double.set("craft_count:ingot", max(0.0, board_hi - craft_inventory * (count("plate", tier * 2) + count("plate.circuit", tier * 2))) + max(0.0, ceil((circuit_hi - craft_inventory * (count("cable", tier * 2) + count("circuit", tier * 2)))/2.0)))
executesync("craft ingot")
gotoif(99, global.int.get("craft_status") > 199)

; Ensure we have enough ingots (lo)
board_lo = count * i2d((864410 / (10 ^ tier)) % 10)
circuit_lo = count * 2.0
global.int.set("craft_tier:ingot", tier * 2 - 1)
global.double.set("craft_count:ingot", max(0.0, board_lo - craft_inventory * (count("plate", tier * 2 - 1) + count("plate.circuit", tier * 2 - 1))) + max(0.0, ceil((circuit_lo - craft_inventory * (count("cable", tier * 2 - 1) + count("circuit", tier * 2 - 1)))/2.0)))
executesync("craft ingot")

global.int.set("craft_status:3.1", 1)
execute("craft 3:1:board")
execute("craft 3:1:circuit")

waituntil(global.int.get("craft_status:3.1") >= 7 & count("plate.circuit", tier * 2 - 1) >= board_lo & count("plate.circuit", tier * 2) >= board_hi & count("circuit", tier * 2 - 1) >= circuit_lo & count("circuit", tier * 2) >= circuit_hi)
craft("chip", tier, count)


craft 3:1:in 18
DGNyYWZ0IDM6MTppbgAAAAAAAAAAEgAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2Jh
bC5pbnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuMRBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50
BAVjb3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My4xDmdsb2JhbC5p
bnQuc2V0CGNvbnN0YW50BBBjcmFmdF90aWVyOmluZ290DmFyaXRobWV0aWMuaW50DWxvY2FsLmludC5n
ZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQCAgAAABFnbG9iYWwuZG91YmxlLnNl
dAhjb25zdGFudAQRY3JhZnRfY291bnQ6aW5nb3QRYXJpdGhtZXRpYy5kb3VibGUKZG91YmxlLm1heAhj
b25zdGFudAMAAAAAAAAAABFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5k
b3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKgNpMmQOYXJpdGhtZXRpYy5pbnQOYXJp
dGhtZXRpYy5pbnQIY29uc3RhbnQCAigNAAhjb25zdGFudAQBLw5hcml0aG1ldGljLmludAhjb25zdGFu
dAIKAAAACGNvbnN0YW50BANwb3cNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQD
bW9kCGNvbnN0YW50AgoAAAAIY29uc3RhbnQEAS0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJs
ZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhFhcml0aG1ldGljLmRvdWJs
ZRNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVwbGF0ZQ5hcml0aG1ldGljLmludA1sb2NhbC5p
bnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAEqCGNvbnN0YW50AgIAAAAIY29uc3RhbnQEASsT
ZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQNcGxhdGUuY2lyY3VpdA5hcml0aG1ldGljLmludA1s
b2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAEqCGNvbnN0YW50AgIAAAAIY29uc3Rh
bnQEASsKZG91YmxlLm1heAhjb25zdGFudAMAAAAAAAAAAAtkb3VibGUuY2VpbBFhcml0aG1ldGljLmRv
dWJsZRFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNv
bnN0YW50BAVjb3VudAhjb25zdGFudAQBKgNpMmQOYXJpdGhtZXRpYy5pbnQOYXJpdGhtZXRpYy5pbnQI
Y29uc3RhbnQCpGwDAAhjb25zdGFudAQBLw5hcml0aG1ldGljLmludAhjb25zdGFudAIKAAAACGNvbnN0
YW50BANwb3cNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQDbW9kCGNvbnN0YW50
AgoAAAAIY29uc3RhbnQEAS0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3Rh
bnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhFhcml0aG1ldGljLmRvdWJsZRNmYWN0b3J5Lml0
ZW1zLmNvdW50CGNvbnN0YW50BAVjYWJsZQ5hcml0aG1ldGljLmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0
YW50BAR0aWVyCGNvbnN0YW50BAEqCGNvbnN0YW50AgIAAAAIY29uc3RhbnQEASsTZmFjdG9yeS5pdGVt
cy5jb3VudAhjb25zdGFudAQHY2lyY3VpdA5hcml0aG1ldGljLmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0
YW50BAR0aWVyCGNvbnN0YW50BAEqCGNvbnN0YW50AgIAAAAIY29uc3RhbnQEAS8IY29uc3RhbnQDAAAA
AAAAAEAOZ2xvYmFsLmludC5zZXQIY29uc3RhbnQEEmNyYWZ0X3ZlcmlmeTppbmdvdAhjb25zdGFudAIB
AAAAE2dlbmVyaWMuZXhlY3V0ZXN5bmMIY29uc3RhbnQEC2NyYWZ0IGluZ290DmdlbmVyaWMuZ290b2lm
CGNvbnN0YW50AmMAAAAOY29tcGFyaXNvbi5pbnQOZ2xvYmFsLmludC5nZXQIY29uc3RhbnQEDGNyYWZ0
X3N0YXR1cwhjb25zdGFudAQBPghjb25zdGFudALHAAAADmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BBBj
cmFmdF90aWVyOmluZ290DmFyaXRobWV0aWMuaW50DmFyaXRobWV0aWMuaW50DWxvY2FsLmludC5nZXQI
Y29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQCAgAAAAhjb25zdGFudAQBLQhjb25zdGFu
dAIBAAAAEWdsb2JhbC5kb3VibGUuc2V0CGNvbnN0YW50BBFjcmFmdF9jb3VudDppbmdvdBFhcml0aG1l
dGljLmRvdWJsZQpkb3VibGUubWF4CGNvbnN0YW50AwAAAAAAAAAAEWFyaXRobWV0aWMuZG91YmxlEWFy
aXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEq
A2kyZA5hcml0aG1ldGljLmludA5hcml0aG1ldGljLmludAhjb25zdGFudAKaMA0ACGNvbnN0YW50BAEv
DmFyaXRobWV0aWMuaW50CGNvbnN0YW50AgoAAAAIY29uc3RhbnQEA3Bvdw1sb2NhbC5pbnQuZ2V0CGNv
bnN0YW50BAR0aWVyCGNvbnN0YW50BANtb2QIY29uc3RhbnQCCgAAAAhjb25zdGFudAQBLRFhcml0aG1l
dGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0
YW50BAEqEWFyaXRobWV0aWMuZG91YmxlE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBXBsYXRl
DmFyaXRobWV0aWMuaW50DmFyaXRobWV0aWMuaW50DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXII
Y29uc3RhbnQEASoIY29uc3RhbnQCAgAAAAhjb25zdGFudAQBLQhjb25zdGFudAIBAAAACGNvbnN0YW50
BAErE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEDXBsYXRlLmNpcmN1aXQOYXJpdGhtZXRpYy5p
bnQOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghj
b25zdGFudAICAAAACGNvbnN0YW50BAEtCGNvbnN0YW50AgEAAAAIY29uc3RhbnQEASsKZG91YmxlLm1h
eAhjb25zdGFudAMAAAAAAAAAAAtkb3VibGUuY2VpbBFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGlj
LmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhj
b25zdGFudAQBKghjb25zdGFudAMAAAAAAAAAQAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFn
bG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqEWFyaXRo
bWV0aWMuZG91YmxlE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBWNhYmxlDmFyaXRobWV0aWMu
aW50DmFyaXRobWV0aWMuaW50DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoI
Y29uc3RhbnQCAgAAAAhjb25zdGFudAQBLQhjb25zdGFudAIBAAAACGNvbnN0YW50BAErE2ZhY3Rvcnku
aXRlbXMuY291bnQIY29uc3RhbnQEB2NpcmN1aXQOYXJpdGhtZXRpYy5pbnQOYXJpdGhtZXRpYy5pbnQN
bG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAICAAAACGNvbnN0
YW50BAEtCGNvbnN0YW50AgEAAAAIY29uc3RhbnQEAS8IY29uc3RhbnQDAAAAAAAAAEAOZ2xvYmFsLmlu
dC5zZXQIY29uc3RhbnQEEmNyYWZ0X3ZlcmlmeTppbmdvdAhjb25zdGFudAIBAAAAE2dlbmVyaWMuZXhl
Y3V0ZXN5bmMIY29uc3RhbnQEC2NyYWZ0IGluZ290DmdlbmVyaWMuZ290b2lmCGNvbnN0YW50AmMAAAAO
Y29tcGFyaXNvbi5pbnQOZ2xvYmFsLmludC5nZXQIY29uc3RhbnQEDGNyYWZ0X3N0YXR1cwhjb25zdGFu
dAQBPghjb25zdGFudALHAAAADmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuMQ5h
cml0aG1ldGljLmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAEtCGNvbnN0
YW50AgEAAAARZ2xvYmFsLmRvdWJsZS5zZXQIY29uc3RhbnQED2NyYWZ0X2NvdW50OjMuMRFhcml0aG1l
dGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUu
Z2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25zdGFudAMAAAAAAAAAQAhjb25zdGFudAQB
KhFhcml0aG1ldGljLmRvdWJsZQxkb3VibGUuZmxvb3IRYXJpdGhtZXRpYy5kb3VibGUIY29uc3RhbnQD
AAAAABBFJEEIY29uc3RhbnQEAS8RYXJpdGhtZXRpYy5kb3VibGUIY29uc3RhbnQDAAAAAAAAJEAIY29u
c3RhbnQEA3BvdwNpMmQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQDbW9kCGNv
bnN0YW50AwAAAAAAACRACGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUu
Z2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3Vu
dAhjb25zdGFudAQEY2hpcA5hcml0aG1ldGljLmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVy
CGNvbnN0YW50BAEtCGNvbnN0YW50AgEAAAATZ2VuZXJpYy5leGVjdXRlc3luYwhjb25zdGFudAQJY3Jh
ZnQgMzoxDmdlbmVyaWMuZ290b2lmCGNvbnN0YW50AmMAAAAOY29tcGFyaXNvbi5pbnQOZ2xvYmFsLmlu
dC5nZXQIY29uc3RhbnQEDGNyYWZ0X3N0YXR1cwhjb25zdGFudAQBPghjb25zdGFudALHAAAADmdsb2Jh
bC5pbnQuc2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuMQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0
aWVyEWdsb2JhbC5kb3VibGUuc2V0CGNvbnN0YW50BA9jcmFmdF9jb3VudDozLjEQbG9jYWwuZG91Ymxl
LmdldAhjb25zdGFudAQFY291bnQ=
:global double craft_inventory
:local int tier
:local double count

tier = global.int.get("craft_tier:3.1")
count = global.double.get("craft_count:3.1")

; Ingots (hi)
;   board_hi = global.double.get("craft_count:3.1") * i2d((862210 / (10 ^ mytier)) % 10)
;   circuit_hi = global.double.get("craft_count:3.1") * i2d((224420 / (10 ^ mytier)) % 10)
global.int.set("craft_tier:ingot", tier * 2)
global.double.set("craft_count:ingot", max(0.0, count * i2d((862210 / (10 ^ tier)) % 10) - craft_inventory * (count("plate", tier * 2) + count("plate.circuit", tier * 2))) + max(0.0, ceil((count * i2d((224420 / (10 ^ tier)) % 10) - craft_inventory * (count("cable", tier * 2) + count("circuit", tier * 2)))/2.0)))
global.int.set("craft_verify:ingot", 1)
executesync("craft ingot")
gotoif(99, global.int.get("craft_status") > 199)

; Ingots (lo)
;   board_lo = global.double.get("craft_count:3.1") * i2d((864410 / (10 ^ mytier)) % 10)
;   circuit_lo = global.double.get("craft_count:3.1") * 2.0
global.int.set("craft_tier:ingot", tier * 2 - 1)
global.double.set("craft_count:ingot", max(0.0, count * i2d((864410 / (10 ^ tier)) % 10) - craft_inventory * (count("plate", tier * 2 - 1) + count("plate.circuit", tier * 2 - 1))) + max(0.0, ceil((count*2.0 - craft_inventory * (count("cable", tier * 2 - 1) + count("circuit", tier * 2 - 1)))/2.0)))
global.int.set("craft_verify:ingot", 1)
executesync("craft ingot")
gotoif(99, global.int.get("craft_status") > 199)

; Input chips
global.int.set("craft_tier:3.1", tier - 1)
global.double.set("craft_count:3.1", count * 2.0 * (floor(664200.0 / (10.0 ^ i2d(tier))) % 10.0) - craft_inventory * count("chip", tier - 1))
executesync("craft 3:1")
gotoif(99, global.int.get("craft_status") > 199)

; Restore state for this tier
global.int.set("craft_tier:3.1", tier)
global.double.set("craft_count:3.1", count)


craft 3:1:board 16
D2NyYWZ0IDM6MTpib2FyZAAAAAAAAAAAEAAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmds
b2JhbC5pbnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuMRBsb2NhbC5kb3VibGUuc2V0CGNvbnN0
YW50BAhib2FyZF9sbxFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQP
Y3JhZnRfY291bnQ6My4xCGNvbnN0YW50BAEqA2kyZA5hcml0aG1ldGljLmludA5hcml0aG1ldGljLmlu
dAhjb25zdGFudAKaMA0ACGNvbnN0YW50BAEvDmFyaXRobWV0aWMuaW50CGNvbnN0YW50AgoAAAAIY29u
c3RhbnQEA3Bvdw1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BANtb2QIY29uc3Rh
bnQCCgAAABBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAhib2FyZF9oaRFhcml0aG1ldGljLmRvdWJs
ZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My4xCGNvbnN0YW50BAEqA2ky
ZA5hcml0aG1ldGljLmludA5hcml0aG1ldGljLmludAhjb25zdGFudAICKA0ACGNvbnN0YW50BAEvDmFy
aXRobWV0aWMuaW50CGNvbnN0YW50AgoAAAAIY29uc3RhbnQEA3Bvdw1sb2NhbC5pbnQuZ2V0CGNvbnN0
YW50BAR0aWVyCGNvbnN0YW50BANtb2QIY29uc3RhbnQCCgAAAA5nZW5lcmljLmdvdG9pZghjb25zdGFu
dAIHAAAAEWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQECGJvYXJkX2xv
CGNvbnN0YW50BAI8PRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQP
Y3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqEWFyaXRobWV0aWMuZG91YmxlE2ZhY3RvcnkuaXRlbXMu
Y291bnQIY29uc3RhbnQEDXBsYXRlLmNpcmN1aXQOYXJpdGhtZXRpYy5pbnQOYXJpdGhtZXRpYy5pbnQN
bG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAICAAAACGNvbnN0
YW50BAEtCGNvbnN0YW50AgEAAAAIY29uc3RhbnQEASsTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFu
dAQFcGxhdGUOYXJpdGhtZXRpYy5pbnQOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFu
dAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAICAAAACGNvbnN0YW50BAEtCGNvbnN0YW50AgEAAAAR
Z2VuZXJpYy53YWl0d2hpbGUWZmFjdG9yeS5tYWNoaW5lLmFjdGl2ZQhjb25zdGFudAQHcHJlc3Nlcg9m
YWN0b3J5LnByb2R1Y2UIY29uc3RhbnQEBWluZ290DmFyaXRobWV0aWMuaW50DmFyaXRobWV0aWMuaW50
DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQCAgAAAAhjb25z
dGFudAQBLQhjb25zdGFudAIBAAAAEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29u
c3RhbnQECGJvYXJkX2xvCGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUu
Z2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoRYXJpdGhtZXRpYy5kb3VibGUT
ZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQNcGxhdGUuY2lyY3VpdA5hcml0aG1ldGljLmludA5h
cml0aG1ldGljLmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAEqCGNvbnN0
YW50AgIAAAAIY29uc3RhbnQEAS0IY29uc3RhbnQCAQAAAAhjb25zdGFudAQBKxNmYWN0b3J5Lml0ZW1z
LmNvdW50CGNvbnN0YW50BAVwbGF0ZQ5hcml0aG1ldGljLmludA5hcml0aG1ldGljLmludA1sb2NhbC5p
bnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAEqCGNvbnN0YW50AgIAAAAIY29uc3RhbnQEAS0I
Y29uc3RhbnQCAQAAAAhjb25zdGFudAQHcHJlc3Nlcg5nZW5lcmljLmdvdG9pZghjb25zdGFudAIKAAAA
EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQECGJvYXJkX2hpCGNvbnN0
YW50BAI8PRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRf
aW52ZW50b3J5CGNvbnN0YW50BAEqEWFyaXRobWV0aWMuZG91YmxlE2ZhY3RvcnkuaXRlbXMuY291bnQI
Y29uc3RhbnQEDXBsYXRlLmNpcmN1aXQOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFu
dAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAICAAAACGNvbnN0YW50BAErE2ZhY3RvcnkuaXRlbXMu
Y291bnQIY29uc3RhbnQEBXBsYXRlDmFyaXRobWV0aWMuaW50DWxvY2FsLmludC5nZXQIY29uc3RhbnQE
BHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQCAgAAABFnZW5lcmljLndhaXR3aGlsZRZmYWN0b3J5Lm1h
Y2hpbmUuYWN0aXZlCGNvbnN0YW50BAdwcmVzc2VyD2ZhY3RvcnkucHJvZHVjZQhjb25zdGFudAQFaW5n
b3QOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghj
b25zdGFudAICAAAAEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQECGJv
YXJkX2hpCGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0
YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoRYXJpdGhtZXRpYy5kb3VibGUTZmFjdG9yeS5p
dGVtcy5jb3VudAhjb25zdGFudAQNcGxhdGUuY2lyY3VpdA5hcml0aG1ldGljLmludA1sb2NhbC5pbnQu
Z2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAEqCGNvbnN0YW50AgIAAAAIY29uc3RhbnQEASsTZmFj
dG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQFcGxhdGUOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50Lmdl
dAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAICAAAACGNvbnN0YW50BAdwcmVzc2Vy
DmdlbmVyaWMuZ290b2lmCGNvbnN0YW50Ag0AAAARY29tcGFyaXNvbi5kb3VibGUQbG9jYWwuZG91Ymxl
LmdldAhjb25zdGFudAQIYm9hcmRfbG8IY29uc3RhbnQEAjw9EWFyaXRobWV0aWMuZG91YmxlEWdsb2Jh
bC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5p
dGVtcy5jb3VudAhjb25zdGFudAQNcGxhdGUuY2lyY3VpdA5hcml0aG1ldGljLmludA5hcml0aG1ldGlj
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAEqCGNvbnN0YW50AgIAAAAI
Y29uc3RhbnQEAS0IY29uc3RhbnQCAQAAABFnZW5lcmljLndhaXR3aGlsZQ9jb21wYXJpc29uLmJvb2wW
ZmFjdG9yeS5tYWNoaW5lLmFjdGl2ZQhjb25zdGFudAQIcmVmaW5lcnkIY29uc3RhbnQEAXwRY29tcGFy
aXNvbi5kb3VibGUTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQFcGxhdGUOYXJpdGhtZXRpYy5p
bnQOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghj
b25zdGFudAICAAAACGNvbnN0YW50BAEtCGNvbnN0YW50AgEAAAAIY29uc3RhbnQEATwRYXJpdGhtZXRp
Yy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQIYm9hcmRfbG8IY29uc3RhbnQEAS0RYXJp
dGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhj
b25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BA1wbGF0ZS5jaXJjdWl0DmFyaXRo
bWV0aWMuaW50DmFyaXRobWV0aWMuaW50DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3Rh
bnQEASoIY29uc3RhbnQCAgAAAAhjb25zdGFudAQBLQhjb25zdGFudAIBAAAAD2ZhY3RvcnkucHJvZHVj
ZQhjb25zdGFudAQFcGxhdGUOYXJpdGhtZXRpYy5pbnQOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50Lmdl
dAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAICAAAACGNvbnN0YW50BAEtCGNvbnN0
YW50AgEAAAARYXJpdGhtZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQIYm9hcmRf
bG8IY29uc3RhbnQEAS0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQE
D2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BA1w
bGF0ZS5jaXJjdWl0DmFyaXRobWV0aWMuaW50DmFyaXRobWV0aWMuaW50DWxvY2FsLmludC5nZXQIY29u
c3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQCAgAAAAhjb25zdGFudAQBLQhjb25zdGFudAIB
AAAACGNvbnN0YW50BAhyZWZpbmVyeQ5nZW5lcmljLmdvdG9pZghjb25zdGFudAIQAAAAEWNvbXBhcmlz
b24uZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQECGJvYXJkX2hpCGNvbnN0YW50BAI8PRFh
cml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5
CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEDXBsYXRlLmNpcmN1aXQOYXJp
dGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFu
dAICAAAAEWdlbmVyaWMud2FpdHdoaWxlD2NvbXBhcmlzb24uYm9vbBZmYWN0b3J5Lm1hY2hpbmUuYWN0
aXZlCGNvbnN0YW50BAhyZWZpbmVyeQhjb25zdGFudAQBfBFjb21wYXJpc29uLmRvdWJsZRNmYWN0b3J5
Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVwbGF0ZQ5hcml0aG1ldGljLmludA1sb2NhbC5pbnQuZ2V0CGNv
bnN0YW50BAR0aWVyCGNvbnN0YW50BAEqCGNvbnN0YW50AgIAAAAIY29uc3RhbnQEATwRYXJpdGhtZXRp
Yy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQIYm9hcmRfaGkIY29uc3RhbnQEAS0RYXJp
dGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhj
b25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BA1wbGF0ZS5jaXJjdWl0DmFyaXRo
bWV0aWMuaW50DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQC
AgAAAA9mYWN0b3J5LnByb2R1Y2UIY29uc3RhbnQEBXBsYXRlDmFyaXRobWV0aWMuaW50DWxvY2FsLmlu
dC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQCAgAAABFhcml0aG1ldGljLmRv
dWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAhib2FyZF9oaQhjb25zdGFudAQBLRFhcml0aG1l
dGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0
YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEDXBsYXRlLmNpcmN1aXQOYXJpdGhtZXRp
Yy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAICAAAA
CGNvbnN0YW50BAhyZWZpbmVyeQ5nbG9iYWwuaW50LnNldAhjb25zdGFudAQQY3JhZnRfc3RhdHVzOjMu
MQ5hcml0aG1ldGljLmludA5nbG9iYWwuaW50LmdldAhjb25zdGFudAQQY3JhZnRfc3RhdHVzOjMuMQhj
b25zdGFudAQBKwhjb25zdGFudAICAAAA
:global double craft_inventory
:local int tier
:local double board_lo
:local double board_hi

tier = global.int.get("craft_tier:3.1")
board_lo = global.double.get("craft_count:3.1") * i2d((864410 / (10 ^ tier)) % 10)
board_hi = global.double.get("craft_count:3.1") * i2d((862210 / (10 ^ tier)) % 10)

; Craft plates
lo1: gotoif(hi1, board_lo <= craft_inventory * (count("plate.circuit", tier * 2 - 1) + count("plate", tier * 2 - 1)))
   waitwhile(active("presser"))
   produce("ingot", tier * 2 - 1, board_lo - craft_inventory * (count("plate.circuit", tier * 2 - 1) + count("plate", tier * 2 - 1)), "presser")

hi1: gotoif(lo2, board_hi <= craft_inventory * (count("plate.circuit", tier * 2) + count("plate", tier * 2)))
   waitwhile(active("presser"))
   produce("ingot", tier * 2, board_hi - craft_inventory * (count("plate.circuit", tier * 2) + count("plate", tier * 2)), "presser")

; Craft circuit boards
lo2: gotoif(hi2, board_lo <= craft_inventory * (count("plate.circuit", tier * 2 - 1)))
   waitwhile(active("refinery") | count("plate", tier * 2 - 1) < board_lo - craft_inventory * (count("plate.circuit", tier * 2 - 1)))
   produce("plate", tier * 2 - 1, board_lo - craft_inventory * (count("plate.circuit", tier * 2 - 1)), "refinery")

hi2: gotoif(end, board_hi <= craft_inventory * (count("plate.circuit", tier * 2)))
   waitwhile(active("refinery") | count("plate", tier * 2) < board_hi - craft_inventory * (count("plate.circuit", tier * 2)))
   produce("plate", tier * 2, board_hi - craft_inventory * (count("plate.circuit", tier * 2)), "refinery")

end: global.int.set("craft_status:3.1", global.int.get("craft_status:3.1") + 2)


craft 3:1:circuit 16
EWNyYWZ0IDM6MTpjaXJjdWl0AAAAAAAAAAAQAAAADWxvY2FsLmludC5zZXQIY29uc3RhbnQEBHRpZXIO
Z2xvYmFsLmludC5nZXQIY29uc3RhbnQEDmNyYWZ0X3RpZXI6My4xEGxvY2FsLmRvdWJsZS5zZXQIY29u
c3RhbnQECmNpcmN1aXRfbG8RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3Rh
bnQED2NyYWZ0X2NvdW50OjMuMQhjb25zdGFudAQBKghjb25zdGFudAMAAAAAAAAAQBBsb2NhbC5kb3Vi
bGUuc2V0CGNvbnN0YW50BApjaXJjdWl0X2hpEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUu
Z2V0CGNvbnN0YW50BA9jcmFmdF9jb3VudDozLjEIY29uc3RhbnQEASoDaTJkDmFyaXRobWV0aWMuaW50
DmFyaXRobWV0aWMuaW50CGNvbnN0YW50AqRsAwAIY29uc3RhbnQEAS8OYXJpdGhtZXRpYy5pbnQIY29u
c3RhbnQCCgAAAAhjb25zdGFudAQDcG93DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3Rh
bnQEA21vZAhjb25zdGFudAIKAAAADmdlbmVyaWMuZ290b2lmCGNvbnN0YW50AgcAAAARY29tcGFyaXNv
bi5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQKY2lyY3VpdF9sbwhjb25zdGFudAQCPD0R
YXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9y
eQhjb25zdGFudAQBKhFhcml0aG1ldGljLmRvdWJsZRNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50
BAdjaXJjdWl0DmFyaXRobWV0aWMuaW50DmFyaXRobWV0aWMuaW50DWxvY2FsLmludC5nZXQIY29uc3Rh
bnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQCAgAAAAhjb25zdGFudAQBLQhjb25zdGFudAIBAAAA
CGNvbnN0YW50BAErE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBWNhYmxlDmFyaXRobWV0aWMu
aW50DmFyaXRobWV0aWMuaW50DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoI
Y29uc3RhbnQCAgAAAAhjb25zdGFudAQBLQhjb25zdGFudAIBAAAAEWdlbmVyaWMud2FpdHdoaWxlFmZh
Y3RvcnkubWFjaGluZS5hY3RpdmUIY29uc3RhbnQECHJlZmluZXJ5D2ZhY3RvcnkucHJvZHVjZQhjb25z
dGFudAQFaW5nb3QOYXJpdGhtZXRpYy5pbnQOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25z
dGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAICAAAACGNvbnN0YW50BAEtCGNvbnN0YW50AgEA
AAALZG91YmxlLmNlaWwRYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUQbG9jYWwuZG91
YmxlLmdldAhjb25zdGFudAQKY2lyY3VpdF9sbwhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFn
bG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqEWFyaXRo
bWV0aWMuZG91YmxlE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEB2NpcmN1aXQOYXJpdGhtZXRp
Yy5pbnQOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQB
Kghjb25zdGFudAICAAAACGNvbnN0YW50BAEtCGNvbnN0YW50AgEAAAAIY29uc3RhbnQEASsTZmFjdG9y
eS5pdGVtcy5jb3VudAhjb25zdGFudAQFY2FibGUOYXJpdGhtZXRpYy5pbnQOYXJpdGhtZXRpYy5pbnQN
bG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAICAAAACGNvbnN0
YW50BAEtCGNvbnN0YW50AgEAAAAIY29uc3RhbnQEAS8IY29uc3RhbnQDAAAAAAAAAEAIY29uc3RhbnQE
CHJlZmluZXJ5DmdlbmVyaWMuZ290b2lmCGNvbnN0YW50AgoAAAARY29tcGFyaXNvbi5kb3VibGUQbG9j
YWwuZG91YmxlLmdldAhjb25zdGFudAQKY2lyY3VpdF9oaQhjb25zdGFudAQCPD0RYXJpdGhtZXRpYy5k
b3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQB
KhFhcml0aG1ldGljLmRvdWJsZRNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAdjaXJjdWl0DmFy
aXRobWV0aWMuaW50DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3Rh
bnQCAgAAAAhjb25zdGFudAQBKxNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVjYWJsZQ5hcml0
aG1ldGljLmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAEqCGNvbnN0YW50
AgIAAAARZ2VuZXJpYy53YWl0d2hpbGUWZmFjdG9yeS5tYWNoaW5lLmFjdGl2ZQhjb25zdGFudAQIcmVm
aW5lcnkPZmFjdG9yeS5wcm9kdWNlCGNvbnN0YW50BAVpbmdvdA5hcml0aG1ldGljLmludA1sb2NhbC5p
bnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAEqCGNvbnN0YW50AgIAAAALZG91YmxlLmNlaWwR
YXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFu
dAQKY2lyY3VpdF9oaQhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdl
dAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqEWFyaXRobWV0aWMuZG91YmxlE2Zh
Y3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEB2NpcmN1aXQOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50
LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKghjb25zdGFudAICAAAACGNvbnN0YW50BAErE2Zh
Y3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBWNhYmxlDmFyaXRobWV0aWMuaW50DWxvY2FsLmludC5n
ZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQCAgAAAAhjb25zdGFudAQBLwhjb25z
dGFudAMAAAAAAAAAQAhjb25zdGFudAQIcmVmaW5lcnkOZ2VuZXJpYy5nb3RvaWYIY29uc3RhbnQCDQAA
ABFjb21wYXJpc29uLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BApjaXJjdWl0X2xvCGNv
bnN0YW50BAI8PRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3Jh
ZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEB2NpcmN1
aXQOYXJpdGhtZXRpYy5pbnQOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGll
cghjb25zdGFudAQBKghjb25zdGFudAICAAAACGNvbnN0YW50BAEtCGNvbnN0YW50AgEAAAARZ2VuZXJp
Yy53YWl0d2hpbGUPY29tcGFyaXNvbi5ib29sEWNvbXBhcmlzb24uZG91YmxlE2ZhY3RvcnkuaXRlbXMu
Y291bnQIY29uc3RhbnQEBWNhYmxlDmFyaXRobWV0aWMuaW50DmFyaXRobWV0aWMuaW50DWxvY2FsLmlu
dC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQCAgAAAAhjb25zdGFudAQBLQhj
b25zdGFudAIBAAAACGNvbnN0YW50BAE8EWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQI
Y29uc3RhbnQECmNpcmN1aXRfbG8IY29uc3RhbnQEAS0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRv
dWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1z
LmNvdW50CGNvbnN0YW50BAdjaXJjdWl0DmFyaXRobWV0aWMuaW50DmFyaXRobWV0aWMuaW50DWxvY2Fs
LmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQCAgAAAAhjb25zdGFudAQB
LQhjb25zdGFudAIBAAAACGNvbnN0YW50BAF8FmZhY3RvcnkubWFjaGluZS5hY3RpdmUIY29uc3RhbnQE
CWFzc2VtYmxlcg9mYWN0b3J5LnByb2R1Y2UIY29uc3RhbnQEBWNhYmxlDmFyaXRobWV0aWMuaW50DmFy
aXRobWV0aWMuaW50DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3Rh
bnQCAgAAAAhjb25zdGFudAQBLQhjb25zdGFudAIBAAAAEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRv
dWJsZS5nZXQIY29uc3RhbnQECmNpcmN1aXRfbG8IY29uc3RhbnQEAS0RYXJpdGhtZXRpYy5kb3VibGUR
Z2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0
b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAdjaXJjdWl0DmFyaXRobWV0aWMuaW50DmFyaXRobWV0aWMu
aW50DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQCAgAAAAhj
b25zdGFudAQBLQhjb25zdGFudAIBAAAACGNvbnN0YW50BAlhc3NlbWJsZXIOZ2VuZXJpYy5nb3RvaWYI
Y29uc3RhbnQCEAAAABFjb21wYXJpc29uLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BApj
aXJjdWl0X2hpCGNvbnN0YW50BAI8PRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhj
b25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29u
c3RhbnQEB2NpcmN1aXQOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghj
b25zdGFudAQBKghjb25zdGFudAICAAAAEWdlbmVyaWMud2FpdHdoaWxlD2NvbXBhcmlzb24uYm9vbBFj
b21wYXJpc29uLmRvdWJsZRNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVjYWJsZQ5hcml0aG1l
dGljLmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAEqCGNvbnN0YW50AgIA
AAAIY29uc3RhbnQEATwRYXJpdGhtZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQK
Y2lyY3VpdF9oaQhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhj
b25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29u
c3RhbnQEB2NpcmN1aXQOYXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghj
b25zdGFudAQBKghjb25zdGFudAICAAAACGNvbnN0YW50BAF8FmZhY3RvcnkubWFjaGluZS5hY3RpdmUI
Y29uc3RhbnQECWFzc2VtYmxlcg9mYWN0b3J5LnByb2R1Y2UIY29uc3RhbnQEBWNhYmxlDmFyaXRobWV0
aWMuaW50DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEASoIY29uc3RhbnQCAgAA
ABFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BApjaXJjdWl0X2hpCGNv
bnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFm
dF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQHY2lyY3Vp
dA5hcml0aG1ldGljLmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAEqCGNv
bnN0YW50AgIAAAAIY29uc3RhbnQECWFzc2VtYmxlcg5nbG9iYWwuaW50LnNldAhjb25zdGFudAQQY3Jh
ZnRfc3RhdHVzOjMuMQ5hcml0aG1ldGljLmludA5nbG9iYWwuaW50LmdldAhjb25zdGFudAQQY3JhZnRf
c3RhdHVzOjMuMQhjb25zdGFudAQBKwhjb25zdGFudAIEAAAA
:global double craft_inventory
:local int tier
:local double circuit_lo
:local double circuit_hi

tier = global.int.get("craft_tier:3.1")
circuit_lo = global.double.get("craft_count:3.1") * 2.0
circuit_hi = global.double.get("craft_count:3.1") * i2d((224420 / (10 ^ tier)) % 10)

; Craft cables
lo1: gotoif(hi1, circuit_lo <= craft_inventory * (count("circuit", tier * 2 - 1) + count("cable", tier * 2 - 1)))
	waitwhile(active("refinery"))
	produce("ingot", tier * 2 - 1, ceil((circuit_lo - craft_inventory * (count("circuit", tier * 2 - 1) + count("cable", tier * 2 - 1))) / 2.0), "refinery")

hi1: gotoif(lo2, circuit_hi <= craft_inventory * (count("circuit", tier * 2) + count("cable", tier * 2)))
	waitwhile(active("refinery"))
	produce("ingot", tier * 2, ceil((circuit_hi - craft_inventory * (count("circuit", tier * 2) + count("cable", tier * 2))) / 2.0), "refinery")

; Craft circuit wires
lo2: gotoif(hi2, circuit_lo <= craft_inventory * count("circuit", tier * 2 - 1))
   waitwhile(count("cable", tier * 2 - 1) < circuit_lo - craft_inventory * count("circuit", tier * 2 - 1) | active("assembler"))
   produce("cable", tier * 2 - 1, circuit_lo - craft_inventory * count("circuit", tier * 2 - 1), "assembler")

hi2: gotoif(end, circuit_hi <= craft_inventory * count("circuit", tier * 2))
   waitwhile(count("cable", tier * 2) < circuit_hi - craft_inventory * count("circuit", tier * 2) | active("assembler"))
   produce("cable", tier * 2, circuit_hi - craft_inventory * count("circuit", tier * 2), "assembler")

end: global.int.set("craft_status:3.1", global.int.get("craft_status:3.1") + 4)


Plates (2)

Name Lines Code
craft 3:2 9
CWNyYWZ0IDM6MgAAAAAAAAAACQAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuMhBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My4yDmdlbmVyaWMuZ290
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
Y29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
dGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/Dmdsb2Jh
bC5pbnQuc2V0CGNvbnN0YW50BBBjcmFmdF90aWVyOmluZ290DWxvY2FsLmludC5nZXQIY29uc3RhbnQE
BHRpZXIRZ2xvYmFsLmRvdWJsZS5zZXQIY29uc3RhbnQEEWNyYWZ0X2NvdW50OmluZ290EGxvY2FsLmRv
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50E2dlbmVyaWMuZXhlY3V0ZXN5bmMIY29uc3RhbnQEC2NyYWZ0
IGluZ290DmdlbmVyaWMuZ290b2lmCGNvbnN0YW50AmMAAAAOY29tcGFyaXNvbi5pbnQOZ2xvYmFsLmlu
dC5nZXQIY29uc3RhbnQEDGNyYWZ0X3N0YXR1cwhjb25zdGFudAQBPghjb25zdGFudALHAAAAEWdlbmVy
aWMud2FpdHdoaWxlFmZhY3RvcnkubWFjaGluZS5hY3RpdmUIY29uc3RhbnQEB3ByZXNzZXIPZmFjdG9y
eS5wcm9kdWNlCGNvbnN0YW50BAVpbmdvdA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEGxvY2Fs
LmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAdwcmVzc2Vy
; Regular plates
:global int craft_status
:local double count
:local int tier

tier = global.int.get("craft_tier:3.2")
count = global.double.get("craft_count:3.2")
gotoif(99, tier < 1 | tier > 10 | count < 1.0)

global.int.set("craft_tier:ingot", tier)
global.double.set("craft_count:ingot", count)
executesync("craft ingot")
gotoif(99, craft_status > 199)

waitwhile(active("presser"))
produce("ingot", tier, count, "presser")


Dense plates (3)

Name Lines Code
craft 3:3 14
CWNyYWZ0IDM6MwAAAAAAAAAADgAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuMxBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My4zDmdlbmVyaWMuZ290
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
Y29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
dGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/EGxvY2Fs
LmRvdWJsZS5zZXQIY29uc3RhbnQEBnBsYXRlcxFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRv
dWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25zdGFudAMA
AAAAAAAiQAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25z
dGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3Rh
bnQEC3BsYXRlLnN0YWNrDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIOZ2xvYmFsLmludC5zZXQI
Y29uc3RhbnQEEGNyYWZ0X3RpZXI6aW5nb3QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchFnbG9i
YWwuZG91YmxlLnNldAhjb25zdGFudAQRY3JhZnRfY291bnQ6aW5nb3QRYXJpdGhtZXRpYy5kb3VibGUQ
bG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQGcGxhdGVzCGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91
YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoT
ZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQFcGxhdGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQE
dGllchNnZW5lcmljLmV4ZWN1dGVzeW5jCGNvbnN0YW50BAtjcmFmdCBpbmdvdA5nZW5lcmljLmdvdG9p
Zghjb25zdGFudAJjAAAADmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BAxjcmFm
dF9zdGF0dXMIY29uc3RhbnQEAT4IY29uc3RhbnQCxwAAAA5nZW5lcmljLmdvdG9pZghjb25zdGFudAIM
AAAAEWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBnBsYXRlcwhjb25z
dGFudAQCPD0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0
X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVwbGF0ZQ1s
b2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdlbmVyaWMud2FpdHdoaWxlFmZhY3RvcnkubWFjaGlu
ZS5hY3RpdmUIY29uc3RhbnQEB3ByZXNzZXIPZmFjdG9yeS5wcm9kdWNlCGNvbnN0YW50BAVpbmdvdA1s
b2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5n
ZXQIY29uc3RhbnQEBnBsYXRlcwhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91
YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMu
Y291bnQIY29uc3RhbnQEBXBsYXRlDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQE
B3ByZXNzZXIRZ2VuZXJpYy53YWl0d2hpbGUPY29tcGFyaXNvbi5ib29sEWNvbXBhcmlzb24uZG91Ymxl
E2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBXBsYXRlDWxvY2FsLmludC5nZXQIY29uc3RhbnQE
BHRpZXIIY29uc3RhbnQEATwQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQGcGxhdGVzCGNvbnN0YW50
BAF8FmZhY3RvcnkubWFjaGluZS5hY3RpdmUIY29uc3RhbnQEB3ByZXNzZXINZmFjdG9yeS5jcmFmdAhj
b25zdGFudAQLcGxhdGUuc3RhY2sNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchFhcml0aG1ldGlj
LmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBLRFhcml0aG1l
dGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0
YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEC3BsYXRlLnN0YWNrDWxvY2FsLmludC5n
ZXQIY29uc3RhbnQEBHRpZXIPZmFjdG9yeS5wcm9kdWNlCGNvbnN0YW50BAtwbGF0ZS5zdGFjaw1sb2Nh
bC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNv
bnN0YW50BAdwcmVzc2Vy
; Dense plates
:global double craft_inventory
:local int tier
:local double count
:local double plates

tier = global.int.get("craft_tier:3.3")
count = global.double.get("craft_count:3.3")
gotoif(99, tier < 1 | tier > 10 | count < 1.0)

plates = count * 9.0 - craft_inventory * count("plate.stack", tier)

global.int.set("craft_tier:ingot", tier)
global.double.set("craft_count:ingot", plates - craft_inventory * count("plate", tier))
executesync("craft ingot")
gotoif(99, global.int.get("craft_status") > 199)

plates: gotoif(stacks, plates <= craft_inventory * count("plate", tier))
  waitwhile(active("presser"))
  produce("ingot", tier, plates - craft_inventory * count("plate", tier), "presser")

stacks: waitwhile(count("plate", tier) < plates | active("presser"))
  craft("plate.stack", tier, count - craft_inventory * count("plate.stack", tier))
  produce("plate.stack", tier, count, "presser")


Blocks (4)

Name Lines Code
craft 3:4 10
CWNyYWZ0IDM6NAAAAAAAAAAACgAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuNBBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My40DmdlbmVyaWMuZ290
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
Y29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
dGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/EGxvY2Fs
LmRvdWJsZS5zZXQIY29uc3RhbnQEDnBsYXRlc3BlcmJsb2NrEWFyaXRobWV0aWMuZG91YmxlCGNvbnN0
YW50AwAAAAAAABBACGNvbnN0YW50BAEqDGRvdWJsZS5yb3VuZBFhcml0aG1ldGljLmRvdWJsZRFhcml0
aG1ldGljLmRvdWJsZQhjb25zdGFudAMAADBkBQsfQghjb25zdGFudAQBLxFhcml0aG1ldGljLmRvdWJs
ZQhjb25zdGFudAMAAAAAAAAkQAhjb25zdGFudAQDcG93A2kyZA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50
BAR0aWVyCGNvbnN0YW50BANtb2QIY29uc3RhbnQDAAAAAAAAJEAOZ2xvYmFsLmludC5zZXQIY29uc3Rh
bnQEDmNyYWZ0X3RpZXI6My4zDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIRZ2xvYmFsLmRvdWJs
ZS5zZXQIY29uc3RhbnQED2NyYWZ0X2NvdW50OjMuMxFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGlj
LmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKhBsb2NhbC5k
b3VibGUuZ2V0CGNvbnN0YW50BA5wbGF0ZXNwZXJibG9jawhjb25zdGFudAQBLRFhcml0aG1ldGljLmRv
dWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEq
E2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEC3BsYXRlLmRlbnNlDWxvY2FsLmludC5nZXQIY29u
c3RhbnQEBHRpZXITZ2VuZXJpYy5leGVjdXRlc3luYwhjb25zdGFudAQJY3JhZnQgMzozDmdlbmVyaWMu
Z290b2lmCGNvbnN0YW50AmMAAAAOY29tcGFyaXNvbi5pbnQOZ2xvYmFsLmludC5nZXQIY29uc3RhbnQE
DGNyYWZ0X3N0YXR1cwhjb25zdGFudAQBPghjb25zdGFudALHAAAAEWdlbmVyaWMud2FpdHdoaWxlEWNv
bXBhcmlzb24uZG91YmxlE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEC3BsYXRlLmRlbnNlDWxv
Y2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEATwRYXJpdGhtZXRpYy5kb3VibGUQbG9j
YWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEASoQbG9jYWwuZG91YmxlLmdldAhj
b25zdGFudAQOcGxhdGVzcGVyYmxvY2sNZmFjdG9yeS5jcmFmdAhjb25zdGFudAQFYmxvY2sNbG9jYWwu
aW50LmdldAhjb25zdGFudAQEdGllchBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudA==
; Blocks
:global double craft_inventory
:local int tier
:local double count
:local double platesperblock
:local double stacks
:local double plates

tier = global.int.get("craft_tier:3.4")
count = global.double.get("craft_count:3.4")
gotoif(99, tier < 1 | tier > 10 | count < 1.0)

plates: platesperblock = 4.0 * round((33332222220.0 / (10.0 ^ i2d(tier))) % 10.0)
  global.int.set("craft_tier:3.3", tier)
  global.double.set("craft_count:3.3", count * platesperblock - craft_inventory * count("plate.dense", tier))
  executesync("craft 3:3")
gotoif(99, global.int.get("craft_status") > 199)

waitwhile(count("plate.dense", tier) < count * platesperblock)
craft("block", tier, count)


Cables (5)

Name Lines Code
craft 3:5 9
CWNyYWZ0IDM6NQAAAAAAAAAACQAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuNRBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My41DmdlbmVyaWMuZ290
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
Y29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
dGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/Dmdsb2Jh
bC5pbnQuc2V0CGNvbnN0YW50BBBjcmFmdF90aWVyOmluZ290DWxvY2FsLmludC5nZXQIY29uc3RhbnQE
BHRpZXIRZ2xvYmFsLmRvdWJsZS5zZXQIY29uc3RhbnQEEWNyYWZ0X2NvdW50OmluZ290EWFyaXRobWV0
aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEvCGNvbnN0
YW50AwAAAAAAAABAE2dlbmVyaWMuZXhlY3V0ZXN5bmMIY29uc3RhbnQEC2NyYWZ0IGluZ290DmdlbmVy
aWMuZ290b2lmCGNvbnN0YW50AmMAAAAOY29tcGFyaXNvbi5pbnQOZ2xvYmFsLmludC5nZXQIY29uc3Rh
bnQEDGNyYWZ0X3N0YXR1cwhjb25zdGFudAQBPghjb25zdGFudALHAAAAEWdlbmVyaWMud2FpdHdoaWxl
FmZhY3RvcnkubWFjaGluZS5hY3RpdmUIY29uc3RhbnQECHJlZmluZXJ5D2ZhY3RvcnkucHJvZHVjZQhj
b25zdGFudAQFaW5nb3QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcgtkb3VibGUuY2VpbBFhcml0
aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBLwhj
b25zdGFudAMAAAAAAAAAQAhjb25zdGFudAQIcmVmaW5lcnk=
; Cables
:global double craft_inventory
:local int tier
:local double count

tier = global.int.get("craft_tier:3.5")
count = global.double.get("craft_count:3.5")
gotoif(99, tier < 1 | tier > 10 | count < 1.0)

global.int.set("craft_tier:ingot", tier)
global.double.set("craft_count:ingot", count / 2.0)
executesync("craft ingot")
gotoif(99, global.int.get("craft_status") > 199)

waitwhile(active("refinery"))
produce("ingot", tier, ceil(count / 2.0), "refinery")


Insulated cables (6)

Name Lines Code
craft 3:6 21
CWNyYWZ0IDM6NgAAAAAAAAAAFQAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuNhBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My42DmdlbmVyaWMuZ290
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
Y29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
dGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/EGxvY2Fs
LmRvdWJsZS5zZXQIY29uc3RhbnQEBmNhYmxlcxFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUu
Z2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKgpkb3VibGUubWF4CmRvdWJsZS5tYXgIY29uc3Rh
bnQDAAAAAAAA8D8RYXJpdGhtZXRpYy5kb3VibGUDaTJkDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRp
ZXIIY29uc3RhbnQEAS0IY29uc3RhbnQDAAAAAAAAAEAKZG91YmxlLm1heBFhcml0aG1ldGljLmRvdWJs
ZQhjb25zdGFudAMAAAAAAAAkQAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZQhjb25zdGFudAMA
AAAAAAAUQAhjb25zdGFudAQBKhFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZQNpMmQN
bG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLQhjb25zdGFudAMAAAAAAAAgQAhj
b25zdGFudAQDcG93CGNvbnN0YW50AwAAAAAAAABAC2RvdWJsZS5jZWlsEWFyaXRobWV0aWMuZG91Ymxl
EWFyaXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlA2kyZA1sb2NhbC5pbnQuZ2V0CGNvbnN0
YW50BAR0aWVyCGNvbnN0YW50BAEtCGNvbnN0YW50AwAAAAAAAPA/CGNvbnN0YW50BANwb3cIY29uc3Rh
bnQDAAAAAAAA+D8IY29uc3RhbnQEAS0IY29uc3RhbnQDAAAAAAAAJkAQbG9jYWwuZG91YmxlLnNldAhj
b25zdGFudAQGcnViYmVyEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQE
BWNvdW50CGNvbnN0YW50BAEqCmRvdWJsZS5tYXgIY29uc3RhbnQDAAAAAAAAAAARYXJpdGhtZXRpYy5k
b3VibGURYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUIY29uc3RhbnQDAAAAAAAAAEAI
Y29uc3RhbnQEASoDaTJkDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEAS0IY29u
c3RhbnQDAAAAAAAAEEAIY29uc3RhbnQEAS0KZG91YmxlLm1heAhjb25zdGFudAMAAAAAAAAAABFhcml0
aG1ldGljLmRvdWJsZQhjb25zdGFudAMAAAAAAAAAQAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJs
ZRFhcml0aG1ldGljLmRvdWJsZQNpMmQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFu
dAQBLQhjb25zdGFudAMAAAAAAAAgQAhjb25zdGFudAQBKhFhcml0aG1ldGljLmRvdWJsZQNpMmQNbG9j
YWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLQhjb25zdGFudAMAAAAAAAAiQA5nZW5l
cmljLmdvdG9pZghjb25zdGFudAIKAAAAEWNvbXBhcmlzb24uZG91YmxlE2ZhY3RvcnkuaXRlbXMuY291
bnQIY29uc3RhbnQEBnJ1YmJlcghjb25zdGFudAIBAAAACGNvbnN0YW50BAI+PRFhcml0aG1ldGljLmRv
dWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAZydWJiZXIIY29uc3RhbnQEAS0RYXJpdGhtZXRp
Yy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFu
dAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAxwbGF0ZS5ydWJiZXIIY29uc3RhbnQCAQAA
AA5nbG9iYWwuaW50LnNldAhjb25zdGFudAQMY3JhZnRfc3RhdHVzCGNvbnN0YW50ApwBAAAOZ2xvYmFs
LmludC5zZXQIY29uc3RhbnQEEmNyYWZ0X3JlcXVpcmVfdGllcghjb25zdGFudAL/////EWdsb2JhbC5k
b3VibGUuc2V0CGNvbnN0YW50BBNjcmFmdF9yZXF1aXJlX2NvdW50EGxvY2FsLmRvdWJsZS5nZXQIY29u
c3RhbnQEBnJ1YmJlcg5nbG9iYWwuaW50LnNldAhjb25zdGFudAQQY3JhZnRfdGllcjppbmdvdA1sb2Nh
bC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdsb2JhbC5kb3VibGUuc2V0CGNvbnN0YW50BBFjcmFmdF9j
b3VudDppbmdvdBFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUu
Z2V0CGNvbnN0YW50BAZjYWJsZXMIY29uc3RhbnQEAS0TZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFu
dAQFY2FibGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLwhjb25zdGFudAMA
AAAAAAAAQBNnZW5lcmljLmV4ZWN1dGVzeW5jCGNvbnN0YW50BAtjcmFmdCBpbmdvdA5nZW5lcmljLmdv
dG9pZghjb25zdGFudAJjAAAADmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BAxj
cmFmdF9zdGF0dXMIY29uc3RhbnQEAT4IY29uc3RhbnQCxwAAAA5nZW5lcmljLmdvdG9pZghjb25zdGFu
dAIRAAAAEWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBmNhYmxlcwhj
b25zdGFudAQCPD0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2Ny
YWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVjYWJs
ZQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdlbmVyaWMud2FpdHdoaWxlFmZhY3RvcnkubWFj
aGluZS5hY3RpdmUIY29uc3RhbnQECHJlZmluZXJ5D2ZhY3RvcnkucHJvZHVjZQhjb25zdGFudAQFaW5n
b3QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcgtkb3VibGUuY2VpbBFhcml0aG1ldGljLmRvdWJs
ZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAZjYWJsZXMIY29uc3Rh
bnQEAS0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2lu
dmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVjYWJsZQ1sb2Nh
bC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAEvCGNvbnN0YW50AwAAAAAAAABACGNvbnN0
YW50BAhyZWZpbmVyeQ5nZW5lcmljLmdvdG9pZghjb25zdGFudAIUAAAAEWNvbXBhcmlzb24uZG91Ymxl
EGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBnJ1YmJlcghjb25zdGFudAQCPD0TZmFjdG9yeS5pdGVt
cy5jb3VudAhjb25zdGFudAQMcGxhdGUucnViYmVyCGNvbnN0YW50AgEAAAARZ2VuZXJpYy53YWl0d2hp
bGUWZmFjdG9yeS5tYWNoaW5lLmFjdGl2ZQhjb25zdGFudAQHcHJlc3Nlcg9mYWN0b3J5LnByb2R1Y2UI
Y29uc3RhbnQEBnJ1YmJlcg1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWFyaXRobWV0aWMuZG91
YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBnJ1YmJlcghjb25zdGFudAQBLRFhcml0aG1ldGlj
LmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50
BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEDHBsYXRlLnJ1YmJlcghjb25zdGFudAIBAAAA
CGNvbnN0YW50BAdwcmVzc2VyEWdlbmVyaWMud2FpdHVudGlsD2NvbXBhcmlzb24uYm9vbBFjb21wYXJp
c29uLmRvdWJsZRNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVjYWJsZQ1sb2NhbC5pbnQuZ2V0
CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAI+PRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAZjYWJs
ZXMIY29uc3RhbnQEASYRY29tcGFyaXNvbi5kb3VibGUTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFu
dAQMcGxhdGUucnViYmVyCGNvbnN0YW50AgEAAAAIY29uc3RhbnQEAj49EGxvY2FsLmRvdWJsZS5nZXQI
Y29uc3RhbnQEBnJ1YmJlcg1mYWN0b3J5LmNyYWZ0CGNvbnN0YW50BA9jYWJsZS5pbnN1bGF0ZWQNbG9j
YWwuaW50LmdldAhjb25zdGFudAQEdGllchBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudA==
; Insulated cables
:global double craft_inventory
:local int tier
:local double count
:local double cables
:local double rubber

tier = global.int.get("craft_tier:3.6")
count = global.double.get("craft_count:3.6")
gotoif(99, tier < 1 | tier > 10 | count < 1.0)

cables = count * max(max(1.0, i2d(tier) - 2.0), max(10.0 - (5.0 * ((i2d(tier) - 8.0) ^ 2.0)), ceil(((i2d(tier) - 1.0) ^ 1.5) - 11.0)))
rubber = count * max(0.0, ((2.0 * i2d(tier)) - 4.0) - max(0.0, 2.0 - ((i2d(tier) - 8.0) * (i2d(tier) - 9.0))))

gotoif(ingots, count("rubber", 1) >= rubber - craft_inventory * count("plate.rubber", 1))
  global.int.set("craft_status", 412)
  global.int.set("craft_require_tier", -1)
  global.double.set("craft_require_count", rubber)

ingots: global.int.set("craft_tier:ingot", tier)
  global.double.set("craft_count:ingot", (cables - count("cable", tier)) / 2.0)
  executesync("craft ingot")
check: gotoif(99, global.int.get("craft_status") > 199)

cables: gotoif(rubber, cables <= craft_inventory * count("cable", tier))
  waitwhile(active("refinery"))
  produce("ingot", tier, ceil((cables - craft_inventory * count("cable", tier)) / 2.0), "refinery")

rubber: gotoif(craft, rubber <= count("plate.rubber", 1))
  waitwhile(active("presser"))
  produce("rubber", tier, rubber - craft_inventory * count("plate.rubber", 1), "presser")

craft: waituntil(count("cable", tier) >= cables & count("plate.rubber", 1) >= rubber)
craft("cable.insulated", tier, count)


Rods (7)

Name Lines Code
craft 3:7 9
CWNyYWZ0IDM6NwAAAAAAAAAACQAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuNxBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My43DmdlbmVyaWMuZ290
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
Y29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
dGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/Dmdsb2Jh
bC5pbnQuc2V0CGNvbnN0YW50BBBjcmFmdF90aWVyOmluZ290DWxvY2FsLmludC5nZXQIY29uc3RhbnQE
BHRpZXIRZ2xvYmFsLmRvdWJsZS5zZXQIY29uc3RhbnQEEWNyYWZ0X2NvdW50OmluZ290EWFyaXRobWV0
aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEvCGNvbnN0
YW50AwAAAAAAAABAE2dlbmVyaWMuZXhlY3V0ZXN5bmMIY29uc3RhbnQEC2NyYWZ0IGluZ290DmdlbmVy
aWMuZ290b2lmCGNvbnN0YW50AmMAAAAOY29tcGFyaXNvbi5pbnQOZ2xvYmFsLmludC5nZXQIY29uc3Rh
bnQEDGNyYWZ0X3N0YXR1cwhjb25zdGFudAQBPghjb25zdGFudALHAAAAEWdlbmVyaWMud2FpdHdoaWxl
FmZhY3RvcnkubWFjaGluZS5hY3RpdmUIY29uc3RhbnQECHJlZmluZXJ5D2ZhY3RvcnkucHJvZHVjZQhj
b25zdGFudAQFaW5nb3QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcgtkb3VibGUuY2VpbBFhcml0
aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBLwhj
b25zdGFudAMAAAAAAAAAQAhjb25zdGFudAQGc2hhcGVy
; Rods
:global double craft_inventory
:local int tier
:local double count

tier = global.int.get("craft_tier:3.7")
count = global.double.get("craft_count:3.7")
gotoif(99, tier < 1 | tier > 10 | count < 1.0)

global.int.set("craft_tier:ingot", tier)
global.double.set("craft_count:ingot", count / 2.0)
executesync("craft ingot")
gotoif(99, global.int.get("craft_status") > 199)

waitwhile(active("refinery"))
produce("ingot", tier, ceil(count / 2.0), "shaper")


Motors (8)

Name Lines Code
craft 3:8 20
CWNyYWZ0IDM6OAAAAAAAAAAAFAAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuOBBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My44DmdlbmVyaWMuZ290
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
Y29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
dGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/EGxvY2Fs
LmRvdWJsZS5zZXQIY29uc3RhbnQEBHJvZHMRYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3Vi
bGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEASoIY29uc3RhbnQDAAAA
AAAAAEAIY29uc3RhbnQEASsKZG91YmxlLm1heAhjb25zdGFudAMAAAAAAAAAAAtkb3VibGUuY2VpbBFh
cml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50
BAVjb3VudAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25z
dGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3Rh
bnQEBXNjcmV3DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEAS8IY29uc3RhbnQD
AAAAAAAAEEAOZ2VuZXJpYy5nb3RvaWYIY29uc3RhbnQCCQAAABFjb21wYXJpc29uLmRvdWJsZRBsb2Nh
bC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQCPD0TZmFjdG9yeS5pdGVtcy5jb3Vu
dAhjb25zdGFudAQGcnViYmVyCGNvbnN0YW50AgEAAAAOZ2xvYmFsLmludC5zZXQIY29uc3RhbnQEDGNy
YWZ0X3N0YXR1cwhjb25zdGFudAKcAQAADmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BBJjcmFmdF9yZXF1
aXJlX3RpZXIIY29uc3RhbnQC/////xFnbG9iYWwuZG91YmxlLnNldAhjb25zdGFudAQTY3JhZnRfcmVx
dWlyZV9jb3VudBBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudA5nbG9iYWwuaW50LnNldAhj
b25zdGFudAQQY3JhZnRfdGllcjppbmdvdA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdsb2Jh
bC5kb3VibGUuc2V0CGNvbnN0YW50BBFjcmFmdF9jb3VudDppbmdvdBFhcml0aG1ldGljLmRvdWJsZRFh
cml0aG1ldGljLmRvdWJsZQpkb3VibGUubWF4CGNvbnN0YW50AwAAAAAAAAAAC2RvdWJsZS5jZWlsEWFy
aXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQE
BHJvZHMIY29uc3RhbnQEAS0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3Rh
bnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50
BANyb2QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLwhjb25zdGFudAMAAAAA
AAAAQAhjb25zdGFudAQBKwpkb3VibGUubWF4CGNvbnN0YW50AwAAAAAAAAAAC2RvdWJsZS5jZWlsEWFy
aXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQE
BWNvdW50CGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0
YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoRYXJpdGhtZXRpYy5kb3VibGUTZmFjdG9yeS5p
dGVtcy5jb3VudAhjb25zdGFudAQFY2FibGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
dGFudAQBKxNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAR3aXJlDWxvY2FsLmludC5nZXQIY29u
c3RhbnQEBHRpZXIIY29uc3RhbnQEAS8IY29uc3RhbnQDAAAAAAAAAEAIY29uc3RhbnQEASsKZG91Ymxl
Lm1heAhjb25zdGFudAMAAAAAAAAAABFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBs
b2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25zdGFudAMAAAAAAAAQ
QAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQP
Y3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBXBs
YXRlDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXITZ2VuZXJpYy5leGVjdXRlc3luYwhjb25zdGFu
dAQLY3JhZnQgaW5nb3QOZ2VuZXJpYy5nb3RvaWYIY29uc3RhbnQCYwAAAA5jb21wYXJpc29uLmludA5n
bG9iYWwuaW50LmdldAhjb25zdGFudAQMY3JhZnRfc3RhdHVzCGNvbnN0YW50BAE+CGNvbnN0YW50AscA
AAAOZ2xvYmFsLmludC5zZXQIY29uc3RhbnQEEGNyYWZ0X3N0YXR1czozLjgIY29uc3RhbnQCAQAAAA9n
ZW5lcmljLmV4ZWN1dGUIY29uc3RhbnQEDmNyYWZ0IDM6ODpyb2RzD2dlbmVyaWMuZXhlY3V0ZQhjb25z
dGFudAQOY3JhZnQgMzo4OndpcmUOZ2VuZXJpYy5nb3RvaWYIY29uc3RhbnQCEwAAABFjb21wYXJpc29u
LmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhj
b25zdGFudAQBKghjb25zdGFudAMAAAAAAAAQQAhjb25zdGFudAQCPD0RYXJpdGhtZXRpYy5kb3VibGUR
Z2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0
b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVwbGF0ZQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVy
EWdlbmVyaWMud2FpdHdoaWxlFmZhY3RvcnkubWFjaGluZS5hY3RpdmUIY29uc3RhbnQEB3ByZXNzZXIP
ZmFjdG9yeS5wcm9kdWNlCGNvbnN0YW50BAVpbmdvdA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVy
EWFyaXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3Rh
bnQEBWNvdW50CGNvbnN0YW50BAEqCGNvbnN0YW50AwAAAAAAABBACGNvbnN0YW50BAEtEWFyaXRobWV0
aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3Rh
bnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQFcGxhdGUNbG9jYWwuaW50LmdldAhjb25z
dGFudAQEdGllcghjb25zdGFudAQHcHJlc3NlchFnZW5lcmljLndhaXR1bnRpbA9jb21wYXJpc29uLmJv
b2wPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA9jb21wYXJpc29uLmJvb2wOY29tcGFyaXNv
bi5pbnQOZ2xvYmFsLmludC5nZXQIY29uc3RhbnQEEGNyYWZ0X3N0YXR1czozLjgIY29uc3RhbnQEAj49
CGNvbnN0YW50AgcAAAAIY29uc3RhbnQEASYRY29tcGFyaXNvbi5kb3VibGUTZmFjdG9yeS5pdGVtcy5j
b3VudAhjb25zdGFudAQFcGxhdGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQC
Pj0RYXJpdGhtZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3Rh
bnQEASoIY29uc3RhbnQDAAAAAAAAEEAIY29uc3RhbnQEASYRY29tcGFyaXNvbi5kb3VibGUTZmFjdG9y
eS5pdGVtcy5jb3VudAhjb25zdGFudAQDcm9kDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29u
c3RhbnQEAj49EWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50
CGNvbnN0YW50BAEqCGNvbnN0YW50AwAAAAAAAABACGNvbnN0YW50BAEmEWNvbXBhcmlzb24uZG91Ymxl
E2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBXNjcmV3DWxvY2FsLmludC5nZXQIY29uc3RhbnQE
BHRpZXIIY29uc3RhbnQEAj49EGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50
BAEmEWNvbXBhcmlzb24uZG91YmxlE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBHdpcmUNbG9j
YWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQCPj0QbG9jYWwuZG91YmxlLmdldAhjb25z
dGFudAQFY291bnQNZmFjdG9yeS5jcmFmdAhjb25zdGFudAQFbW90b3INbG9jYWwuaW50LmdldAhjb25z
dGFudAQEdGllchBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudA==
; Motor
:global double craft_inventory
:local int tier
:local double count
:local double rods
:local double plates

tier = global.int.get("craft_tier:3.8")
count = global.double.get("craft_count:3.8")
gotoif(99, tier < 1 | tier > 10 | count < 1.0)

; ingots
rods = count * 2.0 + max(0.0, ceil((count - craft_inventory * count("screw", tier))/4.0))
;rods:  produce("ingot", tier, ceil((rods - craft_inventory * count("rod", tier))/2.0), "shaper")
;wires: produce("ingot", tier, ceil((count - craft_inventory * (count("cable", tier) + count("wire", tier)))/2.0), "refinery")
;plates: produce("ingot", tier, count * 4.0 - craft_inventory * count("plate", tier), "presser")

gotoif(ingots, count <= count("rubber", 1))
  global.int.set("craft_status", 412)
  global.int.set("craft_require_tier", -1)
  global.double.set("craft_require_count", count)

ingots: global.int.set("craft_tier:ingot", tier)
  global.double.set("craft_count:ingot", max(0.0, ceil((rods - craft_inventory * count("rod", tier))/2.0)) + max(0.0, ceil((count - craft_inventory * (count("cable", tier) + count("wire", tier)))/2.0)) + max(0.0, count * 4.0 - craft_inventory * count("plate", tier)))
  executesync("craft ingot")
gotoif(99, global.int.get("craft_status") > 199)

global.int.set("craft_status:3.8", 1)
execute("craft 3:8:rods")
execute("craft 3:8:wire")

; plates
;plates = count * 4.0

gotoif(wait, count * 4.0 <= craft_inventory * count("plate", tier))
waitwhile(active("presser"))
produce("ingot", tier, count * 4.0 - craft_inventory * count("plate", tier), "presser")

wait: waituntil(global.int.get("craft_status:3.8") >= 7 & count("plate", tier) >= count * 4.0 & count("rod", tier) >= count * 2.0 & count("screw", tier) >= count & count("wire", tier) >= count)
craft("motor", tier, count)


craft 3:8:rods 10
DmNyYWZ0IDM6ODpyb2RzAAAAAAAAAAAKAAAADWxvY2FsLmludC5zZXQIY29uc3RhbnQEBHRpZXIOZ2xv
YmFsLmludC5nZXQIY29uc3RhbnQEDmNyYWZ0X3RpZXI6My44EGxvY2FsLmRvdWJsZS5zZXQIY29uc3Rh
bnQEBWNvdW50EWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9jb3VudDozLjgQbG9jYWwu
ZG91YmxlLnNldAhjb25zdGFudAQEcm9kcxFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJs
ZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25zdGFudAMAAAAA
AAAAQAhjb25zdGFudAQBKwpkb3VibGUubWF4CGNvbnN0YW50AwAAAAAAAAAAC2RvdWJsZS5jZWlsEWFy
aXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQE
BWNvdW50CGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0
YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFu
dAQFc2NyZXcNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLwhjb25zdGFudAMA
AAAAAAAQQA5nZW5lcmljLmdvdG9pZghjb25zdGFudAIHAAAAEWNvbXBhcmlzb24uZG91YmxlEGxvY2Fs
LmRvdWJsZS5nZXQIY29uc3RhbnQEBHJvZHMIY29uc3RhbnQEAjw9EWFyaXRobWV0aWMuZG91YmxlEWds
b2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9y
eS5pdGVtcy5jb3VudAhjb25zdGFudAQDcm9kDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIRZ2Vu
ZXJpYy53YWl0d2hpbGUWZmFjdG9yeS5tYWNoaW5lLmFjdGl2ZQhjb25zdGFudAQGc2hhcGVyD2ZhY3Rv
cnkucHJvZHVjZQhjb25zdGFudAQFaW5nb3QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcgtkb3Vi
bGUuY2VpbBFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0
CGNvbnN0YW50BARyb2RzCGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUu
Z2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3Vu
dAhjb25zdGFudAQDcm9kDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEAS8IY29u
c3RhbnQDAAAAAAAAAEAIY29uc3RhbnQEBnNoYXBlcg5nZW5lcmljLmdvdG9pZghjb25zdGFudAIKAAAA
EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50
BAI8PRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52
ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBXNjcmV3DWxvY2Fs
LmludC5nZXQIY29uc3RhbnQEBHRpZXIRZ2VuZXJpYy53YWl0d2hpbGUPY29tcGFyaXNvbi5ib29sEWNv
bXBhcmlzb24uZG91YmxlE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEA3JvZA1sb2NhbC5pbnQu
Z2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8EWFyaXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMu
ZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEtEWFyaXRobWV0
aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3Rh
bnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQFc2NyZXcNbG9jYWwuaW50LmdldAhjb25z
dGFudAQEdGllcghjb25zdGFudAQBLwhjb25zdGFudAMAAAAAAAAQQAhjb25zdGFudAQBfBZmYWN0b3J5
Lm1hY2hpbmUuYWN0aXZlCGNvbnN0YW50BAZjdXR0ZXIPZmFjdG9yeS5wcm9kdWNlCGNvbnN0YW50BANy
b2QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcgtkb3VibGUuY2VpbBFhcml0aG1ldGljLmRvdWJs
ZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFu
dAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52
ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBXNjcmV3DWxvY2Fs
LmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEAS8IY29uc3RhbnQDAAAAAAAAEEAIY29uc3Rh
bnQEBmN1dHRlcg5nbG9iYWwuaW50LnNldAhjb25zdGFudAQQY3JhZnRfc3RhdHVzOjMuOA5hcml0aG1l
dGljLmludA5nbG9iYWwuaW50LmdldAhjb25zdGFudAQQY3JhZnRfc3RhdHVzOjMuOAhjb25zdGFudAQB
Kwhjb25zdGFudAICAAAA
:global double craft_inventory
:local int tier
:local double count
:local double rods
;:local double screws

; rods & screws
tier = global.int.get("craft_tier:3.8")
count = global.double.get("craft_count:3.8")
;screws = count
rods = count * 2.0 + max(0.0, ceil((count - craft_inventory * count("screw", tier))/4.0))

rods: gotoif(screws, rods <= craft_inventory * count("rod", tier))
waitwhile(active("shaper"))
produce("ingot", tier, ceil((rods - craft_inventory * count("rod", tier))/2.0), "shaper")

screws: gotoif(end, count <= craft_inventory * count("screw", tier))
waitwhile(count("rod", tier) < (count - craft_inventory * count("screw", tier))/4.0 | active("cutter"))
produce("rod", tier, ceil((count - craft_inventory * count("screw", tier))/4.0), "cutter")

end: global.int.set("craft_status:3.8", global.int.get("craft_status:3.8") + 2)


craft 3:8:wire 9
DmNyYWZ0IDM6ODp3aXJlAAAAAAAAAAAJAAAADWxvY2FsLmludC5zZXQIY29uc3RhbnQEBHRpZXIOZ2xv
YmFsLmludC5nZXQIY29uc3RhbnQEDmNyYWZ0X3RpZXI6My44EGxvY2FsLmRvdWJsZS5zZXQIY29uc3Rh
bnQEBWNvdW50EWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9jb3VudDozLjgOZ2VuZXJp
Yy5nb3RvaWYIY29uc3RhbnQCBgAAABFjb21wYXJpc29uLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNv
bnN0YW50BAVjb3VudAhjb25zdGFudAQCPD0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5n
ZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhFhcml0aG1ldGljLmRvdWJsZRNm
YWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVjYWJsZQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0
aWVyCGNvbnN0YW50BAErE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBHdpcmUNbG9jYWwuaW50
LmdldAhjb25zdGFudAQEdGllchFnZW5lcmljLndhaXR3aGlsZRZmYWN0b3J5Lm1hY2hpbmUuYWN0aXZl
CGNvbnN0YW50BAhyZWZpbmVyeQ9mYWN0b3J5LnByb2R1Y2UIY29uc3RhbnQEBWluZ290DWxvY2FsLmlu
dC5nZXQIY29uc3RhbnQEBHRpZXILZG91YmxlLmNlaWwRYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRp
Yy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEAS0RYXJpdGht
ZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25z
dGFudAQBKhFhcml0aG1ldGljLmRvdWJsZRNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVjYWJs
ZQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAErE2ZhY3RvcnkuaXRlbXMuY291
bnQIY29uc3RhbnQEBHdpcmUNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLwhj
b25zdGFudAMAAAAAAAAAQAhjb25zdGFudAQIcmVmaW5lcnkOZ2VuZXJpYy5nb3RvaWYIY29uc3RhbnQC
CQAAABFjb21wYXJpc29uLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25z
dGFudAQCPD0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0
X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAR3aXJlDWxv
Y2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIRZ2VuZXJpYy53YWl0d2hpbGUPY29tcGFyaXNvbi5ib29s
EWNvbXBhcmlzb24uZG91YmxlE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBWNhYmxlDWxvY2Fs
LmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEATwRYXJpdGhtZXRpYy5kb3VibGURYXJpdGht
ZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEAS0QbG9j
YWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEAS0RYXJpdGhtZXRpYy5kb3VibGUR
Z2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0
b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAR3aXJlDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXII
Y29uc3RhbnQEAXwWZmFjdG9yeS5tYWNoaW5lLmFjdGl2ZQhjb25zdGFudAQIcmVmaW5lcnkPZmFjdG9y
eS5wcm9kdWNlCGNvbnN0YW50BAVjYWJsZQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWFyaXRo
bWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEtEWFy
aXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkI
Y29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQEd2lyZQ1sb2NhbC5pbnQuZ2V0
CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAhyZWZpbmVyeQ5nbG9iYWwuaW50LnNldAhjb25zdGFudAQQ
Y3JhZnRfc3RhdHVzOjMuOA5hcml0aG1ldGljLmludA5nbG9iYWwuaW50LmdldAhjb25zdGFudAQQY3Jh
ZnRfc3RhdHVzOjMuOAhjb25zdGFudAQBKwhjb25zdGFudAIEAAAA
:global double craft_inventory
:local int tier
:local double count

; rods & screws
tier = global.int.get("craft_tier:3.8")
count = global.double.get("craft_count:3.8")

gotoif(wire, count <= craft_inventory * (count("cable", tier) + count("wire", tier)))
waitwhile(active("refinery"))
produce("ingot", tier, ceil((count - craft_inventory * (count("cable", tier) + count("wire", tier)))/2.0), "refinery")

wire: gotoif(end, count <= craft_inventory * count("wire", tier))
waitwhile(count("cable", tier) < count - count - craft_inventory * count("wire", tier) | active("refinery"))
produce("cable", tier, count - craft_inventory * count("wire", tier), "refinery")

end: global.int.set("craft_status:3.8", global.int.get("craft_status:3.8") + 4)


Pumps (9)

Name Lines Code
craft 3:9 10
CWNyYWZ0IDM6OQAAAAAAAAAACgAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuORBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj
b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My45DmdlbmVyaWMuZ290
b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29u
LmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAI
Y29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
dGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRv
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8CGNvbnN0YW50AwAAAAAAAPA/E2dlbmVy
aWMuZXhlY3V0ZXN5bmMIY29uc3RhbnQEDGNyYWZ0IDM6OTppbg5nZW5lcmljLmdvdG9pZghjb25zdGFu
dAJjAAAADmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BAxjcmFmdF9zdGF0dXMI
Y29uc3RhbnQEAT4IY29uc3RhbnQCxwAAAA5nbG9iYWwuaW50LnNldAhjb25zdGFudAQQY3JhZnRfc3Rh
dHVzOjMuOQhjb25zdGFudAIBAAAAD2dlbmVyaWMuZXhlY3V0ZQhjb25zdGFudAQQY3JhZnQgMzo5OnBs
YXRlcw9nZW5lcmljLmV4ZWN1dGUIY29uc3RhbnQED2NyYWZ0IDM6OTpyaW5ncxFnZW5lcmljLndhaXR1
bnRpbA9jb21wYXJpc29uLmJvb2wPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA5jb21wYXJp
c29uLmludA5nbG9iYWwuaW50LmdldAhjb25zdGFudAQQY3JhZnRfc3RhdHVzOjMuOQhjb25zdGFudAQC
Pj0IY29uc3RhbnQCBwAAAAhjb25zdGFudAQBJhFjb21wYXJpc29uLmRvdWJsZRNmYWN0b3J5Lml0ZW1z
LmNvdW50CGNvbnN0YW50BAVwbGF0ZQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50
BAI+PRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25z
dGFudAQBKghjb25zdGFudAMAAAAAAAAAQAhjb25zdGFudAQBJhFjb21wYXJpc29uLmRvdWJsZRNmYWN0
b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAxwbGF0ZS5ydWJiZXIIY29uc3RhbnQCAQAAAAhjb25zdGFu
dAQCPj0RYXJpdGhtZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29u
c3RhbnQEASoIY29uc3RhbnQDAAAAAAAAEEAIY29uc3RhbnQEASYRY29tcGFyaXNvbi5kb3VibGUTZmFj
dG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQEcmluZw1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVy
CGNvbnN0YW50BAI+PRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVj
b3VudAhjb25zdGFudAQBKghjb25zdGFudAMAAAAAAAAAQA1mYWN0b3J5LmNyYWZ0CGNvbnN0YW50BARw
dW1wDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQF
Y291bnQ=
; Pumps
:global double craft_inventory
:local int tier
:local double count
:local double rubber
:local double rods

tier = global.int.get("craft_tier:3.9")
count = global.double.get("craft_count:3.9")
gotoif(99, tier < 1 | tier > 10 | count < 1.0)

executesync("craft 3:9:in")
gotoif(99, global.int.get("craft_status") > 199)

global.int.set("craft_status:3.9", 1)
execute("craft 3:9:plates")
execute("craft 3:9:rings")

waituntil(global.int.get("craft_status:3.9") >= 7 & count("plate", tier) >= count*2.0 & count("plate.rubber", 1) >= count*4.0 & count("ring", tier) >= count*2.0)
craft("pump", tier, count)


craft 3:9:in 16
DGNyYWZ0IDM6OTppbgAAAAAAAAAAEAAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2Jh
bC5pbnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuORBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50
BAVjb3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My45EGxvY2FsLmRv
dWJsZS5zZXQIY29uc3RhbnQEBnJ1YmJlchFhcml0aG1ldGljLmRvdWJsZQpkb3VibGUubWF4CGNvbnN0
YW50AwAAAAAAAAAAEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNv
dW50CGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50
BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQF
bW90b3INbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKwpkb3VibGUubWF4CGNv
bnN0YW50AwAAAAAAAAAAEWFyaXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRv
dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEqCGNvbnN0YW50AwAAAAAAABBACGNvbnN0
YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9p
bnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQMcGxhdGUucnVi
YmVyDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIOZ2VuZXJpYy5nb3RvaWYIY29uc3RhbnQCCAAA
ABFjb21wYXJpc29uLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAZydWJiZXIIY29uc3Rh
bnQEAjw9E2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBnJ1YmJlcghjb25zdGFudAIBAAAADmds
b2JhbC5pbnQuc2V0CGNvbnN0YW50BAxjcmFmdF9zdGF0dXMIY29uc3RhbnQCnAEAAA5nbG9iYWwuaW50
LnNldAhjb25zdGFudAQSY3JhZnRfcmVxdWlyZV90aWVyCGNvbnN0YW50Av////8RZ2xvYmFsLmRvdWJs
ZS5zZXQIY29uc3RhbnQEE2NyYWZ0X3JlcXVpcmVfY291bnQQbG9jYWwuZG91YmxlLmdldAhjb25zdGFu
dAQGcnViYmVyDmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BBBjcmFmdF90aWVyOmluZ290DWxvY2FsLmlu
dC5nZXQIY29uc3RhbnQEBHRpZXIQbG9jYWwuZG91YmxlLnNldAhjb25zdGFudAQKbmVlZF9wdW1wcwpk
b3VibGUubWF4CGNvbnN0YW50AwAAAAAAAAAAEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5n
ZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3Vi
bGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5j
b3VudAhjb25zdGFudAQFbW90b3INbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchBsb2NhbC5kb3Vi
bGUuc2V0CGNvbnN0YW50BARyb2RzEWFyaXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlCmRv
dWJsZS5tYXgIY29uc3RhbnQDAAAAAAAAAAARYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3Vi
bGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEASoIY29uc3RhbnQDAAAA
AAAAAEAIY29uc3RhbnQEAS0TZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQEcmluZw1sb2NhbC5p
bnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAErEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRv
dWJsZS5nZXQIY29uc3RhbnQECm5lZWRfcHVtcHMIY29uc3RhbnQEASoIY29uc3RhbnQDAAAAAAAAAEAI
Y29uc3RhbnQEASsKZG91YmxlLm1heAhjb25zdGFudAMAAAAAAAAAAAtkb3VibGUuY2VpbBFhcml0aG1l
dGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BApuZWVk
X3B1bXBzCGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0
YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFu
dAQFc2NyZXcNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLwhjb25zdGFudAMA
AAAAAAAQQBFnbG9iYWwuZG91YmxlLnNldAhjb25zdGFudAQRY3JhZnRfY291bnQ6aW5nb3QRYXJpdGht
ZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUKZG91YmxlLm1heAhjb25zdGFudAMAAAAAAAAAABFh
cml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5k
b3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25zdGFudAMAAAAAAAAAQAhjb25z
dGFudAQBKxFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BApuZWVkX3B1
bXBzCGNvbnN0YW50BAEqCGNvbnN0YW50AwAAAAAAABBACGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91
YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoT
ZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQFcGxhdGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQE
dGllcghjb25zdGFudAQBKwpkb3VibGUubWF4CGNvbnN0YW50AwAAAAAAAAAAC2RvdWJsZS5jZWlsEWFy
aXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQE
BHJvZHMIY29uc3RhbnQEAS0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3Rh
bnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50
BANyb2QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLwhjb25zdGFudAMAAAAA
AAAAQAhjb25zdGFudAQBKwpkb3VibGUubWF4CGNvbnN0YW50AwAAAAAAAAAAC2RvdWJsZS5jZWlsEWFy
aXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQE
BWNvdW50CGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0
YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoRYXJpdGhtZXRpYy5kb3VibGUTZmFjdG9yeS5p
dGVtcy5jb3VudAhjb25zdGFudAQFY2FibGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
dGFudAQBKxNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAR3aXJlDWxvY2FsLmludC5nZXQIY29u
c3RhbnQEBHRpZXIIY29uc3RhbnQEAS8IY29uc3RhbnQDAAAAAAAAAEATZ2VuZXJpYy5leGVjdXRlc3lu
Ywhjb25zdGFudAQLY3JhZnQgaW5nb3QOZ2VuZXJpYy5nb3RvaWYIY29uc3RhbnQCYwAAAA5jb21wYXJp
c29uLmludA5nbG9iYWwuaW50LmdldAhjb25zdGFudAQMY3JhZnRfc3RhdHVzCGNvbnN0YW50BAE+CGNv
bnN0YW50AscAAAAOZ2xvYmFsLmludC5zZXQIY29uc3RhbnQEDmNyYWZ0X3RpZXI6My44DWxvY2FsLmlu
dC5nZXQIY29uc3RhbnQEBHRpZXIRZ2xvYmFsLmRvdWJsZS5zZXQIY29uc3RhbnQED2NyYWZ0X2NvdW50
OjMuOBFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25z
dGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRf
aW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBW1vdG9yDWxv
Y2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXITZ2VuZXJpYy5leGVjdXRlc3luYwhjb25zdGFudAQJY3Jh
ZnQgMzo4
:global double craft_inventory
:local int tier
:local double count
:local double rubber
:local double need_pumps
:local double rods
:local double plates

tier = global.int.get("craft_tier:3.9")
count = global.double.get("craft_count:3.9")

; rubber and ingots
rubber = max(0.0, count - craft_inventory * count("motor", tier)) + max(0.0, count*4.0 - craft_inventory * count("plate.rubber", tier))
gotoif(ingots, rubber <= count("rubber", 1))
  global.int.set("craft_status", 412)
  global.int.set("craft_require_tier", -1)
  global.double.set("craft_require_count", rubber)

ingots: global.int.set("craft_tier:ingot", tier)
; plates: count*2.0 - craft_inventory * count("plate", tier)
; rods = count * 2.0 - count("ring", tier)
; rings: ceil((rods - craft_inventory * count("rod", tier))/2.0)
; motors...
;    rods = count * 2.0 + max(0.0, ceil((count - craft_inventory * count("screw", tier))/4.0))
;    global.double.set("craft_count:ingot", max(0.0, ceil((rods - craft_inventory * count("rod", tier))/2.0)) + max(0.0, ceil((count - craft_inventory * (count("cable", tier) + count("wire", tier)))/2.0)) + max(0.0, count * 4.0 - craft_inventory * count("plate", tier)))
  need_pumps = max(0.0, count - craft_inventory * count("motor", tier))
  rods = max(0.0, count * 2.0 - count("ring", tier)) + need_pumps * 2.0 + max(0.0, ceil((need_pumps - craft_inventory * count("screw", tier))/4.0))
  global.double.set("craft_count:ingot", max(0.0, count*2.0 + need_pumps * 4.0 - craft_inventory * count("plate", tier)) + max(0.0, ceil((rods - craft_inventory * count("rod", tier))/2.0)) + max(0.0, ceil((count - craft_inventory * (count("cable", tier) + count("wire", tier)))/2.0)))
  executesync("craft ingot")
gotoif(99, global.int.get("craft_status") > 199)

global.int.set("craft_tier:3.8", tier)
global.double.set("craft_count:3.8", count - craft_inventory * count("motor", tier))
executesync("craft 3:8")


craft 3:9:plates 9
EGNyYWZ0IDM6OTpwbGF0ZXMAAAAAAAAAAAkAAAANbG9jYWwuaW50LnNldAhjb25zdGFudAQEdGllcg5n
bG9iYWwuaW50LmdldAhjb25zdGFudAQOY3JhZnRfdGllcjozLjkQbG9jYWwuZG91YmxlLnNldAhjb25z
dGFudAQFY291bnQRZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2NvdW50OjMuOQ5nZW5l
cmljLmdvdG9pZghjb25zdGFudAIGAAAAEWNvbXBhcmlzb24uZG91YmxlEWFyaXRobWV0aWMuZG91Ymxl
EGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEqCGNvbnN0YW50AwAAAAAA
AABACGNvbnN0YW50BAE8EWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50
BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQF
cGxhdGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchFnZW5lcmljLndhaXR3aGlsZRZmYWN0b3J5
Lm1hY2hpbmUuYWN0aXZlCGNvbnN0YW50BAdwcmVzc2VyD2ZhY3RvcnkucHJvZHVjZQhjb25zdGFudAQF
aW5nb3QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1l
dGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25z
dGFudAMAAAAAAAAAQAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdl
dAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQI
Y29uc3RhbnQEBXBsYXRlDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEB3ByZXNz
ZXIOZ2VuZXJpYy5nb3RvaWYIY29uc3RhbnQCCQAAABFjb21wYXJpc29uLmRvdWJsZRFhcml0aG1ldGlj
LmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25zdGFu
dAMAAAAAAAAQQAhjb25zdGFudAQBPBFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhj
b25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29u
c3RhbnQEDHBsYXRlLnJ1YmJlcg1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdlbmVyaWMud2Fp
dHdoaWxlFmZhY3RvcnkubWFjaGluZS5hY3RpdmUIY29uc3RhbnQEB3ByZXNzZXIPZmFjdG9yeS5wcm9k
dWNlCGNvbnN0YW50BAZydWJiZXIIY29uc3RhbnQCAQAAABFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1l
dGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25z
dGFudAMAAAAAAAAQQAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdl
dAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQI
Y29uc3RhbnQEDHBsYXRlLnJ1YmJlcg1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50
BAdwcmVzc2VyDmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BBBjcmFmdF9zdGF0dXM6My45DmFyaXRobWV0
aWMuaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BBBjcmFmdF9zdGF0dXM6My45CGNvbnN0YW50BAEr
CGNvbnN0YW50AgIAAAA=
:global double craft_inventory
:local int tier
:local double count

tier = global.int.get("craft_tier:3.9")
count = global.double.get("craft_count:3.9")

;plates = count * 2.0
plates: gotoif(rubber, count*2.0 < craft_inventory * count("plate", tier))
  waitwhile(active("presser"))
  produce("ingot", tier, count*2.0 - craft_inventory * count("plate", tier), "presser")

rubber: gotoif(end, count*4.0 < craft_inventory * count("plate.rubber", tier))
waitwhile(active("presser"))
  produce("rubber", 1, count*4.0 - craft_inventory * count("plate.rubber", tier), "presser")

end: global.int.set("craft_status:3.9", global.int.get("craft_status:3.9") + 2)


craft 3:9:rings 10
D2NyYWZ0IDM6OTpyaW5ncwAAAAAAAAAACgAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmds
b2JhbC5pbnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuORBsb2NhbC5kb3VibGUuc2V0CGNvbnN0
YW50BAVjb3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My45EGxvY2Fs
LmRvdWJsZS5zZXQIY29uc3RhbnQEBHJvZHMRYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3Vi
bGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEASoIY29uc3RhbnQDAAAA
AAAAAEAIY29uc3RhbnQEAS0TZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQEcmluZw1sb2NhbC5p
bnQuZ2V0CGNvbnN0YW50BAR0aWVyDmdlbmVyaWMuZ290b2lmCGNvbnN0YW50AgcAAAARY29tcGFyaXNv
bi5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQEcm9kcwhjb25zdGFudAQBPBFhcml0aG1l
dGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0
YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEA3JvZA1sb2NhbC5pbnQuZ2V0CGNvbnN0
YW50BAR0aWVyEWdlbmVyaWMud2FpdHdoaWxlFmZhY3RvcnkubWFjaGluZS5hY3RpdmUIY29uc3RhbnQE
BnNoYXBlcg9mYWN0b3J5LnByb2R1Y2UIY29uc3RhbnQEBWluZ290DWxvY2FsLmludC5nZXQIY29uc3Rh
bnQEBHRpZXILZG91YmxlLmNlaWwRYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUQbG9j
YWwuZG91YmxlLmdldAhjb25zdGFudAQEcm9kcwhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFn
bG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3Rv
cnkuaXRlbXMuY291bnQIY29uc3RhbnQEA3JvZA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNv
bnN0YW50BAEvCGNvbnN0YW50AwAAAAAAAABACGNvbnN0YW50BAZzaGFwZXIOZ2VuZXJpYy5nb3RvaWYI
Y29uc3RhbnQCCgAAABFjb21wYXJpc29uLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3Vi
bGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKghjb25zdGFudAMAAAAAAAAAQAhjb25zdGFu
dAQBPBFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52
ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBHJpbmcNbG9jYWwu
aW50LmdldAhjb25zdGFudAQEdGllchFnZW5lcmljLndhaXR3aGlsZQ9jb21wYXJpc29uLmJvb2wRY29t
cGFyaXNvbi5kb3VibGUTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQDcm9kDWxvY2FsLmludC5n
ZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEATwQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQEcm9k
cwhjb25zdGFudAQBfBZmYWN0b3J5Lm1hY2hpbmUuYWN0aXZlCGNvbnN0YW50BAZzaGFwZXIPZmFjdG9y
eS5wcm9kdWNlCGNvbnN0YW50BANyb2QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchFhcml0aG1l
dGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3Vu
dAhjb25zdGFudAQBKghjb25zdGFudAMAAAAAAAAAQAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJs
ZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2Zh
Y3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBHJpbmcNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGll
cghjb25zdGFudAQGc2hhcGVyDmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BBBjcmFmdF9zdGF0dXM6My45
DmFyaXRobWV0aWMuaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BBBjcmFmdF9zdGF0dXM6My45CGNv
bnN0YW50BAErCGNvbnN0YW50AgQAAAA=
:global double craft_inventory
:local int tier
:local double count
:local double rods

tier = global.int.get("craft_tier:3.9")
count = global.double.get("craft_count:3.9")

; 2 rings
rods = count * 2.0 - count("ring", tier)
rods: gotoif(rings, rods < craft_inventory * count("rod", tier))
  waitwhile(active("shaper"))
  produce("ingot", tier, ceil((rods - craft_inventory * count("rod", tier))/2.0), "shaper")

rings: gotoif(end, count*2.0 < craft_inventory * count("ring", tier))
  waitwhile(count("rod", tier) < rods | active("shaper"))
  produce("rod", tier, count*2.0 - craft_inventory * count("ring", tier), "shaper")

end: global.int.set("craft_status:3.9", global.int.get("craft_status:3.9") + 4)


Wires

(pic)

Name Lines Code
craft part:wire 9
D2NyYWZ0IHBhcnQ6d2lyZQAAAAAAAAAACQAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmds
b2JhbC5pbnQuZ2V0CGNvbnN0YW50BA9jcmFmdF90aWVyOndpcmUQbG9jYWwuZG91YmxlLnNldAhjb25z
dGFudAQFY291bnQRZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQEEGNyYWZ0X2NvdW50OndpcmUOZ2Vu
ZXJpYy5nb3RvaWYIY29uc3RhbnQCYwAAAA9jb21wYXJpc29uLmJvb2wPY29tcGFyaXNvbi5ib29sD2Nv
bXBhcmlzb24uYm9vbA5jb21wYXJpc29uLmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNv
bnN0YW50BAE8CGNvbnN0YW50AgEAAAAIY29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50
LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8EWNv
bXBhcmlzb24uZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAE8
CGNvbnN0YW50AwAAAAAAAPA/CGNvbnN0YW50BAF8DmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0
CGNvbnN0YW50BAxjcmFmdF9zdGF0dXMIY29uc3RhbnQEAT4IY29uc3RhbnQCxwAAAA5nZW5lcmljLmdv
dG9pZghjb25zdGFudAIIAAAAEWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3Rh
bnQEBWNvdW50CGNvbnN0YW50BAE8EWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNv
bnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25z
dGFudAQFY2FibGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchFnZW5lcmljLndhaXR3aGlsZRZm
YWN0b3J5Lm1hY2hpbmUuYWN0aXZlCGNvbnN0YW50BAhyZWZpbmVyeQ9mYWN0b3J5LnByb2R1Y2UIY29u
c3RhbnQEBWluZ290DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXILZG91YmxlLmNlaWwRYXJpdGht
ZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291
bnQIY29uc3RhbnQEAS0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQE
D2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVj
YWJsZQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAEvCGNvbnN0YW50AwAAAAAA
AABACGNvbnN0YW50BAhyZWZpbmVyeRFnZW5lcmljLndhaXR3aGlsZRZmYWN0b3J5Lm1hY2hpbmUuYWN0
aXZlCGNvbnN0YW50BAhyZWZpbmVyeQ9mYWN0b3J5LnByb2R1Y2UIY29uc3RhbnQEBWNhYmxlDWxvY2Fs
LmludC5nZXQIY29uc3RhbnQEBHRpZXIQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29u
c3RhbnQECHJlZmluZXJ5EWdlbmVyaWMud2FpdHVudGlsEWNvbXBhcmlzb24uZG91YmxlE2ZhY3Rvcnku
aXRlbXMuY291bnQIY29uc3RhbnQEBHdpcmUNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25z
dGFudAQCPj0QbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQ=
:global double craft_inventory
:local int tier
:local double count

tier = global.int.get("craft_tier:wire")
count = global.double.get("craft_count:wire")
gotoif(99, tier < 1 | tier > 10 | count < 1.0 | global.int.get("craft_status") > 199)

cables: gotoif(wires, count < craft_inventory * count("cable", tier))
  waitwhile(active("refinery"))
  produce("ingot", tier, ceil((count - craft_inventory * count("cable", tier)) / 2.0), "refinery")
  waitwhile(active("refinery"))

wires: produce("cable", tier, count, "refinery")
  waituntil(count("wire", tier) >= count)


Screws

(pic)

Name Lines Code
craft part:screw 12
EGNyYWZ0IHBhcnQ6c2NyZXcAAAAAAAAAAAwAAAANbG9jYWwuaW50LnNldAhjb25zdGFudAQEdGllcg5n
bG9iYWwuaW50LmdldAhjb25zdGFudAQQY3JhZnRfdGllcjpzY3JldxBsb2NhbC5kb3VibGUuc2V0CGNv
bnN0YW50BAVjb3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQRY3JhZnRfY291bnQ6c2NyZXcO
Z2VuZXJpYy5nb3RvaWYIY29uc3RhbnQCYwAAAA9jb21wYXJpc29uLmJvb2wPY29tcGFyaXNvbi5ib29s
D2NvbXBhcmlzb24uYm9vbA5jb21wYXJpc29uLmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVy
CGNvbnN0YW50BAE8CGNvbnN0YW50AgEAAAAIY29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQNbG9jYWwu
aW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBPghjb25zdGFudAIKAAAACGNvbnN0YW50BAF8
EWNvbXBhcmlzb24uZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50
BAE8CGNvbnN0YW50AwAAAAAAAPA/CGNvbnN0YW50BAF8DmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQu
Z2V0CGNvbnN0YW50BAxjcmFmdF9zdGF0dXMIY29uc3RhbnQEAT4IY29uc3RhbnQCxwAAABBsb2NhbC5k
b3VibGUuc2V0CGNvbnN0YW50BARyb2RzC2RvdWJsZS5jZWlsEWFyaXRobWV0aWMuZG91YmxlEGxvY2Fs
LmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEvCGNvbnN0YW50AwAAAAAAABBADmdl
bmVyaWMuZ290b2lmCGNvbnN0YW50AgkAAAARY29tcGFyaXNvbi5kb3VibGUQbG9jYWwuZG91YmxlLmdl
dAhjb25zdGFudAQEcm9kcwhjb25zdGFudAQCPD0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJs
ZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNv
dW50CGNvbnN0YW50BANyb2QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchFnZW5lcmljLndhaXR3
aGlsZRZmYWN0b3J5Lm1hY2hpbmUuYWN0aXZlCGNvbnN0YW50BAZzaGFwZXIPZmFjdG9yeS5wcm9kdWNl
CGNvbnN0YW50BAVpbmdvdA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyC2RvdWJsZS5jZWlsEWFy
aXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQE
BHJvZHMIY29uc3RhbnQEAS0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3Rh
bnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50
BANyb2QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLwhjb25zdGFudAMAAAAA
AAAAQAhjb25zdGFudAQGc2hhcGVyEWdlbmVyaWMud2FpdHdoaWxlFmZhY3RvcnkubWFjaGluZS5hY3Rp
dmUIY29uc3RhbnQEBnNoYXBlchFnZW5lcmljLndhaXR3aGlsZRZmYWN0b3J5Lm1hY2hpbmUuYWN0aXZl
CGNvbnN0YW50BAZjdXR0ZXIPZmFjdG9yeS5wcm9kdWNlCGNvbnN0YW50BANyb2QNbG9jYWwuaW50Lmdl
dAhjb25zdGFudAQEdGllchBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BARyb2RzCGNvbnN0YW50BAZj
dXR0ZXIRZ2VuZXJpYy53YWl0d2hpbGUWZmFjdG9yeS5tYWNoaW5lLmFjdGl2ZQhjb25zdGFudAQGY3V0
dGVyDGdlbmVyaWMud2FpdAhjb25zdGFudAMAAAAAAAAAAA==
:global double craft_inventory
:local int tier
:local double count

tier = global.int.get("craft_tier:screw")
count = global.double.get("craft_count:screw")
gotoif(99, tier < 1 | tier > 10 | count < 1.0 | global.int.get("craft_status") > 199)

:local double rods
rods = ceil(count / 4.0)

rods: gotoif(screws, rods <= craft_inventory * count("rod", tier))
waitwhile(active("shaper"))
produce("ingot", tier, ceil((rods - craft_inventory * count("rod", tier)) / 2.0), "shaper")
waitwhile(active("shaper"))

screws: waitwhile(active("cutter"))
produce("rod", tier, rods, "cutter")
waitwhile(active("cutter"))

wait(0.0)