Automachef Code小小心得 - Steam

By Rosalind
at 2020-06-03T19:09
at 2020-06-03T19:09
Table of Contents
----建議使用電腦或者全螢幕瀏覽以得到最佳觀賞體驗----
週末買了這遊戲,一打開好幾小時就不見了,真的是時間小偷QQ
研究了一下裡面AC-16和AC-32的Code,以下是我小小心得,希望拋磚引玉釣出神人
官方AC-16教學:
https://www.automachef.com/wp-content/uploads/2019/07/AC-16_english.pdf
AC-32教學:
https://www.automachef.com/wp-content/uploads/2019/07/AC-32_english.pdf
AC-16和AC-32簡介與差異:
AC-16其實和AC-32大同小異
AC-16和AC-32都是每秒運作30次,只能接受32行code,且區分大小寫,
add打成ADD或者O0打成o0,會跳error說code有問題,
輸入一樣有R0~R3四種訂單,I0~I3四個輸入,Rn和In都只唯獨不能寫入
訂單Rn數值為這個執行迴圈內新增的訂單總數,
訂單可以再深入選擇來源 RnR/T/D,分別是R內用、T外帶及D得來速,
如R0R是0號餐內用的訂單。
要存取需要用到變數V0~V3,AC-32則擴充到8個,V0~V7,
不過變數範圍AC-16和AC-32都是16位元的,-32768到32767,AC-32沒有升級到32位元,
AC-32多了乘法器(mul)和自訂函數(cal),可以編寫四個,分別用cal 1~4呼叫。
指令簡介:
add: 相加 Add
例如: add A B C
代表A + B 的結果儲存到C
A和B可以是Rn In Vn或整數,但C只能是變數Vn
cmp: 比較 Compare
jmp/ jeq/ jne/ jgt/ jlt
jmp: 跳至 Jump
jeq: 如果等於跳至 Jump if EQual
jne: 如果不等於跳至 Jump if Not Equl
jgt: 如果大於跳至 Jump if Greater Than
jlt: 如果小於跳至 Jump if Less Than
cmp多和jmp系列指令一併使用,
cmp比對後會輸出相對關係-1,0,和1,分別是小於等於和大於
下一行的jump指令會依照cmp的結果做出相對動作
例如: cmp R0 0
jeq nonewrecei
表示比對訂單R0和0的關係,如果等於就跳到nonewrecei這個標籤,類似C的goto
標籤
搭配Jump指令使用,限制為4~10個字,需要":"結尾
dec: 減少 Decrease
例如:dec V0
代表V0--,V0減一並直接存到V0裡,扣到0就不會再扣了,方便用於計時器
mov: 搬移 Move
例如:mov R0 V0
表示複製R0的數值到V0裡面
not 切換 Not
單純切換0和1,
例如:not V0
如果V0原本是0,經過這條指令就變成1;反之如果原本是1就變成0
out 輸出 Out
例如: out O1 V2
輸出V2值到O1中,0代表off,其他值都代表on
ret 返回 Return
代表直接結束程式,不過不能放在jmp後面。
sub 差異
例如: sub V0 10 V1
表示計算V0減10的結果,並儲存到V1中
AC-32特有 mul 相乘 Multiplier
例如:mul R0 30 V0
將R0的數值乘上30,將結果儲存在V0裡
AC-32特有 cal 呼叫 Call
例如:cal 1
呼叫函數1,可以呼叫函數1~4
程式範例:
這程式功能為開場先準備2份餐預備,每有張新單就補一份,
做滿10份就不再新增了
R0設定為訂單,O0連結中繼器,連結要運作的分配器
設定V1為計時器,讓機器運作多久
V0為做了幾分餐的計數器,V2為新增幾分餐
cmp V1 0 程式一開始先檢查計時器是否歸零,如果不是0(jne)就跳到endifa:
jne endifa 如果是0就讓O0關機,輸出0給它
out O0 0
endifa:
cmp V0 0 開場備兩份餐的部分,
jne endifb
mov 360 V1 |開場餐點總數V0為0時,會執行這三行程式,
out O0 1 |這邊一份餐需要6秒鐘(端看分配器設定),
mov 2 V0 |所以需要6秒 *2份 *30cycle/秒=360
endifb:
cmp R0 0 新增訂單再多做一份的部分,比對R0有沒有新增的訂單
jeq endifd 如果沒有新增就跳到程式結尾
mov R0 V2 如果R0不為0,有新增的單,複製增加的訂單量R0到V2中
loop:
cmp V1 10 比對此時餐點總數有沒有超過設定的10份
jeq endifd 如果大於就跳到程式結尾,不再製作新的餐點
out O0 1 輸出啟動訊號1到O0,讓分配器送出材料
add V1 180 V1 讓計時器增加180,意旨分配器運作180/30=6秒
add V0 1 V0 讓餐點總數增加一份
dec V2 使新增的訂單數減少1份(已經增加在排程中了)
cmp V2 0 比對還有沒有需要新增的訂單
jne loop 如果還有(不為0)就跳到上方loop:,再增加一次
endifd:
dec V1 使計時器V1減少1,AC-15/AC-30都是每秒鐘運作30次
所以經過一秒後,AC-15/AC-30運作30次後V1總共會減少30,
以上是AC-16的,如果是AC-32有乘法器mul可以更精簡一點
-------我是分隔線-------
希望有幫助到AC-15/AC-32的苦手們,一開始我也是一頭霧水,
官方教學裡面還有一些有趣的使用方法,就交給神人了QQ
--
--
週末買了這遊戲,一打開好幾小時就不見了,真的是時間小偷QQ
研究了一下裡面AC-16和AC-32的Code,以下是我小小心得,希望拋磚引玉釣出神人
官方AC-16教學:
https://www.automachef.com/wp-content/uploads/2019/07/AC-16_english.pdf
AC-32教學:
https://www.automachef.com/wp-content/uploads/2019/07/AC-32_english.pdf
AC-16和AC-32簡介與差異:
AC-16其實和AC-32大同小異
AC-16和AC-32都是每秒運作30次,只能接受32行code,且區分大小寫,
add打成ADD或者O0打成o0,會跳error說code有問題,
輸入一樣有R0~R3四種訂單,I0~I3四個輸入,Rn和In都只唯獨不能寫入
訂單Rn數值為這個執行迴圈內新增的訂單總數,
訂單可以再深入選擇來源 RnR/T/D,分別是R內用、T外帶及D得來速,
如R0R是0號餐內用的訂單。
要存取需要用到變數V0~V3,AC-32則擴充到8個,V0~V7,
不過變數範圍AC-16和AC-32都是16位元的,-32768到32767,AC-32沒有升級到32位元,
AC-32多了乘法器(mul)和自訂函數(cal),可以編寫四個,分別用cal 1~4呼叫。
指令簡介:
add: 相加 Add
例如: add A B C
代表A + B 的結果儲存到C
A和B可以是Rn In Vn或整數,但C只能是變數Vn
cmp: 比較 Compare
jmp/ jeq/ jne/ jgt/ jlt
jmp: 跳至 Jump
jeq: 如果等於跳至 Jump if EQual
jne: 如果不等於跳至 Jump if Not Equl
jgt: 如果大於跳至 Jump if Greater Than
jlt: 如果小於跳至 Jump if Less Than
cmp多和jmp系列指令一併使用,
cmp比對後會輸出相對關係-1,0,和1,分別是小於等於和大於
下一行的jump指令會依照cmp的結果做出相對動作
例如: cmp R0 0
jeq nonewrecei
表示比對訂單R0和0的關係,如果等於就跳到nonewrecei這個標籤,類似C的goto
標籤
搭配Jump指令使用,限制為4~10個字,需要":"結尾
dec: 減少 Decrease
例如:dec V0
代表V0--,V0減一並直接存到V0裡,扣到0就不會再扣了,方便用於計時器
mov: 搬移 Move
例如:mov R0 V0
表示複製R0的數值到V0裡面
not 切換 Not
單純切換0和1,
例如:not V0
如果V0原本是0,經過這條指令就變成1;反之如果原本是1就變成0
out 輸出 Out
例如: out O1 V2
輸出V2值到O1中,0代表off,其他值都代表on
ret 返回 Return
代表直接結束程式,不過不能放在jmp後面。
sub 差異
例如: sub V0 10 V1
表示計算V0減10的結果,並儲存到V1中
AC-32特有 mul 相乘 Multiplier
例如:mul R0 30 V0
將R0的數值乘上30,將結果儲存在V0裡
AC-32特有 cal 呼叫 Call
例如:cal 1
呼叫函數1,可以呼叫函數1~4
程式範例:
這程式功能為開場先準備2份餐預備,每有張新單就補一份,
做滿10份就不再新增了
R0設定為訂單,O0連結中繼器,連結要運作的分配器
設定V1為計時器,讓機器運作多久
V0為做了幾分餐的計數器,V2為新增幾分餐
cmp V1 0 程式一開始先檢查計時器是否歸零,如果不是0(jne)就跳到endifa:
jne endifa 如果是0就讓O0關機,輸出0給它
out O0 0
endifa:
cmp V0 0 開場備兩份餐的部分,
jne endifb
mov 360 V1 |開場餐點總數V0為0時,會執行這三行程式,
out O0 1 |這邊一份餐需要6秒鐘(端看分配器設定),
mov 2 V0 |所以需要6秒 *2份 *30cycle/秒=360
endifb:
cmp R0 0 新增訂單再多做一份的部分,比對R0有沒有新增的訂單
jeq endifd 如果沒有新增就跳到程式結尾
mov R0 V2 如果R0不為0,有新增的單,複製增加的訂單量R0到V2中
loop:
cmp V1 10 比對此時餐點總數有沒有超過設定的10份
jeq endifd 如果大於就跳到程式結尾,不再製作新的餐點
out O0 1 輸出啟動訊號1到O0,讓分配器送出材料
add V1 180 V1 讓計時器增加180,意旨分配器運作180/30=6秒
add V0 1 V0 讓餐點總數增加一份
dec V2 使新增的訂單數減少1份(已經增加在排程中了)
cmp V2 0 比對還有沒有需要新增的訂單
jne loop 如果還有(不為0)就跳到上方loop:,再增加一次
endifd:
dec V1 使計時器V1減少1,AC-15/AC-30都是每秒鐘運作30次
所以經過一秒後,AC-15/AC-30運作30次後V1總共會減少30,
以上是AC-16的,如果是AC-32有乘法器mul可以更精簡一點
-------我是分隔線-------
希望有幫助到AC-15/AC-32的苦手們,一開始我也是一頭霧水,
官方教學裡面還有一些有趣的使用方法,就交給神人了QQ
--
推 ultratimes : 風扇要啥相容性?耐用or實用才是重點02/27 23:10
→ ultratimes : intel的風扇就是小巧超耐用02/27 23:21
奇怪,你的原廠扇在桌上拍照,那電腦上呢 推 ultratimes : 機子內是T-40 02/27 23:40
--
Tags:
Steam
All Comments

