座標指定型TNTキャノン #7 - 解説 | Minecraft Java 1.17+

2022/08/21 に公開
視聴回数 196,865
0
0
XYZ全軸の指定に対応した全方位対応・座標指定型TNTキャノンの実演・解説動画です。
動画後半では、前回の解説のおさらいと新しい部分の仕組みを解説しています。


▼ 座標指定型TNTキャノンのシリーズ ▼
#1: https://youtu.be/l-RtCDgxQ5Q
#2: https://youtu.be/mZzMIDs0n4Q
#3: https://youtu.be/rtZagqG3Jyo
#4: https://youtu.be/bbRO9pMOl9I
#5: https://youtu.be/ad7NFihpj_E
#6: https://youtu.be/1PpfLLM8-1s
#7: (この動画)

再生リスト: https://youtube.com/playlist?list=PLfci7on1RzUCx5_Jdk4hiZ6DeSi41TyhI


▼ 目次 ▼
00:00 0. プレビュー・はじめに
00:33 1. 実演
02:21 2. 解説① 座標指定理論のおさらい
03:20 3. 解説② 高分解能化
06:05 4. 解説③ 弾頭伝達性能の向上
06:43 5. 解説④ y座標指定
09:44 6. 課題
11:19 7. おわりに


▼ 動作環境 ▼
動作確認 : Minecraft Java 1.17.1~1.19.2
製作環境 : Minecraft Java 1.18.1
撮影環境 : Minecraft Java 1.17.1


▼ ワールドデータ・ストラクチャーファイルの注意事項とダウンロードリンク ▼
ワールドデータとストラクチャーファイルは、無改変で二次配布しない・自作発言をしないなど、常識の範囲内でお使いください。
ワールドデータ :
 https://www.dropbox.com/scl/fi/ckxe3vfhujwjycsn5p0qr/Coordinatable-TNT-Cannon-3-2.zip?rlkey=mgr6kdcno6j0525g774znqqms&st=12twdx1q&dl=0
ストラクチャーファイル :
 https://www.dropbox.com/scl/fi/vve8v12zzx80hg1g4d4o4/coordinatable-tnt-cannon-3-2.zip?rlkey=veyfb3a8ytg7p9lbwdnb091gm&st=tcek4f0j&dl=0


▼ Q&A ▼
Q. 自爆などに対する安全性は?
A. あります。自機を破損する可能性のある座標には射撃できないようになっています。射撃不可領域はx座標の絶対値が90以下、y座標は65以下、z座標の絶対値が25以下のAND条件です。この設定は回路内部の書見台で変更可能です。また、射撃ボタンを押したあと7秒程度は再度押しても射撃されないようになっています。

Q. 安全装置って必要?
A. 使用者に優しい操作性を提供したいのであれば、必要です。

Q. 数値入力と消去ができないときがあるのはなぜ?
A. キャノン動作中に信号強度が変更されるのを防ぐためです。発射ボタンが押されたあと4秒程度は座標軸切り替え以外のボタンが無効になります。信号強度メモリをもう1段加えれば無効化を不要にできますが、そこまではやりませんでした。

Q. 実際の着弾点のy座標が上振れることがあるのはなぜ?
A. x, z軸の2次装薬の爆発座標と弾頭のy座標の差が0ではないからです。実際の着弾点のy座標は、指定y座標に「『x, z軸の2次装薬数の合計』× 0.015」を加えた値になります。改善できないことはないですが、難しいと思います。弾頭の位置は(打ち上げ装薬数・装薬爆発位置・弾頭位置の組み合わせにより)1500通りあり、その中でy座標の差が一番小さいものがこれだからです。

Q. 他に課題はあるのか?
A. y軸の精度と耐水弾の実装です。y軸の精度は上述の回答のように、とにかくいろんな実装を試して良い数字を得られるかが鍵です。これ以外にも課題はあるかもしれませんが、代表的なものはこのあたりです。

