Satisfactoryのレシピ把握のため、Graphvizで可視化したかった
レシピ一覧 - Satisfactory日本語 Wiki* を開いて ブラウザのDevTools を開いてScript を実行するとGraphviz用のdot言語を作成できる(クリップボードにコピー)
あとは https://dreampuf.github.io/GraphvizOnline/ などでレンダリングする
かなりカオスなので必要なレシピだけ残すと見やすくなりそう
Satisfactoryのレシピ把握のため、Graphvizで可視化したかった
レシピ一覧 - Satisfactory日本語 Wiki* を開いて ブラウザのDevTools を開いてScript を実行するとGraphviz用のdot言語を作成できる(クリップボードにコピー)
あとは https://dreampuf.github.io/GraphvizOnline/ などでレンダリングする
かなりカオスなので必要なレシピだけ残すと見やすくなりそう
digraph G { | |
graph [pad="0.75", ranksep="0.9", nodesep="1.25"]; | |
"鉄鉱石" [shape = box] | |
"銅鉱石" [shape = box] | |
"石灰岩" [shape = box] | |
"石炭" [shape = box] | |
"カテリウム鉱石" [shape = box] | |
"未加工石英" [shape = box] | |
"硫黄" [shape = box] | |
"ボーキサイト" [shape = box] | |
"ウラン" [shape = box] | |
"原油" [shape = box] | |
"水" [shape = box] | |
"窒素ガス" [shape = box] | |
"葉" [shape = box] | |
"花弁" [shape = box] | |
"菌糸" [shape = box] | |
// recipieGraph start | |
"緑のパワー・スラッグ" -> "パワー・シャード(1)" [label="In: 6/分"] | |
"パワー・シャード(1)" [xlabel="Out: 6/分"] | |
"葉" -> "バイオマス(葉)" [label="In: 120/分"] | |
"バイオマス(葉)" [xlabel="Out: 60/分"] | |
"菌糸" -> "布地" [label="In: 15/分"] | |
"バイオマス" -> "布地" [label="In: 75/分"] | |
"布地" [xlabel="Out: 15/分"] | |
"バイオマス" -> "固体バイオ燃料" [label="In: 120/分"] | |
"固体バイオ燃料" [xlabel="Out: 60/分"] | |
"石灰岩" -> "コンクリート" [label="In: 45/分"] | |
"コンクリート" [xlabel="Out: 15/分"] | |
"未加工石英" -> "石英結晶" [label="In: 37.5/分"] | |
"石英結晶" [xlabel="Out: 22.5/分"] | |
"未加工石英" -> "シリカ" [label="In: 22.5/分"] | |
"シリカ" [xlabel="Out: 37.5/分"] | |
"石炭" -> "代替: 圧縮石炭" [label="In: 25/分"] | |
"硫黄" -> "代替: 圧縮石炭" [label="In: 25/分"] | |
"代替: 圧縮石炭" [xlabel="Out: 25/分"] | |
"銅のインゴット" -> "銅粉" [label="In: 300/分"] | |
"銅粉" [xlabel="Out: 50/分"] | |
"石炭" -> "黒色火薬" [label="In: 7.5/分"] | |
"硫黄" -> "黒色火薬" [label="In: 15/分"] | |
"黒色火薬" [xlabel="Out: 7.5/分"] | |
"ビーコン" -> "ライフル弾薬" [label="In: 3/分"] | |
"鋼鉄のパイプ" -> "ライフル弾薬" [label="In: 30/分"] | |
"黒色火薬" -> "ライフル弾薬" [label="In: 30/分"] | |
"ゴム" -> "ライフル弾薬" [label="In: 30/分"] | |
"ライフル弾薬" [xlabel="Out: 15/分"] | |
"黒色火薬" -> "ノーベリスク" [label="In: 15/分"] | |
"鋼鉄のパイプ" -> "ノーベリスク" [label="In: 30/分"] | |
"ノーベリスク" [xlabel="Out: 3/分"] | |
"石炭" -> "ガスフィルター" [label="In: 37.5/分"] | |
"ゴム" -> "ガスフィルター" [label="In: 15/分"] | |
"布地" -> "ガスフィルター" [label="In: 15/分"] | |
"ガスフィルター" [xlabel="Out: 7.5/分"] | |
"鉄のロッド" -> "有刺鉄筋" [label="In: 15/分"] | |
"有刺鉄筋" [xlabel="Out: 15/分"] | |
"花弁" -> "カラー弾薬" [label="In: 37.5/分"] | |
"カラー弾薬" [xlabel="Out: 75/分"] | |
"ガスフィルター" -> "ヨウ素注入フィルター" [label="In: 3.75/分"] | |
"クイックワイヤー" -> "ヨウ素注入フィルター" [label="In: 30/分"] | |
"アルミ筐体" -> "ヨウ素注入フィルター" [label="In: 3.75/分"] | |
"ヨウ素注入フィルター" [xlabel="Out: 3.75/分"] | |
"鉄鉱石" -> "鉄のインゴット" [label="In: 30/分"] | |
"鉄のインゴット" [xlabel="Out: 30/分"] | |
"銅鉱石" -> "銅のインゴット" [label="In: 30/分"] | |
"銅のインゴット" [xlabel="Out: 30/分"] | |
"鉄鉱石" -> "鋼鉄のインゴット" [label="In: 45/分"] | |
"石炭" -> "鋼鉄のインゴット" [label="In: 45/分"] | |
"鋼鉄のインゴット" [xlabel="Out: 45/分"] | |
"カテリウム鉱石" -> "カテリウムのインゴット" [label="In: 45/分"] | |
"カテリウムのインゴット" [xlabel="Out: 15/分"] | |
"アルミのスクラップ" -> "アルミのインゴット" [label="In: 90/分"] | |
"シリカ" -> "アルミのインゴット" [label="In: 75/分"] | |
"アルミのインゴット" [xlabel="Out: 60/分"] | |
"鉄のインゴット" -> "鉄板" [label="In: 30/分"] | |
"鉄板" [xlabel="Out: 20/分"] | |
"鉄のインゴット" -> "鉄のロッド" [label="In: 15/分"] | |
"鉄のロッド" [xlabel="Out: 15/分"] | |
"鉄のロッド" -> "ネジ" [label="In: 10/分"] | |
"ネジ" [xlabel="Out: 40/分"] | |
"鉄板" -> "強化鉄板" [label="In: 30/分"] | |
"ネジ" -> "強化鉄板" [label="In: 60/分"] | |
"強化鉄板" [xlabel="Out: 5/分"] | |
"強化鉄板" -> "モジュラー・フレーム" [label="In: 3/分"] | |
"鉄のロッド" -> "モジュラー・フレーム" [label="In: 12/分"] | |
"モジュラー・フレーム" [xlabel="Out: 2/分"] | |
"銅のインゴット" -> "銅のシート" [label="In: 20/分"] | |
"銅のシート" [xlabel="Out: 10/分"] | |
"鋼鉄のインゴット" -> "鋼梁" [label="In: 60/分"] | |
"鋼梁" [xlabel="Out: 15/分"] | |
"鋼鉄のインゴット" -> "鋼鉄のパイプ" [label="In: 30/分"] | |
"鋼鉄のパイプ" [xlabel="Out: 20/分"] | |
"鋼梁" -> "コンクリート被覆型鋼梁" [label="In: 24/分"] | |
"コンクリート" -> "コンクリート被覆型鋼梁" [label="In: 30/分"] | |
"コンクリート被覆型鋼梁" [xlabel="Out: 6/分"] | |
"モジュラー・フレーム" -> "ヘビー・モジュラー・フレーム" [label="In: 10/分"] | |
"鋼鉄のパイプ" -> "ヘビー・モジュラー・フレーム" [label="In: 30/分"] | |
"コンクリート被覆型鋼梁" -> "ヘビー・モジュラー・フレーム" [label="In: 10/分"] | |
"ネジ" -> "ヘビー・モジュラー・フレーム" [label="In: 200/分"] | |
"ヘビー・モジュラー・フレーム" [xlabel="Out: 2/分"] | |
"アルミのインゴット" -> "アルクラッド・アルミシート" [label="In: 30/分"] | |
"銅のインゴット" -> "アルクラッド・アルミシート" [label="In: 10/分"] | |
"アルクラッド・アルミシート" [xlabel="Out: 30/分"] | |
"アルミのインゴット" -> "アルミ筐体" [label="In: 90/分"] | |
"アルミ筐体" [xlabel="Out: 60/分"] | |
"銅のインゴット" -> "ワイヤー" [label="In: 15/分"] | |
"ワイヤー" [xlabel="Out: 30/分"] | |
"ワイヤー" -> "ケーブル" [label="In: 60/分"] | |
"ケーブル" [xlabel="Out: 30/分"] | |
"カテリウムのインゴット" -> "クイックワイヤー" [label="In: 12/分"] | |
"クイックワイヤー" [xlabel="Out: 60/分"] | |
"銅のシート" -> "回路基板" [label="In: 15/分"] | |
"プラスチック" -> "回路基板" [label="In: 30/分"] | |
"回路基板" [xlabel="Out: 7.5/分"] | |
"銅のシート" -> "A.I.リミッター" [label="In: 25/分"] | |
"クイックワイヤー" -> "A.I.リミッター" [label="In: 100/分"] | |
"A.I.リミッター" [xlabel="Out: 5/分"] | |
"クイックワイヤー" -> "高速コネクター" [label="In: 210/分"] | |
"ケーブル" -> "高速コネクター" [label="In: 37.5/分"] | |
"回路基板" -> "高速コネクター" [label="In: 3.75/分"] | |
"高速コネクター" [xlabel="Out: 3.75/分"] | |
"鉄のロッド" -> "ローター" [label="In: 20/分"] | |
"ネジ" -> "ローター" [label="In: 100/分"] | |
"ローター" [xlabel="Out: 4/分"] | |
"鋼鉄のパイプ" -> "固定子" [label="In: 15/分"] | |
"ワイヤー" -> "固定子" [label="In: 40/分"] | |
"固定子" [xlabel="Out: 5/分"] | |
"ローター" -> "モーター" [label="In: 10/分"] | |
"固定子" -> "モーター" [label="In: 10/分"] | |
"モーター" [xlabel="Out: 5/分"] | |
"アルクラッド・アルミシート" -> "ヒートシンク" [label="In: 37.5/分"] | |
"銅のシート" -> "ヒートシンク" [label="In: 22.5/分"] | |
"ヒートシンク" [xlabel="Out: 7.5/分"] | |
"冷却システム" -> "ターボ・モーター" [label="In: 7.5/分"] | |
"無線制御ユニット" -> "ターボ・モーター" [label="In: 3.75/分"] | |
"モーター" -> "ターボ・モーター" [label="In: 7.5/分"] | |
"ゴム" -> "ターボ・モーター" [label="In: 45/分"] | |
"ターボ・モーター" [xlabel="Out: 1.875/分"] | |
"水" -> "バッテリー" [label="In: 30㎥/分"] | |
"硫酸" -> "バッテリー" [label="In: 50㎥/分"] | |
"アルミナ溶液" -> "バッテリー" [label="In: 40㎥/分"] | |
"アルミ筐体" -> "バッテリー" [label="In: 20/分"] | |
"バッテリー" [xlabel="Out: 20/分"] | |
"ヘビー・モジュラー・フレーム" -> "溶融モジュラー・フレーム" [label="In: 1.5/分"] | |
"アルミ筐体" -> "溶融モジュラー・フレーム" [label="In: 75/分"] | |
"窒素ガス" -> "溶融モジュラー・フレーム" [label="In: 37.5㎥/分"] | |
"溶融モジュラー・フレーム" [xlabel="Out: 1.5/分"] | |
"ヒートシンク" -> "冷却システム" [label="In: 12/分"] | |
"ゴム" -> "冷却システム" [label="In: 12/分"] | |
"水" -> "冷却システム" [label="In: 30㎥/分"] | |
"窒素ガス" -> "冷却システム" [label="In: 150㎥/分"] | |
"冷却システム" [xlabel="Out: 6/分"] | |
"石英結晶" -> "水晶発振器" [label="In: 18/分"] | |
"ケーブル" -> "水晶発振器" [label="In: 14/分"] | |
"強化鉄板" -> "水晶発振器" [label="In: 2.5/分"] | |
"水晶発振器" [xlabel="Out: 1/分"] | |
"回路基板" -> "コンピューター" [label="In: 25/分"] | |
"ケーブル" -> "コンピューター" [label="In: 22.5/分"] | |
"プラスチック" -> "コンピューター" [label="In: 45/分"] | |
"ネジ" -> "コンピューター" [label="In: 130/分"] | |
"コンピューター" [xlabel="Out: 2.5/分"] | |
"コンピューター" -> "スーパーコンピューター" [label="In: 3.75/分"] | |
"A.I.リミッター" -> "スーパーコンピューター" [label="In: 3.75/分"] | |
"高速コネクター" -> "スーパーコンピューター" [label="In: 5.625/分"] | |
"プラスチック" -> "スーパーコンピューター" [label="In: 52.5/分"] | |
"スーパーコンピューター" [xlabel="Out: 1.875/分"] | |
"アルミ筐体" -> "無線制御ユニット" [label="In: 40/分"] | |
"水晶発振器" -> "無線制御ユニット" [label="In: 1.25/分"] | |
"コンピューター" -> "無線制御ユニット" [label="In: 1.25/分"] | |
"無線制御ユニット" [xlabel="Out: 2.5/分"] | |
"廃重油" -> "プラスチック" [label="In: 10㎥/分"] | |
"原油" -> "プラスチック" [label="In: 30㎥/分"] | |
"プラスチック" [xlabel="Out: 20/分"] | |
"廃重油" -> "ゴム" [label="In: 20㎥/分"] | |
"原油" -> "ゴム" [label="In: 30㎥/分"] | |
"ゴム" [xlabel="Out: 20/分"] | |
"廃重油" -> "石油コークス" [label="In: 40㎥/分"] | |
"石油コークス" [xlabel="Out: 120/分"] | |
"廃重油" -> "代替: 合成樹脂" [label="In: 20㎥/分"] | |
"原油" -> "代替: 合成樹脂" [label="In: 60㎥/分"] | |
"代替: 合成樹脂" [xlabel="Out: 130/分"] | |
"合成樹脂" -> "燃料" [label="In: 30/分"] | |
"原油" -> "燃料" [label="In: 60㎥/分"] | |
"燃料" [xlabel="Out: 40㎥/分"] | |
"燃料" -> "ターボ燃料" [label="In: 22.5㎥/分"] | |
"圧縮石炭" -> "ターボ燃料" [label="In: 15/分"] | |
"ターボ燃料" [xlabel="Out: 18.75㎥/分"] | |
"固体バイオ燃料" -> "液体バイオ燃料" [label="In: 90/分"] | |
"水" -> "液体バイオ燃料" [label="In: 45㎥/分"] | |
"液体バイオ燃料" [xlabel="Out: 60㎥/分"] | |
"水" -> "アルミのスクラップ" [label="In: 120㎥/分"] | |
"アルミナ溶液" -> "アルミのスクラップ" [label="In: 240㎥/分"] | |
"石炭" -> "アルミのスクラップ" [label="In: 120/分"] | |
"アルミのスクラップ" [xlabel="Out: 360/分"] | |
"シリカ" -> "アルミナ溶液" [label="In: 50/分"] | |
"ボーキサイト" -> "アルミナ溶液" [label="In: 120/分"] | |
"水" -> "アルミナ溶液" [label="In: 180㎥/分"] | |
"アルミナ溶液" [xlabel="Out: 120㎥/分"] | |
"硫黄" -> "硫酸" [label="In: 50/分"] | |
"水" -> "硫酸" [label="In: 50㎥/分"] | |
"硫酸" [xlabel="Out: 50㎥/分"] | |
"窒素ガス" -> "硝酸" [label="In: 120㎥/分"] | |
"水" -> "硝酸" [label="In: 30㎥/分"] | |
"鉄板" -> "硝酸" [label="In: 10/分"] | |
"硝酸" [xlabel="Out: 30㎥/分"] | |
"燃料" -> "容器入り燃料" [label="In: 40㎥/分"] | |
"空の容器" -> "容器入り燃料" [label="In: 40/分"] | |
"容器入り燃料" [xlabel="Out: 40/分"] | |
"ターボ燃料" -> "容器入りターボ燃料" [label="In: 20㎥/分"] | |
"空の容器" -> "容器入りターボ燃料" [label="In: 20/分"] | |
"容器入りターボ燃料" [xlabel="Out: 20/分"] | |
"液体バイオ燃料" -> "容器入り液体バイオ燃料" [label="In: 40㎥/分"] | |
"空の容器" -> "容器入り液体バイオ燃料" [label="In: 40/分"] | |
"容器入り液体バイオ燃料" [xlabel="Out: 40/分"] | |
"廃重油" -> "容器入り廃重油" [label="In: 30㎥/分"] | |
"空の容器" -> "容器入り廃重油" [label="In: 30/分"] | |
"容器入り廃重油" [xlabel="Out: 30/分"] | |
"原油" -> "容器入り原油" [label="In: 30㎥/分"] | |
"空の容器" -> "容器入り原油" [label="In: 30/分"] | |
"容器入り原油" [xlabel="Out: 30/分"] | |
"水" -> "容器入り水" [label="In: 60㎥/分"] | |
"空の容器" -> "容器入り水" [label="In: 60/分"] | |
"容器入り水" [xlabel="Out: 60/分"] | |
"硫酸" -> "容器入り硫酸" [label="In: 40㎥/分"] | |
"空の容器" -> "容器入り硫酸" [label="In: 40/分"] | |
"容器入り硫酸" [xlabel="Out: 40/分"] | |
"窒素ガス" -> "容器入り窒素ガス" [label="In: 240㎥/分"] | |
"空の液体タンク" -> "容器入り窒素ガス" [label="In: 60/分"] | |
"容器入り窒素ガス" [xlabel="Out: 60/分"] | |
"硝酸" -> "容器入り硝酸" [label="In: 30㎥/分"] | |
"空の液体タンク" -> "容器入り硝酸" [label="In: 30/分"] | |
"容器入り硝酸" [xlabel="Out: 30/分"] | |
"アルミナ溶液" -> "容器入りアルミナ溶液" [label="In: 120㎥/分"] | |
"空の容器" -> "容器入りアルミナ溶液" [label="In: 120/分"] | |
"容器入りアルミナ溶液" [xlabel="Out: 120/分"] | |
"プラスチック" -> "空の容器" [label="In: 30/分"] | |
"空の容器" [xlabel="Out: 60/分"] | |
"アルミのインゴット" -> "空の液体タンク" [label="In: 60/分"] | |
"空の液体タンク" [xlabel="Out: 60/分"] | |
"溶融モジュラー・フレーム" -> "圧力変換キューブ" [label="In: 1/分"] | |
"無線制御ユニット" -> "圧力変換キューブ" [label="In: 2/分"] | |
"圧力変換キューブ" [xlabel="Out: 1/分"] | |
"固定子" -> "電磁制御棒" [label="In: 6/分"] | |
"A.I.リミッター" -> "電磁制御棒" [label="In: 4/分"] | |
"電磁制御棒" [xlabel="Out: 4/分"] | |
"硫酸" -> "被覆型ウラン・セル" [label="In: 10㎥/分"] | |
"ウラン" -> "被覆型ウラン・セル" [label="In: 50/分"] | |
"コンクリート" -> "被覆型ウラン・セル" [label="In: 15/分"] | |
"硫酸" -> "被覆型ウラン・セル" [label="In: 40㎥/分"] | |
"被覆型ウラン・セル" [xlabel="Out: 25/分"] | |
"被覆型ウラン・セル" -> "ウラン燃料棒" [label="In: 20/分"] | |
"コンクリート被覆型鋼梁" -> "ウラン燃料棒" [label="In: 1.2/分"] | |
"電磁制御棒" -> "ウラン燃料棒" [label="In: 2/分"] | |
"ウラン燃料棒" [xlabel="Out: 0.4/分"] | |
"ウラン燃料棒" -> "原子力発電機 電力生成時" [label="In: 0.2/分"] | |
"水" -> "原子力発電機 電力生成時" [label="In: 300㎥/分"] | |
"原子力発電機 電力生成時" [xlabel="Out: 10/分"] | |
"水" -> "非分裂性ウラン" [label="In: 15㎥/分"] | |
"ウラン廃棄物" -> "非分裂性ウラン" [label="In: 37.5/分"] | |
"シリカ" -> "非分裂性ウラン" [label="In: 25/分"] | |
"硝酸" -> "非分裂性ウラン" [label="In: 15㎥/分"] | |
"硫酸" -> "非分裂性ウラン" [label="In: 15㎥/分"] | |
"非分裂性ウラン" [xlabel="Out: 50/分"] | |
"非分裂性ウラン" -> "プルトニウム・ペレット" [label="In: 100/分"] | |
"ウラン廃棄物" -> "プルトニウム・ペレット" [label="In: 25/分"] | |
"プルトニウム・ペレット" [xlabel="Out: 30/分"] | |
"プルトニウム・ペレット" -> "被覆型プルトニウム・セル" [label="In: 10/分"] | |
"コンクリート" -> "被覆型プルトニウム・セル" [label="In: 20/分"] | |
"被覆型プルトニウム・セル" [xlabel="Out: 5/分"] | |
"被覆型プルトニウム・セル" -> "プルトニウム燃料棒" [label="In: 7.5/分"] | |
"鋼梁" -> "プルトニウム燃料棒" [label="In: 4.5/分"] | |
"電磁制御棒" -> "プルトニウム燃料棒" [label="In: 1.5/分"] | |
"ヒートシンク" -> "プルトニウム燃料棒" [label="In: 2.5/分"] | |
"プルトニウム燃料棒" [xlabel="Out: 0.25/分"] | |
"プルトニウム燃料棒" -> "原子力発電機 電力生成時" [label="In: 0.1/分"] | |
"水" -> "原子力発電機 電力生成時" [label="In: 300㎥/分"] | |
"原子力発電機 電力生成時" [xlabel="Out: 1/分"] | |
"強化鉄板" -> "スマート・プレート" [label="In: 2/分"] | |
"ローター" -> "スマート・プレート" [label="In: 2/分"] | |
"スマート・プレート" [xlabel="Out: 2/分"] | |
"モジュラー・フレーム" -> "多目的フレームワーク" [label="In: 2.5/分"] | |
"鋼梁" -> "多目的フレームワーク" [label="In: 30/分"] | |
"多目的フレームワーク" [xlabel="Out: 5/分"] | |
"固定子" -> "自動ワイヤー" [label="In: 2.5/分"] | |
"ケーブル" -> "自動ワイヤー" [label="In: 50/分"] | |
"自動ワイヤー" [xlabel="Out: 2.5/分"] | |
"モーター" -> "モジュラーエンジン" [label="In: 2/分"] | |
"ゴム" -> "モジュラーエンジン" [label="In: 15/分"] | |
"スマート・プレート" -> "モジュラーエンジン" [label="In: 2/分"] | |
"モジュラーエンジン" [xlabel="Out: 1/分"] | |
"自動ワイヤー" -> "自律制御ユニット" [label="In: 7.5/分"] | |
"回路基板" -> "自律制御ユニット" [label="In: 5/分"] | |
"ヘビー・モジュラー・フレーム" -> "自律制御ユニット" [label="In: 1/分"] | |
"コンピューター" -> "自律制御ユニット" [label="In: 1/分"] | |
"自律制御ユニット" [xlabel="Out: 1/分"] | |
"自律制御ユニット" -> "組立指揮システム" [label="In: 1.5/分"] | |
"スーパーコンピューター" -> "組立指揮システム" [label="In: 0.75/分"] | |
"組立指揮システム" [xlabel="Out: 0.75/分"] | |
"多目的フレームワーク" -> "磁界発生装置" [label="In: 2.5/分"] | |
"電磁制御棒" -> "磁界発生装置" [label="In: 1/分"] | |
"バッテリー" -> "磁界発生装置" [label="In: 5/分"] | |
"磁界発生装置" [xlabel="Out: 1/分"] | |
"モジュラーエンジン" -> "熱推進型ロケット" [label="In: 2.5/分"] | |
"ターボ・モーター" -> "熱推進型ロケット" [label="In: 1/分"] | |
"冷却システム" -> "熱推進型ロケット" [label="In: 3/分"] | |
"溶融モジュラー・フレーム" -> "熱推進型ロケット" [label="In: 1/分"] | |
"熱推進型ロケット" [xlabel="Out: 1/分"] | |
"銅粉" -> "原子核パスタ" [label="In: 100/分"] | |
"圧力変換キューブ" -> "原子核パスタ" [label="In: 0.5/分"] | |
"原子核パスタ" [xlabel="Out: 0.5/分"] | |
"鉄板" -> "ビーコン" [label="In: 22.5/分"] | |
"鉄のロッド" -> "ビーコン" [label="In: 7.5/分"] | |
"ワイヤー" -> "ビーコン" [label="In: 112.5/分"] | |
"ケーブル" -> "ビーコン" [label="In: 15/分"] | |
"ビーコン" [xlabel="Out: 7.5/分"] | |
// recipieGraph end | |
} |
{ | |
const zip = (arr, ...args) => | |
arr.map((value, idx) => [value, ...args.map((arr) => arr[idx])]) | |
const recipieGraph = $$('[rowspan] > a > img') | |
.map((icon) => { | |
const tr = icon.parentNode.parentNode.parentNode | |
const recipieName = tr.innerText.trim() | |
if (/代替: バイオ炭|取り出し/.test(recipieName)) return | |
const nameTr = tr.nextElementSibling | |
const names = [...nameTr.querySelectorAll('a')].map( | |
(elm) => elm.innerText, | |
) | |
const [_, ...data] = names | |
const materials = data.slice(0, -1) | |
const speedsTr = | |
tr.nextElementSibling.nextElementSibling.nextElementSibling | |
if (!speedsTr) return | |
const speeds = [...speedsTr.querySelectorAll('td')].map( | |
(elm) => elm.innerText, | |
) | |
const [recipieSpeed, ...matrialSpeeds] = speeds | |
// 数字がない場合は無視 | |
if (!/\d/.test(speeds)) return | |
const materialText = zip(materials, matrialSpeeds) | |
.map( | |
([name, speed]) => | |
`"${name}" -> "${recipieName}" [label="In: ${speed}"]`, | |
) | |
.join('\n') | |
return `${materialText}\n"${recipieName}" [xlabel="Out: ${recipieSpeed}"]\n` | |
}) | |
.filter(Boolean) | |
.join('\n') | |
.trim() | |
const graph = ` | |
digraph G { | |
graph [pad="0.75", ranksep="0.9", nodesep="1.25"]; | |
"鉄鉱石" [shape = box] | |
"銅鉱石" [shape = box] | |
"石灰岩" [shape = box] | |
"石炭" [shape = box] | |
"カテリウム鉱石" [shape = box] | |
"未加工石英" [shape = box] | |
"硫黄" [shape = box] | |
"ボーキサイト" [shape = box] | |
"ウラン" [shape = box] | |
"原油" [shape = box] | |
"水" [shape = box] | |
"窒素ガス" [shape = box] | |
"葉" [shape = box] | |
"花弁" [shape = box] | |
"菌糸" [shape = box] | |
// recipieGraph start | |
${recipieGraph} | |
// recipieGraph end | |
} | |
` | |
console.log(graph) | |
copy(graph) | |
} |
よく見たら 廃重油 など 2つ生産するものがちゃんと処理できてない、、気が向いたら直す