「Stellaris」開発日記#31――MODについて

stellaris-dd31

発売まで残り2週間となった、パラド社発の宇宙4Xゲーム「Stellaris」の開発日記#31が更新されていましたので、その内容をご紹介。

前回:開発日記#30――ゲーム後半の危機

2016/5/3 #32へのリンクを追加。

スポンサーリンク

概要

開発日記#31は、MODについて。惑星の特徴(anomaly)を例にとって解説されています。

今回の開発日記は「Stellaris」におけるスクリプティングとコンテンツのデザイン担当者によるものです。

  • 「Stellaris」はクラウゼヴィッツエンジンによって作られており、多くの機能をパラド社の他のゲームから輸入している。だが、ゲームスタート時にはランダムな銀河を生成する(MODで固定するのでなければ)ため、あらかじめ決まっているヨーロッパのマップを使うゲームとはアプローチを少し変える必要があった。パラド社開発スタジオのタイトルでMODを作ってきた人たちからすると少し驚くかもしれないが、すぐに居心地のよさを感じることができるだろう。

MOD一般について

  • パラド社の他のゲームと同じく、「Stellaris」も多くの部分でMODに対応している。
  • /stellaris/commonフォルダを見てみてほしい。ここにゲームの機能を決めているもののほとんどすべてが入っている。布告(edicts)、精神性(ethics)、ゲームルール、軍の装備、名前リスト、国家のタイプ、惑星のクラス、修正、建造物などがすべて見つけられるだろう。
  • /stellaris/common/definesフォルダには、中核惑星の数のソフトキャップ(CORE_SECTOR_PLANET_CAP = 5)や、カメラの視野角(NCamera = { FOV = 35 })のような、ゲームの振る舞いや設定の多くを決めているLUAスクリプトファイルが入っており、簡単に変更することができる。また、ほとんどの値はコメントで解説されている。

スクリプトされたトリガーと効果、連鎖したイベントターゲット

  • これに関しては、HoI4のスクリプトされたトリガーと効果を引き継いでいる。だが、「Stellaris」独自のスクリプト言語を追加しており、これは将来的には他のゲームのイベントターゲットの連鎖にも使われるかもしれない。これによって、ローカライゼーションと異ならない形で、ターゲット・スコープ・保存されたイベントターゲットを連鎖させることができる。(?)

以下はスクリプトの書き方についての解説ですので割愛します。

質疑応答

Q1:ローカライゼーションに新しい言語を追加することはできる?

A1:不可能ではない。

これはどうやら日本語化を目指すMOD製作者からの質問だったようで、この後ほかの投稿者から「eu4.exeみたいにマルチバイト文字に対応してない場合には無理じゃない?」という投稿があり、HoI4はUTF-8で作られているという話や、EU4に非公式の中国語版exeがあるという話などが話題に上っています。


来週は、ゲーム中のアートについて。

次回:開発日記#32