Oreno Dynamic Difficulty

自作Mod

NPCの強さを動的に変更します。スカイリムの難易度設定とは別に作用します。また、ボスやユニークがオーラを使うようになります。

ダウンロード

更新履歴

  • 2021/12/11
    • プレイヤーのVigorが速すぎたので弱体化しました。
  • 2021/12/5
    • 敵のPrayerとMeditationが強すぎたので弱体化しました。最大で1tick(6秒)3%回復です。
  • 2021/12/2
    • 全くテストできていません。
    • オーラはスキルを要求するようになりました。
    • プレイヤーのオーラの性能をスキル値に応じて10段階としました。最大ランクまで上げるとだいたい従来の性能になります。
    • 敵のオーラはレベル依存で10段階としました。YASH2を前提に最大レベル50を想定しています。プレイヤーと比較して性能の上限が高く、高レベル帯の敵が使うオーラは非常に強力になっています。
    • Home Pointで蘇生後にオーラを再稼働させるようにしました。
    • Skill Managerで職業を変更した後はオーラが再設定されます。Skill Managerの2021/12/2版以降が必要です。
    • Prayerによる回復量は固定値から最大ヘルスの割合になります。
    • Meditationによる回復量は固定値から最大マジカの割合になります。
    • Sanctuaryによるダメージ量は固定値から最大ヘルスの割合になります。
  • 2021/3/5
    • オーラの並びを抜刀時と納刀時で別々に記憶するようにしました。
    • オーラのメニューのカーソル初期位置を現在使用中のオーラにしました。
  • 2021/3/3
    • オーラの実装を変更しました。Perkを使って最終ダメージ値を変更する方式に切り替えました。Spell Perk Item Distributorが必要です。
    • Mightは攻撃力上昇ではなくなり、物理攻撃の予ダメージが2倍となります。
    • Defianceは防御力上昇ではなくなり、物理攻撃の被ダメージが半分となります。
    • Salvationは魔法耐性上昇ではなくなり、魔法の効果が半分となります。あらゆる魔法の効果に影響します。
    • Convictionは防御力低下、魔法耐性低下ではなくなり、物理攻撃の被ダメージが1.25倍、魔法の効果が1.25倍となります。あらゆる魔法の効果に影響します。
  • 2020/12/29
    • Go to bedで起きた時にオーラを自動的に再開するようにしました。
  • 2020/8/1
    • アップグレードはできません。ニューゲームまたはセーブデータのクリーニングが必要です。
    • 敵のオーラ機能でボスとユニークの検知方法を変更しました。すべてのボスを検知します。
    • 敵のオーラはボスが最大3体、ユニークが最大3体までになりました。
    • MCMを整理しました。
    • 敵のオーラ機能を使っていない場合、機能面ではほとんどかわりませんので無理にアップグレードする必要はありません。
  • 2020/6/7
    • 敵が使うオーラからRedemptionを削除しました。死体処理に難があるのと、死体によってはフリーズの原因になるようです。
  • 2020/4/24
    • まだ多重に強化されることがあるみたいなので、防止チェックを追加しました。ヘルスを大きく増やしている場合のみ有効です。
  • 2020/4/22
    • 特定状況下で強化が多重にかかってしまう不具合を修正しました。
  • 2020/4/20
    • 動的強化を廃止して可変強化を追加しました。
    • 小数点以下を切り上げるようにしました。Widgetによっては小数点以下まで表示するので表示幅が広がってしまうのを防ぐためです。
  • 2020/4/6
    • Salvationがフォロワーに効かない不具合を修正しました。
    • オーラがわずかな時間だけ無効になる隙間を無くしました。(まだ検証中です)
  • 2020/4/3
    • 納刀時と抜刀時でオーラを記憶するようになりました。
  • 2020/3/24
    • オーラのメニューが使った順に並び替わります。
  • 2020/3/7
    • スクリプトの処理を見直して最適化させています。まだ途中です。
    • プレイヤーが任意のオーラを発動できるようにしました。バランスは調整中です。
    • プレイヤーがオーラを発動したときの音を設定できるようにしました。デフォルトは無音のダミーファイルなので、置き換えてお使いください。

強化について

プレイヤーとフォロワーを除くすべてのNPCの強さを一括で変更します。個々のパラメータはMCMで調整可能です。

LE版のEnemy Enhancerと同等の機能です。本Modはヴァニラレコードを改変しませんので、種族毎の独自Perkはありません。これがEnemy Enhancerとの違いです。

可変強化

