ラビのweightは初期値が0で、これを増やすと首に隙間ができてしまいます。
コンソールから変更してみる
weightを変更する方法はウェブ検索するとすぐに出てきます。コンソールを開いて対象のNPCをクリックしてから、以下のコマンドを実行します。
weight変更 (papyrus)
setnpcweight 100
disable
enable
これだけだと首に隙間ができてしまいます。
どうやらNeckDeltaというのを設定しないといけないようです。
NeckDeltaを設定してみる
コンソールからのやり方はわかりませんが、Papyrusだと以下のようになります。
weight変更 papyrus (papyrus)
Float fCurrentWeight = akTarget.GetActorBase().GetWeight()
Float fNewWeight = 100
Float fNeckDelta = (fCurrentWeight / 100) - (fNewWeight / 100)
akTarget.GetActorBase().SetWeight(fNewWeight)
akTarget.UpdateWeight(fNeckDelta)
NeckDeltaをきちんと設定すると隙間が消えました。
NeckDeltaの設定を維持する
問題は、ActorがアンロードされるとNeckDeltaが元に戻ってしまうということです。
そこで、Actorを監視してNeckDeltaを再適用するModを作ってみたところ、うまくいきました。Actor Weight Managerです。
最後に
首の隙間ができるのは前から知っていたのですが、その時はなぜかすぐに諦めてしまい、ずっとweight 0で使っていました。まさかこんなに簡単に直せるものだとは思いませんでした。