Thinking Skeever

Skyrim/The Witcher 3 Modについてのあれこれ。FoModの作り方、Mod導入時のトラブル事例などのニッチな話を書いていきます。a.k.a. BowmoreLover@nexusmods

Skyrim Mod導入トラブル事例:NPCとの殴り合いイベントが中断し敵対する(2016/7/31更新)

概要

NPC(不滅のウスガルドなど)との殴り合いイベントや同胞団の入団テストが途中で中断し、対戦相手および周りのNPCが突然敵対する。

原因

Modが各種制御を行うためにプレイヤーに対して魔法効果を付与することがあります。
バニラの殴り合い判定スクリプトでこれが「魔法を使った=ずるをした」と扱われてしまい、この現象となります。

対策方法

方法1:Brawl Bugs Patch - Plugins - Modder Resourceを導入する

このパッチはバニラの殴り合いスクリプトを置き換え、プレイヤーに付与されている魔法効果を選別することでこの問題を対策します。
このパッチはMod制作者が自分のModに同梱することを想定したものですが、一般プレイヤーでもインストールすることができます。
Campfireのようにこのパッチを同梱しているModも存在しますので、その場合は改めて導入する必要はありません。

補足:
Brawl Bugs Patch - Plugins - Modder Resourceは、ModDBの説明に「Mod自体がBrawl Bug Patchに対応している必要があります」と書いてあるので非常に誤解を受けているModです。
nexusのDescriptionには「Mod制作者が特別な対応をする必要は一切なく、既存のModを修正しなくてもバグ修正することができる」と書かれています。
つまり、プレイヤーに対して魔法効果を付与するようなModにこのパッチを同梱すれば殴り合いバグが回避できますよということ。
言い換えれば、Modに同梱されていない場合はユーザー自身がインストールすればバグ回避に役立てることができます。

多くの場合は対処できますが、プレイヤーに対して体力・スタミナのリジェネ効果のある魔法、またはマント魔法を付与するMod(iNeedなど)を使う場合はうまく機能しません。その場合は方法2を試してください。

方法2:ErshinPL氏作成のパッチを導入する

ErshinPL氏によるBrawl Bugs Patch - Plugins - Modder Resource用パッチを使う方法です。
プレイヤーに魔法が付与されているかどうかの判定を削除し、方法1の問題を解決するパッチです。
Brawl Bugs Patch - Plugins - Modder Resource導入後、下記リンクにあるパッチを上書きします。

http://www.nexusmods.com/skyrim/mods/24020/?tab=4&&navtag=http%3A%2F%2Fwww.nexusmods.com%2Fskyrim%2Fajax%2Fcomments%2F%3Fmod_id%3D24020%26page%3D1%26sort%3DDESC%26pid%3D0%26thread_id%3D781100&pUp=1 のErshinPL氏の記事にダウンロードのリンクがあります。

記事の抄訳:

  • 体力・スタミナのリジェネ効果のある魔法、マント魔法の判定をコメントアウト(削除)した。
  • 逆に言えば、これらの魔法を使っていても不正扱いされないためチートができます。
  • みんなはチートしたいんじゃなくて、ただうまく動作させたいだけだと思うので、フェアに戦ってくださいね。

方法3:Modern Brawl Bug Fixを導入する (New)

先日(2016/7/29)リリースされたModern Brawl Bug Fixを導入する方法です。

このMODを入れると、次の場合にのみ殴り合いイベントが中断されます。

  • 素手以外の武器・敵対的呪文・シャウト・巻物で相手を攻撃する
  • 呪文を使う
  • 食べ物/材料を食べる
  • ポーションを飲む

プレイヤーに魔法が付与されていても殴り合いは中断されません。

インストール上の注意:Brawl Bugs Patchが多くのMODに同梱されているので、本MODを極力ロード順の最後に配置する必要があります。
MOD製作者へ:Resourceフォルダ中のファイルを自由に自分のMODに同梱してもかまわないそうです。

作者はOrdinatorやApocalypseで実績のあるEnai Siaion氏。今も精力的にMOD制作されている方なので、サポート面も安心です。
今後はこのMODが主流になるものと思われます。


//

Skyrim Mod導入トラブル事例:追加フォロワーをコンソールで呼び出したいが、RefIDが分からない (2016/6/26追記)

概要

Modで追加されたフォロワーやNPCをコンソールで呼び出したいが、RefIDが分からない。

対策方法

SkyrimNPCやアイテムにはBaseIDとRefIDの2種類のIDが割り当てられます。
BaseIDはNPC/アイテムの基本データ(テンプレート)を示すIDで、重量/価格/見た目など、不変の情報へのアクセスに利用されます。
RefIDはゲーム内に実際に配置されたオブジェクトを示すIDで、NPCの場所・レベル・パラメータ、アイテムの配置場所・方向といった、ゲーム内で動的に変更される情報へのアクセスに利用されます。

コンソールからModで追加されたフォロワーを呼び出したりパラメータの変更を行う場合、後者のRefIDが必要となります。
以下、フォロワーの居場所が分かっている場合と、居場所が不明な場合それぞれの対処方法について説明します。

