前回、第20回では、Goalを最大出荷能力を持つ「出荷場」へ変更しました。
これによって、投入機 → ストッパ → 加工機 → 出荷場
までをすべて「個/s」で考えられるようになり、
どこがライン全体の能力を制限しているのか?
を数字で確認できるようになってきました。
かなりゲームの形が見えてきたのですが、
実際にラインを動かしていると、また気になる部分が出てきました。
それが、ストッパを含めた設備能力のバランスです。
さらに今回は、これまで後回しにしていた、
- 投入機L
- 加工機L
- 低速・中速・高速コンベア
も追加します。
S・Mだけだった工場にLサイズが加わり、コンベアにも性能差が付くことで、
設備選びの幅が一気に広がってきました。
ストッパを考えると「全部同じ能力」では少し厳しい

第18回では、分かりやすさを優先して、
投入機S:0.45個/s
加工機S:0.45個/s
のように、同じサイズなら同じ能力にしました。
数字としては非常に分かりやすいです。
ただ、第19回でストッパまで「個/s」で
考えるようになったことで、一つ問題が見えてきました。
例えば、
投入機:0.45個/s
↓
ストッパ:0.42個/s
↓
加工機:0.45個/s
ストッパを少し遅くすれば、加工機へワークが早く到着しすぎるリスクを減らせます。
ところが今度は、投入機0.45個/s > ストッパ0.42個/sなので、
長時間運転するとストッパ前にワークが溜まっていきます。
最終的には投入機まで渋滞が伸びて、
FEEDER JAM (投入機詰まりエラー)
になる可能性があります。
ストッパをボトルネックにはしたくない
ストッパは、今回のゲームでは、ワークの流れを整える設備として使いたいと考えています。
ストッパそのものがライン全体の最大能力を決める設備には、あまりしたくありません。
だからといって、投入機・ストッパ・加工機を全部0.45個/sにすると、
前回確認したように、Unity上のタイミング差や移動時間などによってNGが発生する可能性があります。
そこで今回は、設備能力の関係を少し変更することにしました。
投入機より、加工機の能力を少し高くする。という考え方です。
「投入能力 < 加工能力」に設定する
今回の基準はこんな感じにします。
| サイズ | 投入機 | 加工機 | 能力差 |
|---|---|---|---|
| S | 0.45個/s | 0.55個/s | +0.10個/s |
| M | 0.75個/s | 0.85個/s | +0.10個/s |
| L | 1.20個/s | 1.30個/s | +0.10個/s |
同じサイズでも、加工機側に0.10個/sの余裕を持たせます。
例えばSなら、
投入機S:0.45個/s
↓
ストッパ:流れを調整
↓
加工機S:0.55個/s
これなら、ストッパを投入機より極端に遅くする必要がありません。
加工機側に少し処理能力の余裕があるため、投入機のばらつきも吸収しやすくなります。
ストッパは「能力を落とす設備」ではなく「流れを整える設備」へ

ここは今回かなり重要な変更です。
例えば、投入機が0.45個/sだから、ストッパを0.40個/sにする。
これでは確かに加工機へゆっくり供給できますが、
長時間では上流にワークが溜まります。
そこで、投入機の平均供給量は処理できる範囲にしつつ、
ストッパでワーク間隔を整える
という使い方へ寄せます。
イメージとしては、
投入機
0.45個/s
↓
ストッパ
タイミングを整える
↓
加工機
0.55個/s
加工機側に余裕があるので、ストッパは単純に生産能力を落とすのではなく、
投入ブレを整流するための設備として機能させやすくなります。
もちろん、この数値もまだ仮
とはいえ、「+0.10個/sが絶対に正しい」とはまだ思っていません。
これらが全部関係します。
今のところ、同サイズならまず成立しやすい。
でも設備配置やストッパ調整には意味が残る。
というところを狙って、+0.10個/s
をひとまず落としどころにしました。
ここは今後かなり遊びながら調整していく部分になりそうです。
そして、ついにLサイズ設備を追加する