Q. TNTキャノンと7セグメントディスプレイの間にある除算器は必要?
A. -メインの装薬数の決定に必要です。TNTキャノン本体の回路は2倍の乗算器が含まれている構造なので、キャノンに入力する値は予め半分にしておかなければなりません。どうしても除算器を取り除きたいのであれば、メインの装薬を出すディスペンサーを半分にすると良いです。ただし、最長射程は半分になります。-
A. 実は不要です。この動画を作ったあとにわかったことですが、回路の構造を工夫すれば計算機なしで作れます。

Q. 最低動作バージョンが1.17なのはなぜ?
A. アメジストの塊を使っているからです。サブ装薬の位置調整に使っています。


▼ 使用MOD ▼
キャノンと動画の製作で使ったMODです。ワールドデータはMODなしで使えます。
・Fabric https://fabricmc.net/
・Carpet https://www.curseforge.com/minecraft/mc-mods/carpet
・Replay Mod https://www.replaymod.com/


▼ 参考 ▼
・外部ツールなしの全方位対応・座標指定型TNTキャノンの原点
 【ゆっくり実況】全方位自動照準型TNTキャノン【minecraft回路部】 / Rachel のゆっくり研究室さん
 https://youtu.be/79_2hqtz0no

・着弾点の間隔を10にする工夫
 【Minecraft軍事部】全方位座標入力対応型TNTキャノン(JE-1.17.1) / 籠目さん
 https://youtu.be/LPBCFTwcOG0

・射撃中は発射ボタンを無効にする安全装置
 【ワールド配布】コンピューター制御式全方位TNTキャノン #2【minecraft防衛部】 / Rachel のゆっくり研究室さん
 https://youtu.be/IugT0wrgN2M

・自爆圏内の座標が設定された場合に発射ボタンを無効にする安全装置
 【Minecraft回路部】全方位対応型TNTキャノン (精密射撃)【ゆっくり実況】 / Rachel のゆっくり研究室さん
 https://youtu.be/w_Frq_youGM

・安全装置の比較器のアイデア
 / とある提督のサブ垢さん
 https://twitter.com/Teitoku_toaru/status/1496479172285579266

・方位角ずれの解消
 座標指定型TNTキャノン #4 - 解説 | Minecraft Java 1.16-1.18 / えいまぼ
 https://youtu.be/bbRO9pMOl9I

・高分解能化のアイデア
 「弾頭TNT着火タイミングを統一できれば入力座標の端数部分だけ単位TNT推力の小さい装薬を使って長距離高精度を実現できそう」 / ニコニコ動画版についたコメント
 https://www.nicovideo.jp/watch/sm39986269

・弾頭TNT座標の式
 TNTの座標計算 #1 - 式と導出 / えいまぼ
 https://rslatch.hatenablog.com/entry/2022/08/14/093853

・単位TNT推力の式
 TNTの座標計算 #3 - 単位TNT推力 / えいまぼ
 https://rslatch.hatenablog.com/entry/2022/08/16/172504

・使用した7セグメントディスプレイ
 Nicely Tile-able 7-Segment Displays: Download + Applications | Minecraft 1.16+ / Maizuma Gamesさん
 https://youtu.be/pickVLKr_j0

・使用した双方向シフトレジスタ
 シフトレジスタまとめ+双方向シフトレジスタ | Minecraft JE / enoki loveさん
 https://youtu.be/4bG7yHS6RhU

・使用したピストン式コンベア (一部)
 Block & Entity Conveyor: Fast, Versatile, Easy to build! | No Mods/Commands | Minecraft 1.12+ / Maizuma Gamesさん
 https://youtu.be/uIowfY-p-qg

・1.17周辺におけるTNTの移動の際の衝突判定がY→Z→X or Y→X→Zであること
 【Minecraft軍事部】徹底解剖! Ver1.17における弾頭TNTの挙動 / BongoBongoさん
 https://youtu.be/Ijz3zrXxMlA


▼ テキスト読み上げ ▼
春日部つむぎ (VOICEVOX)
https://voicevox.hiroshiba.jp/


▼ リンク ▼
ニコニコ版: https://www.nicovideo.jp/watch/sm40959234
Twitter: https://twitter.com/aimable_rs
Blog: https://rslatch.hatenablog.com
全方位TNTキャノン開発機構(Discord): https://discord.gg/qbmDjtX3YT