#topicpath *Minecartの変わった使い方 [#w7dfd80c] **はじめに [#i34b392f] minecartは非常に楽しいですがDF的な意味でも*非常に*funがいっぱいです. (何匹轢き殺したかなんて覚えちゃいねえぜ) 安定した回路を閉鎖してしまえば危険は隔離できますが、 それまでの試行錯誤、あるいは建設時のちょっとしたミスでごく簡単にドワーフは死にます. **基礎知識編 [#x93acbce] まともな使い方とか知りませんが何か? まずminecartを発進させてみましょう. 適当な空きスペースでh r sでstopを作ります(root作成). Enterの後xを何回か押してデフォルトの出発条件を消します. vを押して適当なminecartを配置します. (ここまでは量子保管庫で慣れているかもしれません. 量子保管庫と違ってstockpileや運ぶ荷物は指定しません) nを押して新しい出発条件を作成し、pを一回押してpushを選びます. ここでゲームに戻るとドワーフがやってきてcartを北に向かって蹴り出します. (方向は出発条件でdを押して変更できます) 先にドワーフが居たら避けたりぶつかって怪我したりします.*楽しい!*. 蹴り出されたminecartは何かにぶつかるか、あるいはやがて減速して止まります. 止まったら、ドワーフはそれを拾いに行って蹴り出すをroot指定を変更しない限り繰り返します. (root指定でminecartの割り当てをnoneに変更すれば一時的に休止できます) 次はトラックです. b C T で建設できます. (d T で掘ることもできますが、 掘る方の指定はちょっと癖があります. フィーリングです. x(指定除去)と組み合わせれば何でも描けます.) ┌ ↑ 下から右(SE)のトラックを設置して南から上述の方法でcartを蹴り出してみましょう. 曲がった!いろいろ試しましょう ┌ ┐ └ ┘ ↑ これでトラックの使い方は完璧です(違). 加速装置 上述の二つ目のトラックにcartを蹴り込んだ場合. cartはくるくる回ったあとやがて止まります. 摩擦のせいです. 直線のトラックを敷いてやると摩擦は減りますが0にはならないので やっぱりやがて止まります. そこで加速装置です. (ローラー?パワーがいるじゃないですかヤダー) ┌ ┐ #┛ └ ┘ ♯:壁 ┛:坂道トラック ↑ そこで坂道トラックです. (b C T の下の方にある Track/Ramp です. 図中のは(NW)のやつです. 一応天然Rampなら掘ることもできます) 壁と隣接した坂道トラックのトラックの出口方向へ進むcartは加速されます. たとえ坂から降りてきたものでなくても! これでくるくる回りつつ坂道を通る度にどんどん速くなります! 脱線と脱線の抑制 上の加速装置を実行するとどんどん速くなった挙句. やがてすごいスピードで北へ飛び出していきます. (とっても*fun*) 一定以上のスピードのcartはtrackに沿って角を曲がれず、すっ飛んで行きます. 例外として壁があると高速で侵入しても曲がります. # ┌ ┐# #┛ #└ ┘ # ↑ そこで脱線しそうな所に壁を立ててみます. これでどんどん早くなりつつずっと回り続けます.*永遠*に!! (速さには上限があります) 脱線の制御 さてくるくる回り続けるcartを眺めるのは始めは楽しいですが、 やがて邪魔になります. root削除しても一旦走り始めたcartはお構いなしに回り続けます. 止めるには体を張る(割と死にます)か壁を取り外して脱線させるかです. 壁を解体する時は解体方向に注意しましょう. 失敗すると解体が終了したとたん脱線してきたcartと衝突です. わりと危険がやばくて危ない感じです. 危ないところには近づきたくないです. D ┌ ┐# #┛ D:レバーとリンクしたドア #└ ┘ # ↑ そこで、レバーとリンクです. 閉じられているドアも壁と同様に脱線を抑制しますので、 壁の代わりに、あらかじめリンクしたドアを設置しておきます. Goblinあるいは嫌いな上司が近づいたとき、 あなたは安全な場所に設置されたレバーを引くことができます! やっぱり波動砲の発射はレバーでするべきですよね! より重いcartの方が威力があるだとか、 だから荷物積もう!とか、 水で満たしたら重いんじゃね?とか、 弾の回収に戦場に飛び込むのを抑制するため、 発射前にcartをforbidしとくとかいろいろ工夫しましょう. **応用のための知識編 [#jc1cb1b2] レバー操作による制御だけでもそこそこ楽しいですが、 トラック上に(T設定の)感圧板をセットすればフィードバックがかけれます. こうなると可能性は*無限大*です!!! cartの状態を検知、出力する主な手段は感圧板になるでしょう. そのため、感圧板の仕様を理解しておくことが重要になります. -感圧板は反応条件を満たすと(ほぼ)即時に反応(暗転)し、 最後に反応条件を満たさなくなった約100ステップ後待機状態に復帰(明転)します. -反応(暗転)した時ON信号を、復帰(明転)したときOFF信号を リンクしている家具に送ります. -新たな反応によって復帰までの時間は更新されます. つまり50ステップ間隔で踏まれ続ける感圧板は常に暗転したままでOFF信号を送りません. 例えばドワーフに反応する感圧板をドアにリンクした場合:~ ドワーフが板を踏んだ瞬間にドアが開き、約100ステップ後ドアが閉じます. (この間にドワーフはドアを通り抜けることができるでしょう) 例えば4「以下」の水に反応する感圧板をドアにリンクした場合:~ 通常、乾いている状態なら開いています。 洪水だ!水が4以上になりました!ドア閉めて!! でもすぐは閉まりません。水が4以上になって(反応状態でなくなって) 約100ステップ後、ようやくドアが閉じます. (この間に結構な量の水が流れ込むでしょう. この時間を短縮するには少々トリックが必要になります.) 正直、この閉鎖の遅れが回路組むのには結構邪魔です. が、下の発振回路のように有効利用も可能です. (実は、坂加速の代わりに、 ギアと動力を用いればこの面倒を回避できたりもします. が、別に反応炉を用意しないといけなかったりするので別の面倒が増えます.) ON/OFF信号を受信した家具は各々固有の動作時間の後、 ON/OFFの各信号と家具に固有の動作をします. 動作時間中の信号、意味のない動作の信号は単純に無視されます. 例1: 下りた状態の跳ね橋にONを送り、50ステップ後にOFFを送ると. まだ動作時間中の為、OFF信号は無視され、上がったままになります. 例2: 上がった状態の跳ね橋にON信号を送っても上がったままです. 各家具の動作時間 -即時:ドア、支柱、ハッチ -約40:ヤリ -約100:水門、壁格子、跳ね橋 回路に影響を与える方法 -水門(、壁格子、跳ね橋)もドアの様に脱線制御に使えます. 反応速度がドアと異なるのでうまく使い分けましょう. -(跳ね橋でない)橋は曲がりトラックを覆い隠します. 非脱線速度での方向制御に使えます. **発振回路 [#a36f9462] 基本トラック # ┌┐# # #┛└───┌┐# #└┘───┐┏# # #└┘ ↑ # # :壁(脱線制御、或いは坂加速の為に必須の壁) ┛┗:加速用ramp track ↑ :十分加速して投入 構造物有り # ┌┐# # #┛└─^─D┐# #└D─^─┐┏# # #└┘ ↑ # 上^:感圧板1(制御用、右のドアとリンク、出力信号としても使用でき、周期およそ200) 下^:感圧板2(制御用、左のドアとリンク、出力信号としても使用でき、周期およそ200) 右D :ドア、感圧板1とリンク 左D :ドア、感圧板2とリンク 解説 +投入後中央上の通路を通って右に向かう +感圧板1が反応する +右ドアが開いている間右のループを周る(上のドア設置前の線路参照) +暫くのち(100ステップ後)感圧板が戻るとドアが閉じて中央下の通路を通って左に向かう +感圧板2が反応する +左ドアが開いている間左のループを周る +暫くのち(100ステップ後)感圧板が戻るとドアが閉じて中央上の通路を通って右に向かう +感圧板1が反応する +右ドアが開いている間右のループを周る +以下ループ 出力 中央上の感圧板からは +000 ON +100 OFF +200 ON +300 OFF +400 ON の信号が取り出せる. 中央下の感圧板からは 100ズレた信号が取り出せる。 注意 -本当は100単位でなくループを回る時間だけ少し大きい. ランダム性はないので厳密に決まるが, 反応速度に建設順が影響してたりするらしいので面倒だからパス. -投入は少なくとも脱線速度を越えていなければいけない -扉がとじるタイミングに丁度カートがあると開きっぱなしになって信号が止まります. 十分加速させて最高速度になった状態ではこれは起きません. 投入速度を充分上げる. あるいは、ドアにさらにレーバーをリンクしておいて手動で復帰するなどの手段で回避できます. 水門型(ややコンパクト、出力は同じ) # # ┌┐X┌┐# #┛^ ^┏# #└┘X└┘ # # ↑ 左^:感圧板1 右^:感圧板2 上X:水門、感圧板1とリンク 下X:水門、感圧板2とリンク **周期倍加回路 [#x5e80824] 基本構造 ## # ┌┗┐D┌┐# #└─┘ │┏# ^ ##└┘ D D ┌┐## ^ #┛│ ┌─┐# #└┘D└┓┘ # ## 上下D:ドア、入力信号Aにリンク 左右D:ドア、入力信号Bにリンク 右^ :感圧板1、出力信号1 左^ :感圧板2、出力信号2 前述の発振回路から得られる二種類の信号を入力A、Bとしてリンクすれば 出力信号として +000 ON +100 OFF +400 ON +500 OFF +800 ON が取り出せる. 出力信号1、2は200ずれる この出力を2つ目の倍加装置に入力すれば +0000 ON +0100 OFF +0800 ON +0900 OFF +1600 ON 更に2つ目の出力を3つ目の倍加装置に入力すれば +0000 ON +0100 OFF +1600 ON +1700 OFF +3200 ON 以下同様に長周期の信号が作れる. 注意 -例によってループ時間分誤差が出る. **一時退避回路 [#s6c478b2] いちいち脱線させたり再投入したりして回路の動作をON/OFFするのは 時間がかかるし、危険でもある. 予め、退避回路を設置しておけばレバー一つでお手軽にON/OFできる. 運転状態 # #┌┐ ┌┘┗# →┐D┘# │# ↓ →:主ループ進入方向 ↓:主ループ脱出方向 D:退避制御ドア、レバーにリンク、下に└を掘ってから設置 主ループの角部分に設置 元の主ループはDの部分に脱線抑止の壁があった. ドアが閉じている状態では元と同じ挙動. 退避状態 # #┌┐ ┌┘┗# →┐└┘# │# ↓ ドアを開くとcartが退避ループに捕獲され、 主ループの動作が休止する. 再びドアが閉じられると退避ループのcartは┌┘の経路を通って主ループに戻される. **遅延回路 [#a482f7a8] あなたの要塞に素敵な自壊用の支柱を作ったとしましょう. 支柱に連動したレバーを引いたとたん!あなたの要塞は全滅します!!*楽しい*!!! でも、せっかくの楽しみを一瞬で終わらせず、もう少し情緒を楽しんでみませんか? 古今、洞穴の崩壊レバーには猶予があるのが定番です. この遅延装置によって、あなたは逃げ惑ったり、パニックに陥ったり、 あるいは絶望を味わう(任意の長さの!)時間を得ることができます. # # # #┌┐#┌┐#┌┐ │┗#│┗#│┗# └┘D└┘D└┘D^┐# #│ # # │ #└────────┘ 左D:トリガー、例えばレバーからリンク 中D:周期信号からリンク 右D:半期ずれた周期信号からリンク ^ :出力信号、例えば支柱にリンク 遅延回路を多段に組んだり、長周期の反復信号を使う事によって遅延時間は操作できます. 倍加回路を二十数個かさねれば、100年後に倒壊が約束された要塞ができます. そして五十個以下の倍加回路で(それが来るまで「我々」が生きていないとしても) 56億7千万年後の*救済*を予約することだってできます **自動復帰 [#n25e998e] 原子粉砕装置(橋)で何かを粉砕するとき、 レバーに2回分タスクを指示しても開きっぱなしになります。 これは橋の動作時間中の為にOFF信号が無視されるために起きる現象です。 しばらく待ってから、もう一度レバーを動かしてやれば良いのですが、 めんどくさいので自動化します。 # # ┌┐D^┌┐# #┛│ ^┏# #└┘─X└┘ # # ↑ 上^:感圧板1、出力1 右^:感圧板2、出力2 D :ドア、入力用レバー、感圧板1とリンク X :水門、感圧板2とリンク 動作解説 +準備状態としてドア、水門ともに閉じた状態で左のループをカートが回っています +外部トリガーとしてレバーが引かれる +即座にドアが開き、カートが右のループに移動。 この時、感圧板1より出力(例えば橋)にON信号。 +続いて右の感圧板2も反応し、水門にON信号。 出力(例えば橋)にもON信号が送られるがこれは動作中のため無視される。 +およそ100STEP後、感圧板1が復帰してドアにOFF信号。(もし開いていれば)即座にドアが閉じる。 出力(例えば橋)にもOFF信号が送られるがこれは動作中のため無視される。 +続いて感圧板2の信号の水門動作が終了してカートが右のループに移動。感圧板2が反応条件を満たさなくなる。 +更に100STEP後、感圧板2が復帰して出力(例えば橋)にOFF信号。 初めのON信号より200STEP経過しているので橋は反応する。 +更に100STEP後、水門が閉じ、準備状態に戻る。