Fallout好き:主にFallout New Vegas

Fallout好き:主にFallout new Vegas

2013年4月8日月曜日

GECK観察:ベロニカ(Vernonica)にスカートをあげて喜ぶ仕組み

Dead Money(DLC01)の最初の操作不能になるところで、どうにか操作出来るようにならないかとスクリプトを覗いてる途中で気付いた事。


相変わらず推測混じりで見ていく。

1.ベロニカにプレゼントして喜ぶドレスは、Dead Moneyの nvdlc01starletclean も含まれる。


scn NVDLC01MQ00Script
というスクリプトがDLCの始まりなのだけれども、その中で

; Vera's Dress for Veronica
AddFormToFormList SkirtOutfits nvdlc01starletclean;
という処理がある。
ベラ(NPC、女優)の服(nvdlc01starletclean)を SkirtOutfitsというリストに追加する処理。ちなみにstarletは若手女優という意味らしい。なるほど。

この服がそれ。スリットが深くセクシーな服なのだけど、GECKだとイマイチ伝わりづらいな。
ということで、わざわざこのためにゲーム起動してみました。
バラの飾りとかヒラヒラが殺風景でボロボロなFalloutでは中々華やか。
で、ベロニカはどういう条件で喜んでるのか?というのを調べてみた。
下記スクリプトがベロニカが喜ぶ仕組みのメイン部分。ベロニカに付いてるスクリプト。

------------------------------------------------------------------------
 scn VeronicaSCRIPT
<oumit> *省略
; track in here to see if the player gives Veronica a dress.
BEGIN MenuMode 1008; container
if (GameHour > fLastCheckHour || GameDaysPassed > nLastCheckDay)
set fLastCheckHour to GameHour;
set nLastCheckDay to GameDaysPassed;

Set nDressCount to GetItemCount SkirtOutfits;
if (nLastDressCount < nDressCount)
if (bGottenULDress == 0 && (GetItemCount OutfitFormalWear > 0 || GetItemCount ArmorWhiteGloveSociety > 0))
set VMS49.bDressReactionPending to 1;
EVP;
else
SayTo player VDialogueVeronicaDressAcquire;
endif
endif
set nLastDressCount to nDressCount;
endif

END
------------------------------------------------------------------------
ここで使われてるGlobal変数の初期値 
GameHour = 12 ゲーム内の時刻
GameDayPassed = 5.0000 ゲーム内の経過日数

その他の変数はスクリプトの最初で初期化されている。

BEGIN MenuMode 1008 ←ベロニカのインベントリ表示した時だけ実行される
  :
END

if (GameHour > fLastCheckHour || GameDaysPassed > nLastCheckDay)
            :
endif
   最後にチェックした時刻(fLastCHeckHour)が12(GameHour)より小さい、又は(||) 最後のチェック日(nLastCheckDay)が5(GameDaysPassed )より小さいならば実行。

・・・・って全部書いてもしょうがないな。めっちゃわかりづらいし。


つまり、下記条件でベロニカが喜ぶ。

  (1) ベロニカとトレード画面になった時、前回トレード画面を開いてから1時間以上経っている事
  (2) 前回もらった時(もらった直後)より、今の所持スカート数が多い事

で、喜び方は2通りあって、

  (A) OutfitFormalWear(フォーマルな服) か ArmorWhiteGloveSociety(ホワイトグローブ協会の服) をもらった1回だけ
  (B) それ以外の場合

(A)の時は、専用の台詞があり、確認はしてないけど、まあ通常通りパーク教えてくれたりするはず。

(B)も、専用の台詞がある。
  で、Dead Moneyの nvdlc01starletcleanという服の話に戻るんだけど、冒頭に書いたようにDead Moneyをロードするとその服が SkirtOutfits(スカートのリスト)に追加される。
SkrtOutfits(フロムリスト)。
この画像はみやすくするため加工済み(スクロールした分をくっつけてる)
 ベロニカが喜ぶ条件(2)にある「スカート」はこのリストに入っているもので、かつ下記2種類以外の服。
OutfitFormalWear(フォーマルな服)、ArmorWhiteGloveSociety(ホワイトグローブ協会の服)

なので、Dead Moneyのベラの服(nvdlc01starletclean)を渡しても(A)の喜び方はしない。これが言いたかっただけ。

でも綺麗な服だから(A)の特別な喜びかたしてもいいんじゃないかなーと思った。まあでもそれだとスクリプト変更しなきゃならないから、こういう追加になったのかもしれない。


以下余談。

条件(A)の時の台詞。声がハイテンション。


条件(B)の時の台詞。こっちも結構なテンション。

これ多分ベロニカ連れてザ・トップスに行った時に話すんじゃなかろか。
オマイガオマイガ言ってる。ただ、こういう台詞の追い方(この台詞を呼び出してるスクリプト等を知る方法)がわからないなあ。知りたい。

0 件のコメント:

コメントを投稿