サバイバルモードでは、睡眠を取らないと疲労が溜まってデバフがかかります。元気な状態から疲労が1段階進むと、いきなり疲労困憊になります。これでは大げさ過ぎると感じたので、表記を疲労感に変更するMODを作ってみました。デバフ効果には変更を加えません。

ダウンロード
※SKSEが必要です。
疲労のステージ
内部データを確認してみると、疲労のステージは以下の5段階となっています。
| EDID | 原文 | 訳文 |
|---|---|---|
| Survival_ExhaustionStage1DisplayEffect | Fatigue – Refreshed | 疲労 – 元気 |
| Survival_ExhaustionStage2DisplayEffect | Fatigue – Drained | 疲労 – 疲労困憊 |
| Survival_ExhaustionStage3DisplayEffect | Fatigue – Tired | 疲労 – 疲れ |
| Survival_ExhaustionStage4DisplayEffect | Fatigue – Weary | 疲労 – 疲れ果てた |
| Survival_ExhaustionStage5DisplayEffect | Fatigue – Debilitated | 疲労 – 衰弱 |

元気から疲労困憊、疲れという順番です。疲労困憊と言うと最終ステージくらいの感じがしますので、疲れの前段階と考えて疲労感という表現にしました。最後が衰弱というのも気になったのですが、この段階まで睡眠を取らない人はほとんどいないだろうと思ってそのままにしておきました。
これで、頻繁に出てくる疲労困憊メッセージから解放されます。

ちなみに、疲労のステージが進むレートは、Survival_NeedExhaustion.psc の SetNeedStageValues() 関数で定義されています。時間に換算すると下表の通りです。ベッドで寝ると休息ボーナスのバフが付き、4時間が経過するとバフ・デバフ無しで元気な状態、8時間で疲労困憊となりデバフがかかる、という流れになっています。
| 疲労ステージ | 経過時間(時間) |
|---|---|
| 休息 | 0 |
| 元気 | 4 |
| 疲労困憊 | 8 |
| 疲れ | 17 |
| 疲れ果てた | 28 |
| 衰弱 | 40 |
このMODの作り方
サバイバルモードの文字列は “ccqdrsse001-survivalmode.bsa” 内にある Strings ファイルで言語別に定義されています。これを xTranslator で開き、疲労困憊に関する表現を書き換えたのがメインの作業です。.strings ファイルを開けば .dlstrings と .ilstrings も同時に開かれますので、すべて確認してから別名で書き出します。

基本的にはこれらの Strings を Loose files として配置するだけで良いはずです。ところが、途中導入すると Spell 名だけは変更が効かず、疲労困憊のままとなってしまいました。そのため、導入直後に動作するスクリプトを作成して、強制的に変更するようにしています。未確認ですが、Spell 名はニューゲーム時にすでに確定されているのかもしれません。この名称変更で SetName() 関数を使うため、SKSEが必要となっています。


コメント