By Bethany
at 2020-06-05T01:23
at 2020-06-05T01:23

By Carolina Franco
at 2020-06-06T23:19
at 2020-06-06T23:19

By Carol
at 2020-06-10T01:27
at 2020-06-10T01:27

By Rebecca
at 2020-06-14T11:21
at 2020-06-14T11:21

By Enid
at 2020-06-16T16:55
at 2020-06-16T16:55

By Odelette
at 2020-06-21T06:47
at 2020-06-21T06:47

By Brianna
at 2020-06-25T20:07
at 2020-06-25T20:07

By Ina
at 2020-06-29T20:21
at 2020-06-29T20:21

By Joe
at 2020-06-30T10:55
at 2020-06-30T10:55

By Valerie
at 2020-07-02T17:00
at 2020-07-02T17:00

By Candice
at 2020-07-07T09:08
at 2020-07-07T09:08

By Megan
at 2020-07-11T05:49
at 2020-07-11T05:49

By Charlotte
at 2020-07-13T13:26
at 2020-07-13T13:26

By Victoria
at 2020-07-15T19:38
at 2020-07-15T19:38

By Audriana
at 2020-07-17T17:03
at 2020-07-17T17:03

By Frederica
at 2020-07-21T00:18
at 2020-07-21T00:18

By Irma
at 2020-07-24T01:05
at 2020-07-24T01:05

By Irma
at 2020-07-27T03:23
at 2020-07-27T03:23

By Margaret
at 2020-07-31T17:39
at 2020-07-31T17:39

By Jake
at 2020-08-03T15:03
at 2020-08-03T15:03

By Catherine
at 2020-08-05T23:13
at 2020-08-05T23:13

By Emma
at 2020-08-07T08:42
at 2020-08-07T08:42

By Hedda
at 2020-08-08T08:45
at 2020-08-08T08:45

By Noah
at 2020-08-10T13:56
at 2020-08-10T13:56

By Oscar
at 2020-08-11T11:30
at 2020-08-11T11:30
Related Posts
《電馭叛客 2077》發表會延期至25日舉行

By Liam
at 2020-06-03T15:50
at 2020-06-03T15:50
SDV 星露谷擴充系MOD推薦

By Hedwig
at 2020-06-03T11:25
at 2020-06-03T11:25
HUMBLE CITIES: SKYLINES BUNDLE 全18美

By Sarah
at 2020-06-03T06:37
at 2020-06-03T06:37
手殘適合project cars 2嗎

By Eden
at 2020-06-03T05:18
at 2020-06-03T05:18
Bento Bundle 3

By Ivy
at 2020-06-02T23:53
at 2020-06-02T23:53