Fallout好き:主にFallout New Vegas

Fallout好き:主にFallout new Vegas

2013年8月24日土曜日

MODの基盤:Weather(天候)/Climate(気候)/World Space/Region

2013/07/14 初版、2013/08/04 更新、2013/08/24 スクリーンショット、Region等追記、2013/08/26 Climate画像差し替え
2013/08/26 主にGlobal関係修正
Weather(天候)関係のメモ
※全て自分の知ってる範囲(推測あり)なので不正確な部分が多い


Weather(天候)は変化する。
---------------------------------------------------------------------------------
・Weather関係のスクリプトコマンド

SetWeather <WeatgerID:ref>  天気を変更する。
ForceWeather(fw) <WeatgerID:ref> [WeatherOverrideFlg:0/1]
                                        すぐに天気を変更する。WeatherOverrideFlgを1にすると
                  ReleaseWeatherOverrideが実行されるまで指定した
                  天候で固定される。
ReleaseWeatherOverride       天気を通常状態(変化するよう)にする。
GetCurrentWeatherPercent   天気の変更程度を0.0-1.0の値で返す。
                   例えば晴れ→曇りへ変化する時、0.5ならば晴れと曇りの
                   丁度中間の天気。変化スピードはGECKで設定出来る。
GetIsCurrentWeather <WeatgerID:ref>
                                         現在、指定した天候であれば1を、違うならば0を返す。
IsCloudy    曇りならば1、違うならば0を返す。実際の
IsPleasant  晴れならば。Pleasant=<天候が晴れて>心地よい、だそうだ。
IsRaining    雨ならば。
IsSnowing   雪ならば。

IsXXXはGECKで設定出来る。つまり設定次第なので実際は雨が降っていてもIsPleasantを設定出来る。
---------------------------------------------------------------------------------
Weatherはスクリプトから呼び出されて単独で使用されることもある。例えば、Hidden Valleyの嵐。
しかし(多分)大抵は Climite(気候)から呼び出される。Climiteでは天候を複数設定出来る。
Climiteは World Space (GECK→メニューの World→World Space...)に1種類設定されている。

リアルではさっきから雷が鳴り、雹が混じったかなりの夕立が降ってるが、そういえばFallout3もFallout New Vegasも雷とか雷雨って無いな。雨はあるけど。

■天候を構成する設定群

下記4つ。
 Region
 World Space
 Climate
 Weather

 1つのWorld Spaceに1つのClimate(気候)が設定可能。1つのClimateに複数のWeather(天候)が設定可能。
 これとは別にRegionでWeatherが設定可能。WeatherはScriptから呼び出し可能。

●World Space
 設定のたどり方:GECK→World→World Spaces...
World Space(非常におおまかな地域)毎の設定。
この画面は全DLC込みのものだが、数はそれほどない感じ。
TestMap01等ゲーム中使用されていない設定もある。

1World Spaceに1Climate設定可能。

Parent Worldspaceを設定すると、
「Use~」にチェックを入れることでそれを親として設定を引き継げるようだ。
天候以外にも地面?の高さや、ピップボーイに表示されるマップ画像を設定している。
※このスクリーンショットではBSAから画像を展開していないため
プレビュー画像が表示されていない。
●Climate(気候)
 設定のたどり方:GECK→World→Climates... / GECK→Object Window→World Objects→Climate
World Spaceに設定されて使用される。
恐らくそれ以外(例えばスクリプト等)からは使用されない。
Weather Types の項目にWeatherを複数設定可能。
Weather毎にChance(確率)とGlobal(グローバル変数)を設定可能。
Chanceはこの画面にあるように各Weatherに0~100を設定出来るようで、
合計100%というわけではないようだ。
2013/08/26修正
Globalについてもよくわからない。ClimateのGlobalはその変数が1の時、そのWeatherは選択対象になり、0の時対象外になる。詳細は後述。
Sun は太陽のテクスチャ。
Sun Glare は太陽から伸びる光の筋(写真や映像でよくみるやつ)。
Moons=月
Massa / Secunda、
これらは2つの月? Master ? Second ? 何語?と思ってググった。
http://ja.elderscrolls.wikia.com/wiki/Secunda
TES(The Elder Scroolls)シリーズの月っぽい。
あっちの設定の名残があるようだ。
Secunda=2つめの月かと思ったんだけどゲーム中に見つけられなかった。単に見落としているだけかもしれいないが。
Phase Length=Defaultで3 day(s)に設定されている。
これは月の変化する速度。
月は、 Data\textures\sky\masser_XXXXX.dds という8種類の画像がある(BSAから展開必要)。
ゲームプレイ中、気にしたことはなかったが、真っ暗から満月まで月は変化する。
それが何日毎に変化するか、という設定。3日というのは実際の月の変化と少しずれるが大体合ってるようだ。
(月の満ち欠けを正確にしたり、月の満ち欠けに合わせて夜の明るさを変えるMODを誰か作らないかな)
(今気付いたが、ファイル名 masser_xxxxx.dds が1つ目の月なら、
secunda_xxxxx.dds というように、masserと同じようなファイル名の画像を置いて、
Secunda にチェックいれたら2つ目の月が表示されるかも?)

