カスタムボイスフォロワー作成備忘録

新しく何かフォロワーを作ろうと思い、カスタムボイスにしてみることにしたので、自分用の備忘録。

カスタムボイスといっても、声優に依頼するまで本格的にやるのは大変なので、既存のボイスを流用することに。

丁度作ったフォロワーの見た目にも合いそうなので、子供ボイスを使ってカスタムボイス化を試みる。

カスタムボイス化の理解にあたり、以下を参考にさせて頂きました。

nonbiriskyrim.doorblog.jp

skyrimeasy.blog-rpg.com

seven-wings.blogspot.jp

thinkingskeever.hatenablog.com

skyrimのあれこれ

上記を参考にした結果カスタムボイス化に当たり2通り方法がありそう。

フルスクラッチはその名の通り、アクターの全パターンのクエストと台詞を作成する。 アドオンタイプに関しては、すでに存在する通常フォロワーにできないアクターのVoiceTypeを拡張し、特定のフォロワーに対し、新たに再構築したクエストや台詞を割り当てる方法。

今回はアドオンタイプで作ってみる。 この方法の一番の利点は追加したい台詞だけ用意し、後は元のVoiceTypeが既存のクエストやイベントに則った台詞を使ってくれるので、最小限の修正でカスタムボイス化できる。

まずは、子供ボイスの素材を手に入れる。

~/Skyrim/Data/Skyrim - Voices.bsaを解凍し、中から子供声に使えそうなものを探す。

探すにあたって便利なツールが。

Yakitori Audio Converter - Convert fuz-xwm-wav-various audio files at Skyrim Nexus - mods and community

fuzファイルをwavに解凍してくれるので、再生しながら使えそうなものを見繕う。

今回カスタムボイスフォロワーにあたって必要なのは、通常の子供には割り当てられていない雇用と結婚のクエストに合わせたボイスデータである。

適当に見繕って用意したら、後は参考記事などを見てクエストの作成と音声データの割り当てをしていけば完成。

台詞と雇用などの機能の紐づけはスクリプトで行われている。 解雇のTopicには以下のようなスクリプトが紐づいている。

Scriptname TIF__0007A1EA Extends TopicInfo Hidden

;BEGIN FRAGMENT Fragment_0
Function Fragment_0(ObjectReference akSpeakerRef)
Actor akSpeaker = akSpeakerRef as Actor
;BEGIN CODE
; don't dismiss the follower again if I've already dismissed them
If !(akspeaker.IsInFaction(DismissedFollowerFaction))
  (pDialogueFollower as DialogueFollowerScript).DismissFollower(0, 0)
EndIf
;END CODE
EndFunction
;END FRAGMENT

;END FRAGMENT CODE - Do not edit anything between this and the begin comment

Quest Property pDialogueFollower  Auto  

Faction Property DismissedFollowerFaction  Auto  

これはフォロワーを解雇するTopicに紐づいているスクリプト。 会話を行うとこのスクリプトが実行され、台詞とともにそのイベントに合わせた機能が発動する。

やってみて、雇用と結婚の台詞とクエストを用意するだけでも結構しんどかった。フルスクラッチで作られている作者様には本当に頭が下がる。

以下、実際に作ってみたもの

  • 雇用

youtu.be

  • 結婚

youtu.be

結婚後の台詞はまだ未実装。追々追加したいな