本頁內容
有沒有帶邏輯閘的沙盒遊戲?
有,而且這款跑在一整顆星球上。Openworld 是一款內建邏輯閘的體素沙盒遊戲:開關、繼電器、感測器,及閘、或閘、反閘、反及閘、反或閘、互斥或閘、延遲器、記憶體,還有無線電,全都用真實的電纜接起來。它發生在一顆圓形星球上——筆直地走,你會回到出發的地方——頭頂是真實的天空,一路直達太陽,並原生執行於 Mac(Apple Silicon)、Windows 和 Linux。
它與電路謎題的區別在於,你的電路在一個活生生的世界裡*做事*。它們在黃昏時點亮房子,朋友走近時開門,水箱溢出之前向你預警,或者透過無線電把訊息送到行星另一端。而且它們運行在 OVM——Openworld Virtual Machine——裡,你遠在天邊時它仍在繼續模擬它們。
- 256訊號電纜上的數值,0 到 255
- 128訊號被視為開的電平
- 50毫秒:每個邏輯元件增加的一個回合
- 256無線電頻道
這是邏輯閘,還是寫程式碼?
主要像邏輯閘。玩家把開關、反相器和記憶閂鎖組合成與、或、非電路,甚至整台電腦。因為你在設計一種行為,所以感覺像在寫程式碼,但你從來不寫一行:你像電工一樣,一件一件地把它搭起來。
電路保持動手玩的風格,規則簡單。訊號是一個從 0 到 255 的數字,不只是開或關:它可以代表「滿」、「一半」或「一點點」——並且從 128 起算為開。邏輯元件回應 255 或 0,而且每一個都增加一個 50 ms 的回合,所以訊號會在你的建築中看得見地傳遞。還有,訊號和電力是兩回事:邏輯走細小的訊號電纜,而讓燈亮或讓馬達轉的能量,必須被生產並由電力電纜輸送。整個能源面都在我們的電力與無線電指南中——在這裡我們只談邏輯。
那它不是程式設計遊戲嗎?
沒有程式碼,沒有腳本。每一種行為都來自世界裡放置的元件和它們之間的電纜。如果你想要一款逐行給機器人寫程式的遊戲,這不是。如果你喜歡親眼看著電路運轉——並且走進它裡面——這就是。
元件:什麼發出訊號,什麼在聆聽
每個裝置都有連接埠:綠色表示輸入,橙色表示輸出,拿著電纜時會亮起——現在每個連接埠還會顯示一個帶名稱和方向的小標簽(「輸入 A · 輸入」「寫入」「頻道 3」);按 F1 可以隱藏。空手右鍵點擊一個裝置,它的說明頁會用簡單的話、箭頭和真實的數字(「180 × 100 ÷ 255 = 71」)解釋它做什麼,以及它此刻在做什麼。
什麼發出訊號
- 電燈開關和按鈕:開著時輸出 255——開關也可以輸出你在它的說明頁上設定的數值,從 0 到 255(設為 1 的開關就是「+1」,設為 100 的就是「×100」)。按鈕會保持按下一秒鐘。
- 存在感測器:只要有玩家或生物站在它前面就是 255(半徑 1 到 8 公尺),他們離開後還會保持幾秒鐘。它需要一點電力來值守。
- 液位感測器:靠在槽體上,它會告訴你槽有多滿,從 0 到 255。同樣需要供電。
- 區塊感測器:只要它周圍的土地已載入並穩定,就是 255。
- 電池回報它的電量,太陽能板回報它的輸出,發電機回報它是否在運轉,接收天線回報它聽到的內容。
什麼在聆聽
- 電動繼電器:當它的指令達到刻度一半的 128 時閉合一條電力線路。閉合時消耗 2 W。
- 電晶體:讓一部分電流通過,這部分隨訊號變化——訊號 ÷ 255。它就是你的調光器:它後面的燈會按四分之一亮度發光。
- 閥門:用手打開管道,或按與訊號成比例的指令打開(20 W)。旁邊的水龍頭只是把你的桶裝滿。
- 訊號電纜上的門和活板門在 128 打開,低於 128 就關上。
- 燈、機器、馬達和水泵在指令降到 0 時停止,馬達的速度跟隨它的指令。
- 接頭:分接一條電纜。在訊號電纜上,它會把訊號複製到每個分支。
邏輯元件(1.0.9 版新增)
- 延遲器:返回它 N 個回合前收到的值——1 到 600 個回合,也就是 0.05 到 30 秒,預設 0.5 秒。
- 邏輯閘:AND、OR、NOT、NAND、NOR 或 XOR,在它的說明頁上選擇。NAND 和 NOR 是把 AND 和 OR 倒過來;XOR 在恰好有一個輸入為開時才開。它對訊號的 8 個位元逐位運算(NOT 給出 255 − A);訊號為 0 或 255 時,它就是經典的邏輯閘。
- 運算放大器:相加(上限 255)、相減(不會低於 0)、做三率法 A × B ÷ C(C 不接就是 255:算百分比),或者比較 A > B 與 A = B。
- 記憶體:在它的寫入輸入出現上升緣時,複製數值並保存下來——一個 D 正反器,起初為 0。
- 光耦合器:一側有八個訊號頻道,另一側是一條光纖。作為雷射時,它把訊號送進光纖;作為光電管時,它把訊號讀回來。它需要 5 W。
- 顯示面板:帶四個指令輸入的大型牆面招牌。文字中的
{1}到{4}會變成實時數值——「電池:{1} %」——功率 1 W。
邏輯元件不需要電力電纜:連接它們的訊號電纜就為它們供電。只有耦合器和顯示面板需要一條小型電力電纜。每一個都是一個小小的鐵箍橡木盒,它的設定以黃銅刻在頂面和正面——「0.5s」、「AND」、「A+B」、「A*B/C」、「>」、「MEM」、「TX」/「RX」——並有一盞玻璃燈在輸出為開時亮起。較舊的裝置也刻上設定:天線的「CH 7」、閥門的「AUTO」、存在感測器的「4m 2s」。每個元件都在合成格中製作,位於配方書的科技分支。
要傳遞訊號,訊號電纜可達 256 m,光纖可達 10 km,而八芯光纖可同時傳送八個訊號,每種顏色一個。再遠一點,中繼器會把它們接力傳下去。這些細電纜是一個體素一個體素(25 cm)地鋪設的,沿著牆或在架子下方,想多整齊就多整齊。
如何在 Openworld 裡製作邏輯閘
這些電路用今天的元件就能真正運轉。老電工的招數依然管用,而新的盒子打開了其餘的可能。在下面的場景裡試試其中五個:點擊開關和按鈕,切換電路,看脈衝跑過——金色代表電力,紅色代表訊號。
- 及閘、或閘、反閘、反及閘、反或閘、互斥或閘——一個盒子搞定。 在邏輯閘的資料表上設定好,接上輸入 A 和 B。電工的老辦法也依然管用:兩個串聯的繼電器構成及閘,同一條訊號電纜上的兩個發送器構成或閘,因為電纜總是傳輸放在它上面的最高訊號——
/ovm demo home裡的房子就是這樣靠兩個存在感測器打開前門的。 - 時鐘——延遲器加反閘,首尾相接。 反閘把延遲器的輸出倒過來,再送回輸入:訊號每半秒翻轉一次,永不停止。把延遲縮短,節拍就更快。
- 脈衝。 一個訊號,與它自己延遲副本的非相與:按鈕一接通,你就得到一個短脈衝,長度等於延遲。
- 計數器。 按鈕接記憶體的寫入;記憶體的輸出接設為「相加」的運算放大器,B 端接一個設為 1 的開關;把和送回記憶體的數值端。每按一次加一。把記憶體接到顯示面板上,就能讀到「計數:7」。
- 翻轉開關。 一個記憶體,它的數值端是自己輸出的非,再用按鈕接在寫入端:每按一次就翻轉一次——一個按鈕控制大廳的燈。
- 可調閾值。 繼電器在 128 閉合;想要其他電平,就用設為「>」的運算放大器,再配一個設為你想要數值的開關:「水箱高於 200」。
- 百分比電池。 一個設為 A × B ÷ C 的運算放大器,A 端接電池電量,B 端接設為 100 的開關,C 不接:255 變成 100。放在顯示面板上:「電池:71 %」。
- 比例控制——調光器。 晶體管上的液位感測器隨著水箱灌滿,讓燈一格一格地變亮,每次四分之一;接在閥門上,流量跟隨液位;接在電機上,就是速度。
- 8 車道匯流排。 八路訊號送入設為雷射的光耦合器,經一根最長 10 公里的八芯光纖,在另一端由設為光電管的耦合器接收:你的整個控制台,遠在千里之外。
想要現成的?在創造模式的世界裡,/ovm demo logic 會建出其中四個,並配上銘牌:一個讓燈閃爍的時鐘、面板上顯示的電池百分比、每按一次就攀升的計數器,以及三個開關通過兩個耦合器之間的一根光纖。