設備能力のバランスを見直したところで、
次は以前から後回しにしていた、Lサイズ設備を追加します。
これまで使っていたのは、SとM。
今回は、
を追加します。
さらにLは、これまでの設備より大型です。
2×2=4マスを使う設備にします。
Lは「高性能だけど大きい」
Lサイズの特徴は、単純に能力が高いだけではありません。
例えば投入機なら、
- S:小型・低能力
- M:中型・中能力
- L:大型・高能力
という違いになります。
Lなら1台で大量にワークを流せます。
ただし、2×2の4マスを占有する。
12×8のグリッドでは、この4マスはかなり大きいです。
- コンベアを通したい場所。
- ストッパを置きたい場所。
- 加工機との接続。
- 将来の増設スペース。
こうしたことまで考えて配置する必要があります。
つまりLは、高性能だけど、レイアウトの自由度を削る設備でもあります。
Lサイズでは「設備の中をどう通るか」も決めたい
投入機S・Mでは、基本的に1方向へワークを送り出せれば十分でした。
しかし、Lサイズは2×2の4マス設備です。
設備が大きくなったことで、
まで考える必要が出てきました。
そこで、Lサイズ設備では入出口もプレイヤーが選べる仕様にします。
投入機Lサイズは8か所から出口を選べる
投入機Lサイズは2×2なので、外周には複数の出口候補があります。
対応するのは、
- 右上・右下
- 左上・左下
- 上辺左・上辺右
- 下辺左・下辺右
の8ポートです。
操作は、
R:設備を90°時計回りに回転
F:同じ辺にある2つの出口を切り替え
とします。
例えば、RightUpper → R → BottomRight のように、
設備を回転すると出口位置も一緒に回転します。
これなら同じ2×2設備でも、
レイアウトに合わせてワークの出口を変えられるようになります。
加工機Lサイズは「入口 → 中央 → 出口」で通す
加工機Lサイズでは、さらに経路を自由にしたいと考えました。
現状の実装では、ワークが加工機へ入ると、
入口になった1マスの中央付近で停止して加工していました。
ただ、2×2の加工機なのに端のマスで加工していると、見た目として少し不自然です。
そこでLサイズ加工機では、
選択した入口
↓
2×2設備全体の中心
↓
選択した出口
という経路に変更します。
加工処理を行う場所も、4マス全体の中心です。
これなら大きな加工機の中央へワークが入り、
加工されたあと別の出口から出ていくため、かなり自然に見えます。
加工機Lサイズは入口と出口を別々に選ぶ
操作も投入機とは少し変えます。
加工機Lサイズでは、
R:入口ポートを選択
F:出口ポートを選択
とします。
入口・出口ともに、2×2設備外周の8ポートから選択できるようにします。
例えば、
左上から入る
↓
加工機中央で停止・加工
↓
右下から出る
という経路も作れます。
通常のコンベア搬送はこれまで通り上下左右のみですが、
Lサイズ加工機の内部だけは専用経路として中央を通るイメージです。
これでLサイズは、単純に「大きくて高性能な設備」ではなく、
工場レイアウトに合わせて経路まで設計できる設備になりました。
そしてLサイズならではの不具合も発生した

こうしてLサイズ加工機を動かしていると、さっそく不具合も出ました。
時々、ワークが1個だけ加工機の左下マスへ移動し、
そのままずっと取り残されるという現象です。
見た目としては、
他のワークは普通に流れているのに、
1個だけ加工機の隅で停止している。
という状態。
なぜこうなるのか、当然自分では分かりません。
そこで今回も、自分 → ChatGPT → Codex
の流れで原因を追っていきました。
① 自分:まず「何が起きたか」だけ伝える
自分からChatGPTへ伝えたのは、

「加工機Lで、時々ワークが1個だけ左下のブロックに落ちて放置されます。原因わかる?」
という症状です。
コードのどこが悪いかは分かりません。
なのでまず、見えている現象だけを伝えます。
場合によっては画像も一緒に送ります。
② ChatGPT:怪しい原因を絞る
ChatGPTから返ってきたのは、

「見た目の位置と、ワークが内部的に所属しているGridCellがズレている可能性が高い」
という仮説でした。
Lサイズ加工機は4マスあります。
ワークを設備中央まで動かしても、内部では、
- 見た目:設備中央
- CurrentCell:左下セル
のような状態になっている可能性があります。
そのまま通常搬送へ戻ると、「自分は左下セルにいる」
と処理されて、左下マスへ戻されてしまう。
症状としてはかなり一致します。
③ Codex:ログで確認してから修正
ただし、ChatGPTの予想だけでコードを直すのは少し怖い。
そこでCodexには、決め打ちで修正せず、
ログで原因を確認してから直すよう依頼しました。
その結果、実際に、

加工機から所有権を解除した後も、ワークの論理セルが設備内部に残っていた
その状態で通常停止処理へ入ると、内部セル中央へ位置補正される
Release失敗時でも、加工機側が成功確認せずActiveWorkpieceを解除できる
という不整合が見つかりました。
そこを修正。
4方向・計24回の連続運転テストでは、孤立ワークは発生しなくなりました。
AI開発でも「症状 → 仮説 → 検証 → 修正」

