ちがさねMOD倉庫

PCゲーム関係、主に「Kenshi」のブログです。モッダーなので解析的なデータを多く扱います。

Chigasane’s Note

※この記事のタイトルはKenshiの開発会社、Lo-Fi GamesのコミュニティモデレーターであるShidan氏が執筆した「Shidan's Notes」のパクリです。本家の方が数倍内容が濃いので、まずはそちらをご覧下さい。

この記事では私がTwitterで呟いたり動画で触れたちょっとしたKenshiの検証やFCSの仕様などをまとめています。

どこで書いたか忘れないようにする自分用の覚え書き的な側面もあるので若干分かりにくい表現もあるかもしれません。説明が不十分な箇所があれば、コメント頂ければ必要な加筆・修正をいたします。

 

Kenshi検証関連

サザンハイブの入手法

大前提として、バニラで南東の「サザンハイブ」派閥に所属するサザンハイブのキャラクターを仲間にすることは不可能です。プリンスとドローンガードはステータスが高く、仲間になるリミッターを超えています。ワーカーはステータスが低いものの奴隷化→奴隷解放(or購入)をすると専用ダイアログが発生し、「巣に帰らなくては!」的なことを叫びながらどこかへ走り去ります。

また、サザンハイブはスケルトンと違い町中の住人等の種族として使われることがありません。これ以外でサザンハイブが出現する唯一の場所が都市連合領の奴隷なので、ここに出現したものを開放して仲間にするしかありません。(HNの奴隷としては出現しない。)

筆者の体感ですが、出現確率は都市連合領の奴隷屋を全部回って大体1~2人見つかる位です。

これ以上入手したいなら、HNを攻めて街を奴隷商に乗っ取らせ、そこに新しい奴隷屋を置かせるというのも有効です。具体的な勢力変化の条件は適当に日本語wikiなどを参照されたし。
同様に、デッドキャットの漁村とカルト村も一定条件下で奴隷商の所属となりますが、これにはティンフィストの殺害・収監が必要となり難易度は高いです。逆にティンフィストを生かしておいて都市連合を攻め、街を半壊状態にオーバーライドさせることで奴隷屋の奴隷入荷状況をリセットさせるというのもアリかもしれないですね。
また、都市連合領を徘徊するノーブルハンターは1~3人の奴隷を連れていますが、この中にサザンハイブが混じっていることがあります。徘徊部隊は無限湧きするので、原理的にはここで無限にサザンハイブを仲間にすることができます。ただし、出現確率はおよそ0.34%(一部隊につき)。無限にサザンハイブを仲間にできる唯一の手段ではありますが、あまりにも現実的ではありません。
なお、奴隷の入荷状況はインポートでリセットできます。個人のプレイスタイルにもよりますが、これを使うのはかなり効果的です。

奴隷店でのサザンハイブ入手確率

任意の奴隷店に入って、そこにレア種族がいる確率
サザンハイブ=0.95%
ケルトン=出現しない
計算式

奴隷の出現システムは種族のムラを無くすためにとても複雑になっています。奴隷にどの種族が・どんな確率で適用されるかというリストは「choosefrom list」というアイテムでまとめられているのですが、この「choosefrom list」は複数存在し、どの奴隷にどの「choosefrom list」が適用されるかの確率がまた別に設定されています。

さて、奴隷店の奴隷には6つの「choosefrom list」が設定されており、レア種族が含まれている「choosefrom list」を引き当てないと奴隷はその種族で出現してくれません。
6つのリストをA、B、C、D、E、F(全て仮称)と名付けると、それぞれの適用される確率は以下の通りです。
・リストA、20/125(16%)
・リストB、15/125(12%)
・リストC、50/125(40%)、※このリストでサザンハイブは出現しない
・リストD、20/125(16%)、※このリストでサザンハイブは出現しない
・リストE、15/125(12%)、※このリストでサザンハイブは出現しない
・リストF、5/125(4%)
そして、サザンハイブ3種のいずれかが登録されているリストA、B、Fにおいてサザンハイブが適用される確率は以下の通りです。
・リストA、5/1935(0.26%)
・リストB、5/435(1.15%)
・リストF、5/1935(0.26%)
データをまとめると、リストA、B、Fのいずれか適用されその中からサザンハイブが適用される確率は以下の通りです。
20/125x5/1935+15/125x5/435+5/125x5/1935=0.00189610621