點擊開關、按鈕或元件
沒人在附近也繼續運轉的機器
電路不依賴已載入的區塊。每個裝置和每條連線也都登記在 OVM 裡,它甚至在沒有任何區塊載入的地方也會模擬它們。你在探索行星另一側時,你的感測器繼續讀取,你的繼電器繼續切換,你的水箱繼續灌滿。
OVM 運行在自己的執行緒上,目標是每秒 20 圈,每一圈始終是 50 毫秒的模擬時間。你建造了龐然大物時,降低的是 OVM 的節奏——一切均勻地變慢,什麼都不會被跳過——絕不是遊戲的 TPS:玩家、生物和方塊保持正常速度。螢幕上的徽章會告訴你(「OVM 12 Hz (60 %)」,低於 90 % 為橘色,低於 50 % 為紅色),/ovm stats 給出詳情,F3 除錯畫面裡還有一張 OVM 卡片。
距離幾乎不花什麼。一條連線是一個有兩端、一個長度和一個落差的通道,所以跨越山谷的電纜或環繞行星的管線,成本和一條短的一樣;花成本的是裝置的數量。這也正是讓工廠在你不在時繼續運轉的原因:熔爐和輸送帶與你的電路生活在同一個模擬裡。
/ovm stats
/ovm scope world
/ovm scope loaded無線電:桅杆,以及追蹤月球的碟形天線
天線完全不用電纜就能傳遞訊號。共有 256 個頻道:發射器在它的頻道上發送指令(0 到 255),範圍內每一座收聽該頻道的天線,都會把聽到的內容放到自己的訊號電纜上。在家按下一個按鈕,隔壁村子的燈就亮了。
- 全向桅杆向四周發送:非常適合山谷或村莊。它搆不到月球。
- 定向碟形天線把波束集中在 2° 的圓錐裡,用同樣的功率傳得遠得多。透過望遠鏡視角(×1 到 ×32)瞄準它,或者讓它追蹤月球——或者在月球上追蹤地球——它會隨著行星自轉而自己轉動。
它的說明頁說得很直白:選一個目標——附近(100 公尺)、村莊(1 公里)、地區(10 公里)、遠方(100 公里)、月球——它就告訴你將消耗多少。射程遵循真實的無線電定律(弗里斯公式):到達月球(遊戲裡相距 60,000 公里),兩端各一面碟形天線,大約需要 34 kW。
而且電波永遠穿不過地面。兩座桅杆之間的一座山丘,圓形行星的曲率,或者月球落下時的地球本身:鏈路就斷了。目標沉到地平線以下的碟形天線會沉默(「目標在地平線以下」),直到它再次升起。輸入 /radio show-signal true 可以看到波束。