この流れは、今回かなり面白かったです。
自分は、不具合を見つける。
ChatGPTは、原因候補を整理する。
Codexは、コードとログを確認して修正する。
という役割になっています。
しかも、「たぶんここだから直して」ではなく、
「本当にそこが原因なのか確認してから直す」という流れです。
ゲームが複雑になってくるほど、このやり方は重要になりそうです。
Lサイズ設備を追加したことで、性能やレイアウトだけでなく、
複数マス設備特有の経路・セル管理まで考える必要が出てきました。
ゲーム制作初心者としては難しくなっていますが、その分、
少しずつ本物の設備っぽい動きになってきた感じもします。
さらにコンベアにも性能差を付ける
そして今回もう一つ追加するのが、コンベアの速度差です。
これまでコンベアは1種類しかありませんでした。
どのコンベアを置いても、同じ速度でワークが流れます。
そこで今回から、
- Low (低速コンベア)
- Medium (中速コンベア)
- High (高速コンベア)
の3種類にします。
コンベアは低速・中速・高速の3種類
現在のコンベア速度を基準にして、
| コンベア | 速度 | 基準との比較 |
|---|---|---|
| Low | 低速 | 0.5倍 |
| Medium | 中速 | 1.0倍 |
| High | 高速 | 1.5倍 |
Mediumが今まで使っていた速度です。
Lowは、その半分。
Highは、1.5倍。
これでコンベアにも、「どれを使うか」という選択肢が生まれます。
全部Highにすればいい、にはしたくない
当然、Highが一番速い。
だったら、全部Highを置けばいい。となりそうです。
でも、ここには今後、価格差を付けます。
例えば、
Lowは安い。
Mediumは標準。
Highは高い。
となれば、「この区間、本当にHighが必要?」
と考えるようになります。
長い直線だけHighにする。
設備直前はMedium。
ほとんど影響しない場所はLow。
そんな使い分けができれば、
コンベアそのものも設備選択の一部になります。
コンベア速度と「個/s」は少し違う
ここで注意したいのが、コンベアの速度は、
投入機や加工機の「個/s」と完全に同じものではありません。
投入機の0.45個/sは、1秒あたり何個供給できるか。
加工機の0.55個/sは、1秒あたり何個処理できるか。
一方コンベアは、ワークがどれくらい速く移動するかです。
なので、Highコンベアにしたから、
単純にライン能力が1.5倍になるわけではありません。
投入機が0.45個/sなら、どれだけ高速コンベアを使っても、
ワークそのものは平均0.45個/sしか供給されません。
ただし、
こうした部分には影響します。
ここもゲームバランスとして面白くなりそうです。
「どこだけ速くする?」という新しい悩み
コンベアが3種類になると、レイアウトを考えるときに新しい悩みが生まれます。
これまでは、コンベアをどこに置くかだけでした。
これからは、どのコンベアを置くかも考えます。
例えば、
- 加工機まで遠いから、ここだけHighにする?
- この短い区間ならLowで十分?
- 全部Highにすると高すぎない?
という判断です。
つまり、
設備本体だけではなく、設備同士をつなぐ部分にも
コストと性能のトレードオフが入ってきます。
今回は一気に「設備選び」が広がった

今回追加・変更したものを整理すると、かなり大きいです。
- 投入機と加工機の能力バランスを再調整。
- 同サイズでも、加工機側へ0.10個/sの余裕を持たせます。
- Lサイズ設備の追加
- 投入機L:1.20個/s
- 加工機L:1.30個/s
- コンベア種類追加
- Low / Medium / Highの3種類へ。
ここまで来ると、プレイヤーが考えることは、かなり増えてきました。
能力だけでなく「サイズ」と「搬送速度」まで考える
初期のゲームでは、
- 設備を置く。
- 向きを変える。
- ワークを流す。
という比較的シンプルなパズルでした。
今は、
- 設備価格
- 投入能力
- 加工能力
- 供給ブレ
- ストッパ調整
- 最大出荷能力
- 設備サイズ
- コンベア速度
まで考えるようになっています。
ただ、個人的にはまだ、
機械設計者ならなんとなく直感的に理解できる範囲
に収まっている気がします。
「全部覚えなければ遊べない」ではなく、
数字を見比べれば、なんとなく問題点が分かる。
ここは今後も大事にしたいです。
L設備だけでは、いつか能力が足りなくなる
Lサイズまで追加すると、1ラインの生産能力はかなり上がります。
投入機L:1.20個/s
加工機L:1.30個/s
でも、出荷場の能力をさらに上げていけば、
いつか、L設備1台でも足りない状況になります。
例えば、
出荷側が3個/sを要求するようになれば、
1.2個/sの投入機Lだけでは当然届きません。
そこで初めて、「ラインをもう1本作ろう」という理由が生まれます。
複数ライン化の前に、設備を選びやすくしたい
ここまでS・M・Lサイズの投入機・加工機に加えて、
低速・中速・高速コンベアまで増え、設備の選択肢がかなり広がってきました。
自分としては、このまま次に複数ライン化へ進むつもりでした。
投入機や加工機を複数台置けるようにして、
いよいよ工場全体を広げていこうと思っていたのですが、
ここでChatGPTからこんな提案がありました。

複数ライン化の前に、設備情報を見て
選びやすくするUIを入れるのがおすすめです。
価格・能力・サイズ・特徴などを、その場で比較できるようにすると
設備選びの意味が伝わりやすくなります。
確かに、設備が増えた今の状態では、「どの設備を選べばいいのか?」が少し分かりにくくなってきています。
複数ライン化してさらに設備が増える前に、一度ここで設備の選びやすさを整えておく方が良さそうです。
そこで次回、第22回では、設備を選択したときに
価格・能力・サイズなどを確認できる設備情報UIを追加していきます。
まずは、「何を買うか考えやすいゲーム」にしてから、
工場をさらに広げていきます。




コメント