だいたい0.19%くらいになるということですね。そして、1つの奴隷店には3~7体の奴隷が出現します。平均は5体なので、1つの店舗にサザンハイブが出現する確率は0.95%という事がわかりました。

ちなみにリバース、採掘場などのホーリーネーション関連の奴隷にスケルトン、サザンハイブは出現しません。

この勢力名はすでに存在しています

プレイヤー派閥の勢力の名前をすでに存在する勢力の名前に変更しようとすると、「その勢力名はすでに存在しています」という特殊なダイアログが発生し、名前の変更ができません。Kenshiではキャラクターのデータが分隊ごとに保存されるのですが、保存先のファイル名に所属勢力の名前が使われるため、同じ名前の勢力が複数あるとデータの保存に異常が起こってしまいます。

店売りの武器、防具、義肢のレアリティ

店売りの武器の等級は、その店で販売されている商品のリスト内で管理されています。なので、店の種類が同じであれば違う町の店でも出てくる等級の分布は同じです。

一方、店売りの防具と技師の等級はその店の所属する勢力の設定の中で管理されています。店の種類が違っても、所属する派閥が同じであれば等級の分布は同じになります。
例えば、スケルトンの派閥に所属するアーマーキングの店は高い等級の防具を販売していますが、都市連合の街にある技師店もスケルトンの所属になっており、同じ等級の分布でレアな技師が販売されています。

なお、豆知識ですが傑作等級の防具が継続的に販売される防具店はスケルトン所属以外に存在しません。熟練等級の防具であればモングレル、テクハン、シェク王国、シノビ盗賊団、都市連合で販売されています。(HNでの販売は最高品質等級まで)この中でも特にモングレルでは熟練等級の出現確率が高く、8%ほどの確率で出現します

FCS関連

都市・勢力関連

アーティファクトは勢力変化後の街には出現しない

アーティファクトシステム(詳細はここで解説中)によってアイテムが配置される場所はワールド生成時に決定されるようで、ワールド生成後にoverrideによって新規出現した店などにアーティファクトは生成されない。
NPCの生存状況を引き継いでインポートすると、アーティファクト設定次第では生成されることがある。

私は12勢力MODで復興後の町の店にランダムにレアアイテムを配置したかったので、「疑似アーティファクト」というシステムを作ったりした。詳細は下の章へ......

疑似アーティファクト

お店などのsquadデータにhousemateで無人のsquadを登録し、無人のsquadにspecial itemでAIコアなどのレアアイテムを設定します。
special itemで店に配置されるアイテムは再入荷されないのでアーティファクトと似たような仕様になります。また、special itemが設定されたsquadをhousemateに登録する部分で出現確率を制御できるので、「一度しか入荷しないレアアイテムが一定確率で出現する」ようなお店が作れます。

実際の運用例がこちらです。

val0が最小値、val1が最大値です。このお店にはAIコアが平均0.25個出現し、青本と赤本が平均1個出現します。
なんでそうなるのか分かりにくいですよね......

この図のAIコアの設定ではお店に|-2,-1,0,1|個という4通りの個数が出現します。このうちマイナスの値が選ばれるとお店にAIコアが生成されないので、4回に1回で1個のAIコアが出現します。一か所当たり0.25個ですね。
青音赤本は|-2,-1,0,1,2,3|個という6通りの個数で出現します。このうちマイナスの値が選ばれると本は生成されないので、実質|0,0,0,1,2,3|個となり、平均をとると一か所当たり1個出現することになります。(確定で一個出現するよりも、あんまり出ないけど出るときはいっぱい出る仕組みの方が楽しいんじゃないかなと個人的に思っています。)

その他

・開発者モードで街を追加したり位置を変更したりした編集内容は、一度ゲームを再起動しないと正常に反映されない。

 

その他

サブスクライブ中MODとローカル化したMODの2者はどちらが優先されるのか

検証結果

