2024/9/30まで、全画面広告のテスト中。邪魔だったらごめんなさい。

MODによるコード改造

Cities: Skylines II (以下 “CSL2”) では、ゲームを改造し、自分だけの都市システムで世界で一つだけの街を作ることができます。

「ゲームの改造」と聞くと良くない印象を持たれている方がいらっしゃると思いますが、CSL2は公式で改造OKです! むしろ、大歓迎のスタイルです!

スポンサーリンク

コードの改造でできること

ゲームを改造することで、できることは様々あります。

例えば、現実世界をとても忠実に再現すること。CSL2デフォルトの経済を使用せず、現実世界の経済を忠実に再現したコードを適用させることで、都市の資金の流れがより現実世界に近づきます。

交通機関を超厳格に管理することもできます。CSL2では朝も夜も同じ本数のバスが走りますが、バスを走らせる量を1時間単位で管理できるコードを適用させることで、ラッシュとデータイムの運用を忠実に再現することができます。

ゲームのデフォルトでは全プレイヤーの理想を叶えることが不可能なので、有志が作った改造コードにより、一人一人に合ったゲーム性で街づくりをすることができるようになります

スポンサーリンク

MODについて

以上のような、PCゲームにおける改造データのことを指します MOD と言います。

“mod” と小文字表記をする場合があります。これは、日本と中国以外では小文字表記が主流だからです。

スポンサーリンク

CSL2のMODについて

別記事で説明している通り、CSL2のMODは “Paradox mods” というツールを使用します。前作CSLでは “Steam WorkShop” を使用していました。Paradox mods の使用により、PC版だけでなく、コンソール版でも同じMODを使用することができます。

CSL2では簡単にMODをサポートするために、ボタン1つでMOD作成に必要な依存関係、Unityエンジン、Burstコンパイラ、ESCなどの外部ツールがインストールされます。

MODによっては他のMODが存在することが前提で動くものがあります。そのMODの依存会計や要件が更新された場合は、CSL2を起動した際にすぐに教えてくれます。

UIは Microsoft の Visual Studio のようなものです。Riderも使えます。必要な依存関係やパス、ビルド後のアクションが全て設定されているので、必要なコードを書いて「ビルド」ボタンを押したら、コンパイルをし、MODを構成、正しいフォルダへの配置などを全部やってくれます。

MODが完成したら、必要な設置をして Paradox Mods に公開しましょう。

スポンサーリンク

MODの最適化

CSL2は、Unityエンジンの新技術によって、計算速度を最大30~40倍向上させています。ですので、それに合うMODを作るのは、多少の勉強が必要です。

なお、MODの最適化を支援するたえに、ゲーム内のバーストコンパイルと低レベルの最適化を行うためのMODホストプロセッサが提供されています。ただし、これを使うかはケースバイケースです。MODによっては使わないほうが良い場合があります。

スポンサーリンク

MODの互換性

MODが壊れる理由

互換性の話の前に、そもそも、なぜMODが壊れるのか説明します。

理由は、CSL2そのものの仕様変更です。仕様変更でプログラム的な要素が変更されるます。MODはCSL2のプログラム的な要素を参照して作られますので、CSL2の仕様変更によってはMODが壊れてしまいます。

プログラム的な要素という言葉で大雑把にまとめましたが、プログラムに詳しい方向けに説明すると、クラスやメソッドパラメータ、フィールドなどが対象です。

なお、CSL2そのものの仕様変更は公式のもので、MODは有志のものですので、MODが壊れることに文句を言ってはいけません。

CSL2におけるMODの互換性

CSL2はMODへのサポートが意欲的です。CSL2でMODがゲームと同じ方法で新しい機能を導入する場合、独自のシステムを作成し、更新ループに登録するだけです。CSL2では、MODから特別な属性でマークしたプロパティを取得し、それらをゲームに反映させます。

MODが別のMODに依存する場合、CSL2では、MODの依存関係を解決します。また、MODを読み込む順番を考慮する必要がなくなります。

スポンサーリンク

リンク集

公式ページ

コメント

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