※本説明ではサンプルとしてRecorder - Standalone Fully Voiced Followerと拙作の日本語訳Recorder - Standalone Fully Voiced Follower - Japaneseを使いました。


f:id:thinkingskeever:20151114030550p:plain

方法1:フォロワーの居場所が分かっている場合

  • Mfg Consoleを導入します。このModはコンソールのコマンドや表示内容を拡張するSKSEプラグインです。
  • インストールしたらSkyrimを起動してフォロワーの前に移動します。
  • [全角/半角]キーを押してコンソールを開き、フォロワーをクリックします。

  

  • 画面右下にIDが2つ表示されますが、上のIDがRefIDです。

  f:id:thinkingskeever:20151228090606p:plain

  • フォロワーを呼び出すには次のコンソールコマンドを入力します。
prid <ここにRefIDを入力>
moveto player


f:id:thinkingskeever:20151114030550p:plain

方法2:フォロワーの居場所が分からない場合

  • TES5Editを起動します。
  • OKボタンを押します。ここでプラグインのチェックを変更すると、RefIDの上位2桁がゲーム起動時と不一致となります。良く分からなければ変更しないでください。

  f:id:thinkingskeever:20151228090559p:plain

  • 画面右側に「Background Loader: finished」が表示されるまで待ちます。

  f:id:thinkingskeever:20151228090600p:plain

  • 画面左のツリーから「フォロワー追加Mod名 / Non-Player Character (Actor)」の階層を開き、お目当てのフォロワーを選択します。

  f:id:thinkingskeever:20151228090601p:plain

  • 画面右の「Referenced By」を開き、列ヘッダ「Record」をクリックしてソートした後、[ACHR:xxxxxxxx]の行を探してダブルクリックします。フォロワーが馬を所有している場合には複数行ありますが、左のツリーで選択したIDが()内のIDと一致する行が正解です。

  

  • 選択項目が自動的に変更されます。新しく選択された項目のIDがRefIDです。余談ですが、選択された項目の2階層上が配置先のセルを示しています。このフォロワーの場合、リバーウッドのスリーピング・ジャイアントにいるということになります。

  

  • ゲーム内でフォロワーを呼び出すには、[全角/半角]キーを押してコンソールを開き、次のコンソールコマンドを入力します。
prid <ここにRefIDを入力>
moveto player
  • フォロワーを頻繁に呼び出す場合、コンソールコマンドを記述したテキストファイル(バッチファイルと呼ぶ)をSkyrimフォルダに作成しておき、コンソールから bat ファイル名(拡張子なし) と打ち込めば楽です。
  • バッチファイルから複数のフォロワーをまとめて呼び出す場合、先ほど示したコマンドではうまく呼び出せないので(最後の1名しか呼べない)、下記の形式で指定します。
"<ここにRefIDを入力>".moveto player
"<ここにRefIDを入力>".moveto player
"<ここにRefIDを入力>".moveto player
     :


f:id:thinkingskeever:20151114030550p:plain

方法3:TesvRefidPicker - Showing RefID of NPCを使う

MODファイルからRefIDを調べるツールを公開しています。Skyrim外で動作する外部ツールです。未導入のMODからIDを調べることもできます。

ダウンロード(nexusmods):TesvRefidPicker - Showing RefID of NPC
マニュアル:Skyrim自作Mod: TesvRefidPicker 利用ガイド (v1.1.5版) - Thinking Skeever


f:id:thinkingskeever:20151114030550p:plain

方法4:AreYouThere - Actor(NPC) Explorerを使う (New!)

AreYouThere - Actor(NPC) Explorer by bein を使えば、ゲーム内のMCMメニューからNPC(フォロワー)の一覧を表示したり、NPCに対して各種操作を行うことができます。
これを導入しておけば、フォロワーを追加するたびにIDを調査する手間が省けそうです。ぜひお試しを。

ダウンロード(nexusmods):AreYouThere - Actor(NPC) Explorer by bein




f:id:thinkingskeever:20151114030550p:plain

本記事の更新履歴

2015/12/28 - 初回公開
2016/06/26 - AreYouThere - Actor(NPC) Explorerに関する記述を追記

以上

Skyrim MOD製作:NexusModsでのファイル公開手順 (その4:その他の操作)

NexusModsでのファイル公開手順 (その1:登録の開始)の続きです。
今回はその他雑多な操作、README登録・タグ編集・変更履歴登録・MOD非公開・コメント追加の方法を説明します。

f:id:thinkingskeever:20160517160706p:plain


f:id:thinkingskeever:20151114030550p:plain
関連記事

参考リンク:

続きを読む

Copyright (C) 2015-2020 ThinkingSkeever, All Rights Reserved.
ブログの記事内に記載されているメーカー名、製品名称等は、日本及びその他の国における各企業の商標または登録商標です。
リンクはご自由に。記事の転載はご遠慮ください。記事を引用する場合はトラックバックするか元のURLを明記してください。