・Steam WorkshopからサブスクライブしたMODとそのバックアップなど、同一の名前のMODが二つ以上存在する場合、そのうち一つでもオンにしているとローカルのMODだけが適用される。
(Steam Workshopに同名MOD二つ用意してローカルからMOD消したらどうなる?)
・同一IDのMODでもその名称が異なる場合は同時に読み込ませることが可能。

検証内容

放浪者スタート時の説明文が「ワークショップ。」となるMODを製作し、そのMODをWorkshopにアップロードしてサブスクライブしてダウンロードする。その後ローカルフォルダーに残っている方の同盟MODをFCSで開き、変更点を全てリセットしてさすらう商人スタートの説明文が「ローカル」となるMODを製作した。どちらもMOD名は「CL test」であり、SteamのIDは同じである。
この状態でKenshiを開くと最初のウィンドウのMODの並び順とオンオフを出来るタブでは「CL test」という名前のMODが一つだけ表示された。これをオンにしてゲームを始めると「ローカル」の変更点のみが反映された。

続いて、Kenshi MOD Manegerで現在のMODのオンオフ状況を確認すると、表示は以下のようになっていて、両方のMODがサブスクライブされている状態だった。

このままMOD Manegerの機能でプロファイルを作成。そのCFGファイルの中身では両方のMODが記載されていたが、そのように区別されているのかは謎だった。

MOD Manegerを再起動し、このプロファイルを読み込ませると先ほどと状況が変化し、ワークショップ版のMODだけがオンになっていた。しかも、このMOD環境をKenshiに適用させてゲームを起動するとローカル版の変更点だけが反映されていた。
どうやらCFGファイルにした時点でローカル版とワークショップ版の区別がつかなくなり、ローカル版だけが適用されるようだ。

この仮説的には二つのMODが同一IDなことではなく、同一の名称であることが原因となっているはずなので、最後にローカル版のMODを削除し、完全な別IDの「CL test」を作り、二つ同時に導入してみることにした。
ゲームを起動すると二つのMODのIDは違うはずなのにローカル版の方しか適用されなかった。やはりIDは関係ないようで、重要なのはMODの名前のようだ。
確かにFCS講座でもMOD名は絶対に被らせるなというようなことを言われた気がする......

FCSとKenshiを同時に起動する

FCSを起動するとき、ほとんどの人はSteamのライブラリから「Moddingg toolを起動」のボタンを押していると思います。
この方法だとFCSを起動している間はKenshiを起動している扱いになるのでKenshiをプレイすることはできません。

しかし、Kenshiのローカルフォルダ内にある「forgotten construction set.exe」を直接クリックすることで、Steamに接続せずにFCSを開くことができます。
この方法だとFCSをKenshiと同時に起動することが可能で、FCSのウィンドウを複数同時に開くといったことも可能になります。

同様の方法で「kenshi_x64.exe」をクリックして、Steamに接続せずにKenshiをプレイすることも可能です。しかしこの方法でKenshiを起動するとローカライズしか読み込まれず、起動した瞬間にローカライズしていないMODのチェックが外れて無効化されてしまいます。
この場合もKenshiを複数のウィンドウで同時に起動することが可能です。

注意点として、この方法でFCSを起動させたときはSteamに接続されていないので、ワークショップへのMODのアップロードができません。
また、起動中はSteamライブラリで表示されるKenshiのプレイ時間がカウントされません。友達に自慢できなくなるので注意しましょう。

(追記:アップデートで仕様が変わりました)
2024年2月のアップデートで仕様が変わり、SteamのライブラリFCSとKenshiのいずれかを起動しているとき、ローカルからFCS又はKenshiを起動することができなくなりました。

しかし、FCSとKenshiを両方ローカルで起動させることは依然として可能になっており、アップデートにより
・ローカルでFCSおよびKenshiを起動中でもsteamのプレイ時間が記録される。
・ローカルでKenshiを起動してもsteamでサブスクライブ中のMODが正常に読み込まれる。
という仕様に代わりました。

そのため「FCSとKenshiを両方ローカルで起動させる」という動作を行えば、これまでと全く同じように同時起動ができます。