GTC - Ginren Traffic Controler(過去版)
サポート期間について
GTCは、2022年9月30日をもちまして完全にサポートを終了しました。今後更新は行わず、後継の「GTS」に移動します。GTCを現在ご利用中の方は引き続き使用可能ですが、バグなどが発生しても当社では対応いたしかねますのでご了承ください。
後継の「GTS」はこちらから。
どんなMod?
GTCとは、交通信号機に付随する機器類を追加するModです。RealTrainModのモデルパックで交通信号機を作ることができるので、それと連携して信号機を簡単に動かせるようにとのことから自己満足で開発しているものを掲載しています。
前提Modは?
当Modを使用するためには、2つのModを事前に導入する必要があります。そのModがない場合は、起動の段階で「ダウンロードして」と言われてしまうので、Modを必ずダウンロードし、有効化してください。
RealTrainMod
交通信号機の出力コネクタを使用して電気信号を送信するため、RealTrainModが必要です。本体をダウンロードして有効化してください。(RTMで必要なNGTLibもダウンロードしなくてはならない気がします。RTMの導入方法については範疇外なので割愛します)
GingaCore
拙作の前提Modとしてダウンロードする必要があります。このMod自体は特に何も機能はありませんが、この内部にあるメソッドを使用することがあります(というか、します。)。ダウンロードリンクは、対応するGTCのセクションに合わせて記載しておくので、そのバージョンにあったものをダウンロードしてください。バージョンが違うと起動できません。
詳しい機能の紹介
簡単にですが、このModで使用できる機能を紹介します。
交通信号制御機
今まで焼き滅ぼしたくなるほどクソ広い面積を占有していたRS回路で信号機の制御を行ってきていたと思いますが、その制御をシンプルに1ブロックで行うことができるようになったものとなります。おまけとして、神奈川県の印字方式を採用した制御機番号を振ることができるようになっています。特に管理番号に関しては、のちに連携(系統制御)を実現するために必要になると思うので、つけておくことをお勧めします(つけないと印字がされない制御機になるだけで機能は変化しません)。
この制御機では、基本プリセットとして「定周期」「押ボタン式」を内蔵しています。そのほかにも、自身で作成した制御を任せることも可能となります(まだ開発版では対応していませんが、JavaScriptを使用したもののほかに、単純なサイクルだけならばもっと簡単な書式で表現できるような計画もしています →Ver 0.4βで暫定対応しました! JavaScriptのみ対応中です)。一応感知式もプリセットで同梱してはいますが、まだ何も設定していないため無点灯になります。Ver0.5β以降、削除予定です。
制御機は、複数のパラメータを持ちます。設定できる項目は、「色」「それぞれの色の表示時間」「番号」などです。表示時間については、「主道」の時間を指定します。「従道」に関しては、主道の時間から自動的に推測されます(プリセットの場合)。カスタム制御の場合はどのようにするかその製作者さんの意向になりますが、設定できるのは「主道」だけです。一応カスタム用にその他のパラメータも入れてあるので足りなくなったらそこをお使いください(ただし、整数しか入れることができません!)。
制御機には向きがあり、印字により識別することができます。ステンシル印字(線が途切れているやつ)がある向きが自分のほうを向くように設置されるはずです。そして、その向きを基準として、奥(別のフォントの印字がある)は主道歩灯、手前は主道車灯。右側面は従道車灯となり、左側面は従道歩灯となります。その4面にはRTMの出力コネクターをつけることができます。コネクターを付けたら、いつもの通りにワイヤーで信号機と結び付けてあげれば勝手に動作を開始します。
夜間点滅に対応しています(常時点滅にもできますがサイクルが無視されます)。点滅中は指定したサイクルを全無視し、一定周期で主道黄点滅、従道赤点滅、歩灯が消灯します。現在、初期化設定をしていないため、夜間点滅は即座に切り替わり即座に終了(点滅したままサイクルスタート)してしまいますが、おいおい修正予定です。繰り返しますが、点滅中はサイクルが完全に無視されます。押ボタンとか押しても反応しないのでお気をつけあれ。現在バグもとい仕様で、点滅終了後に押ボタンは勝手に切り替わります。
押ボタン箱(Ver0.2β~)
よくある「Ⅱ形」の押ボタン箱を追加しました。この押ボタン箱は、設置された位置を中心とした半径32マスの球体内部に位置する最も近い制御機を自動で見つけ、押ボタンを右クリックすることでその制御機に信号を送信することができます。出力コネクタ、ワイヤーなどは必要ありません。無線で稼働します(笑)
さすがにこれをMinecraft内のレンダーメソッドだけで直感で書いていくには無理があったので、制御機とは異なりMQOファイルで製作しています。近いうちに制御機もより現実に近くなるようにMQO化しようと考えています。押すとちゃんと「ピピピピ」と音が鳴るようになっています。押ボタンの音まともに録音したことなかったので電子音っぽく波形いじって再現してみましたがこんな感じでしたっけ?
表示時間について
表示時間の指定パラメータについてです。すべて単位は秒となりますが、Tickで計算しているため、ゲーム時間を変更するModを導入している場合はその速さ分加減速するのでご注意ください。
青・黄・赤
主道のそれぞれの色が点灯している時間を指します。通常、黄色は3~4秒が好ましいとされています。というか実際の制御機は2か3の組み合わせで黄色時間を調整しています(2,3,2+2=4,2+3=5…)。また、赤の時間は長めにとっておかないと、側道がいつまでたっても青になりません。側道の黄色時間+赤時間を考慮した長さにしないといけません。
全赤
全赤時間とは、その名の通り、「あらゆる灯器が赤を指し示す時間」を指します。通常は2秒程度にしておいたほうがいいですが、交通量の多い交差点や右左折車両が多い交差点だと3秒以上のところもありますね。なおカスタムではこの値を無視できる可能性もあるのですが、基本指定しておいてください。0にするとバグります。
青点滅
歩灯の点滅時間を入力してください。黄色時間とは異なります。なお、歩灯制御でここを使う場合、前述した「赤」の時間はこれも考慮する必要があります。
カスタム(その他)
この中には、カスタムスクリプトで使用するための追加パラメーターを入力します。カスタムを導入していて、スクリプト製作者から指示があった場合に使用してください。パラメーターはカンマ区切りで複数入力することができます。
正直わかんない!
主道と側道の時間調整は以下のような図で表されます。これをもとに計算し、時間を入れてください。大体多めにやっておけばどうにかなります
このように、パラメーターは主道を基準として決定するので、従道は共通部分である「黄色時間」「点滅時間」「全赤時間」を除いて計算で求める必要があります。全赤時間は必ずどちらも同じ回数を同じタイミングでとるので考えなくて結構です。暇なときにGIFでも載せておきます。いつになるかわかりませんが。
カスタムスクリプトについて
ドキュメントをご覧ください。ドキュメントは、下記ダウンロードのセクションからダウンロードできます。
利用規約っぽいもの
基本的にGRPと同じライセンス形式なので今はあちらをお読みください。あそこでダメって言っているものはダメです。それ以外で困ったら管理人へご連絡ください。いずれ作ります。
Modのダウンロード
お待たせいたしました。Modのダウンロードリンクを掲載しておきます。「β」とついているものは開発版となります。開発版は、本番環境のワールドには使用しないことを地球の重力よりも強く推奨しています。というのも、若干仕様が変わったりすることがちょくちょくあるためです。また、なるべく最新版を入れてください。安定版(無印のやつ)はバージョンアップするたびにサポートを打ち切ります。バグが発生したりしてどうしようもない場合のみ古いバージョンはお使いくださいね。
ドキュメントのダウンロードはこちらから行うことができます。最新版が常に公開されています。定期的に確認してみては?
※そのままだとPDFビューアが開く場合は右クリックから保存してください。
Ver 0.5.2 - 2021.4.17
※GingaCoreの方にてどうやら難読化できていなかったようなので差し替えてみました(2022年3月1日追記)。
- <修正>GUIのスケーリングに半対応しました。位置は結構ズレますが一応画面内にGUIが表示されるはずです。
GingaCoreには特に変更を加えていないので、そのままのバージョンで問題ないと思われます。なんかあったら教えてください。 getMinecraft()メソッドが消滅してしまうようなのでこちらも修正を加えました。