Fallout箱庭DIY

「箱庭DIY」Fallout分室

【Fallout4】クエスト「Pull the Plug」で水が引かない原因の調査

スポンサーリンク


ポンプに夢中なSully

ある日の出来事。

線量の高いThicket Excavationsの水溜りに飛び込み、ポンプを直すクエスト「Pull the Plug」を終わらせ、ゲーム内で数日経過しました。

けれども・・・いまだにSully Mathisのおっさんはポンプいじって遊んでます。はやく水抜いてほしいんですけど!

待てど暮らせど水は溜まったまま。前にプレイした時はすぐに水抜けてたと思ったのですが、どうしたもんでしょう。ちょっと調べてみました。

※バグ等でクエスト進行に支障をきたしている場合は、こちらをどうぞ。

f4mod.hatenablog.com

クエスト及び進行状況の確認

クエストを探し、さらにゲーム内でそれがどの程度進んでるのかを調べます。

クエストのForm IDを調べる

FO4EditでQuestの中を物色すると、それっぽいのを発見。001073CEの模様。

クエストのFormID

 

クエストの進行状況を調べる

コンソールから”sqs”コマンドにて確認できます。

sqs 1073ce

を実行。

クエストの進行状態

それぞれのStage詳細はさておき、現在は1000で停滞しているようです。最後の1500がnot setになっているので、ここまで進めば水が無くなりそうな予感。

 

 

コンソールからクエストを強制進行させる

ほんとに1500までいけば水が無くなるのか確認です。

現在のThicket Excavationsの様子。ダムかよ!?ってくらいの貯水率ですね。

水の溜まった採掘場

 

コンソールから、

SetStage 1073ce 1500

を実行。強制的にクエストを進行させます。

 

すると、即座に水が抜けました。同時にレイダーからも袋叩きに!

水の抜けた採掘場

やっぱりクエストが何らかの要因で進行してないようです。

 

 

クエストのスクリプトを調べる

クエスト「Pull the Plug」に、大元のスクリプトがくっついているので、ソースを確認します。ソースはCK入れれば入ってると思います。

クエストに接続されているスクリプト

 

DN138Quest.pscより抜粋。

Function StartFloodDisableTimer()
    
    StartTimerGametime(24, FloodDisableTimerID)

EndFunction

Event OnTimerGameTime(int aiTimerID)
    
    if (aiTimerID == FloodDisableTimerID)
        if Game.GetPlayer().GetLevel() >= 12
        SetStage(1500)
        
        else
            
            StartTimerGametime(24, FloodDisableTimerID)
        
        endif
    
    endif

EndEvent

・・・はい、赤字の所です。クエスト完了から水抜きまで、ゲーム内24時間のタイマーが動いているようですが、プレイヤのレベル判定処理が入っています

つまり、プレイヤがレベル12未満の場合はこれ以上クエストが進まないという仕様になってたことが、いつまでも水が抜けなかった原因です。今まだレベル8でした。

 

 

条件を満たしてクエスト進行を確認する

コンソールいじる前のセーブデータで仕切り直しです。

再度コンソールで12まであげちゃいます。

Player.SetLevel 12

を実行。LV12になりました。

コンソールからレベルを12にアップ

あとは24時間、プレハブ小屋の中で爆睡・・・zzz

 

そして目覚めると、気づかぬうちに増築されていました。

24時間後にレイダー化

ゲーム的な流れに関してはツッコミ所もありますが、動作はこれで問題無さそうです。

Current Stageも1500になっていることを確認。

1500への移行を確認

 

長々と記事にして何ですが、正体わかれば何てことなかった!というケースは結構あるかもしれません。これもそんな中の1つということで、ハイ。

こんなところで終了です!

 

Copyright © 2015 Fallout Hakoniwa DIY All rights reserved .

S.kutsumiya@gmail.com