齒輪、變壓器和訊號寫入器
按你選擇的傳動比的齒輪
運動也是工具箱的一部分。電動機以 120 轉/分轉動一根軸,你把自己的齒輪裝在這根軸上——小的(1 公尺)、中的(3 公尺)或大的(5 公尺),用木頭、鐵或鋼製成。兩個齒輪在正確的距離並排放置,會自己嚙合:傳動比就是它們大小的比值,方向會反過來。把它們串聯起來,得到你需要的速度。能量是守恆的——每次嚙合都損失一點——而相互矛盾的齒輪組只會卡死。
變壓器
電力有兩種尺寸的電纜:小型電力電纜(10 kW)和大型電力電纜(250 kW)。變壓器以 97 % 的效率把兩者上下連起來:升壓以跨越山谷,在家再降壓。全部內容都在電力指南中。
訊號寫入器:紙上的記錄器
要看你的訊號隨時間做了什麼,有訊號寫入器,一台桌上型的圖表記錄儀。給它紙張和一點電力(15 W),接上一條訊號電纜——或一條八芯光纖,八支筆就會用各自的顏色畫出八個頻道。選擇它的速度,從每秒 20 個點到每分鐘一個點。每張紙容納 128 個點,變成一張你可以像紙卡一樣閱讀的圖表;寫入器依序保存 16 張——也就是一個感測器一整夜的生活。
- 1
電力
一片太陽能板或一台發電機,再用一條小型電力電纜接到你油箱的角落。
- 2
感測器
把一個液位感測器靠在水箱上,並用那條電纜給它供電:它需要 3 W 來讀取。
- 3
繼電器
從感測器拉一條訊號電纜到一盞燈電力線上的電動繼電器。超過半滿時,燈就亮了。
- 4
記錄
在訊號電纜上加一個接頭,再加一台裝了紙的訊號寫入器:早上,圖表會顯示整夜的液位。
運轉整個世界的電路
你可以用一眼就能讀懂的元件造出電腦,但這些電路首先是為了運轉一個世界:房子、水泵、工坊和無線電鏈路,在整顆行星上持續工作——你的朋友也能看到它們亮起,無論用 Mac、PC 還是 Linux。
接下來是什麼
OVM 還很年輕:它於 2026 年 10 月登場,邏輯元件隨 1.0.9 版到來,並且在 alpha 期間仍在不斷打磨,所以具體數字可能會變——每個裝置的說明頁始終顯示當前數值。顯示面板目前只用十進制顯示數字。接下來要做的是通往太空的天線:軌道上的中繼天線和衛星,把訊號從行星的一側傳到另一側,或傳到太空站。它們還不在遊戲裡。今天你已經可以駕駛火箭進入軌道,並在那裡建造你自己的太空站;把它們連在一起的無線電正在規劃中。
追蹤 Openworld
@play_openworld 是 Openworld 的 Instagram 官方專頁:遊戲影片和每次更新的新內容。
@play_openworldOpenworld 由 @tompascard 建立
通往你第一個邏輯閘的三步
- 1用下載的檔案安裝 Openworld:它會為你裝好 launcher。
- 2在 launcher 中建立你的帳號並確認你的電子郵件。
- 3選好使用者名稱……開始遊戲。
Openworld 要在電腦上玩:Mac、Windows 或 Linux。把連結傳給自己吧,我們在另一頭等你。
常見問題
用邏輯閘建造像寫程式碼嗎?
它更接近電子學而不是程式設計:你透過放置元件來設計行為,而不是透過撰寫程式碼。Openworld 的運作方式相同——沒有腳本,只有你能看到、能繞著走的裝置和電纜。
在 Openworld 這樣的遊戲裡,邏輯閘是怎麼運作的?
發送器(開關、按鈕、感測器)把一個 0 到 255 的數字放到訊號電纜上;從 128 起算為開。設為及閘、或閘、反閘、反及閘、反或閘或互斥或閘的邏輯閘,會在一個回合(50 ms)後回應 255 或 0。接收器再根據結果行動:電動繼電器閉合電力線路,電晶體讓一部分電流通過,門打開。
怎樣把衛星送入軌道?
今天在 Openworld 裡,你可以駕駛火箭到穩定軌道,並在那裡建造一座太空站。軌道上的衛星和中繼天線已在計畫中,但還不在遊戲裡。
我走遠了,電路還能運行嗎?
能。OVM 會模擬每一個裝置,即使在沒有任何區塊載入的地方,也運行在自己的執行緒上。伺服器管理員可以用 /ovm scope loaded 把它限制在玩家周圍的區域。
能在 Openworld 裡造一台電腦嗎?
能:有了反閘和記憶體,你可以造出閂鎖、暫存器、加法器和整個算術單元。每個元件增加一個 50 毫秒的回合,所以它故意很慢——你能看著它思考。
怎樣用邏輯閘做一個時鐘?
把一個延遲器和一個反閘首尾相接:反閘把延遲器的輸出倒過來再送回去,於是每當延遲走完,訊號就翻轉一次。在 Openworld 裡,0.5 秒的延遲會讓燈大約每秒閃爍一次。





