更新履歴
- 2024/11/18 (未リリース)
- TAWOBAのサルモールのローブがCTDの原因になっているような気がするので、抽選から除外しました。
- 2024/10/27
- 下着の上を着る機能を追加しました。
- 死体も着替えの対象にしました。
- 家具を使用中のActorは、可能であれば使うのをやめさせてから着替えさせ、やめさせられないようであれば着替えさせないようにしました。
- 2024/9/15
- ドラウグルとドゥーマーの機械がカジュアル装備をドロップしない不具合を修正しました。
- MCMから任意のカジュアル装備を入手する機能を追加しました。
- スペルの配布をSPIDを使う方式に変更しました。
- 戦闘装備にカジュアル装備を組み合わせる機能を追加しました。
- ロアフレンドリ機能が有効の場合、TEWOBAの帝国軍ビキニは帝国軍兵士のみが着用します。
- Stormcloaks Bikini armor 3BA HDT-SMP – Tawoba Standalone add-onに対応しました。
- Dawnguard Bikini armor 3BA HDT-SMP – Tawoba Standalone Add-onに対応しました。
- 2024/4/15
- Additional Encountersで追加の強力な敵が出現した際にWardrobeを再抽選するようにしました。
- [Caenarvon] Cosplay Packにおいて体操着の上が出現しない不具合を修正しました。
- 2024/3/25
- MAGECORE – hdt SMP (CBBE 3BA)に対応しました。
- 魔法使いにNONE(装備を変更しない割合)を設定できるようにしました。
- ロアフレンドリ機能を追加しました。
- TEWOBAにおいて一部の防具が出現しない不具合を修正しました。
- 2024/3/7
- [COCO] Shadow Assassin – CBBE-TBD-BHUNP SEに対応しました。
- Cassandra Frost Witch CBBEに対応しました。LADXもインストールされている場合は相互に代替処理が行われます。
- FormListを使って判定を行う仕組みを廃止し、SPIDでFactionやKeywordを付与しておき判定する仕組みに置き換えました。
- ニューゲーム時の宝箱の設定を分離しました。
- 2024/2/26
- Cold Region Behaviorの防寒着がOutfitに登録されてしまい、屋内で防寒着を脱がなくなってしまう不具合を修正しました。
- セラーナのフードがOutfitに登録されてしまい、屋内でフードを脱がなくなってしまう不具合を修正しました。
- Outfitに下着が多重に登録される不具合を修正しました。
- 屋外のWardrobeに対応しました。
- 2024/2/10
- ニューゲーム後の確定宝箱で、カジュアル装備の抽選にNONE(装備を変更しない割合)が含まれてしまい、宝箱が出現しないことがある不具合を修正しました。
- カジュアル装備のNPCへの配布とWardrobeへの配布を選べるようにしました。
- 2023/12/29
- [Caenarvon] Cosplay Pack Casualに対応しました。
- [Caenarvon] Cosplay Pack – hdt SMP (CBBE 3BA) 1.3からメイド服を追加しました。
- 2023/9/15
- カジュアル装備に職業検査を追加しました。
- [Caenarvon] Cosplay Pack – hdt SMP (CBBE 3BA) 1.2に対応しました。まだ一部の装備だけです。
- [Caenarvon] Cosplay Pack Swimmerに対応しました。
- [Caenarvon] Cosplay Pack School Daysに対応しました。
- ニューゲーム後のヘルゲン砦において、Wardrobeの設定が有効な場合はカジュアル装備の入った宝箱を設置するようにしました。
- ニューゲーム後のヘルゲン砦における宝箱の配置は、プレイヤーの目の前に配置するようにしました。
- 2023/7/1
- ニューゲーム直後は省エネモードで動作するように変更しました。これまではセルが切り替わるまで動作しないようになっていました。これによってヘルゲンの兵士の防具が変更されるようになります。
- 死体が下着をつけないことがある不具合を修正しました。
- 服をリプレースする機能を追加しました。
- 2023/6/12
- Silver Handsのレベルを半分扱いにしました。同胞団のクエストで楽に攻略できる割に、彼らの持つ装備品が豪華過ぎてバランスが崩れるためです。主にRequiem環境で顕著になります。
- 2023/4/23
- 動作を変更するためのキーワードを追加しました。
- 2023/4/18
- MCMを整理しました。戦闘用装備とカジュアル装備、NPCと宝箱で設定を切り替えられるようにしました。
- 動作を変更するためのキーワードを用意しました。
- 宝箱の配置処理を調整しました。
これより古い履歴はEnemy Equipmentの更新履歴にあります。
おことわり
Immersive Armorsは独自の配布システムを持っており、本Modと機能がぶつかります。NPCを着替えさせ合っておかしなことになるので、Immersive Armors側の配布機能をオフにするか、SSEEditを使って防具に関係のないレコードを削除することをオススメします。
[Caenarvon] Cosplay Pack – hdt SMP (CBBE 3BA)は現在SportsとBunnyのみ対応しています。
必要な環境
- SKSE64
- SkyUI
- PapyrusUtil SE
- powerofthree’s Papyrus Extender for SSE
- 装備Mod(MCMを見てください)
概要
Modで装備をいろいろ追加しても、そのままではNPCが着てくれません。Leveled Listに追加すればとりあえずは着てくれるようになります。でも、ModでNPCが追加されたり装備が追加されるたびにLeveled Listを修正していくのは面倒です。
そこで、サポートされている装備Modを自動的に検出し、スクリプトを使って周りのNPCに動的に配布するModを作ってみました。
このModのコンセプトはEnemy Equipment Overhaulと同じです。私もLEではEnemy Equipment Overhaulを使っていました。Enemy Equipment OverhaulはSKSE用のDLLプラグインなので高速に動作します。espに含まれる装備を認識してNPCに追加するので、ものすごく楽です。少し問題もあって、装備がたまに統一性がなかったり、性別がおかしかったりすることもありました。全自動で処理させる分、装備側が想定したデータになっていないとうまくいかないようです。それでもLeveled Listのメンテナンスから開放されるのは素晴らしく、お世話になりました。残念ながらSE版はありません。
本ModはPapyrusベースなので動作速度の面ではEnemy Equipment Overhaulに劣りますが、自分なりにこだわってみました。
装備の条件
装備は完全ランダムではなく、装備セットという概念があり、コーディネイトを意識しました。例えばビキニアーマーであれば、上が鉄なのに下がドワーフになる、ということはありません。また、部位がランダムにあったりなかったりするようにしました。胴や靴はないとおかしいので必ず身につけますが、ネックレスや肩当てなどのオプションパーツはあったりなかったりします。
対象を条件で細かく指定できるようにしてみました。名前無しの敵キャラだけ(無名の山賊など)に限定したりできます。性別や職業にも配慮し、男がビキニアーマーを着たり、戦士系なのにローブを着たりはしません。
戦闘装備
戦闘向けの防具を装備させます。敵が主な対象となります。
おすすめの条件は「敵対検査なし」「ユニークなし」「内戦関係者なし」です。これで山賊やフォースウォーンといった敵対NPC、冒険者やトレジャーハンターといった友好的NPCが対象となります。固有名詞を持つNPCや衛兵は対象外となるので、街の雰囲気もそれほど損なわれないと思います。
ロアフレンドリ
この機能を有効にすると、派閥に応じて選択される防具が固定されます。
- 山賊は材質がドワーフまでとなり、黒檀のビキニを着ることがなくなります。
- フォースウォーンは材質が革と皮のみになります。
- サルモールは材質がサルモールとエルフのみになります。
- シルバーハンドは近接固定となり、材質はドワーフまでとなります。
- ドーンガード兵は対応のビキニアーマーのみとなります。
- 帝国軍兵士は帝国軍のビキニアーマーのみとなります。
- ストームクローク軍兵士は対応のビキニアーマーのみとなります。
現在は以下の装備のみに対応しています。有効化されていないと着替えません。気が向いたら追加していく予定です。
- TEWOBA
- Tribal Hunter
- Dawnguard Bikini armor 3BA HDT-SMP – Tawoba Standalone Add-on
- Stormcloaks Bikini armor 3BA HDT-SMP – Tawoba Standalone add-on
戦闘装備にカジュアル装備を組み合わせる
戦闘装備のオプションにカジュアル装備を追加する確率を設定できます。
当選すると戦闘装備にカジュアル装備を強引に組み合わせます。
- スカート ([Caenarvon] Cosplay Pack)
- 制服の上着 ([Caenarvon] Cosplay Pack)
- 体操着の上下 ([Caenarvon] Cosplay Pack)
スカートは特別で、制服や体操着に合わせることが可能です。
胴装備が脱げて上半身か下半身のどちらかが丸出しになってしまう場合は組み合わせません。主にバニラのローブなどが該当します。
ボス装備
Additional Encountersで出現したボス専用の装備になります。
ボスを倒して出現した宝箱にも入っていることがあります。
カジュアル装備
カジュアルな衣装を装備させます。戦闘装備の対象にならなかったNPCがカジュアル装備の対象になります。
おすすめの条件は「内戦関係者なし」「職業検査あり」で確率を低めに設定です。これで街にいるNPCがたまにかわった服を着ているようになります。
職業検査をありに設定すると、浮浪者は対象外となり、宿屋でサービスを行うNPCにはメイド服やバニースーツといった特別な衣装が選択されます。
カジュアル装備はMCMのスライダーオプションで数値を動かすことで配布割合を、デフォルトを押すことで配布先をNPC、Wardrobe、両方から選べます。
服をリプレースする
着替えの対象外になった場合に、着ているバニラの服をリプレーサー版に入れ替えます。
現在はRemodeled Armorのスタンドアロン版に含まれる服の一部に対応しています。
バニラ服のリプレーサーを普通に導入すると年配者の服まで置き換わってしまいますが、この機能を使うことで年配者を除外することができます。
宝箱
NPCが死んだ時に宝箱が出現します。宝箱の中身は戦闘用装備もしくはカジュアル装備です。
NPCが持っていたものを宝箱に移動することもできます。Death Trap Chestで罠が仕掛けられるようにすると、さながらWizardryのような雰囲気になります。
ボスやドラゴンは宝箱の出現確率が大幅に上昇します。ボス装備が入っています。
ダンジョンに宝箱が配置されます。屋内限定です。戦闘用装備もしくはカジュアル装備がはいっています。
ニューゲーム後の確定宝箱
ニューゲーム後にヘルゲン砦に入った直後やSkyrim Unboundで屋内に移動した直後に出現します。
戦闘装備はTAWOBAのレザーのビキニセットと鉄のビキニセットになります。
カジュアル装備は配布先がWardrobeになっているものからランダムに選ばれます。
実装の詳細は、以下の条件をすべて満たした際に発生します。
- ニューゲーム時の宝箱を配置する設定がオンになっている
- プレイヤーのレベルが1である
- 本Modが稼働を始めてからセル移動を行い、初めて屋内セルに移動した
- セルがダンジョンではない(LocTypeDungeonキーワードを持っていない)
Wardrobe
ダンジョンのWardrobeにカジュアル装備が入っています。
屋外のダンジョン扱いの区域も対象になります。
下着
パンツ
下着を必ず着けさせる方法についてにて解説している「下着パンツ」「下着パンツを表示させない方法」が必要となります。
下着パンツをMCMで登録しておくことで、NPCに配布されます。
表示を正しくするために、ゲーム起動時にビキニの下の自動脱着が行われます。
従来の下着上下動的脱着、パンツの動的脱着はスクリプト負荷軽減のために廃止しました。
ブラ
ブラの装備スロットは32番が前提です。裸の上に何かを着るが、それぞれのメッシュが合わない場合に、合うようにするために胴に着る防具がブラになります。
ブラが必要な装備にキーワードを付けておきます。
キーワード | 用途 |
---|---|
NeedBra | 通常のブラが必要 (寄せて上げる) |
NeedBikini | ビキニ仕様のブラが必要 (寄せるだけ) |
ブラを用意して、MCMで登録します。
Outfitモード
2020/8/3版からOutfitモードが用意されました。有効にするにはMCMで「Outfitを使う」をオンにします。
内部的に1000個のOutfitを用意しており、NPCのDefault Outfitを順次切り替えながら割り当てていきます。
従来の動作は言うなればインベントリモードで、Default Outfitには手を付けず所持品に装備を追加して強制的に装備させていました。
Outfitモードの特徴として、動作が格段に速く、ロードを挟んでも勝手に脱げることがありません。そのかわり、アンインストールができなくなります。アンインストールすると、着替えたNPCは裸になります。
実装に関してはSimple NPC Outfit Managerを参考にさせていただきました。
キーワード
SPIDを使ってNPCにキーワードを付与することで、動作を変更できます。
eeIgnoreChangeOutfit
着替えの対象外にします。
; eeIgnoreChangeOutfit ; DraugrFaction Keyword = 0x38B0A~EnemyEquipment.esp|NONE|0x2430D~Skyrim.esm
eeForceChangeOutfit
NONEを無視して必ず着替えるようにします。
; eeForceChangeOutfit Keyword = 0x38B0B~EnemyEquipment.esp|CamillaValerius Keyword = 0x38B0B~EnemyEquipment.esp|Saadia
eeForceChangeOutfitCombat
戦闘装備の設定がオフでも着替えます。
; eeForceChangeOutfitCombat Keyword = 0x38B0C~EnemyEquipment.esp|CamillaValerius Keyword = 0x38B0C~EnemyEquipment.esp|Saadia
eeForceChangeOutfitCasual
カジュアル装備の設定がオフでも着替えます。
; eeForceChangeOutfitCasual Keyword = 0x38B0D~EnemyEquipment.esp|CamillaValerius Keyword = 0x38B0D~EnemyEquipment.esp|Saadia
Faction
SPIDを使ってNPCにFactionを付与することで、動作を変更できます。
eeFactionElder
老人です。
eeFactionVampire
吸血鬼です。
eeFactionCivilWar
内戦関係者です。
eeFactionRanged
遠隔武器で戦うNPCです。軽装になります。
eeFactionCaster
魔法で戦うNPCです。服になります。
eeFactionWench
酒場の関係者です。
eeFactionNoCasual
カジュアル装備を着ません。
メンテナンス用スペル
MCMで有効にすると自動的に習得します。
Refresh Outfit
対象の着替えを再抽選します。
クロスヘアで対象を捉えていない場合はセル内にいる全員を対象にします。
Change Outfit
対象の衣装をカスタマイズします。
取引画面が表示されるので、着せたい装備を渡します。
Outfitとして登録されるため、脱げません。
Fix Body
まれに胴体が透明のNPCが出現することがあります。原因は不明です。負荷が高いと起こるようです。胴装備を脱着するとなおるようです。
このスペルを唱えると、周囲にいる全員を対象に胴装備を脱着させることで修正を行います。
あとがき
NPCの装備を動的に入れ替えるのがこれほど難しいとは思いませんでした。最初は単純にPapyrusの関数を眺めてコードを書いて出来上がりだったのです。ところが、Skyrimの仕様によるさまざまな問題が出てきて、考慮しなければならないことが結構あることを知りました。また、他のModとの兼ね合いによる問題もあって、これがますます状況を複雑なものにしていました。
Mod作りをしていくうちにスキルもあがり、新しい手法を発見したりするたびに設計から見直してリファクタリングしています。何回やったかもう忘れたくらいです。
衣装の動作確認をするテストセルがあります。コンソールで以下のコマンドを実行すると移動できます。
coc eecelltesthall
ボタンを押すと衣装を着たNPCが出現します。現在はNinirim Collection 6.0のみです。