Loading Order Modのすゝめ

CSL
【MOD紹介】Load Order Toolのすゝめ | Cities:Skylines 街づくりコンテスト
MOD「Load Order Mod」に内包されたプログラムファイル「Load Order Tool」はMODプレイヤーにとって無限の可能性を秘めた存在だ。 Windows OSの民はツールをうまく使いこなし、いつものマップも、普段とは違う...

2023/04/30追記:CSLビルダーズコンテストにてコラムを公開しました。「Load Order Mod 2」に関する記述もありますから、是非こちらをご覧ください。

前説

まず、MOD・アセットを沢山使っているプレイヤーの皆様へ。

必ずこれを導入しなさい。

まさかこんなに素晴らしいMODを導入してないとか、言わないですよね?

記事中に分からない単語があればコチラに乗っているかもしれません

先日、2022年1月25日に、新DLC「Airports」並びに、新CCP「Vehicle of the world」「Map pack」がリリースされ、無料アップデートが実施されましたね。

3つのダウンロードパックに共通して言えることですが、今回追加されたほとんどの外形や仕組みは、MOD・カスタムアセット・カスタムマップによって、既にPC版では実現されている機能でした。

そのため、以下に示す私が行ったYoutube動画・配信においても「今回のDLC/CCPはコンソール版に対するテコ入れの意味が大きい」旨を発信しています。

さて、そんなコンソール版プレイヤーの皆様におかれましては嬉しい嬉しい内容追加だと思われますが、PC版プレイヤー、ひいてはMODをゴリゴリに使われる皆様におかれましては、そうではない感情をお持ちの方もいらっしゃるのではないでしょうか?

DLC/CCP/無料アップデート時に度々問題になるのが、各種MODの不具合です。

現に今回も様々なMODが不具合がでました。

81Tilesなどのアプデ不具合皆勤組はもちろん、道路や飛行機の挙動が変更されたことから、TM:PEやSVS2、IPT2、TLMなどの車両制御系のMODも大きな打撃を受けたようです。

また今回追加された滑走路もMODに対して影響を与えているようで、Network SkinsやPickerについても問題が起きたようです。

なお上記のMODに関しては、どれも既に修正が完了しており、現在は問題が解消しています。

しかし、更新から5日経っても更新されないMODもあります。

それが「Loading Screen Mod(LSM)」です。

【MOD使い方紹介】Loading Screen Modのすゝめ | Cities:Skylines 街づくりコンテスト
あなたがCities:Skylinesのセーブデータを読み込んでプレイ画面に到達するまで、時間はどれぐらい掛かりますか? 本コラムでは、PC版Cities:Skylinesにカスタムアセットを導入した環境でセーブの読み込みを手助けするMOD...

Loading Screen Modは、サブスクライブ数90万を超える、ロードを司る神MODです。

このMODの凄さについては、以前CSLビルダーズコンテスト様に寄稿した「【MOD使い方紹介】Loading Screen Modのすゝめ」でも解説した通りです。

しかし作者のThale5氏がBeta版すらも更新してくれません。
(これは噂レベルですが、そもそも彼がオンラインになってすらないのだとか)

このようなMODの不具合が生じたときに、MODの恩恵を受けるだけの我々は何もすることができないのでしょうか。

我々はMODが更新されるその日まで、自分のセーブデータに触れることすらできないのでしょうか。

今回紹介するMOD「Loading Order Mod(LOM)」は、もしかするとこのDLC恒例の不具合問題への一ユーザー単位での対処法を与えてくれているMODかもしれません。あくまで上記の前説はLOMの一機能に過ぎませんが、LOMがLSMとは全く違うアプローチでロード時間を軽減する可能性がある、ということに注視していきたいと思います。

例によって、MODの導入はくれぐれも自己責任でお願いしたします。

シティーズが抱える課題:コンテンツマネージャーが使いづらい

MODアセットゴリゴリのシティーズをプレイする上での最大の課題は、ロード時間の長さと、要求するマシンスペックのべらぼうな高さです。

当然のことながら、アセットやMODが多い方がロード時間は長くなります。

