iT邦幫忙

2021 iThome 鐵人賽

DAY 4
0

[CC: Tweaked / Lua] 尋找合適的開發工具

在上一回,我學會了自訂 CC: Tweaked Computer 的開機訊息
然而整個修改的過程有點笨拙
今天來看看,如何用更好的工具來 Coding Lua for CC: Tweaked Computer

取得電腦的 id

在第二回的介紹中,有列出 CC: Tweaked Computer 指令集
其中有一道指令是 id,是為取得每一台電腦的唯一識別編號,回傳一個數字
這組編號有什麼用途呢?!
找到編號後,請找到這個路徑
{minecraft主目錄}/saves/{世界名稱}/computercraft/computer/{id}
以我的 MacOS 為例,我的路徑是
/Users/egghsu/Library/Application Support/minecraft/saves/新的世界/computercraft/computer/10
會發現,稍早前新增的 mymotd.txt 就在這個路徑底下!!
這代表的是,這個路徑就是那台電腦的使用者家目錄,之後你可以直接在這裡編輯你的 Lua 程式碼,用你擅長的工具即可,不需要在麥塊裡面用那陽春的編輯器囉~

此外,這裡還有一個隱藏檔 .settings,內容如下

{
  [ "motd.path" ] = "/mymotd.txt",
}

突然間懂了些什麼,以後改電腦設定也可以直接改啦!

那 rom 裡面的程式碼在哪呢

rom 的程式碼是不能被修改的
我試著解壓縮模組 jar 檔案之後,在裡頭找到這個路徑 data/computercraft/lua
就會再次看到熟悉的東西!
除了多出來一個 bios.lua 之外
還有一個 rom 資料夾,並且裡頭的檔案結構和 CC: Tweaked Computer 幾乎一樣,Bingo!
也就是說,之後要繼續深入,就可以來這裡挖礦了~

寫到這裡,我不禁想著,那是不是我改了 rom 裡面的程式碼,再重新包裝成 jar 讓麥塊載入
理論上我就可以很大彈性的更改這個電腦世界了呢 XD(嘴角邪惡的上揚...

此外在 bios.lua #972 也看到這一段,看來就是載入上述的使用者設定檔

-- Load user settings
if fs.exists(".settings") then
    settings.load(".settings")
end

上裝備了

既然我已經從 CC: Tweaked 的虛擬電腦世界,暫時轉換到實體的電腦
那就可以開始找更多工具啦!
我目前用的是 VSCode + Lua extension (by sumneko)
但是這 extension 的文件竟然是簡體中文,還在摸索怎麼改英文
有沒有人要救我一下 XD
另一個看起來也很威的 ZeroBraneStudio
就完全是 Lua IDE 了,我也還在學習中
也可以直接參考鐵人lagagain 撰寫的 Lua 開發環境配置
以及 Lua 的下載與安裝

互動式環境學習 Lua

如果只是想要先試試 Lua 的語言特性,以下提供幾種選擇
第一種是直接上官網測試
https://www.lua.org/demo.html
第二種是在你自己本機上、或是回到 CC: Tweaked Computer 裡面打

lua

開發工具的部分,簡介到這裡
工欲善其事,必先利其器
有了適當的工具後,下一回我將繼續以 CC: Tweaked 程式碼為範例,重新學習 Lua!


上一篇
Day3 自訂電腦開機訊息
下一篇
Day5 「開機」學習 Lua - 變數型別與宣告
系列文
在麥塊的農場裡寫 Lua30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言