Difference between revisions of "AI Craftapalooza Machines"
Troylaurin (talk | contribs) |
Troylaurin (talk | contribs) |
||
Line 17: | Line 17: | ||
|craft 2:1 | |craft 2:1 | ||
|16 | |16 | ||
− | | | + | |{{AIScript |
− | { | + | |code= |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | | | ||
CWNyYWZ0IDI6MQAAAAAAAAAAEAAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p | CWNyYWZ0IDI6MQAAAAAAAAAAEAAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p | ||
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjIuMRBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj | bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjIuMRBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj | ||
Line 83: | Line 46: | ||
Yy5kb3VibGUIY29uc3RhbnQDAAAAAAAAJEAIY29uc3RhbnQEA3BvdwNpMmQNbG9jYWwuaW50LmdldAhj | Yy5kb3VibGUIY29uc3RhbnQDAAAAAAAAJEAIY29uc3RhbnQEA3BvdwNpMmQNbG9jYWwuaW50LmdldAhj | ||
b25zdGFudAQEdGllcghjb25zdGFudAQDbW9kCGNvbnN0YW50AwAAAAAAACRADmdsb2JhbC5pbnQuc2V0 | b25zdGFudAQEdGllcghjb25zdGFudAQDbW9kCGNvbnN0YW50AwAAAAAAACRADmdsb2JhbC5pbnQuc2V0 | ||
− | + | CGNvbnN0YW50BBBjcmFmdF9zdGF0dXM6Mi4xCGNvbnN0YW50AgEAAAAPZ2VuZXJpYy5leGVjdXRlCGNv | |
bnN0YW50BBBjcmFmdCAyOjE6cGxhdGVzDmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BA5jcmFmdF90aWVy | bnN0YW50BBBjcmFmdCAyOjE6cGxhdGVzDmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BA5jcmFmdF90aWVy | ||
OjMuNg1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdsb2JhbC5kb3VibGUuc2V0CGNvbnN0YW50 | OjMuNg1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdsb2JhbC5kb3VibGUuc2V0CGNvbnN0YW50 | ||
Line 94: | Line 57: | ||
dAQBPghjb25zdGFudALHAAAAEWdlbmVyaWMud2FpdHVudGlsD2NvbXBhcmlzb24uYm9vbA9jb21wYXJp | dAQBPghjb25zdGFudALHAAAAEWdlbmVyaWMud2FpdHVudGlsD2NvbXBhcmlzb24uYm9vbA9jb21wYXJp | ||
c29uLmJvb2wPY29tcGFyaXNvbi5ib29sDmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0 | c29uLmJvb2wPY29tcGFyaXNvbi5ib29sDmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0 | ||
− | + | YW50BBBjcmFmdF9zdGF0dXM6Mi4xCGNvbnN0YW50BAI+PQhjb25zdGFudAIDAAAACGNvbnN0YW50BAEm | |
EWNvbXBhcmlzb24uZG91YmxlE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBXBsYXRlDWxvY2Fs | EWNvbXBhcmlzb24uZG91YmxlE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBXBsYXRlDWxvY2Fs | ||
LmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEAj49EGxvY2FsLmRvdWJsZS5nZXQIY29uc3Rh | LmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEAj49EGxvY2FsLmRvdWJsZS5nZXQIY29uc3Rh | ||
Line 104: | Line 67: | ||
Ymxlcw1mYWN0b3J5LmNyYWZ0CGNvbnN0YW50BAxtYWNoaW5lLm92ZW4NbG9jYWwuaW50LmdldAhjb25z | Ymxlcw1mYWN0b3J5LmNyYWZ0CGNvbnN0YW50BAxtYWNoaW5lLm92ZW4NbG9jYWwuaW50LmdldAhjb25z | ||
dGFudAQEdGllchBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudA== | dGFudAQEdGllchBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudA== | ||
− | + | |src= | |
− | |||
− | | | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
; Oven | ; Oven | ||
:global double craft_inventory | :global double craft_inventory | ||
Line 122: | Line 75: | ||
:local double blocks | :local double blocks | ||
:local double cables | :local double cables | ||
− | |||
tier = global.int.get("craft_tier:2.1") | tier = global.int.get("craft_tier:2.1") | ||
count = global.double.get("craft_count:2.1") | count = global.double.get("craft_count:2.1") | ||
+ | gotoif(99, tier < 1 | tier > 10 | count < 1.0 | global.int.get("craft_status") > 199) | ||
+ | executesync("craft 2:1:in") | ||
+ | gotoif(99, global.int.get("craft_status") > 199) | ||
− | + | plates = count * floor((88888888641.0 / (10.0 ^ i2d(tier))) % 10.0) | |
− | + | blocks = count * floor((22222000001.0 / (10.0 ^ i2d(tier))) % 10.0) | |
− | + | cables = count * floor((44444333221.0 / (10.0 ^ i2d(tier))) % 10.0) | |
− | |||
− | + | global.int.set("craft_status:2.1", 1) | |
− | global.int.set(" | + | execute("craft 2:1:plates") |
− | |||
− | |||
− | |||
− | |||
− | + | global.int.set("craft_tier:3.6", tier) | |
− | global.int.set("craft_tier: | + | global.double.set("craft_count:3.6", cables - craft_inventory * count("cable.insulated", tier)) |
− | global.double.set("craft_count: | + | executesync("craft 3:6") |
− | executesync("craft | ||
gotoif(99, global.int.get("craft_status") > 199) | gotoif(99, global.int.get("craft_status") > 199) | ||
− | + | waituntil(global.int.get("craft_status:2.1") >= 3 & count("plate", tier) >= plates & count("block", tier) >= blocks & count("cable.insulated", tier) >= cables) | |
− | global.int. | + | craft("machine.oven", tier, count) |
− | + | }} | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
− | | | + | |craft 2:1:in |
+ | |18 | ||
+ | |{{AIScript | ||
+ | |code= | ||
DGNyYWZ0IDI6MTppbgAAAAAAAAAAEgAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2Jh | DGNyYWZ0IDI6MTppbgAAAAAAAAAAEgAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2Jh | ||
bC5pbnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjIuMRBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50 | bC5pbnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjIuMRBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50 | ||
Line 190: | Line 134: | ||
Y29uc3RhbnQEBHRpZXIRZ2xvYmFsLmRvdWJsZS5zZXQIY29uc3RhbnQED2NyYWZ0X2NvdW50OjIuMRBs | Y29uc3RhbnQEBHRpZXIRZ2xvYmFsLmRvdWJsZS5zZXQIY29uc3RhbnQED2NyYWZ0X2NvdW50OjIuMRBs | ||
b2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudA== | b2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudA== | ||
− | + | |src= | |
− | |||
− | | | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
:global double craft_inventory | :global double craft_inventory | ||
:local int tier | :local int tier | ||
:local double count | :local double count | ||
+ | :local double plates | ||
:local double blocks | :local double blocks | ||
− | :local double | + | :local double cables |
+ | :local double ingots | ||
tier = global.int.get("craft_tier:2.1") | tier = global.int.get("craft_tier:2.1") | ||
count = global.double.get("craft_count:2.1") | count = global.double.get("craft_count:2.1") | ||
− | |||
− | |||
− | global.int.set("craft_tier: | + | ; Verify ingots |
− | global.double.set("craft_count: | + | ;plates = count * round((88888888640.0 / (10.0 ^ i2d(tier))) % 10.0) |
− | executesync("craft | + | ;blocks = count * round((22222000000.0 / (10.0 ^ i2d(tier))) % 10.0) |
+ | ;cables = count * round((44444333220.0 / (10.0 ^ i2d(tier))) % 10.0) | ||
+ | |||
+ | ingots = 0.0 ; TODO | ||
+ | global.int.set("craft_tier:ingot", tier) | ||
+ | global.double.set("craft_count:ingot", ingots - count("ingot", tier)) | ||
+ | global.int.set("craft_verify:ingot", 1) | ||
+ | executesync("craft ingot") | ||
+ | gotoif(99, global.int.get("craft_status") > 199) | ||
− | + | ; Lower tier inputs | |
− | + | global.int.set("craft_tier:2.1", tier - 1) | |
− | + | global.double.set("craft_count:2.1", count - craft_inventory * count("machine.oven", tier - 1)) | |
+ | executesync("craft 2:1") | ||
+ | gotoif(99, global.int.get("craft_status") > 199) | ||
− | + | ; Craft ingots | |
+ | global.int.set("craft_tier:ingot", tier) | ||
+ | global.double.set("craft_count:ingot", ingots - count("ingot", tier)) | ||
+ | executesync("craft ingot") | ||
+ | gotoif(99, global.int.get("craft_status") > 199) | ||
− | + | ; Restore state for this tier | |
+ | global.int.set("craft_tier:2.1", tier) | ||
+ | global.double.set("craft_count:2.1", count) | ||
+ | }} | ||
|- | |- | ||
− | | | + | |craft 2:1:plates |
+ | |11 | ||
+ | |{{AIScript | ||
+ | |code= | ||
EGNyYWZ0IDI6MTpwbGF0ZXMAAAAAAAAAAAsAAAANbG9jYWwuaW50LnNldAhjb25zdGFudAQEdGllcg5n | EGNyYWZ0IDI6MTpwbGF0ZXMAAAAAAAAAAAsAAAANbG9jYWwuaW50LnNldAhjb25zdGFudAQEdGllcg5n | ||
bG9iYWwuaW50LmdldAhjb25zdGFudAQOY3JhZnRfdGllcjoyLjEQbG9jYWwuZG91YmxlLnNldAhjb25z | bG9iYWwuaW50LmdldAhjb25zdGFudAQOY3JhZnRfdGllcjoyLjEQbG9jYWwuZG91YmxlLnNldAhjb25z | ||
Line 254: | Line 208: | ||
ZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNv | ZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNv | ||
dW50CGNvbnN0YW50BAVwbGF0ZQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAdw | dW50CGNvbnN0YW50BAVwbGF0ZQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAdw | ||
− | + | cmVzc2VyDmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BBBjcmFmdF9zdGF0dXM6Mi4xDmFyaXRobWV0aWMu | |
− | + | aW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BBBjcmFmdF9zdGF0dXM6Mi4xCGNvbnN0YW50BAErCGNv | |
bnN0YW50AgIAAAA= | bnN0YW50AgIAAAA= | ||
+ | |src= | ||
+ | :global double craft_inventory | ||
+ | :local int tier | ||
+ | :local double count | ||
+ | :local double blocks | ||
+ | :local double plates | ||
+ | |||
+ | tier = global.int.get("craft_tier:2.1") | ||
+ | count = global.double.get("craft_count:2.1") | ||
+ | |||
+ | blocks = count * floor((22222000001.0 / (10.0 ^ i2d(tier))) % 10.0) | ||
+ | plates = count * floor((88888888641.0 / (10.0 ^ i2d(tier))) % 10.0) | ||
− | < | + | global.int.set("craft_tier:3.4", tier) |
− | + | global.double.set("craft_count:3.4", blocks - craft_inventory * count("block", tier)) | |
+ | executesync("craft 3:4") | ||
+ | |||
+ | plates: gotoif(end, plates < craft_inventory * count("plate", tier)) | ||
+ | waitwhile(active("presser")) | ||
+ | produce("ingot", tier, plates - craft_inventory * count("plate", tier), "presser") | ||
+ | |||
+ | end: global.int.set("craft_status:2.1", global.int.get("craft_status:2.1") + 2) | ||
+ | }} | ||
|} | |} | ||
|- | |- | ||
Line 273: | Line 247: | ||
|craft 2:2 | |craft 2:2 | ||
|17 | |17 | ||
− | | | + | |{{AIScript |
− | { | + | |code= |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | | | ||
CWNyYWZ0IDI6MgAAAAAAAAAAEQAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p | CWNyYWZ0IDI6MgAAAAAAAAAAEQAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p | ||
bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjIuMhBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj | bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjIuMhBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj | ||
Line 349: | Line 286: | ||
LmludA5nbG9iYWwuaW50LmdldAhjb25zdGFudAQMY3JhZnRfc3RhdHVzCGNvbnN0YW50BAE+CGNvbnN0 | LmludA5nbG9iYWwuaW50LmdldAhjb25zdGFudAQMY3JhZnRfc3RhdHVzCGNvbnN0YW50BAE+CGNvbnN0 | ||
YW50AscAAAATZ2VuZXJpYy5leGVjdXRlc3luYwhjb25zdGFudAQQY3JhZnQgMjoyOnBsYXRlcw1mYWN0 | YW50AscAAAATZ2VuZXJpYy5leGVjdXRlc3luYwhjb25zdGFudAQQY3JhZnQgMjoyOnBsYXRlcw1mYWN0 | ||
− | + | b3J5LmNyYWZ0CGNvbnN0YW50BBFtYWNoaW5lLmFzc2VtYmxlcg1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50 | |
− | + | BAR0aWVyEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50 | |
− | + | |src= | |
− | + | ; Assembler | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | | | ||
− | ; | ||
:global double craft_inventory | :global double craft_inventory | ||
:local int tier | :local int tier | ||
:local double count | :local double count | ||
− | :local double | + | :local double motors |
− | :local double | + | :local double chips |
− | :local | + | :local int chiptier |
− | |||
tier = global.int.get("craft_tier:2.2") | tier = global.int.get("craft_tier:2.2") | ||
count = global.double.get("craft_count:2.2") | count = global.double.get("craft_count:2.2") | ||
+ | gotoif(99, tier < 1 | tier > 10 | count < 1.0 | global.int.get("craft_status") > 199) | ||
− | + | executesync("craft 2:2:in") | |
− | |||
− | |||
− | |||
− | |||
− | |||
gotoif(99, global.int.get("craft_status") > 199) | gotoif(99, global.int.get("craft_status") > 199) | ||
− | + | motors = count * ceil(i2d(tier) / 8.0) | |
− | global.int.set("craft_tier: | + | chips = count * ceil(i2d(tier) / 9.0) |
− | global.double.set("craft_count: | + | chiptier = d2i(floor((44332221111.0 / (10.0 ^ i2d(tier))) % 10.0)) |
− | executesync("craft | + | |
+ | global.int.set("craft_tier:3.1", chiptier) | ||
+ | global.double.set("craft_count:3.1", chips - craft_inventory * count("chip", chiptier)) | ||
+ | executesync("craft 3:1") | ||
+ | global.int.set("craft_tier:3.8", tier) | ||
+ | global.double.set("craft_count:3.8", motors - craft_inventory * count("motor", tier)) | ||
+ | executesync("craft 3:8") | ||
gotoif(99, global.int.get("craft_status") > 199) | gotoif(99, global.int.get("craft_status") > 199) | ||
− | + | executesync("craft 2:2:plates") | |
− | + | craft("machine.assembler", tier, count) | |
− | + | }} | |
− | |||
− | |||
|- | |- | ||
− | | | + | |craft 2:2:in |
+ | |13 | ||
+ | |{{AIScript | ||
+ | |code= | ||
DGNyYWZ0IDI6MjppbgAAAAAAAAAADQAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2Jh | DGNyYWZ0IDI6MjppbgAAAAAAAAAADQAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2Jh | ||
bC5pbnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjIuMhBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50 | bC5pbnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjIuMhBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50 | ||
Line 419: | Line 348: | ||
c2V0CGNvbnN0YW50BA9jcmFmdF9jb3VudDoyLjIQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291 | c2V0CGNvbnN0YW50BA9jcmFmdF9jb3VudDoyLjIQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291 | ||
bnQ= | bnQ= | ||
− | + | |src= | |
− | |||
− | | | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
:global double craft_inventory | :global double craft_inventory | ||
:local int tier | :local int tier | ||
:local double count | :local double count | ||
:local double plates | :local double plates | ||
− | :local double | + | :local double blocks |
− | :local double | + | :local double cables |
+ | :local double ingots | ||
tier = global.int.get("craft_tier:2.2") | tier = global.int.get("craft_tier:2.2") | ||
count = global.double.get("craft_count:2.2") | count = global.double.get("craft_count:2.2") | ||
− | + | ; Ingots | |
− | gotoif( | + | ingots = 0.0 ; TODO |
− | + | global.int.set("craft_tier:ingot", tier) | |
− | + | global.double.set("craft_count:ingot", ingots - count("ingot", tier)) | |
+ | ;global.int.set("craft_verify:ingot", 1) | ||
+ | executesync("craft ingot") | ||
+ | gotoif(99, global.int.get("craft_status") > 199) | ||
− | + | ; Lower tier inputs | |
− | + | global.int.set("craft_tier:2.2", tier - 1) | |
− | + | global.double.set("craft_count:2.2", count - craft_inventory * count("machine.assembler", tier - 1)) | |
− | + | executesync("craft 2:2") | |
− | + | gotoif(99, global.int.get("craft_status") > 199) | |
− | + | ; Restore state for this tier | |
− | + | global.int.set("craft_tier:2.2", tier) | |
− | + | global.double.set("craft_count:2.2", count) | |
− | + | }} | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
− | | | + | |craft 2:2:plates |
+ | |20 | ||
+ | |{{AIScript | ||
+ | |code= | ||
EGNyYWZ0IDI6MjpwbGF0ZXMAAAAAAAAAABQAAAANbG9jYWwuaW50LnNldAhjb25zdGFudAQEdGllcg5n | EGNyYWZ0IDI6MjpwbGF0ZXMAAAAAAAAAABQAAAANbG9jYWwuaW50LnNldAhjb25zdGFudAQEdGllcg5n | ||
bG9iYWwuaW50LmdldAhjb25zdGFudAQOY3JhZnRfdGllcjoyLjIQbG9jYWwuZG91YmxlLnNldAhjb25z | bG9iYWwuaW50LmdldAhjb25zdGFudAQOY3JhZnRfdGllcjoyLjIQbG9jYWwuZG91YmxlLnNldAhjb25z | ||
Line 535: | Line 453: | ||
bnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAI+PRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50 | bnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAI+PRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50 | ||
BAVwaXBlcwxnZW5lcmljLndhaXQIY29uc3RhbnQDAAAAAAAAAAA= | BAVwaXBlcwxnZW5lcmljLndhaXQIY29uc3RhbnQDAAAAAAAAAAA= | ||
+ | |src= | ||
+ | :global double craft_inventory | ||
+ | :local int tier | ||
+ | :local double count | ||
+ | :local double plates | ||
+ | :local double pipes | ||
+ | :local double rawplates | ||
+ | |||
+ | tier = global.int.get("craft_tier:2.2") | ||
+ | count = global.double.get("craft_count:2.2") | ||
+ | |||
+ | plates = count * 2.0 * floor((66555444331.0 / (10.0 ^ i2d(tier))) % 10.0) | ||
+ | gotoif(x, tier != 2) ; only 5 plates for T2 | ||
+ | plates = plates - 1.0 | ||
+ | x: pipes = count * ceil(i2d(tier) / 5.0) | ||
+ | |||
+ | rawplates = max(0.0, plates * 9.0 - craft_inventory * (count("plate.dense", tier) + count("plate.stack", tier))) + max(0.0, pipes - craft_inventory * count("pipe", tier)) | ||
+ | gotoif(plates, rawplates <= craft_inventory * count("plate", tier)) | ||
+ | waitwhile(active("presser")) | ||
+ | produce("ingot", tier, rawplates - craft_inventory * count("plate", tier), "presser") | ||
+ | waitwhile(active("presser")) | ||
− | < | + | plates: gotoif(pipes, plates <= craft_inventory * count("plate.dense", tier)) |
− | + | craft("plate.stack", tier, plates - craft_inventory * (count("plate.stack", tier) + count("plate.dense", tier))) | |
+ | waitwhile(active("presser")) | ||
+ | produce("plate.stack", tier, plates - craft_inventory * count("plate.dense", tier), "presser") | ||
+ | |||
+ | pipes: gotoif(end, pipes <= craft_inventory * count("pipe", tier)) | ||
+ | waitwhile(active("shaper")) | ||
+ | produce("plate", tier, pipes - craft_inventory * count("pipe", tier), "shaper") | ||
+ | |||
+ | end: waituntil(count("plate.dense", tier) >= plates & count("pipe", tier) >= pipes) | ||
+ | wait(0.0) | ||
+ | }} | ||
|} | |} | ||
+ | |||
|- | |- | ||
|3 | |3 | ||
Line 550: | Line 500: | ||
|- | |- | ||
|craft 2:3 | |craft 2:3 | ||
− | | | + | |16 |
− | | | + | |{{AIScript |
− | + | |code= | |
− | + | CWNyYWZ0IDI6MwAAAAAAAAAAEAAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p | |
+ | bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjIuMxBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj | ||
+ | b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6Mi4zDmdlbmVyaWMuZ290 | ||
+ | b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA9jb21wYXJpc29u | ||
+ | LmJvb2wOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQB | ||
+ | PAhjb25zdGFudAIBAAAACGNvbnN0YW50BAF8DmNvbXBhcmlzb24uaW50DWxvY2FsLmludC5nZXQIY29u | ||
+ | c3RhbnQEBHRpZXIIY29uc3RhbnQEAT4IY29uc3RhbnQCCgAAAAhjb25zdGFudAQBfBFjb21wYXJpc29u | ||
+ | LmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBPAhjb25zdGFu | ||
+ | dAMAAAAAAADwPwhjb25zdGFudAQBfA5jb21wYXJpc29uLmludA5nbG9iYWwuaW50LmdldAhjb25zdGFu | ||
+ | dAQMY3JhZnRfc3RhdHVzCGNvbnN0YW50BAE+CGNvbnN0YW50AscAAAATZ2VuZXJpYy5leGVjdXRlc3lu | ||
+ | Ywhjb25zdGFudAQMY3JhZnQgMjozOmluDmdlbmVyaWMuZ290b2lmCGNvbnN0YW50AmMAAAAOY29tcGFy | ||
+ | aXNvbi5pbnQOZ2xvYmFsLmludC5nZXQIY29uc3RhbnQEDGNyYWZ0X3N0YXR1cwhjb25zdGFudAQBPghj | ||
+ | b25zdGFudALHAAAAEGxvY2FsLmRvdWJsZS5zZXQIY29uc3RhbnQEBm1vdG9ycxFhcml0aG1ldGljLmRv | ||
+ | dWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBKgxkb3VibGUuZmxv | ||
+ | b3IRYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUIY29uc3RhbnQDAABOoEepI0IIY29u | ||
+ | c3RhbnQEAS8RYXJpdGhtZXRpYy5kb3VibGUIY29uc3RhbnQDAAAAAAAAJEAIY29uc3RhbnQEA3BvdwNp | ||
+ | MmQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQDbW9kCGNvbnN0YW50AwAAAAAA | ||
+ | ACRAEGxvY2FsLmRvdWJsZS5zZXQIY29uc3RhbnQEBXB1bXBzEWFyaXRobWV0aWMuZG91YmxlEGxvY2Fs | ||
+ | LmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEqDGRvdWJsZS5mbG9vchFhcml0aG1l | ||
+ | dGljLmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZQhjb25zdGFudAMAAMbT09UoQghjb25zdGFudAQBLxFh | ||
+ | cml0aG1ldGljLmRvdWJsZQhjb25zdGFudAMAAAAAAAAkQAhjb25zdGFudAQDcG93A2kyZA1sb2NhbC5p | ||
+ | bnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BANtb2QIY29uc3RhbnQDAAAAAAAAJEAOZ2xvYmFs | ||
+ | LmludC5zZXQIY29uc3RhbnQEDmNyYWZ0X3RpZXI6My45DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRp | ||
+ | ZXIRZ2xvYmFsLmRvdWJsZS5zZXQIY29uc3RhbnQED2NyYWZ0X2NvdW50OjMuORFhcml0aG1ldGljLmRv | ||
+ | dWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVwdW1wcwhjb25zdGFudAQBLRFhcml0aG1ldGlj | ||
+ | LmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50 | ||
+ | BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBHB1bXANbG9jYWwuaW50LmdldAhjb25zdGFu | ||
+ | dAQEdGllchNnZW5lcmljLmV4ZWN1dGVzeW5jCGNvbnN0YW50BAljcmFmdCAzOjkOZ2xvYmFsLmludC5z | ||
+ | ZXQIY29uc3RhbnQEDmNyYWZ0X3RpZXI6My44DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIRZ2xv | ||
+ | YmFsLmRvdWJsZS5zZXQIY29uc3RhbnQED2NyYWZ0X2NvdW50OjMuOBFhcml0aG1ldGljLmRvdWJsZRBs | ||
+ | b2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAZtb3RvcnMIY29uc3RhbnQEAS0RYXJpdGhtZXRpYy5kb3Vi | ||
+ | bGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNm | ||
+ | YWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVtb3Rvcg1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0 | ||
+ | aWVyE2dlbmVyaWMuZXhlY3V0ZXN5bmMIY29uc3RhbnQECWNyYWZ0IDM6OA5nZW5lcmljLmdvdG9pZghj | ||
+ | b25zdGFudAJjAAAADmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BAxjcmFmdF9z | ||
+ | dGF0dXMIY29uc3RhbnQEAT4IY29uc3RhbnQCxwAAABNnZW5lcmljLmV4ZWN1dGVzeW5jCGNvbnN0YW50 | ||
+ | BA5jcmFmdCAyOjM6bWlzYw1mYWN0b3J5LmNyYWZ0CGNvbnN0YW50BBBtYWNoaW5lLnJlZmluZXJ5DWxv | ||
+ | Y2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQ= | ||
+ | |src= | ||
+ | ; Refiner | ||
+ | :global double craft_inventory | ||
+ | :local int tier | ||
+ | :local double count | ||
+ | :local double motors | ||
+ | :local double pumps | ||
+ | |||
+ | tier = global.int.get("craft_tier:2.3") | ||
+ | count = global.double.get("craft_count:2.3") | ||
+ | gotoif(99, tier < 1 | tier > 10 | count < 1.0 | global.int.get("craft_status") > 199) | ||
+ | |||
+ | executesync("craft 2:3:in") | ||
+ | gotoif(99, global.int.get("craft_status") > 199) | ||
+ | |||
+ | ;denseplates = count * 4.0 | ||
+ | ;blocks = count * floor((55500000001.0 / (10.0 ^ i2d(tier))) % 10.0) | ||
+ | ;rings = count * floor( (53333322211.0 / (10.0 ^ i2d(tier))) % 10.0) | ||
+ | motors = count * floor((42222211111.0 / (10.0 ^ i2d(tier))) % 10.0) | ||
+ | pumps = count * floor( (53333322211.0 / (10.0 ^ i2d(tier))) % 10.0) | ||
+ | |||
+ | global.int.set("craft_tier:3.9", tier) | ||
+ | global.double.set("craft_count:3.9", pumps - craft_inventory * count("pump", tier)) | ||
+ | executesync("craft 3:9") | ||
+ | global.int.set("craft_tier:3.8", tier) | ||
+ | global.double.set("craft_count:3.8", motors - craft_inventory * count("motor", tier)) | ||
+ | executesync("craft 3:8") | ||
+ | gotoif(99, global.int.get("craft_status") > 199) | ||
+ | |||
+ | executesync("craft 2:3:misc") | ||
+ | craft("machine.refinery", tier, count) | ||
+ | }} | ||
+ | |||
|- | |- | ||
− | | | + | |craft 2:3:in |
− | + | |17 | |
− | + | |{{AIScript | |
+ | |code= | ||
+ | DGNyYWZ0IDI6MzppbgAAAAAAAAAAEQAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2Jh | ||
+ | bC5pbnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjIuMxBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50 | ||
+ | BAVjb3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6Mi4zEGxvY2FsLmRv | ||
+ | dWJsZS5zZXQIY29uc3RhbnQEBmluZ290cwhjb25zdGFudAMAAAAAAAAAAA5nbG9iYWwuaW50LnNldAhj | ||
+ | b25zdGFudAQQY3JhZnRfdGllcjppbmdvdA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdsb2Jh | ||
+ | bC5kb3VibGUuc2V0CGNvbnN0YW50BBFjcmFmdF9jb3VudDppbmdvdBFhcml0aG1ldGljLmRvdWJsZRBs | ||
+ | b2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAZpbmdvdHMIY29uc3RhbnQEAS0TZmFjdG9yeS5pdGVtcy5j | ||
+ | b3VudAhjb25zdGFudAQFaW5nb3QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchNnZW5lcmljLmV4 | ||
+ | ZWN1dGVzeW5jCGNvbnN0YW50BAtjcmFmdCBpbmdvdA5nZW5lcmljLmdvdG9pZghjb25zdGFudAJjAAAA | ||
+ | DmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BAxjcmFmdF9zdGF0dXMIY29uc3Rh | ||
+ | bnQEAT4IY29uc3RhbnQCxwAAAA5nbG9iYWwuaW50LnNldAhjb25zdGFudAQOY3JhZnRfdGllcjoyLjMO | ||
+ | YXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLQhjb25z | ||
+ | dGFudAIBAAAAEWdsb2JhbC5kb3VibGUuc2V0CGNvbnN0YW50BA9jcmFmdF9jb3VudDoyLjMRYXJpdGht | ||
+ | ZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEAS0RYXJp | ||
+ | dGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhj | ||
+ | b25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BBBtYWNoaW5lLnJlZmluZXJ5DmFy | ||
+ | aXRobWV0aWMuaW50DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEAS0IY29uc3Rh | ||
+ | bnQCAQAAABNnZW5lcmljLmV4ZWN1dGVzeW5jCGNvbnN0YW50BAljcmFmdCAyOjMOZ2VuZXJpYy5nb3Rv | ||
+ | aWYIY29uc3RhbnQCYwAAAA5jb21wYXJpc29uLmludA5nbG9iYWwuaW50LmdldAhjb25zdGFudAQMY3Jh | ||
+ | ZnRfc3RhdHVzCGNvbnN0YW50BAE+CGNvbnN0YW50AscAAAAOZ2xvYmFsLmludC5zZXQIY29uc3RhbnQE | ||
+ | DmNyYWZ0X3RpZXI6Mi4zDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIRZ2xvYmFsLmRvdWJsZS5z | ||
+ | ZXQIY29uc3RhbnQED2NyYWZ0X2NvdW50OjIuMxBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3Vu | ||
+ | dA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAhjaGlwdGllcgNkMmkMZG91YmxlLmZsb29yEWFyaXRobWV0 | ||
+ | aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlCGNvbnN0YW50AwAAPpfTWClCCGNvbnN0YW50BAEvEWFy | ||
+ | aXRobWV0aWMuZG91YmxlCGNvbnN0YW50AwAAAAAAACRACGNvbnN0YW50BANwb3cDaTJkDWxvY2FsLmlu | ||
+ | dC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEA21vZAhjb25zdGFudAMAAAAAAAAkQA5nbG9iYWwu | ||
+ | aW50LnNldAhjb25zdGFudAQOY3JhZnRfdGllcjozLjENbG9jYWwuaW50LmdldAhjb25zdGFudAQIY2hp | ||
+ | cHRpZXIRZ2xvYmFsLmRvdWJsZS5zZXQIY29uc3RhbnQED2NyYWZ0X2NvdW50OjMuMRFhcml0aG1ldGlj | ||
+ | LmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhj | ||
+ | b25zdGFudAQBKghjb25zdGFudAMAAAAAAAAAQAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFn | ||
+ | bG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3Rv | ||
+ | cnkuaXRlbXMuY291bnQIY29uc3RhbnQEBGNoaXANbG9jYWwuaW50LmdldAhjb25zdGFudAQIY2hpcHRp | ||
+ | ZXITZ2VuZXJpYy5leGVjdXRlc3luYwhjb25zdGFudAQJY3JhZnQgMzox | ||
+ | |src= | ||
+ | :global double craft_inventory | ||
+ | :local int tier | ||
+ | :local double count | ||
+ | :local double ingots | ||
+ | :local int chiptier | ||
+ | |||
+ | tier = global.int.get("craft_tier:2.3") | ||
+ | count = global.double.get("craft_count:2.3") | ||
+ | |||
+ | ; Ingots | ||
+ | ingots = 0.0 ; TODO | ||
+ | global.int.set("craft_tier:ingot", tier) | ||
+ | global.double.set("craft_count:ingot", ingots - count("ingot", tier)) | ||
+ | ;global.int.set("craft_verify:ingot", 1) | ||
+ | executesync("craft ingot") | ||
+ | gotoif(99, global.int.get("craft_status") > 199) | ||
+ | |||
+ | ; Lower tier inputs | ||
+ | global.int.set("craft_tier:2.3", tier - 1) | ||
+ | global.double.set("craft_count:2.3", count - craft_inventory * count("machine.refinery", tier - 1)) | ||
+ | executesync("craft 2:3") | ||
+ | gotoif(99, global.int.get("craft_status") > 199) | ||
+ | |||
+ | ; Restore state for this tier | ||
+ | global.int.set("craft_tier:2.3", tier) | ||
+ | global.double.set("craft_count:2.3", count) | ||
+ | |||
+ | ; chips | ||
+ | ; chips = count * 2.0 | ||
+ | chiptier = d2i(floor((54432222111.0 / (10.0 ^ i2d(tier))) % 10.0)) | ||
+ | global.int.set("craft_tier:3.1", chiptier) | ||
+ | global.double.set("craft_count:3.1", count * 2.0 - craft_inventory * count("chip", chiptier)) | ||
+ | executesync("craft 3:1") | ||
+ | }} | ||
+ | |||
|- | |- | ||
− | | | + | |craft 2:3:misc |
− | + | |18 | |
− | < | + | |{{AIScript |
− | + | |code= | |
− | + | DmNyYWZ0IDI6MzptaXNjAAAAAAAAAAASAAAADWxvY2FsLmludC5zZXQIY29uc3RhbnQEBHRpZXIOZ2xv | |
− | + | YmFsLmludC5nZXQIY29uc3RhbnQEDmNyYWZ0X3RpZXI6Mi4zEGxvY2FsLmRvdWJsZS5zZXQIY29uc3Rh | |
− | + | bnQEBWNvdW50EWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9jb3VudDoyLjMQbG9jYWwu | |
− | + | ZG91YmxlLnNldAhjb25zdGFudAQGYmxvY2tzEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5n | |
− | + | ZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEqDGRvdWJsZS5mbG9vchFhcml0aG1ldGljLmRvdWJs | |
− | + | ZRFhcml0aG1ldGljLmRvdWJsZQhjb25zdGFudAMAAIGDIZcxQghjb25zdGFudAQBLxFhcml0aG1ldGlj | |
− | + | LmRvdWJsZQhjb25zdGFudAMAAAAAAAAkQAhjb25zdGFudAQDcG93A2kyZA1sb2NhbC5pbnQuZ2V0CGNv | |
− | + | bnN0YW50BAR0aWVyCGNvbnN0YW50BANtb2QIY29uc3RhbnQDAAAAAAAAJEAQbG9jYWwuZG91YmxlLnNl | |
+ | dAhjb25zdGFudAQFcmluZ3MRYXJpdGhtZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFu | ||
+ | dAQFY291bnQIY29uc3RhbnQEASoMZG91YmxlLmZsb29yEWFyaXRobWV0aWMuZG91YmxlEWFyaXRobWV0 | ||
+ | aWMuZG91YmxlCGNvbnN0YW50AwAAxtPT1ShCCGNvbnN0YW50BAEvEWFyaXRobWV0aWMuZG91YmxlCGNv | ||
+ | bnN0YW50AwAAAAAAACRACGNvbnN0YW50BANwb3cDaTJkDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRp | ||
+ | ZXIIY29uc3RhbnQEA21vZAhjb25zdGFudAMAAAAAAAAkQA5nbG9iYWwuaW50LnNldAhjb25zdGFudAQO | ||
+ | Y3JhZnRfdGllcjozLjQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchFnbG9iYWwuZG91YmxlLnNl | ||
+ | dAhjb25zdGFudAQPY3JhZnRfY291bnQ6My40EWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5n | ||
+ | ZXQIY29uc3RhbnQEBmJsb2Nrcwhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91 | ||
+ | YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMu | ||
+ | Y291bnQIY29uc3RhbnQEBWJsb2NrDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXITZ2VuZXJpYy5l | ||
+ | eGVjdXRlc3luYwhjb25zdGFudAQJY3JhZnQgMzo0Dmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BA5jcmFm | ||
+ | dF90aWVyOjMuMw1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdsb2JhbC5kb3VibGUuc2V0CGNv | ||
+ | bnN0YW50BA9jcmFmdF9jb3VudDozLjMRYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUQ | ||
+ | bG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEASoIY29uc3RhbnQDAAAAAAAA | ||
+ | EEAIY29uc3RhbnQEAS0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQE | ||
+ | D2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAtw | ||
+ | bGF0ZS5kZW5zZQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyE2dlbmVyaWMuZXhlY3V0ZXN5bmMI | ||
+ | Y29uc3RhbnQECWNyYWZ0IDM6Mw5nZW5lcmljLmdvdG9pZghjb25zdGFudAIOAAAAEWNvbXBhcmlzb24u | ||
+ | ZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBXJpbmdzCGNvbnN0YW50BAI8PRFhcml0aG1l | ||
+ | dGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0 | ||
+ | YW50BAEqEWFyaXRobWV0aWMuZG91YmxlE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBHJpbmcN | ||
+ | bG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKxNmYWN0b3J5Lml0ZW1zLmNvdW50 | ||
+ | CGNvbnN0YW50BANyb2QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchFnZW5lcmljLndhaXR3aGls | ||
+ | ZRZmYWN0b3J5Lm1hY2hpbmUuYWN0aXZlCGNvbnN0YW50BAZzaGFwZXIPZmFjdG9yeS5wcm9kdWNlCGNv | ||
+ | bnN0YW50BAVpbmdvdA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyC2RvdWJsZS5jZWlsEWFyaXRo | ||
+ | bWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBXJp | ||
+ | bmdzCGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50 | ||
+ | BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoRYXJpdGhtZXRpYy5kb3VibGUTZmFjdG9yeS5pdGVt | ||
+ | cy5jb3VudAhjb25zdGFudAQEcmluZw1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50 | ||
+ | BAErE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEA3JvZA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50 | ||
+ | BAR0aWVyCGNvbnN0YW50BAEvCGNvbnN0YW50AwAAAAAAAABACGNvbnN0YW50BAZzaGFwZXIOZ2VuZXJp | ||
+ | Yy5nb3RvaWYIY29uc3RhbnQCEQAAABFjb21wYXJpc29uLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNv | ||
+ | bnN0YW50BAVyaW5ncwhjb25zdGFudAQCPD0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5n | ||
+ | ZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50 | ||
+ | CGNvbnN0YW50BARyaW5nDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIRZ2VuZXJpYy53YWl0d2hp | ||
+ | bGUWZmFjdG9yeS5tYWNoaW5lLmFjdGl2ZQhjb25zdGFudAQGc2hhcGVyD2ZhY3RvcnkucHJvZHVjZQhj | ||
+ | b25zdGFudAQDcm9kDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIRYXJpdGhtZXRpYy5kb3VibGUQ | ||
+ | bG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFcmluZ3MIY29uc3RhbnQEAS0RYXJpdGhtZXRpYy5kb3Vi | ||
+ | bGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNm | ||
+ | YWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BARyaW5nDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRp | ||
+ | ZXIIY29uc3RhbnQEBnNoYXBlchFnZW5lcmljLndhaXR1bnRpbBFjb21wYXJpc29uLmRvdWJsZRNmYWN0 | ||
+ | b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BARyaW5nDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXII | ||
+ | Y29uc3RhbnQEAj49EGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBXJpbmdzDGdlbmVyaWMud2FpdAhj | ||
+ | b25zdGFudAMAAAAAAAAAAA== | ||
+ | |src= | ||
+ | :global double craft_inventory | ||
+ | :local int tier | ||
+ | :local double count | ||
+ | :local double blocks | ||
+ | :local double rings | ||
+ | |||
+ | tier = global.int.get("craft_tier:2.3") | ||
+ | count = global.double.get("craft_count:2.3") | ||
+ | |||
+ | ;denseplates = count * 4.0 | ||
+ | blocks = count * floor((75550000001.0 / (10.0 ^ i2d(tier))) % 10.0) | ||
+ | rings = count * floor( (53333322211.0 / (10.0 ^ i2d(tier))) % 10.0) | ||
+ | |||
+ | global.int.set("craft_tier:3.4", tier) | ||
+ | global.double.set("craft_count:3.4", blocks - craft_inventory * count("block", tier)) | ||
+ | executesync("craft 3:4") | ||
+ | |||
+ | global.int.set("craft_tier:3.3", tier) | ||
+ | global.double.set("craft_count:3.3", count * 4.0 - craft_inventory * count("plate.dense", tier)) | ||
+ | executesync("craft 3:3") | ||
+ | |||
+ | plates: gotoif(rings, rings <= craft_inventory * (count("ring", tier) + count("rod", tier))) | ||
+ | waitwhile(active("shaper")) | ||
+ | produce("ingot", tier, ceil((rings - craft_inventory * (count("ring", tier) + count("rod", tier)))/2.0), "shaper") | ||
+ | |||
+ | rings: gotoif(end, rings <= craft_inventory * count("ring", tier)) | ||
+ | waitwhile(active("shaper")) | ||
+ | produce("rod", tier, rings - craft_inventory * count("ring", tier), "shaper") | ||
+ | |||
+ | end: waituntil(count("ring", tier) >= rings) | ||
+ | wait(0.0) | ||
|} | |} | ||
+ | |||
|- | |- | ||
|4 | |4 | ||
Line 577: | Line 744: | ||
(pic) | (pic) | ||
| | | | ||
+ | {| class="wikitable" | ||
+ | !Name | ||
+ | !Lines | ||
+ | !Code | ||
+ | |- | ||
+ | |craft 2:4 | ||
+ | |14 | ||
+ | |{{AIScript | ||
+ | |code= | ||
+ | CWNyYWZ0IDI6NAAAAAAAAAAADgAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p | ||
+ | bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjIuNBBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj | ||
+ | b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6Mi40DmdlbmVyaWMuZ290 | ||
+ | b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA9jb21wYXJpc29u | ||
+ | LmJvb2wOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQB | ||
+ | PAhjb25zdGFudAIBAAAACGNvbnN0YW50BAF8DmNvbXBhcmlzb24uaW50DWxvY2FsLmludC5nZXQIY29u | ||
+ | c3RhbnQEBHRpZXIIY29uc3RhbnQEAT4IY29uc3RhbnQCCgAAAAhjb25zdGFudAQBfBFjb21wYXJpc29u | ||
+ | LmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBPAhjb25zdGFu | ||
+ | dAMAAAAAAADwPwhjb25zdGFudAQBfA5jb21wYXJpc29uLmludA5nbG9iYWwuaW50LmdldAhjb25zdGFu | ||
+ | dAQMY3JhZnRfc3RhdHVzCGNvbnN0YW50BAE+CGNvbnN0YW50AscAAAAQbG9jYWwuZG91YmxlLnNldAhj | ||
+ | b25zdGFudAQGbW90b3JzEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQE | ||
+ | BWNvdW50CGNvbnN0YW50BAEqDGRvdWJsZS5mbG9vchFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGlj | ||
+ | LmRvdWJsZQhjb25zdGFudAMAAByjiq8UQghjb25zdGFudAQBLxFhcml0aG1ldGljLmRvdWJsZQhjb25z | ||
+ | dGFudAMAAAAAAAAkQAhjb25zdGFudAQDcG93A2kyZA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVy | ||
+ | CGNvbnN0YW50BANtb2QIY29uc3RhbnQDAAAAAAAAJEAQbG9jYWwuZG91YmxlLnNldAhjb25zdGFudAQL | ||
+ | ZGVuc2VwbGF0ZXMRYXJpdGhtZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291 | ||
+ | bnQIY29uc3RhbnQEASoMZG91YmxlLmZsb29yEWFyaXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91 | ||
+ | YmxlCGNvbnN0YW50AwAAJ13NRzdCCGNvbnN0YW50BAEvEWFyaXRobWV0aWMuZG91YmxlCGNvbnN0YW50 | ||
+ | AwAAAAAAACRACGNvbnN0YW50BANwb3cDaTJkDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29u | ||
+ | c3RhbnQEA21vZAhjb25zdGFudAMAAAAAAAAkQBNnZW5lcmljLmV4ZWN1dGVzeW5jCGNvbnN0YW50BAxj | ||
+ | cmFmdCAyOjQ6aW4OZ2xvYmFsLmludC5zZXQIY29uc3RhbnQEDmNyYWZ0X3RpZXI6My44DWxvY2FsLmlu | ||
+ | dC5nZXQIY29uc3RhbnQEBHRpZXIRZ2xvYmFsLmRvdWJsZS5zZXQIY29uc3RhbnQED2NyYWZ0X2NvdW50 | ||
+ | OjMuOBFhcml0aG1ldGljLmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAZtb3RvcnMIY29u | ||
+ | c3RhbnQEAS0RYXJpdGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0 | ||
+ | X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVtb3Rvcg1s | ||
+ | b2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyE2dlbmVyaWMuZXhlY3V0ZXN5bmMIY29uc3RhbnQECWNy | ||
+ | YWZ0IDM6OA5nbG9iYWwuaW50LnNldAhjb25zdGFudAQOY3JhZnRfdGllcjozLjMNbG9jYWwuaW50Lmdl | ||
+ | dAhjb25zdGFudAQEdGllchFnbG9iYWwuZG91YmxlLnNldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My4z | ||
+ | EWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEC2RlbnNlcGxhdGVzCGNv | ||
+ | bnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFm | ||
+ | dF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQLcGxhdGUu | ||
+ | ZGVuc2UNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchNnZW5lcmljLmV4ZWN1dGVzeW5jCGNvbnN0 | ||
+ | YW50BAljcmFmdCAzOjMOZ2VuZXJpYy5nb3RvaWYIY29uc3RhbnQCYwAAAA5jb21wYXJpc29uLmludA5n | ||
+ | bG9iYWwuaW50LmdldAhjb25zdGFudAQMY3JhZnRfc3RhdHVzCGNvbnN0YW50BAE+CGNvbnN0YW50AscA | ||
+ | AAANZmFjdG9yeS5jcmFmdAhjb25zdGFudAQPbWFjaGluZS5jcnVzaGVyDWxvY2FsLmludC5nZXQIY29u | ||
+ | c3RhbnQEBHRpZXIQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQ= | ||
+ | src= | ||
+ | ; Crusher | ||
+ | :global double craft_inventory | ||
+ | :local int tier | ||
+ | :local double count | ||
+ | :local double motors | ||
+ | :local double denseplates | ||
+ | |||
+ | tier = global.int.get("craft_tier:2.4") | ||
+ | count = global.double.get("craft_count:2.4") | ||
+ | gotoif(99, tier < 1 | tier > 10 | count < 1.0 | global.int.get("craft_status") > 199) | ||
+ | |||
+ | motors = count * floor((22211111111.0 / (10.0 ^ i2d(tier))) % 10.0) | ||
+ | denseplates = count * floor((99988888871.0 / (10.0 ^ i2d(tier))) % 10.0) | ||
+ | |||
+ | executesync("craft 2:4:in") | ||
+ | |||
+ | global.int.set("craft_tier:3.8", tier) | ||
+ | global.double.set("craft_count:3.8", motors - craft_inventory * count("motor", tier)) | ||
+ | executesync("craft 3:8") | ||
+ | global.int.set("craft_tier:3.3", tier) | ||
+ | global.double.set("craft_count:3.3", denseplates - craft_inventory * count("plate.dense", tier)) | ||
+ | executesync("craft 3:3") | ||
+ | gotoif(99, global.int.get("craft_status") > 199) | ||
+ | |||
+ | craft("machine.crusher", tier, count) | ||
+ | }} | ||
+ | |||
+ | |- | ||
+ | |craft 2:4:in | ||
+ | |18 | ||
+ | |{{AIScript | ||
+ | |code= | ||
+ | DGNyYWZ0IDI6NDppbgAAAAAAAAAAEgAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2Jh | ||
+ | bC5pbnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjIuNBBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50 | ||
+ | BAVjb3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6Mi40EGxvY2FsLmRv | ||
+ | dWJsZS5zZXQIY29uc3RhbnQEBmluZ290cwhjb25zdGFudAMAAAAAAAAAAA5nbG9iYWwuaW50LnNldAhj | ||
+ | b25zdGFudAQQY3JhZnRfdGllcjppbmdvdA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdsb2Jh | ||
+ | bC5kb3VibGUuc2V0CGNvbnN0YW50BBFjcmFmdF9jb3VudDppbmdvdBFhcml0aG1ldGljLmRvdWJsZRBs | ||
+ | b2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAZpbmdvdHMIY29uc3RhbnQEAS0TZmFjdG9yeS5pdGVtcy5j | ||
+ | b3VudAhjb25zdGFudAQFaW5nb3QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchNnZW5lcmljLmV4 | ||
+ | ZWN1dGVzeW5jCGNvbnN0YW50BAtjcmFmdCBpbmdvdA5nZW5lcmljLmdvdG9pZghjb25zdGFudAJjAAAA | ||
+ | DmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BAxjcmFmdF9zdGF0dXMIY29uc3Rh | ||
+ | bnQEAT4IY29uc3RhbnQCxwAAAA5nbG9iYWwuaW50LnNldAhjb25zdGFudAQOY3JhZnRfdGllcjoyLjQO | ||
+ | YXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLQhjb25z | ||
+ | dGFudAIBAAAAEWdsb2JhbC5kb3VibGUuc2V0CGNvbnN0YW50BA9jcmFmdF9jb3VudDoyLjQRYXJpdGht | ||
+ | ZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEAS0RYXJp | ||
+ | dGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhj | ||
+ | b25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BA9tYWNoaW5lLmNydXNoZXIOYXJp | ||
+ | dGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLQhjb25zdGFu | ||
+ | dAIBAAAAE2dlbmVyaWMuZXhlY3V0ZXN5bmMIY29uc3RhbnQECWNyYWZ0IDI6NA5nZW5lcmljLmdvdG9p | ||
+ | Zghjb25zdGFudAJjAAAADmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BAxjcmFm | ||
+ | dF9zdGF0dXMIY29uc3RhbnQEAT4IY29uc3RhbnQCxwAAAA5nbG9iYWwuaW50LnNldAhjb25zdGFudAQO | ||
+ | Y3JhZnRfdGllcjoyLjQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchFnbG9iYWwuZG91YmxlLnNl | ||
+ | dAhjb25zdGFudAQPY3JhZnRfY291bnQ6Mi40EGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50 | ||
+ | EGxvY2FsLmRvdWJsZS5zZXQIY29uc3RhbnQEBWNoaXBzEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRv | ||
+ | dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEqDGRvdWJsZS5mbG9vchFhcml0aG1ldGlj | ||
+ | LmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZQhjb25zdGFudAMAAAwKowgfQghjb25zdGFudAQBLxFhcml0 | ||
+ | aG1ldGljLmRvdWJsZQhjb25zdGFudAMAAAAAAAAkQAhjb25zdGFudAQDcG93A2kyZA1sb2NhbC5pbnQu | ||
+ | Z2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BANtb2QIY29uc3RhbnQDAAAAAAAAJEANbG9jYWwuaW50 | ||
+ | LnNldAhjb25zdGFudAQIY2hpcHRpZXIDZDJpDGRvdWJsZS5mbG9vchFhcml0aG1ldGljLmRvdWJsZRFh | ||
+ | cml0aG1ldGljLmRvdWJsZQhjb25zdGFudAMAAG4Ws5ckQghjb25zdGFudAQBLxFhcml0aG1ldGljLmRv | ||
+ | dWJsZQhjb25zdGFudAMAAAAAAAAkQAhjb25zdGFudAQDcG93A2kyZA1sb2NhbC5pbnQuZ2V0CGNvbnN0 | ||
+ | YW50BAR0aWVyCGNvbnN0YW50BANtb2QIY29uc3RhbnQDAAAAAAAAJEAOZ2xvYmFsLmludC5zZXQIY29u | ||
+ | c3RhbnQEDmNyYWZ0X3RpZXI6My4xDWxvY2FsLmludC5nZXQIY29uc3RhbnQECGNoaXB0aWVyEWdsb2Jh | ||
+ | bC5kb3VibGUuc2V0CGNvbnN0YW50BA9jcmFmdF9jb3VudDozLjERYXJpdGhtZXRpYy5kb3VibGUQbG9j | ||
+ | YWwuZG91YmxlLmdldAhjb25zdGFudAQFY2hpcHMIY29uc3RhbnQEAS0RYXJpdGhtZXRpYy5kb3VibGUR | ||
+ | Z2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQBKhNmYWN0 | ||
+ | b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BARjaGlwDWxvY2FsLmludC5nZXQIY29uc3RhbnQECGNoaXB0 | ||
+ | aWVyE2dlbmVyaWMuZXhlY3V0ZXN5bmMIY29uc3RhbnQECWNyYWZ0IDM6MQ== | ||
+ | |src= | ||
+ | :global double craft_inventory | ||
+ | :local int tier | ||
+ | :local double count | ||
+ | :local double ingots | ||
+ | :local double chips | ||
+ | :local int chiptier | ||
+ | |||
+ | tier = global.int.get("craft_tier:2.4") | ||
+ | count = global.double.get("craft_count:2.4") | ||
+ | |||
+ | ; Ingots | ||
+ | ingots = 0.0 ; TODO | ||
+ | global.int.set("craft_tier:ingot", tier) | ||
+ | global.double.set("craft_count:ingot", ingots - count("ingot", tier)) | ||
+ | ;global.int.set("craft_verify:ingot", 1) | ||
+ | executesync("craft ingot") | ||
+ | gotoif(99, global.int.get("craft_status") > 199) | ||
+ | |||
+ | ; Lower tier inputs | ||
+ | global.int.set("craft_tier:2.4", tier - 1) | ||
+ | global.double.set("craft_count:2.4", count - craft_inventory * count("machine.crusher", tier - 1)) | ||
+ | executesync("craft 2:4") | ||
+ | gotoif(99, global.int.get("craft_status") > 199) | ||
+ | |||
+ | ; Restore state for this tier | ||
+ | global.int.set("craft_tier:2.4", tier) | ||
+ | global.double.set("craft_count:2.4", count) | ||
+ | |||
+ | ; chips | ||
+ | chips = count * floor((33322222211.0 / (10.0 ^ i2d(tier))) % 10.0) | ||
+ | chiptier = d2i(floor((44222221111.0 / (10.0 ^ i2d(tier))) % 10.0)) | ||
+ | global.int.set("craft_tier:3.1", chiptier) | ||
+ | global.double.set("craft_count:3.1", chips - craft_inventory * count("chip", chiptier)) | ||
+ | executesync("craft 3:1") | ||
+ | }} | ||
+ | |} | ||
+ | |||
|- | |- | ||
|5 | |5 | ||
Line 582: | Line 902: | ||
(pic) | (pic) | ||
| | | | ||
+ | {| class="wikitable" | ||
+ | !Name | ||
+ | !Lines | ||
+ | !Code | ||
+ | |- | ||
+ | |craft 2:5 | ||
+ | |15 | ||
+ | |{{AIScript | ||
+ | |code= | ||
+ | CWNyYWZ0IDI6NQAAAAAAAAAADwAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p | ||
+ | bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjIuNRBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj | ||
+ | b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6Mi41DmdlbmVyaWMuZ290 | ||
+ | b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA9jb21wYXJpc29u | ||
+ | LmJvb2wOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQB | ||
+ | PAhjb25zdGFudAIBAAAACGNvbnN0YW50BAF8DmNvbXBhcmlzb24uaW50DWxvY2FsLmludC5nZXQIY29u | ||
+ | c3RhbnQEBHRpZXIIY29uc3RhbnQEAT4IY29uc3RhbnQCCgAAAAhjb25zdGFudAQBfBFjb21wYXJpc29u | ||
+ | LmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBPAhjb25zdGFu | ||
+ | dAMAAAAAAADwPwhjb25zdGFudAQBfA5jb21wYXJpc29uLmludA5nbG9iYWwuaW50LmdldAhjb25zdGFu | ||
+ | dAQMY3JhZnRfc3RhdHVzCGNvbnN0YW50BAE+CGNvbnN0YW50AscAAAATZ2VuZXJpYy5leGVjdXRlc3lu | ||
+ | Ywhjb25zdGFudAQMY3JhZnQgMjo1OmluDmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BA5jcmFmdF90aWVy | ||
+ | OjMuNA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdsb2JhbC5kb3VibGUuc2V0CGNvbnN0YW50 | ||
+ | BA9jcmFmdF9jb3VudDozLjQRYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUQbG9jYWwu | ||
+ | ZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEASoMZG91YmxlLmZsb29yEWFyaXRobWV0 | ||
+ | aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlCGNvbnN0YW50AwAAAggU/S1CCGNvbnN0YW50BAEvEWFy | ||
+ | aXRobWV0aWMuZG91YmxlCGNvbnN0YW50AwAAAAAAACRACGNvbnN0YW50BANwb3cDaTJkDWxvY2FsLmlu | ||
+ | dC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEA21vZAhjb25zdGFudAMAAAAAAAAkQAhjb25zdGFu | ||
+ | dAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52 | ||
+ | ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBWJsb2NrDWxvY2Fs | ||
+ | LmludC5nZXQIY29uc3RhbnQEBHRpZXITZ2VuZXJpYy5leGVjdXRlc3luYwhjb25zdGFudAQJY3JhZnQg | ||
+ | Mzo0Dmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuMw1sb2NhbC5pbnQuZ2V0CGNv | ||
+ | bnN0YW50BAR0aWVyEWdsb2JhbC5kb3VibGUuc2V0CGNvbnN0YW50BA9jcmFmdF9jb3VudDozLjMRYXJp | ||
+ | dGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQF | ||
+ | Y291bnQIY29uc3RhbnQEASoMZG91YmxlLmZsb29yEWFyaXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMu | ||
+ | ZG91YmxlCGNvbnN0YW50AwAATFx2txRCCGNvbnN0YW50BAEvEWFyaXRobWV0aWMuZG91YmxlCGNvbnN0 | ||
+ | YW50AwAAAAAAACRACGNvbnN0YW50BANwb3cDaTJkDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXII | ||
+ | Y29uc3RhbnQEA21vZAhjb25zdGFudAMAAAAAAAAkQAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJs | ||
+ | ZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2Zh | ||
+ | Y3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEC3BsYXRlLmRlbnNlDWxvY2FsLmludC5nZXQIY29uc3Rh | ||
+ | bnQEBHRpZXITZ2VuZXJpYy5leGVjdXRlc3luYwhjb25zdGFudAQJY3JhZnQgMzozDmdsb2JhbC5pbnQu | ||
+ | c2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuMg1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWds | ||
+ | b2JhbC5kb3VibGUuc2V0CGNvbnN0YW50BA9jcmFmdF9jb3VudDozLjIRYXJpdGhtZXRpYy5kb3VibGUR | ||
+ | YXJpdGhtZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQE | ||
+ | ASoMZG91YmxlLmZsb29yEWFyaXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlCGNvbnN0YW50 | ||
+ | AwAAANBYMXVBCGNvbnN0YW50BAEvEWFyaXRobWV0aWMuZG91YmxlCGNvbnN0YW50AwAAAAAAACRACGNv | ||
+ | bnN0YW50BANwb3cDaTJkDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEA21vZAhj | ||
+ | b25zdGFudAMAAAAAAAAkQAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91Ymxl | ||
+ | LmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291 | ||
+ | bnQIY29uc3RhbnQEBXBsYXRlDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXITZ2VuZXJpYy5leGVj | ||
+ | dXRlc3luYwhjb25zdGFudAQJY3JhZnQgMzoyDmdlbmVyaWMuZ290b2lmCGNvbnN0YW50AmMAAAAOY29t | ||
+ | cGFyaXNvbi5pbnQOZ2xvYmFsLmludC5nZXQIY29uc3RhbnQEDGNyYWZ0X3N0YXR1cwhjb25zdGFudAQB | ||
+ | Pghjb25zdGFudALHAAAADWZhY3RvcnkuY3JhZnQIY29uc3RhbnQEDm1hY2hpbmUuY3V0dGVyDWxvY2Fs | ||
+ | LmludC5nZXQIY29uc3RhbnQEBHRpZXIQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQ= | ||
+ | |src= | ||
+ | ; Cutter | ||
+ | :global double craft_inventory | ||
+ | :local int tier | ||
+ | :local double count | ||
+ | |||
+ | tier = global.int.get("craft_tier:2.5") | ||
+ | count = global.double.get("craft_count:2.5") | ||
+ | gotoif(99, tier < 1 | tier > 10 | count < 1.0 | global.int.get("craft_status") > 199) | ||
+ | |||
+ | executesync("craft 2:5:in") | ||
+ | |||
+ | ; blocks = count * floor((64400000001.0 / (10.0 ^ i2d(tier))) % 10.0) | ||
+ | global.int.set("craft_tier:3.4", tier) | ||
+ | global.double.set("craft_count:3.4", count * floor((64400000001.0 / (10.0 ^ i2d(tier))) % 10.0) - craft_inventory * count("block", tier)) | ||
+ | executesync("craft 3:4") | ||
+ | |||
+ | ; denseplates = count * floor((22244333331.0 / (10.0 ^ i2d(tier))) % 10.0) | ||
+ | global.int.set("craft_tier:3.3", tier) | ||
+ | global.double.set("craft_count:3.3", count * floor((22244333331.0 / (10.0 ^ i2d(tier))) % 10.0) - craft_inventory * count("plate.dense", tier)) | ||
+ | executesync("craft 3:3") | ||
+ | |||
+ | ; plates = count * floor((00022222221.0 / (10.0 ^ i2d(tier))) % 10.0) | ||
+ | global.int.set("craft_tier:3.2", tier) | ||
+ | global.double.set("craft_count:3.2", count * floor((00022222221.0 / (10.0 ^ i2d(tier))) % 10.0) - craft_inventory * count("plate", tier)) | ||
+ | executesync("craft 3:2") | ||
+ | gotoif(99, global.int.get("craft_status") > 199) | ||
+ | |||
+ | craft("machine.cutter", tier, count) | ||
+ | }} | ||
+ | |||
+ | |- | ||
+ | |craft 2:5:in | ||
+ | |17 | ||
+ | |{{AIScript | ||
+ | |code= | ||
+ | DGNyYWZ0IDI6NTppbgAAAAAAAAAAEQAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2Jh | ||
+ | bC5pbnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjIuNRBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50 | ||
+ | BAVjb3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6Mi41EGxvY2FsLmRv | ||
+ | dWJsZS5zZXQIY29uc3RhbnQEBmluZ290cwhjb25zdGFudAMAAAAAAAAAAA5nbG9iYWwuaW50LnNldAhj | ||
+ | b25zdGFudAQQY3JhZnRfdGllcjppbmdvdA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdsb2Jh | ||
+ | bC5kb3VibGUuc2V0CGNvbnN0YW50BBFjcmFmdF9jb3VudDppbmdvdBFhcml0aG1ldGljLmRvdWJsZRBs | ||
+ | b2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAZpbmdvdHMIY29uc3RhbnQEAS0TZmFjdG9yeS5pdGVtcy5j | ||
+ | b3VudAhjb25zdGFudAQFaW5nb3QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchNnZW5lcmljLmV4 | ||
+ | ZWN1dGVzeW5jCGNvbnN0YW50BAtjcmFmdCBpbmdvdA5nZW5lcmljLmdvdG9pZghjb25zdGFudAJjAAAA | ||
+ | DmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BAxjcmFmdF9zdGF0dXMIY29uc3Rh | ||
+ | bnQEAT4IY29uc3RhbnQCxwAAAA5nbG9iYWwuaW50LnNldAhjb25zdGFudAQOY3JhZnRfdGllcjoyLjUO | ||
+ | YXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLQhjb25z | ||
+ | dGFudAIBAAAAEWdsb2JhbC5kb3VibGUuc2V0CGNvbnN0YW50BA9jcmFmdF9jb3VudDoyLjURYXJpdGht | ||
+ | ZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEAS0RYXJp | ||
+ | dGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhj | ||
+ | b25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BA5tYWNoaW5lLmN1dHRlcg5hcml0 | ||
+ | aG1ldGljLmludA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAEtCGNvbnN0YW50 | ||
+ | AgEAAAATZ2VuZXJpYy5leGVjdXRlc3luYwhjb25zdGFudAQJY3JhZnQgMjo1DmdlbmVyaWMuZ290b2lm | ||
+ | CGNvbnN0YW50AmMAAAAOY29tcGFyaXNvbi5pbnQOZ2xvYmFsLmludC5nZXQIY29uc3RhbnQEDGNyYWZ0 | ||
+ | X3N0YXR1cwhjb25zdGFudAQBPghjb25zdGFudALHAAAADmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BA5j | ||
+ | cmFmdF90aWVyOjIuNQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdsb2JhbC5kb3VibGUuc2V0 | ||
+ | CGNvbnN0YW50BA9jcmFmdF9jb3VudDoyLjUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQQ | ||
+ | bG9jYWwuZG91YmxlLnNldAhjb25zdGFudAQGbW90b3JzEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRv | ||
+ | dWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNvbnN0YW50BAEqDGRvdWJsZS5mbG9vchFhcml0aG1ldGlj | ||
+ | LmRvdWJsZRFhcml0aG1ldGljLmRvdWJsZQhjb25zdGFudAMAAM+WdJcxQghjb25zdGFudAQBLxFhcml0 | ||
+ | aG1ldGljLmRvdWJsZQhjb25zdGFudAMAAAAAAAAkQAhjb25zdGFudAQDcG93A2kyZA1sb2NhbC5pbnQu | ||
+ | Z2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BANtb2QIY29uc3RhbnQDAAAAAAAAJEAOZ2xvYmFsLmlu | ||
+ | dC5zZXQIY29uc3RhbnQEDmNyYWZ0X3RpZXI6My44DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIR | ||
+ | Z2xvYmFsLmRvdWJsZS5zZXQIY29uc3RhbnQED2NyYWZ0X2NvdW50OjMuOBFhcml0aG1ldGljLmRvdWJs | ||
+ | ZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAZtb3RvcnMIY29uc3RhbnQEAS0RYXJpdGhtZXRpYy5k | ||
+ | b3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhjb25zdGFudAQB | ||
+ | KhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAVtb3Rvcg1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50 | ||
+ | BAR0aWVyE2dlbmVyaWMuZXhlY3V0ZXN5bmMIY29uc3RhbnQECWNyYWZ0IDM6OA== | ||
+ | |src= | ||
+ | :global double craft_inventory | ||
+ | :local int tier | ||
+ | :local double count | ||
+ | :local double ingots | ||
+ | :local double chips | ||
+ | :local int chiptier | ||
+ | |||
+ | tier = global.int.get("craft_tier:2.5") | ||
+ | count = global.double.get("craft_count:2.5") | ||
+ | |||
+ | ; Ingots | ||
+ | ingots = 0.0 ; TODO | ||
+ | global.int.set("craft_tier:ingot", tier) | ||
+ | global.double.set("craft_count:ingot", ingots - count("ingot", tier)) | ||
+ | ;global.int.set("craft_verify:ingot", 1) | ||
+ | executesync("craft ingot") | ||
+ | gotoif(99, global.int.get("craft_status") > 199) | ||
+ | |||
+ | ; Lower tier inputs | ||
+ | global.int.set("craft_tier:2.5", tier - 1) | ||
+ | global.double.set("craft_count:2.5", count - craft_inventory * count("machine.cutter", tier - 1)) | ||
+ | executesync("craft 2:5") | ||
+ | gotoif(99, global.int.get("craft_status") > 199) | ||
+ | |||
+ | ; Restore state for this tier | ||
+ | global.int.set("craft_tier:2.5", tier) | ||
+ | global.double.set("craft_count:2.5", count) | ||
+ | |||
+ | :local double motors | ||
+ | motors = count * floor((75555444431.0 / (10.0 ^ i2d(tier))) % 10.0) | ||
+ | global.int.set("craft_tier:3.8", tier) | ||
+ | global.double.set("craft_count:3.8", motors - craft_inventory * count("motor", tier)) | ||
+ | executesync("craft 3:8") | ||
+ | }} | ||
+ | |||
+ | |- | ||
+ | |craft 2:5:plates | ||
+ | |12 | ||
+ | |{{AIScript | ||
+ | |code= | ||
+ | EGNyYWZ0IDI6NTpwbGF0ZXMAAAAAAAAAAAwAAAANbG9jYWwuaW50LnNldAhjb25zdGFudAQEdGllcg5n | ||
+ | bG9iYWwuaW50LmdldAhjb25zdGFudAQOY3JhZnRfdGllcjoyLjUQbG9jYWwuZG91YmxlLnNldAhjb25z | ||
+ | dGFudAQFY291bnQRZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2NvdW50OjIuNQ5nZW5l | ||
+ | cmljLmdvdG9pZghjb25zdGFudAJjAAAAD2NvbXBhcmlzb24uYm9vbA9jb21wYXJpc29uLmJvb2wPY29t | ||
+ | cGFyaXNvbi5ib29sDmNvbXBhcmlzb24uaW50DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29u | ||
+ | c3RhbnQEATwIY29uc3RhbnQCAQAAAAhjb25zdGFudAQBfA5jb21wYXJpc29uLmludA1sb2NhbC5pbnQu | ||
+ | Z2V0CGNvbnN0YW50BAR0aWVyCGNvbnN0YW50BAE+CGNvbnN0YW50AgoAAAAIY29uc3RhbnQEAXwRY29t | ||
+ | cGFyaXNvbi5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEATwI | ||
+ | Y29uc3RhbnQDAAAAAAAA8D8IY29uc3RhbnQEAXwOY29tcGFyaXNvbi5pbnQOZ2xvYmFsLmludC5nZXQI | ||
+ | Y29uc3RhbnQEDGNyYWZ0X3N0YXR1cwhjb25zdGFudAQBPghjb25zdGFudALHAAAADmdsb2JhbC5pbnQu | ||
+ | c2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuNA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWds | ||
+ | b2JhbC5kb3VibGUuc2V0CGNvbnN0YW50BA9jcmFmdF9jb3VudDozLjQRYXJpdGhtZXRpYy5kb3VibGUR | ||
+ | YXJpdGhtZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQE | ||
+ | ASoMZG91YmxlLmZsb29yEWFyaXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlCGNvbnN0YW50 | ||
+ | AwAAAggU/S1CCGNvbnN0YW50BAEvEWFyaXRobWV0aWMuZG91YmxlCGNvbnN0YW50AwAAAAAAACRACGNv | ||
+ | bnN0YW50BANwb3cDaTJkDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEA21vZAhj | ||
+ | b25zdGFudAMAAAAAAAAkQAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91Ymxl | ||
+ | LmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291 | ||
+ | bnQIY29uc3RhbnQEBWJsb2NrDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXITZ2VuZXJpYy5leGVj | ||
+ | dXRlc3luYwhjb25zdGFudAQJY3JhZnQgMzo0Dmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BA5jcmFmdF90 | ||
+ | aWVyOjMuMw1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdsb2JhbC5kb3VibGUuc2V0CGNvbnN0 | ||
+ | YW50BA9jcmFmdF9jb3VudDozLjMRYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUQbG9j | ||
+ | YWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEASoMZG91YmxlLmZsb29yEWFyaXRo | ||
+ | bWV0aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlCGNvbnN0YW50AwAATFx2txRCCGNvbnN0YW50BAEv | ||
+ | EWFyaXRobWV0aWMuZG91YmxlCGNvbnN0YW50AwAAAAAAACRACGNvbnN0YW50BANwb3cDaTJkDWxvY2Fs | ||
+ | LmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEA21vZAhjb25zdGFudAMAAAAAAAAkQAhjb25z | ||
+ | dGFudAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRf | ||
+ | aW52ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEC3BsYXRlLmRl | ||
+ | bnNlDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXITZ2VuZXJpYy5leGVjdXRlc3luYwhjb25zdGFu | ||
+ | dAQJY3JhZnQgMzozDmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuMg1sb2NhbC5p | ||
+ | bnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdsb2JhbC5kb3VibGUuc2V0CGNvbnN0YW50BA9jcmFmdF9jb3Vu | ||
+ | dDozLjIRYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhj | ||
+ | b25zdGFudAQFY291bnQIY29uc3RhbnQEASoMZG91YmxlLmZsb29yEWFyaXRobWV0aWMuZG91YmxlEWFy | ||
+ | aXRobWV0aWMuZG91YmxlCGNvbnN0YW50AwAAANBYMXVBCGNvbnN0YW50BAEvEWFyaXRobWV0aWMuZG91 | ||
+ | YmxlCGNvbnN0YW50AwAAAAAAACRACGNvbnN0YW50BANwb3cDaTJkDWxvY2FsLmludC5nZXQIY29uc3Rh | ||
+ | bnQEBHRpZXIIY29uc3RhbnQEA21vZAhjb25zdGFudAMAAAAAAAAkQAhjb25zdGFudAQBLRFhcml0aG1l | ||
+ | dGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0 | ||
+ | YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBXBsYXRlDWxvY2FsLmludC5nZXQIY29u | ||
+ | c3RhbnQEBHRpZXITZ2VuZXJpYy5leGVjdXRlc3luYwhjb25zdGFudAQJY3JhZnQgMzoy | ||
+ | |src= | ||
+ | :global double craft_inventory | ||
+ | :local int tier | ||
+ | :local double count | ||
+ | |||
+ | tier = global.int.get("craft_tier:2.5") | ||
+ | count = global.double.get("craft_count:2.5") | ||
+ | gotoif(99, tier < 1 | tier > 10 | count < 1.0 | global.int.get("craft_status") > 199) | ||
+ | |||
+ | ; blocks = count * floor((64400000001.0 / (10.0 ^ i2d(tier))) % 10.0) | ||
+ | global.int.set("craft_tier:3.4", tier) | ||
+ | global.double.set("craft_count:3.4", count * floor((64400000001.0 / (10.0 ^ i2d(tier))) % 10.0) - craft_inventory * count("block", tier)) | ||
+ | executesync("craft 3:4") | ||
+ | |||
+ | ; denseplates = count * floor((22244333331.0 / (10.0 ^ i2d(tier))) % 10.0) | ||
+ | global.int.set("craft_tier:3.3", tier) | ||
+ | global.double.set("craft_count:3.3", count * floor((22244333331.0 / (10.0 ^ i2d(tier))) % 10.0) - craft_inventory * count("plate.dense", tier)) | ||
+ | executesync("craft 3:3") | ||
+ | |||
+ | ; plates = count * floor((00022222221.0 / (10.0 ^ i2d(tier))) % 10.0) | ||
+ | global.int.set("craft_tier:3.2", tier) | ||
+ | global.double.set("craft_count:3.2", count * floor((00022222221.0 / (10.0 ^ i2d(tier))) % 10.0) - craft_inventory * count("plate", tier)) | ||
+ | executesync("craft 3:2") | ||
+ | }} | ||
+ | |} | ||
+ | |||
|- | |- | ||
|6 | |6 | ||
Line 587: | Line 1,134: | ||
(pic) | (pic) | ||
| | | | ||
+ | {| class="wikitable" | ||
+ | !Name | ||
+ | !Lines | ||
+ | !Code | ||
+ | |- | ||
+ | |craft 2:6 | ||
+ | |17 | ||
+ | |{{AIScript | ||
+ | |code= | ||
+ | CWNyYWZ0IDI6NgAAAAAAAAAAEQAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2JhbC5p | ||
+ | bnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjIuNhBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50BAVj | ||
+ | b3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6Mi42DmdlbmVyaWMuZ290 | ||
+ | b2lmCGNvbnN0YW50AmMAAAAPY29tcGFyaXNvbi5ib29sD2NvbXBhcmlzb24uYm9vbA9jb21wYXJpc29u | ||
+ | LmJvb2wOY29tcGFyaXNvbi5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQB | ||
+ | PAhjb25zdGFudAIBAAAACGNvbnN0YW50BAF8DmNvbXBhcmlzb24uaW50DWxvY2FsLmludC5nZXQIY29u | ||
+ | c3RhbnQEBHRpZXIIY29uc3RhbnQEAT4IY29uc3RhbnQCCgAAAAhjb25zdGFudAQBfBFjb21wYXJpc29u | ||
+ | LmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudAhjb25zdGFudAQBPAhjb25zdGFu | ||
+ | dAMAAAAAAADwPwhjb25zdGFudAQBfA5jb21wYXJpc29uLmludA5nbG9iYWwuaW50LmdldAhjb25zdGFu | ||
+ | dAQMY3JhZnRfc3RhdHVzCGNvbnN0YW50BAE+CGNvbnN0YW50AscAAAATZ2VuZXJpYy5leGVjdXRlc3lu | ||
+ | Ywhjb25zdGFudAQMY3JhZnQgMjo2OmluDmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BA5jcmFmdF90aWVy | ||
+ | OjMuNA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdsb2JhbC5kb3VibGUuc2V0CGNvbnN0YW50 | ||
+ | BA9jcmFmdF9jb3VudDozLjQRYXJpdGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUQbG9jYWwu | ||
+ | ZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEASoMZG91YmxlLmZsb29yEWFyaXRobWV0 | ||
+ | aWMuZG91YmxlEWFyaXRobWV0aWMuZG91YmxlCGNvbnN0YW50AwAAgkK43ilCCGNvbnN0YW50BAEvEWFy | ||
+ | aXRobWV0aWMuZG91YmxlCGNvbnN0YW50AwAAAAAAACRACGNvbnN0YW50BANwb3cDaTJkDWxvY2FsLmlu | ||
+ | dC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEA21vZAhjb25zdGFudAMAAAAAAAAkQAhjb25zdGFu | ||
+ | dAQBLRFhcml0aG1ldGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52 | ||
+ | ZW50b3J5CGNvbnN0YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBWJsb2NrDWxvY2Fs | ||
+ | LmludC5nZXQIY29uc3RhbnQEBHRpZXITZ2VuZXJpYy5leGVjdXRlc3luYwhjb25zdGFudAQJY3JhZnQg | ||
+ | Mzo0Dmdsb2JhbC5pbnQuc2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuMg1sb2NhbC5pbnQuZ2V0CGNv | ||
+ | bnN0YW50BAR0aWVyEWdsb2JhbC5kb3VibGUuc2V0CGNvbnN0YW50BA9jcmFmdF9jb3VudDozLjIRYXJp | ||
+ | dGhtZXRpYy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQF | ||
+ | Y291bnQIY29uc3RhbnQEASoMZG91YmxlLmZsb29yEWFyaXRobWV0aWMuZG91YmxlEWFyaXRobWV0aWMu | ||
+ | ZG91YmxlCGNvbnN0YW50AwAABYNzSDdCCGNvbnN0YW50BAEvEWFyaXRobWV0aWMuZG91YmxlCGNvbnN0 | ||
+ | YW50AwAAAAAAACRACGNvbnN0YW50BANwb3cDaTJkDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXII | ||
+ | Y29uc3RhbnQEA21vZAhjb25zdGFudAMAAAAAAAAkQAhjb25zdGFudAQBLRFhcml0aG1ldGljLmRvdWJs | ||
+ | ZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0YW50BAEqE2Zh | ||
+ | Y3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBXBsYXRlDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRp | ||
+ | ZXITZ2VuZXJpYy5leGVjdXRlc3luYwhjb25zdGFudAQJY3JhZnQgMzoyEGxvY2FsLmRvdWJsZS5zZXQI | ||
+ | Y29uc3RhbnQEBXdpcmVzEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQE | ||
+ | BWNvdW50CGNvbnN0YW50BAEqDGRvdWJsZS5mbG9vchFhcml0aG1ldGljLmRvdWJsZRFhcml0aG1ldGlj | ||
+ | LmRvdWJsZQhjb25zdGFudAMAAHxrQgsfQghjb25zdGFudAQBLxFhcml0aG1ldGljLmRvdWJsZQhjb25z | ||
+ | dGFudAMAAAAAAAAkQAhjb25zdGFudAQDcG93A2kyZA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVy | ||
+ | CGNvbnN0YW50BANtb2QIY29uc3RhbnQDAAAAAAAAJEARZ2VuZXJpYy53YWl0d2hpbGUWZmFjdG9yeS5t | ||
+ | YWNoaW5lLmFjdGl2ZQhjb25zdGFudAQIcmVmaW5lcnkPZmFjdG9yeS5wcm9kdWNlCGNvbnN0YW50BAVp | ||
+ | bmdvdA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyC2RvdWJsZS5jZWlsEWFyaXRobWV0aWMuZG91 | ||
+ | YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBXdpcmVzCGNvbnN0 | ||
+ | YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWdsb2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9p | ||
+ | bnZlbnRvcnkIY29uc3RhbnQEASoRYXJpdGhtZXRpYy5kb3VibGUTZmFjdG9yeS5pdGVtcy5jb3VudAhj | ||
+ | b25zdGFudAQFY2FibGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBKxNmYWN0 | ||
+ | b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BAR3aXJlDWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXII | ||
+ | Y29uc3RhbnQEAS8IY29uc3RhbnQDAAAAAAAAAEAIY29uc3RhbnQECHJlZmluZXJ5EWdlbmVyaWMud2Fp | ||
+ | dHdoaWxlFmZhY3RvcnkubWFjaGluZS5hY3RpdmUIY29uc3RhbnQECHJlZmluZXJ5D2ZhY3RvcnkucHJv | ||
+ | ZHVjZQhjb25zdGFudAQFY2FibGUNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchFhcml0aG1ldGlj | ||
+ | LmRvdWJsZRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAV3aXJlcwhjb25zdGFudAQBLRFhcml0aG1l | ||
+ | dGljLmRvdWJsZRFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfaW52ZW50b3J5CGNvbnN0 | ||
+ | YW50BAEqE2ZhY3RvcnkuaXRlbXMuY291bnQIY29uc3RhbnQEBHdpcmUNbG9jYWwuaW50LmdldAhjb25z | ||
+ | dGFudAQEdGllcghjb25zdGFudAQIcmVmaW5lcnkRZ2VuZXJpYy53YWl0dW50aWwRY29tcGFyaXNvbi5k | ||
+ | b3VibGUTZmFjdG9yeS5pdGVtcy5jb3VudAhjb25zdGFudAQEd2lyZQ1sb2NhbC5pbnQuZ2V0CGNvbnN0 | ||
+ | YW50BAR0aWVyCGNvbnN0YW50BAI+PRBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAV3aXJlcw1mYWN0 | ||
+ | b3J5LmNyYWZ0CGNvbnN0YW50BA9tYWNoaW5lLnByZXNzZXINbG9jYWwuaW50LmdldAhjb25zdGFudAQE | ||
+ | dGllchBsb2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAVjb3VudA== | ||
+ | |src= | ||
+ | ; Presser | ||
+ | :global double craft_inventory | ||
+ | :local int tier | ||
+ | :local double count | ||
+ | |||
+ | tier = global.int.get("craft_tier:2.6") | ||
+ | count = global.double.get("craft_count:2.6") | ||
+ | gotoif(99, tier < 1 | tier > 10 | count < 1.0 | global.int.get("craft_status") > 199) | ||
+ | |||
+ | executesync("craft 2:6:in") | ||
+ | |||
+ | ; blocks = count * floor((55555400001.0 / (10.0 ^ i2d(tier))) % 10.0) | ||
+ | global.int.set("craft_tier:3.4", tier) | ||
+ | global.double.set("craft_count:3.4", count * floor((55555400001.0 / (10.0 ^ i2d(tier))) % 10.0) - craft_inventory * count("block", tier)) | ||
+ | executesync("craft 3:4") | ||
+ | |||
+ | ; plates = count * floor((99999777541.0 / (10.0 ^ i2d(tier))) % 10.0) | ||
+ | global.int.set("craft_tier:3.2", tier) | ||
+ | global.double.set("craft_count:3.2", count * floor((99999777541.0 / (10.0 ^ i2d(tier))) % 10.0) - craft_inventory * count("plate", tier)) | ||
+ | executesync("craft 3:2") | ||
+ | |||
+ | :local double wires | ||
+ | wires = count * floor((33333222111.0 / (10.0 ^ i2d(tier))) % 10.0) | ||
+ | waitwhile(active("refinery")) | ||
+ | produce("ingot", tier, ceil((wires - craft_inventory * (count("cable", tier) + count("wire", tier))) / 2.0), "refinery") | ||
+ | waitwhile(active("refinery")) | ||
+ | produce("cable", tier, wires - craft_inventory * count("wire", tier), "refinery") | ||
+ | |||
+ | waituntil(count("wire", tier) >= wires) | ||
+ | craft("machine.presser", tier, count) | ||
+ | }} | ||
+ | |||
+ | |- | ||
+ | | | ||
+ | | | ||
+ | |{{AIScript | ||
+ | |code= | ||
+ | craft 2:6:in | ||
+ | 0 0 22 | ||
+ | DGNyYWZ0IDI6NjppbgAAAAAAAAAAFgAAAA1sb2NhbC5pbnQuc2V0CGNvbnN0YW50BAR0aWVyDmdsb2Jh | ||
+ | bC5pbnQuZ2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjIuNhBsb2NhbC5kb3VibGUuc2V0CGNvbnN0YW50 | ||
+ | BAVjb3VudBFnbG9iYWwuZG91YmxlLmdldAhjb25zdGFudAQPY3JhZnRfY291bnQ6Mi42EGxvY2FsLmRv | ||
+ | dWJsZS5zZXQIY29uc3RhbnQEBmluZ290cwhjb25zdGFudAMAAAAAAAAAAA5nbG9iYWwuaW50LnNldAhj | ||
+ | b25zdGFudAQQY3JhZnRfdGllcjppbmdvdA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAR0aWVyEWdsb2Jh | ||
+ | bC5kb3VibGUuc2V0CGNvbnN0YW50BBFjcmFmdF9jb3VudDppbmdvdBFhcml0aG1ldGljLmRvdWJsZRBs | ||
+ | b2NhbC5kb3VibGUuZ2V0CGNvbnN0YW50BAZpbmdvdHMIY29uc3RhbnQEAS0TZmFjdG9yeS5pdGVtcy5j | ||
+ | b3VudAhjb25zdGFudAQFaW5nb3QNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchNnZW5lcmljLmV4 | ||
+ | ZWN1dGVzeW5jCGNvbnN0YW50BAtjcmFmdCBpbmdvdA5nZW5lcmljLmdvdG9pZghjb25zdGFudAJjAAAA | ||
+ | DmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BAxjcmFmdF9zdGF0dXMIY29uc3Rh | ||
+ | bnQEAT4IY29uc3RhbnQCxwAAAA5nbG9iYWwuaW50LnNldAhjb25zdGFudAQOY3JhZnRfdGllcjoyLjYO | ||
+ | YXJpdGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLQhjb25z | ||
+ | dGFudAIBAAAAEWdsb2JhbC5kb3VibGUuc2V0CGNvbnN0YW50BA9jcmFmdF9jb3VudDoyLjYRYXJpdGht | ||
+ | ZXRpYy5kb3VibGUQbG9jYWwuZG91YmxlLmdldAhjb25zdGFudAQFY291bnQIY29uc3RhbnQEAS0RYXJp | ||
+ | dGhtZXRpYy5kb3VibGURZ2xvYmFsLmRvdWJsZS5nZXQIY29uc3RhbnQED2NyYWZ0X2ludmVudG9yeQhj | ||
+ | b25zdGFudAQBKhNmYWN0b3J5Lml0ZW1zLmNvdW50CGNvbnN0YW50BA9tYWNoaW5lLnByZXNzZXIOYXJp | ||
+ | dGhtZXRpYy5pbnQNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQBLQhjb25zdGFu | ||
+ | dAIBAAAAE2dlbmVyaWMuZXhlY3V0ZXN5bmMIY29uc3RhbnQECWNyYWZ0IDI6Ng5nZW5lcmljLmdvdG9p | ||
+ | Zghjb25zdGFudAJjAAAADmNvbXBhcmlzb24uaW50Dmdsb2JhbC5pbnQuZ2V0CGNvbnN0YW50BAxjcmFm | ||
+ | dF9zdGF0dXMIY29uc3RhbnQEAT4IY29uc3RhbnQCxwAAAA5nbG9iYWwuaW50LnNldAhjb25zdGFudAQO | ||
+ | Y3JhZnRfdGllcjoyLjYNbG9jYWwuaW50LmdldAhjb25zdGFudAQEdGllchFnbG9iYWwuZG91YmxlLnNl | ||
+ | dAhjb25zdGFudAQPY3JhZnRfY291bnQ6Mi42EGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50 | ||
+ | DWxvY2FsLmludC5zZXQIY29uc3RhbnQECGNoaXB0aWVyA2QyaQxkb3VibGUuZmxvb3IRYXJpdGhtZXRp | ||
+ | Yy5kb3VibGURYXJpdGhtZXRpYy5kb3VibGUIY29uc3RhbnQDAABuBdCkJEIIY29uc3RhbnQEAS8RYXJp | ||
+ | dGhtZXRpYy5kb3VibGUIY29uc3RhbnQDAAAAAAAAJEAIY29uc3RhbnQEA3BvdwNpMmQNbG9jYWwuaW50 | ||
+ | LmdldAhjb25zdGFudAQEdGllcghjb25zdGFudAQDbW9kCGNvbnN0YW50AwAAAAAAACRADmdsb2JhbC5p | ||
+ | bnQuc2V0CGNvbnN0YW50BA5jcmFmdF90aWVyOjMuMQ1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAhjaGlw | ||
+ | dGllchFnbG9iYWwuZG91YmxlLnNldAhjb25zdGFudAQPY3JhZnRfY291bnQ6My4xEWFyaXRobWV0aWMu | ||
+ | ZG91YmxlEWFyaXRobWV0aWMuZG91YmxlEGxvY2FsLmRvdWJsZS5nZXQIY29uc3RhbnQEBWNvdW50CGNv | ||
+ | bnN0YW50BAEqCGNvbnN0YW50AwAAAAAAAABACGNvbnN0YW50BAEtEWFyaXRobWV0aWMuZG91YmxlEWds | ||
+ | b2JhbC5kb3VibGUuZ2V0CGNvbnN0YW50BA9jcmFmdF9pbnZlbnRvcnkIY29uc3RhbnQEASoTZmFjdG9y | ||
+ | eS5pdGVtcy5jb3VudAhjb25zdGFudAQEY2hpcA1sb2NhbC5pbnQuZ2V0CGNvbnN0YW50BAhjaGlwdGll | ||
+ | chNnZW5lcmljLmV4ZWN1dGVzeW5jCGNvbnN0YW50BAljcmFmdCAzOjEOZ2VuZXJpYy5nb3RvaWYIY29u | ||
+ | c3RhbnQCYwAAAA9jb21wYXJpc29uLmJvb2wOY29tcGFyaXNvbi5pbnQOZ2xvYmFsLmludC5nZXQIY29u | ||
+ | c3RhbnQEDGNyYWZ0X3N0YXR1cwhjb25zdGFudAQBPghjb25zdGFudALHAAAACGNvbnN0YW50BAF8DmNv | ||
+ | bXBhcmlzb24uaW50DWxvY2FsLmludC5nZXQIY29uc3RhbnQEBHRpZXIIY29uc3RhbnQEAT4IY29uc3Rh | ||
+ | bnQCAQAAAA1nZW5lcmljLmNsaWNrDnZlYy5mcm9tQ29vcmRzEWFyaXRobWV0aWMuZG91YmxlCGNvbnN0 | ||
+ | YW50A7gehetRuO4/CGNvbnN0YW50BAEqA2kyZAxzY3JlZW4ud2lkdGgRYXJpdGhtZXRpYy5kb3VibGUI | ||
+ | Y29uc3RhbnQDXI/C9Shc3z8IY29uc3RhbnQEASoDaTJkDXNjcmVlbi5oZWlnaHQNZ2VuZXJpYy5jbGlj | ||
+ | aw52ZWMuZnJvbUNvb3JkcxFhcml0aG1ldGljLmRvdWJsZQhjb25zdGFudANSuB6F61HoPwhjb25zdGFu | ||
+ | dAQBKgNpMmQMc2NyZWVuLndpZHRoEWFyaXRobWV0aWMuZG91YmxlCGNvbnN0YW50AwAAAAAAAOg/CGNv | ||
+ | bnN0YW50BAEqA2kyZA1zY3JlZW4uaGVpZ2h0DGdlbmVyaWMud2FpdAhjb25zdGFudAMAAAAAAADgPw1n | ||
+ | ZW5lcmljLmNsaWNrDnZlYy5mcm9tQ29vcmRzEWFyaXRobWV0aWMuZG91YmxlCGNvbnN0YW50A1K4HoXr | ||
+ | Ueg/CGNvbnN0YW50BAEqA2kyZAxzY3JlZW4ud2lkdGgRYXJpdGhtZXRpYy5kb3VibGUIY29uc3RhbnQD | ||
+ | AAAAAAAA6D8IY29uc3RhbnQEASoDaTJkDXNjcmVlbi5oZWlnaHQ= | ||
+ | |src= | ||
+ | :global double craft_inventory | ||
+ | :local int tier | ||
+ | :local double count | ||
+ | :local double ingots | ||
+ | |||
+ | tier = global.int.get("craft_tier:2.6") | ||
+ | count = global.double.get("craft_count:2.6") | ||
+ | |||
+ | ; Ingots | ||
+ | ingots = 0.0 ; TODO | ||
+ | global.int.set("craft_tier:ingot", tier) | ||
+ | global.double.set("craft_count:ingot", ingots - count("ingot", tier)) | ||
+ | ;global.int.set("craft_verify:ingot", 1) | ||
+ | executesync("craft ingot") | ||
+ | gotoif(99, global.int.get("craft_status") > 199) | ||
+ | |||
+ | ; Lower tier inputs | ||
+ | global.int.set("craft_tier:2.6", tier - 1) | ||
+ | global.double.set("craft_count:2.6", count - craft_inventory * count("machine.presser", tier - 1)) | ||
+ | executesync("craft 2:6") | ||
+ | gotoif(99, global.int.get("craft_status") > 199) | ||
+ | |||
+ | ; Restore state for this tier | ||
+ | global.int.set("craft_tier:2.6", tier) | ||
+ | global.double.set("craft_count:2.6", count) | ||
+ | |||
+ | ; chips | ||
+ | ;:local double chips | ||
+ | ; chips = count * 2.0 | ||
+ | :local int chiptier | ||
+ | chiptier = d2i(floor((44332221111.0 / (10.0 ^ i2d(tier))) % 10.0)) | ||
+ | global.int.set("craft_tier:3.1", chiptier) | ||
+ | global.double.set("craft_count:3.1", count * 2.0 - craft_inventory * count("chip", chiptier)) | ||
+ | executesync("craft 3:1") | ||
+ | |||
+ | gotoif(99, global.int.get("craft_status") > 199 | tier > 1) | ||
+ | ; Tier 1 has to buy hammers! | ||
+ | click(vec(0.96 * i2d(width()), 0.49 * i2d(height()))) | ||
+ | click(vec(0.76 * i2d(width()), 0.75 * i2d(height()))) | ||
+ | wait(0.5) | ||
+ | click(vec(0.76 * i2d(width()), 0.75 * i2d(height()))) | ||
+ | }} | ||
+ | |} | ||
+ | |||
|- | |- | ||
|7 | |7 | ||
Line 592: | Line 1,331: | ||
(pic) | (pic) | ||
| | | | ||
+ | {| class="wikitable" | ||
+ | !Name | ||
+ | !Lines | ||
+ | !Code | ||
+ | |} | ||
+ | |||
|- | |- | ||
|8 | |8 | ||
Line 597: | Line 1,342: | ||
(pic) | (pic) | ||
| | | | ||
+ | {| class="wikitable" | ||
+ | !Name | ||
+ | !Lines | ||
+ | !Code | ||
+ | |} | ||
+ | |||
|- | |- | ||
|9 | |9 | ||
Line 602: | Line 1,353: | ||
(pic) | (pic) | ||
| | | | ||
+ | {| class="wikitable" | ||
+ | !Name | ||
+ | !Lines | ||
+ | !Code | ||
+ | |} | ||
+ | |||
|- | |- | ||
|10 | |10 | ||
Line 607: | Line 1,364: | ||
(pic) | (pic) | ||
| | | | ||
+ | {| class="wikitable" | ||
+ | !Name | ||
+ | !Lines | ||
+ | !Code | ||
+ | |} | ||
+ | |||
|} | |} |
Revision as of 07:36, 22 January 2021
Machine scripts
Output | Machine | Scripts | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | oven
(pic) |
| |||||||||||||||||||||
2 | assembler
(pic) |
| |||||||||||||||||||||
3 | refiner
(pic) |
| |||||||||||||||||||||
4 | crusher
(pic) |
| |||||||||||||||||||||
5 | cutter
(pic) |
| |||||||||||||||||||||
6 | presser
(pic) |
| |||||||||||||||||||||
7 | mixer
(pic) |
| |||||||||||||||||||||
8 | belt
(pic) |
| |||||||||||||||||||||
9 | shaper
(pic) |
| |||||||||||||||||||||
10 | boiler
(pic) |
|