よってアセットやMODは、少なければ少ない程ロード時間が短くて良いことになります。

そこで、要らないアセットやMODのサブスクライブを解除したり、アセットパックの自分の用途では要らないアセットをコンテンツマネージャーからオフしたりするかと思います。

で、一度でもコンテンツマネージャーからアセットやMODをオフしたりアンサブスクライブしたことがある方ならお分かりかと思いますが、このコンテンツマネージャーが残念なことに使いづらい

これは「Improved Content Manager」を導入したコンテンツマネージャーの例です。

MOD「Improved Content Manager」を導入したコンテンツマネージャー画面。

…どう???

これはもしかしなくても、MODやアセットを数千、数万に至るまでサブスクライブすることを想定していないのだろうな、と思わせるような画面作りになのではないでしょうか。

一度にオンオフが切り替えられるアセット・MODは3つ、せいぜい4つぐらいですからね。

もちろん、コンテンツマネージャーの画面タブのサイズを変えたり縮小することはできません。

頑張ってください。

Workshopを押すと、cities.exe内の謎のブラウザで開く形になるし、結構ラグいしで。

これすらラグいのであればなお、サブスクライブ・アンサブスクライブをしたり、×を押してアンサブスクライブした時には、言うまでもありませんね。

Improved Content Managerのおかげでプロップ・樹木…など種類別である程度まで絞り込んでから検索できるからいいものの、バニラのことは想像したくありません。

バニラ状態のコンテンツマネージャーの画面。

これを多少緩和してくれるのが後述する「Load Order Tool」のすばらしさかなと思います。

LOMが特異なMODである理由

Loading Order Modは、Kian.zarrin氏によって2021年4月にリリースされたMODです。

Kian.zarrin氏は、ModTools,TM:PE,Harmony,NSなどの開発に携わり、彼自身も、Hide TM:PE Unconnected Tracksや、Node Controller(オリジナル)をリリースするなど、著名なModderです。

それもあって、筆者は「そんな彼がリリースされるMODなんだ、きっと素晴らしいものなのだろう」と登場から間もなくサブスクライブしてみたのですが、ファイルの中身を見て本当に驚かされました。

中にエグゼファイルが付属していたのです。簡単に説明します。

我々がよく目にするシティーズのMODの拡張子は「.dll」であることがほとんどです。

DLLとは「アプリケーション拡張」のことで、これ単体で機能することはなく、アプリケーション上でアプリケーションに呼び出される形で使われるファイルのことです。

今回でいうと「cities.exe」というアプリケーションの拡張ファイルとして、例えばMOD 「Harmony 2」なら、「CitiesHarmony.dll」をはじめとするDLLファイルが呼び出されることになります。

MOD「Harmony 2」のファイル(ID=2040656402)。

ところがLOMには、珍しいことにアプリケーション、つまりエグゼファイルが付属しているのです。

ツールアプリ「LoadOrderTool.exe」がLOMの肝になってくるわけです。

そのため、シティーズを起動することなく、LOM単体で機能を発揮することができます。

先に言っておくと、このツールを起動しながらシティーズを起動すべきではありません。またシティーズを起動しながらこのツールの操作を行うことは絶対に避けるべきでしょう。

このような当たりからも、このMODが普通のMODとは違うということがわかることでしょう。

LOM(Load Order Tool)の使い方

実践を見ていただくのが早いと思いますので、配信にまとめました。是非ご覧ください。

MODのロード順序を変更する

MODを複数導入していると、ロード順序によって、ロード時間に差が起きる可能性があります。

読み込んだMODに前提MODがある場合、今の読み込み順を変更して、先にその前提MODを読もうとするからですね。

よって、前提MODがあるMODをサブスクライブしている場合には、前提となるMOD→前提MODがあるMODの順に読み込み順序を決定することが望ましいと言えます。

其のうえで、MOD「Harmony 2」が一番最初に読まれることで、読み込み処理を軽減することを目的に開発されたと思われます。

画面左上のOrderのタブから自動でオーダーを付けられます。Harmonyにしておけば基本OKです。

アセット・MODのオンオフ機能・優秀な検索機能

