フォロワーのWeightをかえると首に隙間ができてしまう

環境構築

この首にできる隙間はなんなのか。

ラビの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で使っていました。まさかこんなに簡単に直せるものだとは思いませんでした。

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