序盤から歯ごたえのある戦闘をするために強化幅を大きく設定すると、高レベル帯での敵が強くなりすぎてしまいます。そこで、レベルに応じた強化幅を設定できるようにしました。高レベル帯のインフレを抑えることができます。

以下はレベル1のときに10倍、レベル上限のときに3倍、レベル上限が50の設定例です。

レベル基本値強化値最終値
山賊135346381
山賊2548931793668
巨人3259132633854

バニラのブリーク・フォール墓地付近にいる敵を調べました。この例では山賊のレベルが25のため、レベル上限までの半分となり、強化幅はおよそ6.5倍です。

バニラに焦点を合わせるのであれば、レベル上限は25~30あたりでもいいと思います。

設定を調節することで、序盤を軽めにして高レベル帯を超強化させることもできます。

オーラについて

敵が使うオーラ

ボス級の敵やユニークな敵がオーラを使うようになります。オーラとは往年の名作RPGであるディアブロ2でパラディンが使うスキルです。自分と周囲の手下を強化するバフをばらまきます。オーラ使いが複数いるとオーラが重複します。

敵のレベルに応じてオーラの性能が10段階に変化します。

プレイヤーが使うオーラ

プレイヤーもオーラを発動できます。MCMでホットキーを割り当てて使います。

抜刀時と納刀時で最後に使ったオーラを記憶します。

プレイヤーのオーラはスキル依存です。必要スキルのいずれかが最低20必要です。

必要スキルのスキル値の合計に応じて10段階に変化します。

負荷を抑えるために、ゲームの起動時と起きた時にスキルを参照してオーラを習得します。

Skill Managerで職業を変更した後はオーラが再設定されます。

オーラの一覧

EnchantingとSmithingはバランスを考慮して意図的に排除しています。

種類日本語名効果必要スキル
Prayer祈りヘルスを回復します。Restoration
Defiance守り物理攻撃耐性が上昇します。Block
Cleansing浄化毒耐性が上昇します。Pickpocket
Speech
Vigor活力速度が上昇します。Lockpicking
Sneak
Meditation瞑想マジカを回復します。Alteration
Salvation救い魔法耐性が上昇します。Conjuration
Might物理攻撃力が上昇します。One-Handed
Two-Handed
Thorns反射近接攻撃で受けたダメージを反射します。Heavy Armor
Light Armor
Holy Freeze凍結周囲の敵の速度を低下させます。Illusion
Sanctuary聖域周囲のアンデッドにダメージを与えます。Destruction
Conviction信念周囲の敵の攻撃耐性を低下させます。Marksman

制限事項

  • アンインストールはアクターのいないセルに移動してセーブしてからにしてください。
  • 本ModはSE限定のPapyrus関数を使用しているため、LEでは動きません。

細かい仕様の話

強化したNPCには強化済みであることを記録する必要があります。そうしないと多重に強化してしまう恐れがあるからです。

これまでは、あるNon-Playableアイテムをインベントリに入れることで目印にしていました。ところが、Actor Value、Magic Effect、インベントリの保持に関する仕様がそれぞれ異なるみたいで、整合性を取るのがとても大変なことがわかりました。

そこで、アイテム方式はやめにして、Actor Valueを使う方式にかえました。一番影響がなさそうなLockpickingPowerModを使っています。LockpickingPowerModの初期値は0であり、これが0以外になることはほとんどないようなので、強化が済んだらLockpickingPowerModを1にしています。LockpickingPowerModが0に戻るのは、Actorがリサイクル(リスポーン処理)された時だけのはずです。LockpickingPowerModが0に戻れば、他のActor Valueも初期値に戻っているはずなので、強化を再適用できるということになります。

ということのはずだったのですが、なぜかLockpickingPowerModは0に戻るのにHealthはそのままになることがあるようです。よくわからず。

作ったきっかけとか

Nexusで公開したModの数が結構な量になってきました。これを書いている時点でSE用のModが29個あります。コメントをくれるのはうれしいのですが、プライベートメッセージで「他人の作ったModにバグがあって動かないからお前がなおしてくれ」という依頼がくるようになりました。便利屋扱いされているなぁと思いつつも、そこまでに至った経緯とかは興味があったりします。なので、見るだけならいいかとソースコードを読んで状況は理解して、それを直してあげるくらいなら自分で一から新しく作るよ、気が向いたら作るかも、と答えました。

でもそこから調べていくうちにアイデアが色々と浮かんできて面白くなってきたので、結局その問題のあったModを内包しつつ追加要素も加えたModを新しく作り上げました。他人からの依頼で一から作ったModは今回が初めてです。

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