これは高度なコンテンツマネージャー機能と言ってもいいでしょう。

検索の際にアセット名やアセット作者だけでなく、アセットの属性から絞り込みをかけられるのが非常に優秀です。

そして、アセットの可読性の高さも評価に値します。

リスト形式な上に、先の説明の通りcities.exe上でタブを開いて…なんてことはしてないので、タブを無限に縦に伸ばして一度の画面で一気に変更できてしまいますよね。

IDのあからさまにリンクの部分を踏むと、既定のブラウザで展開してくれます。アプリ内部でブラウザを開いて、みたく当然ツールそのもののリソースを食っている訳ではないので、高速な処理ができること請け合いです。

でも確かに、PCのスペックが十分以上あれば、この仕様の方が都合がいいですよね。

そして、アセット・MODのオンオフに関しては、さらに高速で軽量な処理を実現しています。

C:\Program Files\steam\steamapps\workshop\content\255710には、サブスクライブしたMOD・カスタムアセットが格納される。

画像の通り、ワークショップからサブスクライブしたアセット・MODのうち、いくつかのファイルの数字の前に「_(アンダーバー)」が付いているファイルがあるのがお分かりでしょうか。

実はこれ「アンダーバーが付いているファイルは読み込まない」取り決めをしているんですね。

これによって、アセットの先頭にアンダーバーを付ける/外すによって、サブスクライブしたアイテムをロードしないことができるというわけです。

バニラのサブスクライブ/アンサブスクライブ処理では、アセットをダウンロードする/アセットを消去する処理を実施するので、LAN回線とストレージへの大きな書き込みが発生します。

しかしこの方法なら、LAN回線はもちろん使わず、ストレージへの書き込みもほとんど行いません。

そのため、アセットの数が数千~一万数千であっても、対したラグも発生せずにアセットのオンオフ、ひいては実質的なサブスクライブ/アンサブスクライブが一瞬でできるわけです。

たしかにLoad Order Toolに画像表示やアセット・MOD共有機能はないので、コンテンツマネージャーの機能を全て補っている訳ではありませんが、とはいえ、機能を制限することでより高速な処理を可能にしていると解釈すればよいと思います。使い分けてください。

プロファイル設定の読み込み・書き出し

このMODの神髄はここにあります。

今のMOD・アセットのオンオフ・サブスクライブ/アンサブスクライブの状態を書き出す/読み込むことができます。

「AssetCustom」「cslcontest6」「Takahama」「Vanilla」、これらは保存ファイルの名前なのですが、お気づきでしょうか。

つまるところ、用途によってアセット・MODを組み替えるプレイスタイルを展開することができます。

バニラプレイならアセットやMODは全く要りませんので、MODやアセットが無い構成を。

アセット制作ならアセットやMODはほぼ要りませんので、MODやアセットが少ない構成を。

街の開発ならアセットやMODが多数必要になるので、MODやアセットがモリモリな構成を作れます。

CSLコンテストと通常の開発で必要なアセットのほとんどは同じで、一部だけMODやアセットの構成が違う場合にも、一瞬でアセットを整えることができます。

神ですね。

ただし、構成の構築には、アセットやMODの名前・作者・前提MODなどを全て把握している必要があるので、会得には時間がかかってしまうのが(コンテンツマネージャーから引き続き)ネックになってくるのかもしれませんね。

DLCのオンオフなど、その他

実はMOD・アセットのオンオフ同様に、DLCについてもオンオフすることができます。

これによって、仮にDLCによって非互換性が生じている場合には、これをオフにすることで互換性の問題を根本から消し去ることもできます。

あ、ちなみに今回のLSMの非互換性に関しては、無料アップデートとの非互換性があるので、AirportsなどDLC/CCPを外してもLSMは機能しないんですけどね()

他にもLSMとの親和性のある機能や読み込み設定などもできるので、やっぱりくそ便利です。

終わりに

このMOD入れてない民は全員入れておくべきとすら思います。

アセットやMODの数を減らせばロード時間は早くなる。当然のことですが、それを実現させるための技術としてこれを会得してみてもいいのではないでしょうか。

コメント

タイトルとURLをコピーしました