基本概念
在描述能夠建築紅石電路的方塊以及可建的電路種類之前,您需要對一些基本概念有所認知。
紅石元件
主條目:紅石
紅石元件是在紅石電路里具有一定使用目的的方塊,大致分為三個大類:
電源為整個電路或部分電路提供能量來源,例如紅石火把、按鈕、拉桿、紅石塊、壓力板等。
傳輸線將電能從電路的一部分傳遞到另一部分,例如紅石粉、紅石中繼器、紅石比較器等。
電動機械接受電能並作出反應(例如移動、發光等),例如活塞、紅石燈、發射器等。
充能
紅石元件與部分方塊能夠被充能或解除充能。如果說一個方塊被“充能”了,則這個方塊就可以作為電源,具有向毗鄰的“電器”方塊供電以使其工作的潛力。(“毗鄰”是這樣定義的:一個方塊是正方體,正方體有6個面。也就是說與一個方塊的任意一個面接觸的方塊最多可能有6個,稱之為“與該方塊毗鄰的方塊”)。
當非透明方塊(例如石頭、沙石、泥土等)被電源(或是中繼器、比較器)充能,我們稱這個方塊被強充能了(這個概念與充能等級不同)。強充能的方塊可以激活毗鄰的紅石線。絕大多數電源可以強充能自身。
當非透明方塊僅被紅石線充能,我們稱這個方塊被弱充能了。與強充能的唯一區別是,弱充能的方塊無法激活毗鄰的紅石線。
被充能的方塊(無論強度如何)都可以影響毗鄰的紅石元件。不同的元件產生的反應不同。您可以查看這些元件的具體描述。
充能等級
充能等級(又稱“信號強度”)為0到15的整數。大多數電源組件均提供滿強度的15級信號,但少數電源組件能提供可定義的信號強度。
紅石線能向相鄰的紅石線傳導信號,但每傳導1格,充能等級就降低1。因此,連續的紅石線最遠能將能量傳到15格遠。為了突破這個限制,你可以保持(使用紅石比較器)或是重新加強(使用紅石中繼器)紅石信號。充能等級只會因為紅石線之間的直接傳導而衰減,不會在紅石線與其他元件或方塊之間衰減。
紅石(狀態)更新
當電路的某一部分發生狀態的改變,該改變會引起所有毗鄰方塊的“紅石(狀態)更新”(請勿與Minecraft 1.5正式版的代號“紅石更新”混淆)。紅石更新是個連鎖反應,會計算直到到達已載入區塊的邊界。
紅石刻
紅石刻(Redstone tick)為Minecraft計算紅石機構狀態的最小時間單位,等於0.1秒。紅石火把,中繼器以及激活的紅石組件需要1刻或更多時間改變狀態,這就引入了在大型電路中至關重要的延遲。
紅石刻與“遊戲刻”或“方塊刻”不同。當討論紅石電路時,“刻”一詞僅指“紅石刻”。
信號與脈衝
具有穩定輸出的電路能夠產生信號——“激活/非激活”時稱為“真/假”或“高電平/低電平”。當信號出現一個較為短暫的非激活-激活-非激活過程,該過程通常被稱為脈衝(或正脈衝。相反的過程被稱為負脈衝)。
非常短的脈衝(1-2刻的)可能會使一些電路組件由於紅石部件的更新順序差異而產生問題。例如紅石火把、比較器無法回響由中繼器形成的1刻脈衝。
電路與機械
電路(circuit)為處理信號的結構(生成,修改,組合等)。
機械(mechanism)會對環境產生影響(移動方塊,開門,改變光照強度,播放聲音等)。
所有機械均包含紅石組件或電路,但電路本身是不會對環境產生影響的(除了紅石火把或中繼器在激活時產生的光,或活塞作為電路組成成分之一時造成的推拉方塊的負效果)。明確這些簡單的概念有利於我們理解紅石電路
電路尺寸
本wiki用寬× 長× 高的格式(電路的外切長方體)描述電路的尺寸,其中包括底板支撐方塊,但不包括輸入/輸出。
描述電路尺寸的另一種方法是忽略最下層支撐電路的那層方塊(例如位於下層紅石粉之下的方塊)。然而這種方法無法區分平面電路與一格高的電路。
通常直接用電路的占地面積,或是直接用1格寬的電路的長度描述電路尺寸較為方便。
電路特性
根據不同的設計目標,您應當考慮一些常見的特性:
1格高電路
1格高電路意味著其縱向只有1格,也就是說這種電路不能存在需要下方方塊支撐的元件(例如紅石線、紅石中繼器)。
1格寬電路
1格寬電路指至少1個橫向尺寸為1.
平面電路
指的是可以直接建造在地平面,不需要層疊元件(不計方塊支撐紅石元件)。平面電路通常利於初學者理解與學習。
隱形電路
指的是可以完全隱藏在一堵牆,或地板之下,或天花板之上的電路。這種電路尤其適合活塞門。
立即回響電路
指一接到輸入信號,能夠馬上輸出的零延遲電路。
靜音電路
指不會發出聲音的電路。這種電路不會有活塞、發射器、投擲器等會發出響聲的元件。此類電路適合陷阱、安靜環境以及需要減噪的電路的建造。
可堆疊電路
指同樣的電路可以一個直接疊在另一個上面的電路,疊放之後電路之間不會互相干擾。
可並列電路
指同樣的電路可以一個直接毗鄰另一個旁邊建造的電路,毗鄰之後電路之間不會互相干擾。
可能還會有其他的設計目標,包括降低子電路延遲、減少昂貴元件消耗(例如比較器)與儘量減小設計尺寸等。
電路類型
雖然建造電路的方法無窮無盡,但特定的電路建造樣式是比較固定的。下面的章節對Minecraft社區中流行的電路進行了分類,每個章節有獨立的主條目用於描述具體的電路設計方案。
某些電路可能只能完成最簡單的控制功能,但你將逐漸能用此類簡單電路的組合成複雜的、能夠滿足機械需要的大型電路。
傳輸電路
主條目:電路
信號傳輸常用術語包括:傳輸類型,縱向傳輸,中繼器與二極體。
傳輸類型
數字的:僅有0/1概念的傳輸。
模擬的:與信號強度相關的傳輸。
二進制的:多條數字線路,每條線路代表一個二進制數的其中一位。
一元的:多條數字線路,激活哪條線路決定傳輸的數據。
雖然橫向傳輸較為直接,但縱向傳輸有時具有出人意料的適應性與集成性。
最簡單的縱向傳輸就是在斜向上的方塊上鋪設紅石線,1×2的上半格半磚(台階)上直線向上鋪紅石,或是2×2的螺鏇結構,或是其它類似結構。導線樓梯既能夠向上也能向下傳輸信號,無延遲,但占地龐大,每15個就需要中繼。
因為螢石塊、倒置樓梯與階梯能夠承載紅石線的同時不切斷紅石線,信號就能夠在2×1的“梯子”上縱向傳輸(僅能向上傳輸!)。導線梯占地小,無延遲,但每15個就需要中繼。
紅石火把能夠充能其上方的方塊與相鄰的(包括下方的)紅石線,這樣,縱向傳輸便成為可能(向上與向下的設計不同)。本方案無需中繼,占地小,但會引入不小的延遲。
您也可以用活塞、水等方塊建造其他形式的縱向傳輸方案。
單向電路(即“二極體”)只允許信號沿著一個方向傳輸,主要用於防止輸出端信號對輸入端電路產生負面影響(例如信號串擾等)。單向電路也可用於電路壓縮時用於防止電路不同部分相互干擾。
中繼器
“中繼”信號指的是將信號加強到完全信號強度。最簡單的方法就是使用紅石中繼器。但某些電路可能需要無延遲的中繼器電路,或是可以雙向中繼的“雙向中繼器”。
二極體
“二極體”指只允許信號單向傳輸的電路,通常用於防止電路反向干擾引起的輸出錯誤,也可以用於防止線路彼此串擾。常用的二極體包括紅石中繼器、螢石與倒置台階。倒置台階無法向斜下方傳輸信號,因此將紅石線鋪上台階就是一種簡單的二極體建造方法。台階二極體不會引入延遲,但也不會把信號加強。
很多電路已經具有單向性,因為它們的輸出端不會接受輸入信號,例如以附著在方塊側面的紅石火把作為輸出的電路。
邏輯電路
主條目:電路
有時,你需要判斷輸入信號,經過一定的算法產生一個輸出。這類電路即為人們耳熟能詳的邏輯門(“門”只讓滿足“邏輯”的信號輸出)。雖然有很多種類的邏輯門,最基本的只有三種:與門,或門、非門。
或門
只要或門的任意一個輸入為1,輸出就會是1。
與門
只有與門所有輸入均為1時,輸出才會為1。
非門(反相器)
使得輸入信號反相(例如輸入為0,輸出為1;輸入為1,輸出為0)。
另見:教程/基本邏輯門
脈衝電路
主條目:脈衝電路
某些電路需要特定長度的脈衝,其他電路用脈衝長度傳達特定信息。脈衝電路派上了用場。
在一個狀態穩定,另一個狀態不穩定的電路通常稱為單穩態電路(monostable circuit)。大多數脈衝電路屬於單穩態電路電路,因為它們的激活態(非穩態)只能持續較短時間就回到穩定態。
脈衝發生器
脈衝發生器產生特定長度的脈衝。
脈衝限制器
脈衝限制器(又稱脈衝縮短器)可以縮短過長的脈衝。
脈衝穩定器
脈衝穩定器(又稱脈衝延長器)可以延長過短的脈衝。
脈衝延遲
脈衝延遲電路能夠為脈衝提供延遲。
邊沿感應器
邊沿感應器在信號變化時:從0到1(“上升沿”感應器)或從1到0(“下降沿”感應器),或兩者均感應(“雙邊沿”感應器)。
脈衝長度識別器
脈衝長度識別器能夠在輸入脈衝長度在某個範圍內時輸出信號。
示波器
示波器為依次連線的比較器(1.5以下可以用1刻的紅石中繼器)鏈,據此能夠通過點亮的中繼器數量直觀地測量脈衝長度。
時鐘電路
主條目:電路
時鐘電路為持續、重複提供特定長度脈衝的脈衝發生器。一些時鐘電路可以永久工作,另一些則可控。
簡單的時鐘電路只有兩個等長的狀態(0與1長度相同)。例如5刻激活與5刻非激活的時鐘被稱為5刻時鐘。
中繼器時鐘
利用中繼器(鏈)獲得時鐘電路中必要的延遲的電路。通常需要紅石火把以獲得反相功能。
漏斗時鐘
漏斗時鐘通過漏斗鏈循環傳遞物品,並通過紅石比較器偵測輸出。
活塞時鐘
利用活塞對方塊的推拉完成電路的反相功能。
時鐘電路也可以基於礦車、船、掉落物品的自然消失等。
記憶電路
主條目:電路
與邏輯電路永遠反映輸入信號不同,記憶電路的輸出不單與輸入相關,還與“過去的輸入”相關。這樣能夠完成對電路過去狀態的“記憶”。在現實生活中的電子學中,鎖存器指對輸入信號的某個狀態產生反應的電路;觸發器指對輸入信號的變化產生反應的電路。
RS鎖存器
RS鎖存器有2個輸入。輸入端為S(Set)端與R(Reset)端:S端輸入一旦變成1,輸入就為1並保持;R端輸入一旦變成1,輸入就為0並保持。最簡單的RS鎖存器為知名的“RS或非鎖存器”,其為Minecraft最古老也是最常見的記憶電路。
T觸發器
T觸發器用於信號切換(類似拉桿)。T觸發器具有“時鐘”輸入端,輸入端滿足特定條件時,輸出端會切換一次。
D觸發器
具有"data(數據)"輸入端與"clock(時鐘)"輸入端。輸入端滿足激活條件時,輸出端會變成此刻數據輸入端相同的狀態。
JK觸發器
具有稍微複雜的時序邏輯。詳見具體條目。
計數器
與基本觸發器不同,計數器能夠具有多個狀態,從而完成對較大數字的計數。
還有很多記憶電路可供選擇。
雜項電路
主條目:電路
此類電路一般不常見,但卻是大型複雜工程的重要組成部分。
數據分配器與繼電器
數據分配器為邏輯門的高級形式之一,選擇端的輸入信號決定輸出端與哪個輸入端相同。
隨機信號發生器
隨機信號發生器能夠產生無法預測的信號。一些隨機信號發生器利用了Minecraft的隨機特性(例如仙人掌生長或發射器對發射槽的選擇);另一些則採用數學上的的偽隨機算法。
多輸入電路
多輸入電路能夠同時處理多個輸入並得出綜合輸出。此類電路是建造計算器、數字鐘與基本計算機的基石。
方塊更新感應器
方塊更新感應器(BlockUpdateDetector,縮寫為BUD)為能夠對方塊狀態改變產生反應的電路(例如石頭被開採,水變成冰,南瓜長出等一切涉及方塊的數據更改的行為)。
另見:教程/方塊更新感應器
我的世界愛好者們還有很多更複雜的電路方案。
另見:教程/高級紅石電路
建造電路
計畫
建造紅石電路的第一步是確定電路能做些什麼。
應該在哪裡控制整個電路?如何控制?
電路能夠控制什麼樣的機械?
信號如何從控制端傳向機械?
建造
建造電路時使用特定的方塊組合是個不錯的習慣,這樣你當修建其他的工程時,看到這些方塊你就能意識到不能再繼續挖了。常見的選擇有石磚、雪塊與羊毛(不同顏色的羊毛有利於你自己區分電路的不同部分)。
當在水或岩漿邊上建造電路時要特別小心。很多電路組件會在液體流過時被破壞。
建造電路以引爆TNT(陷阱或大炮)時要格外小心。建造中的電路可能會意外觸發TNT,因此強烈建議最後再放置TNT。
解決問題
當電路出問題時,仔細檢查,嘗試尋找出問題的來源。
你是否想從一個弱充能方塊引出電能?也許你需要紅石中繼器使其強充能,或者用紅石中繼器引出電能。
你是否想讓電能穿過一個透明方塊?用非透明方塊代替它,或者繞道而行。
你是否無意中建造了一個短路電路,使得本來應當激活的紅石火把燃盡了?修正短路電路,並更新紅石火把的狀態。
本不該激活的電路部分是否錯誤激活了?也許你不小心把不同部分的線路之間連了起來。
活塞、發射器或投擲器的激活方法錯誤?
精煉
電路正常工作後,考慮一下是否能夠提高電路的性能。
你能讓電路反應更快(延遲更短)嗎?
你能讓電路更小嗎?
Minecraft新版本的特性是否有助於提高電路的效率?(如1.5的紅石比較器等)
電路噪聲能小一些嗎?