Rec-Room

您如何在 Rec Room 電路中儲存數字?

  • February 22, 2020

我正在嘗試將數據保存在電路中的各個位置,但尚不清楚我的選擇是什麼。如何在電路中儲存數字?

有許多方法可以在娛樂室電路中儲存數據。您應該首先考慮一下您要儲存的內容、您嘗試使用這些數據實現的目標以及所需的任何關聯。

基本儲存可以通過 flag、ring 和 rand 儲存來完成。該數據可用於跟踪已發生的某些事件,但沒有“索引”功能。索引意味著您可以提供一些輸入,例如球員或球隊 ID,並根據提供的輸入獲得不同的結果。我們不會在這裡討論這個問題,我只是進行區分,以便您了解存在的許多數據儲存選項。同樣超出範圍的是排行榜統計資訊,它允許您在房間實例之間保留動態數據。

以下是 Rec Room Circuit Simulator Tool 中創建的一些儲存電路範例的連結:RRCS 電路範例。您可以看到這些電路在執行並與它們一起玩。發送數據按鈕晶片只是在數字 1 和 2 之間交替,因此您可以看到被替換的值。

讓我們逐一討論:

在此處輸入圖像描述

**RandStore:**將隨機晶片的所有三個引腳連接到您的輸入。它有效地在您的號碼和…您的號碼之間選擇一個隨機數,因此它只能是輸入的內容。這非常適合快速且廉價地儲存數據。如果您希望數據保持不變,直到有新的輸入可用並且您希望覆蓋目前值,您可以使用它。缺點是您無法重置此商店。

在此處輸入圖像描述

**RingStore:**將組合器的輸出連接回它自己的輸入之一。這將記住在重置之前傳遞給它的任何值。如果它獲得一個新值而不是像 RandStore 那樣覆蓋它,它會添加到現有值中。這對於計算事件發生的次數很有用。

在此處輸入圖像描述

**FlagStore:**將 OR 晶片的輸出連接回它自己的輸入之一。這是一個布爾儲存,意味著它不儲存實際數據,它只是記住至少發生過一次的事情。標誌儲存不經常使用,因為 RingStore 幾乎可以完成標誌儲存所做的所有事情,而無需跟踪計數或實際數據。當您想在設計中提供清晰性時,可以使用它們。一個常見的案例是將其與遊戲狀態晶片配對,以跟踪遊戲是否正在執行。例如,這可用於控制大廳系統。

在此處輸入圖像描述

**ResetableRandStore:**在 Rand 晶片之前添加一個 OR 晶片允許您設置值,並在復位條件下接線。唯一需要注意的是,它與大多數 RR 電路略有不同,如果復位條件和輸入發生在同一個滴答上,則該電路將儲存數據,例如 RingStore 不會。

在此處輸入圖像描述

**NonCountingRingStore:**這本質上是電路中的反模式。它只是在這裡向您展示您可以以不同的方式解決問題,但是當您感覺像是在試圖強迫晶片做一些它不是最好的工具時要小心。將此與 ResetableRandStore 進行比較。是的,您可以強制組合器每次重置,方法是先重置儲存,然後在下一次滴答時發送輸入。除非您有非常具體的案例,否則幾乎不建議為您的電路添加延遲。這意味著該電路下游的任何電路都不會在與上游電路相同的滴答聲中解析。它也花費更多而沒有任何好處。

引用自:https://gaming.stackexchange.com/questions/364326