Night Skyは星の画像。
Sunrise Begin=朝日開始時刻
Sunrise end=
Sunset Begin=夕日開始時刻
Sunset End=
これら4つはWeatherのTimeで設定した Sunset / Sunrise を使用する時刻だと思う。
Weather Types(右上)が見づらいのでもう1枚撮った。
このClimateでは
NVWastelandClear
NVWastelandClearNight
の2つが設定されているのがわかる。
 Climateで使用されるGlobalについて。
 例えば先ほどのスクリーンショットではVnightというGlobal変数が使われている。
Vnightを検索するとこのクエストのスクリプトで使われている。
名前は「Night Time Global Check」
このクエストはゲームロードと同時にスタートし5秒毎にスクリプトを実行するだけのようだ。
スクリプト NightQuestScript。
GetCurrentTimeで現在時刻を取得し、21:00以降 or 4:18未満の時刻ならば
先ほどのGlobal変数、Vnight に 1をセット、それ以外の時刻ならば 0 をセットしている。

この Script とClimate の設定から、
Scriptで「夜ならVnightに1を設定」、
Climateは「Vnightが1の時だけ(つまり夜だけ)NVWastelandNight(夜用天候)を使用する」
だと思ったんだけど、いまいち確認・整理出来ていない。
2013/08/26追記。Globalについて確認出来た。
参考:
GECKのWEBサイトのGetCurrentTime http://geck.bethsoft.com/index.php?title=GetCurrentTime

このscriptの GetCurrentTime < 4.30 の記述は誤りだと思う。
GetCurrentTime で得られる値は 4:30なら 4.5 (小数点以下は10進数)になるようなので、
多分 GetCurrentTime < 4.5 と書きたかったんだろう。4.3じゃ4:18という半端な時刻だ。
ま、大して変わらないし気づく人もいない話だが。
 ●Weather(天候)
 設定のたどり方:GECK→World→Weather / GECK→Object Window→World Objects→Weather

主にゲーム内の色合いを時間帯・オブジェクト毎に設定している。
他の設定。
Fog Distance(距離による霞具合?)
WindSpeed(雲の流れるスピード)
TransDelta(天気の変化するスピード)
SunGlare(太陽光反射?)
SunDamage(旧ゲーム用設定?)
さらに別のタブに雨・雪用の設定等がある。他のタブについては手間なので書かない。

大雑把に晴れ、曇り、雨等にわけることも出来る。雨はHornest Hearts(DLC02)でしか降らない設定になっている。設定さえすれば本編でも他のDLCでも降らせられる。雪は設定としては作れるようになっているが、バニラでは設定が作られていない。

ぱっと見より非常に設定項目が多い。タブが多いからではなく、このGeneralタブに多くの設定があるため。

設定項目「Type」
  
 ゲーム内画面の見える範囲のオブジェクトの色合いの設定。RGBで指定。
 Timeを組み合わせて指定するため、全て設定すると一つの天候だけで、Type9種類xTime6種類=54種類の色合い設定をすることになる。

 Typeの種類:Ambient(環境) / Cloud Layer / Fog / Horizen / Sky-Lower / Sky-Upper / Stars / Sun / Sunlight

 自分の触った感覚。
  Ambient(環境。他で設定されている以外の部分)
  Cloud Layer(雲のレイヤー)。
  Fog(霧、霞)
  Horizen(地平線、水平線)
  Sky-Lower(低空)
  Sky-Upper(高空)
  Stars(星)
  Sun(太陽)
  Sunlight(太陽光)

設定項目「Time」
  
 Time=Day / High Noon / Mid Night / Night / Sunrise / Sunset
     各TimeにImaseSpace Modifier(色合い、画面効果)を設定可能。

Scriptから呼び出して適用することも可能。ヴァニラでは HiddenValley の砂嵐で使用している。
天候MODを入れた事がある人なら、
コンソールからWeather設定したことがある人も多いだろう。
Wikiに書いてある天候MODをはずす時のコマンド、
fw ffc88 は ForceWeather ffc88 の略。
ffc88 はGECKで見ると、この画像にあるように NVWastelandClear のID。
●Region(地域)
 設定のたどり方:GECK→World→Regions...

(NevadaSkies(天候MOD)を観察していて今日(2013/08/24初めて知った)

上記 World Space / Script 以外でWeatherを呼び出している
(GECKのFind Textでも引っかからないので今までわからなかった)。

今日初めて見た(今までに見たことがあるかも知れないけどスルーしてた)
のでよくわからないが、
World Spaceよりずっと細かい単位の設定のようだ。
この画面の地図は、どうやらモハビ全体の地図らしい。
これは WastelandNV→Region Name=GSWeatherRegion のWeatherタブ。
Weather TypeにNVWastelandGSというWeatherが設定されている。
Climateと同様ChanceやGlobalがある。
PriorityやOverrideはなんだろうか。

GECKのWEBサイトの「Region」 http://geck.bethsoft.com/index.php?title=Regions

これを見ればいいんだけど、これを書いているだけで疲れたので今日はここまで。

0 件のコメント:

コメントを投稿