スカイリムの謎・検証 | おばちゃんのスカイリムガイド
ラベル スカイリムの謎・検証 の投稿を表示しています。 すべての投稿を表示
ラベル スカイリムの謎・検証 の投稿を表示しています。 すべての投稿を表示

2014/01/13

消えない死体の未練の謎(2)

スカイリムで死体がいつまでも消えずに残っている原因は何なのか…という、消えない死体の未練の謎(1)のお話の続きです。
前回はユニーク型ロキールさん達のご協力によって、死体が通常のタイミングで消えなくなるのは稼働中クエストのエイリアスが適用されているのが原因、だということが発覚したわけなんですが、他の「消えない」NPCの死体についても果たしてそういった「エイリアス」が原因なのかどうか、確かめてみたいと思います。
ちなみにおばちゃんは最初、いつまでも死体が消えないというNPCは、なんらかのクエストの目的対象(Objective)に指定されたことがある者なんじゃないか…と疑っていました。
クエストアイテムがリスポンの浄化から逃れていつまでも残るように……クエストのマーカーが指し示す対象となった者の死体も何かしらの保護機能が働くのではないか、と思ったんですよね。
しかし死体が消えないNPCの中には、クエストの目的対象にはなっていない者も一緒に混じっていたりするので、おかしいな……と首をひねっていたのです。
たとえば……Dragonbornのしょっぱなでケンカ売ってくる信者さんとか。
カルト信者
DLCの「Dragonborn」を導入すると押しかけてくるミラーク先輩のファン、もとい信者達……この二人の死体も、おばちゃんの環境ではいつまでたっても消えずに残っている非常に邪魔な死体です。
この信者さんの片方は「信者の命令」という、クエストの目的対象となる手紙をインベントリ内に持っているため、上画像のようにクエストターゲットのマーカーのアイコンが出ます。
死体が消えないのはもしかしてそのせいなのでは……と思っていたのですが、しかしもう片方の相棒の信者さんも、特にアイコンが出るわけでもないのに、死体が消えないのですよね。
死体が消えない原因はクエストの目的対象になったことがあるかどうかではなく、稼働中のクエストのエイリアスが現在も適用されているかどうか、なのだとしたら……二人の死体が揃って消えないわけも納得できます。
二人とも恐らく、同じクエスト内の似たような仕組みのエイリアスを適用されているでしょうから……共にエイリアスが外れていないという状況である可能性は高いです。
ちなみにこの信者の二人は、「DLC2CultistAmbush」(カルト信者の待ち伏せ)というクエストの「Cultist1」「Cultist2」というエイリアスを演じています。
しかもこの二人って、このクエスト内で自動生成されるタイプのNPCなんですよね。
RefIDの先頭がFFで始まる、花のようにはかない命のNPCのくせに、こんなにいつまでも消えずに残っているとは……実にたいした根性です。
Dragonbornのメインクエを終えたセーブデータでクエストの状況を確認してみました。
カルト信者
このセーブデータでは信者の遺骸はホワイトランの鍛冶屋脇のドブ川に捨ててます。
さて、この二人のエイリアスが所属する「DLC2CultistAmbush」クエストが、現在どういった状況にあるのか、ドラゴンボーンのメインクエストを一通りクリアした後のウルフリック首長のプレイデータで調べてみることにしました。
「getstage DLC2CultistAmbush」とコンソールコマンドを使って、クエスト状況を調べてみると……現在のステージは「10」です。
ちなみに「DLC2CultistAmbush」クエストが終了となるステージは「255」。
ミラーク卿はとっくにお亡くなりになっているというのに……案の定、この信者さん達のクエストは思いっきり稼働中でした。二人のエイリアスも恐らく、適用されたまましっかり生き続けているかと思われます。
それにしても、いったいどうしてこのクエストがいつまでも終了せずにいるのかと原因を調べてみたんですが……はっきりとは断言できないのですが、クエストがいつまでも終わらないのは、単純なスクリプトの条件ミス?のせいなんじゃないか……という気がしました。
(補足)「DLC2CultistAmbush」クエストが終了しない原因について
「DLC2CultistAmbush」クエストの終了は、どうやらプレイヤーのエイリアスに付けられた「DLC2WECultistAmbushPlayerScript」というスクリプトによってタイミングを操作するつもりだったようです。
そのスクリプトを見る限りでは、信者の襲撃の一幕が終わって、プレイヤーが襲撃の行われた場所から離れた際に、クエスト終了する予定だったもよう……。
でもその判定の行われる条件式が、おばちゃんの見るところ、不等号の向きが逆なんじゃないかと思われるのです……(汗)
まさかプロがこんなうっかりミスをやらかす筈はないと思うんですが……ハハハ、まさかねえ。
そんなわけで稼働中の「DLC2CultistAmbush」クエストを終了させるために、コンソールコマンドで「StopQuest DLC2CultistAmbush」してみますと、信者二人の死体は一瞬で消え去りました。
実はこのクエストが終了となるステージ「255」には、ご丁寧に信者二人の死体が「disable(非表示)&delete(削除)」されるようなスクリプトがあらかじめ設定されているのですよね。
なんでここまで用意周到に準備しておきながら、肝心のステージ255には一向にたどり着かない、ということになるのか謎ですが……これが10年くらい先をイっちゃってるベセスダ・クオリティって奴でしょうか。まあ、スカイリムではよくあることですね(笑)
ちなみにこのステージ255のスクリプト処理をあらかじめ削除した状態で、「StopQuest」してみたらどうなるのか試してみましたが、二人の信者の遺体は24時間待機後にしっかり消えていました。
どうやらスクリプトでわざわざ削除しなくても、クエストが終了し、二人に適用されていたエイリアスが消えれば死体は自動的に消えてなくなるようです。
やはりこの信者の二人に関してもエイリアスの有無が、死体が消えずに残るという現象の鍵を握っていたようですねえ……


さて、お次は……死霊術師プレイで「おすすめ」とされるNPCの死体の中から、検証対象を選んでみたいと思います。
…とはいっても、おばちゃんの手元にあるセーブデータの中では、サンプルとして使えそうな死体があまり無いのが困りものなんですが……さいわいデイドラ・ペライトのクエスト「唯一の治療法」は完了していますので、「消えない死体」として有名なオーチェンドール氏の死体を調べてみることにしましょう。
死霊術師にわりと人気(?)のオーチェンドール氏の死体
オーチェンドール
過去記事を見てみたら、ブサーダムズに食器を拾いに行ったのは2012年12月…かれこれ一年以上前のことなのに、オーチェンドール氏の死体はつい最近死んだみたいな様子で現場に残っていました。
さすが、自宅でいつまでもストック可能、と評判の死体ですね。
さて、オーチェンドール氏の出演するクエスト「唯一の治療法」は「DA13」というクエストです。
そのクエストの最終ステージは「100」……「getstage」で現在のステージを調べてみると、スペルブレイカーをゲット済のこのデータでは、最終ステージの100にきちんと到達しているようでした。
ううむ、クエストは終わっているように見えるのに……おかしいですね。
しかしよくよく見てみると、このクエストの最終ステージ「100」には「Complete Quest」(クエストジャーナルが完了扱いになるフラグ)のチェックは入っているのですが、「Shut Down Stage」(このステージに達するとクエストが終了するというフラグ)にはチェックは入っていません。
またスクリプトなどで直接「stop()」している様子もありません。
これは……最終ステージに到達していても、クエスト自体は終了していないのでは……?
「DA13(唯一の治療法)」のステージ100
DA13
そんなわけで、「StopQuest DA13」とコンソールコマンドでこのクエストを強制終了させてみたのですが、予想に反して、オーチェンドール氏の死体は消えてはくれませんでした。
あれ、この人が消えないのはエイリアスのせいじゃないのか……?と最初は悩んでしまったのですが、オーチェンドール氏の死体をリバーウッドに移動させてから24時間待機してみると……死体はすんなり消えるのです。
つまり、オーチェンドール氏の死体が消えないのは、「ブサーダムス」という場所自体にもなんらかの原因がありそう……ということですね。
犯人はコイツでした。
DA13
「ブサーダムズ」のセルの設定を調べてみると、「BthardamzZone」というEncounter Zoneの設定の中に、「Never Resets」(リセットしない)というチェックが思いっきり入っていました。
おそらく、このチェックが入った場所では、死体消去やリスポンなど初期状態へのリセットが行われなくなるのではないかと思われます。
…ん、待てよ、ということは、Hearthfireで追加されたレイクビュー邸なんかも、ここでまとめてリセット禁止にしたら、アイテムがいちいちリスポンしなくなるのでは……?
…なんて思いましたが、もしかすると地下室にスキーヴァーとかが沸くイベントの都合上、レイクビュー邸をまったくリセットしない、という設定にするわけにはいかないのかもしれません。

ま、そんな余談はさておき、この「BthardamzZone」の「Never Resets」のチェックを外した状態で、オーチェンドール氏の死体が消えるかどうか試してみましたら、やはりこのリセットの設定が悪さをしていたと見えて、ちゃんとブサーダムズでも死体が消えるようになりました。
もちろん死体が消えるようになるのは、「DA13」クエストを「StopQuest」した後でのことです。
やはりオーチェンドール氏もエイリアスが原因でストック可能な死体と化していたと考えられます。
ちなみにこの「DA13」クエストがなぜ終了しないまま放置されているのか、ということなんですが……
はっきりとはわからないのですが、この「唯一の治療法」というデイドラのクエストは、もしかするとゲームの稼動中はずっと存続し続けていなければいけない理由があるのかもしれません。
実はこの「DA13(唯一の治療法)」というクエストは、ランダムで遭遇する「感染した避難民」のクエストの発生条件にからんでいるのです。
(「唯一の治療法」を完了していると「感染した避難民」がプレイヤーを襲ってくるようになります)
SM様がその条件判定を行うには、「DA13」クエストのプロセスが完全に止まってしまった状態では何か支障があるのかも……
だから「DA13」はクエストジャーナル完了後も稼動しつづけており、オーチェンドール氏に課せられた使命…エイリアスはいつまでも消えずに残っているのかもしれません。
世界に何かしら影響のあるクエストの関係者だったということが、死体をこの世に繋ぎとめる「鎖」になるなんて……死後も無理やり働かせられてるみたいで、たまらないですね。


さて、お次の検証対象は、ソリチュードで処刑されたロッグヴィル氏……です。
この方の死体は、例の死体安置所(WIDeadbodyCleanupCell)に飛ばされてしまうので、「消えない死体」として名前が上がっているのをあまり見たことがありませんが、少なくともおばちゃんの環境下ではこの方の死体はかなり長いこと消えずに死体安置所内に残っています。
彼は首を斬られる前、「今日…俺はソブンガルデに行く」なんて言っていたのに、いったいどうして成仏できなかったんでしょうか。
そんなわけで、この人の死体が消えない原因についても調べてみたいと思います。
斬首された首も忘れずに死体安置所に運んでもらえたロッグヴィルおじさん。
ロッグヴィル
おばちゃんは最初、この方の遺体がいつまでも消えずに残っているのは、彼の形見のタロスのアミュレットを身内のグレタさんに届けるクエストをまだ完了していないせいなんだろうと、軽く考えていました。
しかし、そのクエストをちゃんと終えても、まだ死体が残っているのです。
ちなみにロッグヴィル氏の出演するクエストは計2つ…… ソリチュードでの公開処刑のシーンが包括されている「SolitudeOpening」というクエストと、それからタロスのアミュレットを届ける「SolitudeFreeform03(恩寵への帰還)」というクエストです。
「SolitudeOpening」の公開処刑のクエストの方は、ロッグヴィル氏が死に、この死体安置所に送られる頃には自動的にクエスト終了となっています。
念のため「getstage」で状況を確認してみましたが、やはりこのクエストは最終のステージ200にきちんと到達しており、スクリプトの「stop()」でクエストはしっかり終了しているようでした。
「SolitudeFreeform03(恩寵への帰還)」クエストの方も、タロスのアミュレットをグレタさんに届けた後は、最終ステージの200となり、こちらもクエスト終了となります。
念のためこの二つのクエストを「StopQuest」してみましたが、それでもやはりロッグヴィル氏の死体は消える気配がありませんでした。
なぜでしょう? 彼の死体が残り続けているのは、クエストのエイリアスの有無とはまた違う、他の新たな原因があるためなのでしょうか……?

そんなわけで、まずはロッグヴィル氏の死体の消えない原因が、彼の参加するクエストにあるのかどうかを調べるために、上記の2つのクエストのエイリアスからロッグヴィル氏の指定を外した検証用Modを作ってニューゲームしてみました。
すると、その二つのクエストから何の関係もなくなったロッグヴィル氏の死体は、通常通りちゃんと消えるということがわかりました。(スクリプトがついているので死体安置所には送られますが)。
また、公開処刑の「SolitudeOpening」クエストの方のみ、出演をキャンセルし、「SolitudeFreeform03」のお届け物クエストの方だけ参加してみると、そのお届け物クエストを完了しさえすれば死体は問題なく消える、ということが確認できました。
つまり、諸悪の根源はソリチュード公開処刑の「SolitudeOpening」の方なんです。
このクエストの何かが、ロッグヴィル氏の死体を消えなくしているのですよね。
ロッグヴィル氏の代役として、急遽公開処刑シーンに出演することになったロキールさん。
公開処刑
これから斬首されるというのに……なぜ、この人、こんなに嬉しそうなの?
公開処刑
代役が処刑されたというのに様子も見に行かないロッグヴィル氏。くつろぎすぎです。
公開処刑
上スクリーンショットのように公開処刑クエストの囚人役をロキールさんにお願いしてみると、今度はロキールさんの斬首死体がまったく消えなくなりました。
しかし単なる観客役としてロキールさんを公開処刑クエストのエイリアスに追加してみると、そちらの場合はちゃんと死体は消えるんですよね。
つまり……死体が消えなくなるのは、公開処刑のクエストに参加したから、ではなく、ロッグヴィル氏が務める「Prisoner」という囚人役のエイリアスを演じたから、なのです。
「Prisoner」役を演じている最中に、いったい何が、その役柄を演じていた役者さんの身に起こったというのでしょう……?
もしかして、首を斬られるシーンのどこかで、死体が消えなくなるようなスクリプトでもかけられたんでしょうか……? あるいは……他の出演者たちやトリガーなどについているスクリプトが、罪人である囚人役の死体に何かしら干渉するようなことをしているのでしょうか……?
そんな思いつく限りの可能性を確かめてみるために、これが原因ではないか?と思われる要素を削った検証用のModを作成して、ニューゲームして結果を確かめてみるということを死ぬほど繰り返しました。
でもね、公開処刑のシーンをカットしても、出演者たちのスクリプトを全削除しても、どう頑張っても、ロッグヴィル氏の死体は消えない!のです。
ソリチュードの門を入った瞬間に、公開処刑のクエストが全終了となるようにスクリプトを改造しても、それでもダメなんです。
「Prisoner」というエイリアスに一秒でも入った瞬間に、死体は消えなくなる。
なんなんですか?これ……いったい何の呪いがこのエイリアスにかかってるんです?
さっさとソブンガルデに逝けよおおおお。
ロッグヴィル
なんかもう、あまりにも検証に苦労させられたので、しまいにはこのヒラメ顔のおっさんを見ただけで吐き気がするようになってきてしまいました。でも降参するのは悔しすぎるので頑張りましたよ。
で、結局、正解は何だったと思いますか?
答えが判明してみると、なるほど、という感じではあったのですが、本当に最初はまったく見当もつかなくて検証中は何度も心が折れそうになりました。
犯人はコイツです……おばちゃんの正月休みを返せ。
囚人の手錠
この囚人の手錠というのは、オープニング時にはプレイヤーも装着していたことのある装備品なんですが、ロッグヴィル氏が所持しているこちらの手錠は、プレイヤーは装備不可の代物ですので、普通にインベントリを覗いただけではその存在を確認できません。
そのせいで発見が遅れた、というのもあるんですが……まあ、その話は置いておいて。
「showinventory」というコンソールコマンドでロッグヴィル氏のインベントリを覗いてみると、この囚人の手錠をなぜか2つも所持しているのがわかります。
ちなみに一つは、ロッグヴィル氏のOutfit装備である「SolitudePrisonerNoShoesOutfit」の中の物です。囚人のデフォルトの装備として、「粗悪なチュニック」と「囚人の手錠」はもともとセットでロッグヴィル氏に与えられているのですね。
ではもう一個の「囚人の手錠」はどこからやってきたか、というと……これ↓がその手錠の出自です。
公開処刑クエスト(SolitudeOpening)の「PrisonerCuffs」エイリアス
囚人の手錠
二つ目の「囚人の手錠」の正体は、なんと「PrisonerCuffs」というエイリアス!だったのです。
この「PrisonerCuffs」(囚人の手枷)というエイリアスは、公開処刑の「SolitudeOpening」の小道具として用意されているエイリアスで、同クエストが開始された瞬間に、「Prisoner」という囚人役のエイリアスのNPCのインベントリ内に直接自動生成されます。
つまり、一瞬でも誰かが「Prisoner」のエイリアスに入った瞬間、その持ち物の中に自動的に湧くというしくみです。だから「Prisoner」役を一瞬演じただけで、死体が消えなくなる因業を背負ってしまうというわけなんですね。
ちなみにこの「囚人の手錠」、いったい何のために生成されたものなのか、さっぱりわかりません。
いちおう、「Prisoner」役の囚人に装着させたかったようなのですが……もともとロッグヴィル氏は手錠をデフォルトで装備していますし、それに手錠を装着させるスクリプトはコメントアウトされていて実行はされていません。
はっきりいって、このエイリアス、リソースの無駄だと思う……。

さて、この「囚人の手錠」を持っているというだけで、なぜ死体が消えなくなるのか、ということについてなんですが……これはちょうどアレと同じ原理なのではないかと思います。
「アレ」というのは、死霊術師プレイを行う際に、これをインベントリに入れておくと死体が消えなくなる、とされている保存用のアイテムです。
たとえばシャウトを使った時に配達人が届けにくる「友達からの手紙」や、山賊退治などを引き受ける時に貰う「賞金首の布告」なんてのは、そういった「保存剤」として使えると言われています。
おばちゃんはまだ、プレイ中にそういった保存剤のお世話になったことがないので効果の程はよくわからんのですが、実はあれ、ちょっと不思議に思ってたんですよね。
だって「友達からの手紙」や「賞金首の布告」って、別にクエストアイテムというわけじゃないでしょう?
それなのにどうしてアレを入れておくだけで死体が消えなくなるのかなって……
しかも、あのテの手紙って何度ももらえるわけじゃないですか。過去に発行された手紙のすべてが死体を保存する効果を発揮するんですか?……いったいどういう理屈で??

しかし今、こうしてクエストが完全終了しているのに、ロッグヴィル氏の死体を保存する力をバリバリに発揮している「囚人の手錠」を目の前にすると……こう思わざるをえません。
エイリアスによって生成されたオブジェクトは、クエスト終了後もエイリアスの特性を保ち続ける……のではないかと。
スクリプト付きで生成されたオブジェクトが、たとえ途中でそのスクリプトを削除されてもしつこくそのスクリプトを呼び出し続けるように……オブジェクトは最初に生成された時の状態や特性を、根幹の部分に刻みこんでしまうのではないでしょうかねえ。
まあ、エイリアスによって生成されたオブジェクトが「人」だった場合は、クエスト終了後はサックリ死体は消えますんで、この仮説は成り立たんなあ、とも思うんですが……
まあ、どんな理屈であるにしろ、エイリアスとして生成されたアイテムが、NPCの死体を消滅させない保存剤としての効力を持つ……というのは確かなようです。
ためしに、エイリアスとして生成した適当なお皿をロキールさんの死体に突っ込んでみたら、死体は通常の死体消去のタイミングでは消えなくなりました。
(永久に消えないかどうかは確かめるすべがありませんが)
1分で作ってみた保存剤。適当な宝箱に適当なお皿を生成しただけ…です。
保存剤
このお皿には、別にクエストアイテム(Quest Object)のチェックは入れていません。また、このお皿をロキールさんの懐に突っ込む前に、お皿を生成したクエストそのものはきちんと終了させています。
それなのにお皿は死体を保存する効力を発揮するんですから……やはり、エイリアスとして生成されたという出自そのものが、保存剤としての効果の要因となりうるのでしょう。
死体をいつまでも保存したい、という方は、このテの保存剤アイテムを作ってNPCに持たせておけばいいかもしれませんね。
そんなわけでロッグヴィル氏も保存剤となっていた「囚人の手錠」をインベントリから「removeItem」して削除したら、あんなにしつこかった死体が嘘みたいにあっさり消えてくれました。
まったく、こんな隠しアイテムみたいな状態で「保存剤」を持ってるなんて……卑怯ですよね。


さて、だいぶ長くなって参りましたが、最後に、志半ばにして倒れたこの方たちの未練を断ち切り、魂だけでなく死体も浄化してソブンガルデに送ってさしあげたいと思います。
内戦クエスト(帝国側)をクリアして手に入れた貴重なサンプルです。

改めて書くまでもありませんが、この主従の死体もずっと「消えない」ということで有名なコンビですね。
死霊術師プレイをされている方からは、「シャウトが使える」「うーうー言わない」など有難がってもらえるのが嬉しいんですが、死体に用のないプレイヤーにとっては、王の宮殿のテーブルで男体盛りをするくらいしか使い道がない…というのが哀しいところです。
ちなみにテュリウス将軍やリッケさんなども、あの死体安置所送りにさえならなければ、この主従のように死体はずっと消えずに残るタイプだったのではないかと思われます。
彼らの活躍する内戦のクエストがそもそも、どちらかの勝利でカタがついても、「しかし俺達の戦いはまだまだ続く…」みたいな中途半端な終わり方をしますからね。
ウルフリック首長もガルマル氏も、おそらくそういった内戦関連のクエストのエイリアスが仰山残っているのではないかと思われます。
対象がどんなエイリアスに入っているか調べられる魔法の呪文「ShowVars(SV)」

ちなみにごく最近になって知ったのですが、コンソールコマンドの「ShowVars」(SVでも可)というコマンドで、なんとNPCにどんなエイリアスが現在適用されているかが調べられるんです。
ああ、このコマンドをもっと早く知っていたら検証がうんと楽だったのに……でもこれでどなたでも簡単にエイリアスの有無が分かりますんで、死体を調査することができますね。
NPCになんらかのクエストのエイリアスがかかっている場合は、上画像のように、
--- Papyrus - Alias XXXXX on Quest YYYYY (zzzzzzzz)
というような形式の表示が出ます。
「XXXXX」がエイリアス名、「YYYYY」がクエスト名、「zzzzzzzz」がクエストのIDです。
エイリアスがいくつも被さっているNPCは一画面では情報が収まらないので、「PageUP」や「PageDown」キーでページをスクロールする必要があります。

そんなわけで「ShowVars」コマンドで、内戦クエスト(帝国側)完了後のウルフリック首長の死体を調べてみると、以下のようなクエストのエイリアスが残留していました。
・「CW」クエスト……「Ulfric」(ウルフリック役)
・「CWObj」クエスト……「Ulfric」(ウルフリック役)
・「CWReservations」クエスト……「Ulfric」(ウルフリック役)
・「DialogueWindhelm」クエスト……「JarlBackup」(首長のバックアップ役)
・「HousePurchase」クエスト……「WindhelmJarl」(ウィンドヘルム首長役)
「CW」というのは「Civil War」の略字ですので……CWの接頭辞があるのは内戦関連のクエストです。
やはり内戦関連は沢山残っていますね。内戦が終わった後も、それぞれの地方の警備体制や野営地などの配置にも関係してきますから……簡単にはクエスト終了できないのでしょう。
「DialogueWindhelm」クエストというのはウィンドヘルムの街の住人の行動や会話などを総括するクエストです。ウルフリック氏はそのクエストで生前は「Jarl」という首長役のエイリアスを務めていたのですが、内戦完了のタイミングで首長のバックアップ役に降格されたようです。
ウルフリック氏の場合は、ベレソアさんがバックアップのイソルダさんに役を譲った時みたいに、エイリアスを降りたりはしないんですね。補欠だったブランウルフ氏とエイリアスを交代するだけで。
「HousePurchase」クエストは、各街の家購入関連のクエストです。こちらも他の街と一緒の仕組みで動いているクエストなので、ウルフリック首長が死んだからといって終わりにすることはできないのでしょう。

これらのクエストは、ゲームの進行上、終了させることはできないものと思われますが、実際にウルフリック首長の亡骸を現世につなぎ止めているのは本当に上記のクエストのエイリアスかどうか知りたかったので、試しに全部終了させてみることにしました。
残留していたクエストをすべて「StopQuest」して、この世の未練をなくしました。

「ShowVars(sv)」コマンドで確かめてみると、ごらんのように綺麗さっぱり、すべてのエイリアスが消えてなくなりました。これでウルフリック首長も心安らかに成仏できるはずです。
そして……ちょっとドキドキしながら他所で24時間待機をして「王の宮殿」に戻ってきてみると……
ウルフリック首長の死体だけでなく、隣に居た熊の死体まで綺麗に消え去っていました。
あの熊め……マジでオブリビオンの底までついていったみたいです。

まさかガルマルさんまで消えるとは……念のため、成仏する前のガルマルさんの死体を調べてみましたら、「HousePurchase」クエスト以外、ウルフリック首長と同じクエストのエイリアスが残存していました。
まあ、ほとんどウルフリック首長と行動を共にしていた私兵ですから、出演するクエストがカブっていたのは当然といえば当然ですが、ウルフリック首長の因業を消し去っただけで、あの熊まで一緒に成仏してしまうとは……とても複雑な心境です。男の執念って怖い。

そんなわけで死体が消えずに残る原因として、おばちゃんが今のところ確認したのは以下の3つです。
・死体に稼働中のクエストのエイリアスが適用されている
・死体のある現場が、リセットされない設定になっている
・死体のインベントリに、エイリアス由来のアイテムが入っている
なにぶんそそっかしいおばちゃんの調べたことですので、間違っていたり勘違いしていたりという可能性は大ですが、もし「それは違う」だとか「この他にもこういう場合がある」だとか、お気づきの点がありましたら教えてくださるととても嬉しいです。
こんな長々としたまとまりのない文章を最後までお読みいただき、どうも有難うございました。


2014/01/12

消えない死体の未練の謎(1)

スカイリムで人は死んだらどうなるのか……という死後の世界のお話の続きです。
さて今回は「いつまでも消えない死体」の謎について調べてみたいと思いますが……その前にお詫びがございます。実は前回の記事で死体が消えるのはリスポンのタイミング、と書いていたのですが、なんと死体が消えるのはリスポン時だけではなかったのです。
死体は、現場から離れた場所で24時間待機するだけで消える、ということに、後で気づきまして(汗)……ほんと検証が甘くて申し訳ございません。ちなみに死体だけでなく、死霊術で変化した「灰」の方も離れた場所での24時間待機で消えるようです。(もちろん何の仕掛けもない場合に限ります)

それからもう一つ……これもお詫びしなくてはならないのですが、前回書き漏らしていたことがあります。
実は前回、被験者としてご協力いただいたロキールさんなのですが、彼はオリジナルのロキールさんをDuplicate(複製)して新たに作成したActorでありました。
まあ、オリジナルのロキールさんにはどんな死の呪いがかかってるかわかりませんので、検証用に新しく複製したロキールさんを用いるのはかえって安全だと思われるのですが、ただ前回、実験に使用したロキールさんは、オリジナルの設定とは違ってUnique(ユニーク)の属性を外してあったのです。
何匹もまとめて配置するには非ユニークな設定の方が断然便利なので、深く考えずにそうしてたわけなんですが、考えてみればこのゲームでは固有の名前を持つNPCは、そのほとんどが「ユニーク」な存在ですので、一般的な死体の法則を調べるというならまず、ユニークなNPCの死体についてもきちんと確認をとってみるべきでした。
こんな肝心なことをよく調べもせずに結論を出すとは……まったくお恥ずかしい限りです。
しかしまさか「ユニーク」な個体というだけで、死体が消えなくなるなんていう現象が発生しようとは思いもしませんでしたのでねえ……
前回のロキールさんのActorの設定。「Unique」のチェックを外していました。
前回のロキールさん
そんなわけで、「Unique」の属性にチェックを入れたロキールさんを改めて「リバーウッド」で殺してみると、通常の死体消去のタイミングでは死体が消えないことがある、という現象を、いまさらですが発見してしまいました。(ホント申し訳ございません)
しかし誤解しないでいただきたいのですが、ユニークなNPCであれば毎回、必ず死体が消えなくなる、というわけではないのです。
ユニークなタイプのロキールさんを10体、リバーウッド前に配置して、その全員を殺してみると、なぜか一匹だけ死体消去のタイミングでは消えない死体が発生します。
いったいこれはどういうわけなんでしょう。
今回は個別の名前を持つユニークなロキールさん1号~10号をリバーウッド前に配置しました。
ユニークロキール
ちなみにこれらのユニークロキールさん達を、「killAllActors」で一気にまとめて始末してみると、前回の非ユニークだった時と同じように、死体消去のタイミングで死体が全部消えて無くなります。
ところが一人ずつ丁寧にコロコロしてゆくと、なぜか毎回、最初に殺された一人の死体だけが、24時間待機後も、リスポン後も、消えずに残っているのです。
しかし近くを巡回している衛兵さんを先に殺してみても、衛兵さんの死体は残ったりしません。
その場合、死体が消えずに残るのは、その衛兵さんの次に殺されたロキールさんです。
また、ためしに近くにいるリバーウッド住人のスヴェン母のヒルデさんをまず最初に殺してから、ロキールさん達を始末すると、ヒルデさんの死体はその場に残るようになりますが、ロキールさん達は全員、死体消去のタイミングで綺麗にお掃除されます。
つまり、ユニークなNPCの最初の犠牲者なんですよね。死体が消えなくなるのは。


ところでこの謎現象なんですが、リバーウッドではない他の場所でも果たして起こるのだろうかと、ふと気になったので、確かめてみることにしました。
検証した場所は、
・ホワイトランの入口(WhiterunWorldの「WhiterunOrigin」)
・キャンドルハース・ホール(Interiorsの「WindhelmCandlehearthHall」)
・ウィンターホールド北のタロス像前(Tamrielの「POINorthernCoast18」)
・ブリーク・フォール聖堂(Interiorsの「BleakFallsBarrow01」)
以上の四箇所です。
これらの場所に、ユニーク型ロキールさんを複数配置して一人ずつ殺してみたところ、「ホワイトランの入口」と「キャンドルハース・ホール」では、リバーウッドのように最初の被害者が残る現象を確認しました。
またウィンターホールド北のイスグラモルの墓近くにあるタロス像前……ここは消えた見習い魔術師のイラス・テイ氏の死体がある付近なんですが、こちらの野外の場所と、それからブリーク・フォール墓地の最初の大広間の辺り……この二箇所では殺したユニーク型ロキールの死体は24時間待機後にはすべて消えており、死体が消えずに残っている…なんて現象は一度も発生しませんでした。
お仕事中だったエイドリアン姐さんがわざわざ様子を見にやってきて一言……「情けない」
営業妨害
これは一体どういうことなのか……最初はわけがわかりませんでしたけれども、しかしひとつだけ確かなことは、この謎現象は明らかにNPCが死んだ「場所」が関係していそうだということです。
もしかしたらゲーム全体の仕様として屋外、屋内で死体消去の法則が異なるのかしら、とも思ったのですが、同じ屋内インテリアセルの「キャンドルハース・ホール」では死体が残り、「ブリーク・フォール墓地」では死体が消える…と結果が異なるわけですから、そんな単純な仕様というわけではなさそうです。
ちなみに、死体が消えない「ホワイトラン」「リバーウッド」「キャンドルハース・ホール」の三箇所って、なんとなくですが、共通点があるような感じがしますよね。
ダンジョンや荒野ではない、人が集まる街や施設というか……人といっても山賊だの死霊術師だのアウトローな人達ではない、お天道さまに顔向けできるまっとうな人達が住んでいる所、です。

そんなわけで、死体が消えない上記の3箇所のロケーションの設定に何か共通するものはないか、そしてそれが死体が消えない要因となっていないかどうか、しらみつぶしに探してみたところ……3つのロケーションにそれぞれ含まれていたLocTypeHabitation(居住区画タイプ)というキーワードが、死体の消えない現象に関与している犯人のようだということを突き止めました。
LocTypeHabitation
ちなみにキャンドルハース・ホールのロケーションには、直接「LocTypeHabitation」(居住区画タイプ)のキーワードは付いていないのですが、そのParentの親区画であるウィンドヘルムのロケーション(WindhelmLocation)にそのキーワードが含まれています。
これらのロケーションに含まれている「LocTypeHabitation」のキーワードを試しに削除してみたところ、リバーウッドやホワイトラン、キャンドルハース・ホールでもユニークロキールさんの死体が一体残らず、通常の24時間待機後に消えるようになりました!
おそらくこの「LocTypeHabitation」(居住区画タイプ)というキーワードが含まれている場所では、「ユニークNPCの最初の死体が消えなくなる何かの仕掛け」が裏でこっそり働いているのです。
そんなわけで「LocTypeHabitation」(居住区画タイプ)のキーワードにいったいどんなカラクリが仕掛けられているのか、UseInfoを見てみますと、以下のような様々なクエストやSMイベントがこのキーワードに関連しておりました。
「LocTypeHabitation」キーワードを使用しているクエストやSMイベント
LocTypeHabitation
この中のどれかが死体が消えなくなる現象を作り出している張本人なんじゃないかと思うのですが……クエストの中身を調べてみても、何故、死体が消えなくなるのかという根本理由がそもそもわかっていないので、内容を見ただけではどいつが犯人なのかさっぱりわかりません。
そこで上記の関連クエストを一つずつ、丸ごと削除してから、念のためニューゲームしてユニークロキール氏の死体が残るかどうか試してみる…という力技で様子を確かめてみました。
すると上画像で赤く色付けした「WIKill05」というクエストがゲーム上から削除された状態だと、リバーウッドやホワイトランでもユニークNPCの死体が一つも残らなくなる、ということが判明しました。

さて、この問題の「WIKill05」というクエストなんですが……これはいったいどういうクエストなのかといいますと、このクエストは誰かが死んだ時に、その関係者がそれ相応の、状況にふさわしい反応をするために用意されている演出用のクエストのようです。
たとえば身内や友人、恋人といった非常に近しい人が目の前で死んでしまった!という大変な時に、「一体何なんだ?」と他人事みたいにドライな感想を述べたり、何事もなかったように鍛冶場でカンカンやってたりするのは、人としてどうなのよ?って感じですからね。
そういう時は即座に現場に駆けつけて、おろおろ動揺したり、プレイヤーに話しかけられても、「今は話したくない」とか「放っておいて」とか、取り乱した様子を見せるのが人として当然の反応というものです。
「WIKill05」クエストはNPCにそういった身近な人の死を悼むための反応を提供しているようです。
「WIKill05」クエストのエイリアス一覧
Wi
「WIKill05」というクエストのお芝居は、犠牲者の「Victim」役と、犠牲者の居住地であり殺された現場でもある「Habitation」という舞台、そしてその現場の中心にあるマーカー「HabitationCenterMarker」、さらに犠牲者の血縁者「Relative1~10」や付き合ってた恋人「BoyfriendGirlfriend」、友人たち(Friend1~10)といった様々なエイリアスの役柄によって構成されています。
しかし「Optional」という項目にチェックのついた(上記の一覧では「Y」のマークが表示されている)エイリアスはいわゆるオプションでして、まあ言ってしまえば「いてもいなくてもどっちでもいい」脇役です。
このお芝居は、オプショナルではない上位の3つのエイリアス……犠牲者と、殺された現場と、そのマーカーという3役さえ揃っていれば上演可能、という仕組みになっています。

で、このお芝居の主人公である「Victim」役や「Habitation」といった劇の舞台を、具体的にどんな役者さんや場所が演じるのかということなんですが……この「WIKill05」というクエストは、ストーリーマネージャー(SM)からお知らせを受け取って、エイリアスの配役を行うしくみになっています。
「ストーリーマネージャー」というのは、エセリウスよりもさらに上のはるかな高みから、スカイリムのありとあらゆる出来事を監視している神のようなシステム様でありまして、ドワーフ製の品物を買ったら、店を出た瞬間にカルセルモ氏からそいつを寄越せと矢のような速さで手紙が届いたり、絶対に誰にも見られていなかった筈の悪事なのに報復に雇いの悪漢が送られてきたりするのも、ストーリーマネージャー様がプレイヤーのすることは何でもお見通しだからです。
で、そのSM様が誰か人が死ぬたびに「今、○○が死んだよ」ということを「WIKill05」というクエストにチクってるわけなんですが、WIKill05クエストはそのお知らせされた「死者」の情報を元に、自分のクエストのエイリアスの配役を決めます。
しかしこのWIKill05クエストの主人公の「Victim」を演じる役者さんは、死んだ人なら誰でもいい、というわけではありません。
この「Victim」役の条件の一つには、そのNPCが「ユニークであること」というのがあります。
また、犠牲者が死んだ場所である「Habitation」という舞台にも、LocTypeHabitation(居住区画タイプ)というキーワードがついているかどうか、というチェックが入っています。
つまり……世界に一人しかいない存在であるユニークNPCが、関係者が周囲にいる可能性の高い居住区画のロケーションで死んだ場合に限って、必須のキャスティングが決まって「WIKill05」という喪中を演出するための小芝居が始まるのです。
リバーウッドやホワイトランで、ユニーク型ロキールさんを殺した時は、この状況にばっちり当てはまっていたわけでして……最初の犠牲者のロキールさんは毎回、おばちゃんの知らぬまに、WIKill05クエストの主人公にひそかに抜擢されていたのでしょう。
ロキールさんの死を悲しんでくれる友達や彼女なんて誰もいないのに……なんて無駄なことを(笑)
可哀想なのでロキール2~10号を、犠牲者「ロキール1号」の友達にしてみました。
Wi
皆の大事なアイドル・ロキール1号をリバーウッドの入口から少し離れた岩場の上で殺してみると、1号と友人関係にあった2号~10号がすぐさまダッシュで現場に駆けつけてきました。
何の人間関係もない他人同士だった以前の頃とは大違いです。大事な人が殺されて、「いざ鎌倉!」的な非常事態が勃発したのだという様子が見てとれます。
口々にお悔やみの言葉を述べるロキールさんたち。
Wi
ああ、このセリフは……愛犬スタンプ君が巨人に殺された時、養子のフロドナー君が動転して口走っていた、おかしな直訳日本語じゃないですかああ。
改めて確認してみたら、フロドナー君とスタンプ君は「親友」同士だったんですね。
そうか、だからあの子はスタンプ君のことを絶対に「バカ犬」呼ばわりしなかったのか……
スタンプ君を亡くしたことが、いまさらながら泣けてきました。
1号の死体を確認すると、ロキールさん達は何故かひどく怯えてしまいました。
神さまお助けえ
身近な人が謎の怪死を遂げたので、次は自分の番かもしれない、と怖くなってしまったのでしょうか。
ロキールさん達はそれぞれ逃げ惑うようにリバーウッドの村の中心あたりまで走ってくると、ショール様、マーラ様、ディベラ様、キナレス様、アカトシュ様、とにかく神様、お助けえ…とばかりに頭を抱え込んで、ガクガクブルブルしていました。
ひとしきり怯えた後は、整列して初期配置場所に帰っていきます。
これからヒキこもります
どうやらこの行動は、身近な人の喪に服して、しばらく自宅にヒキこもる、という演出のようです。
一般的なユニークNPCの場合は、初期配置場所(editor location)がそれぞれの家や宿泊施設などに設定されていることが多いので、そちらにしばらく閉じこもる行動を取るもよう。
ロキールさん達は、リバーウッドの入口に適当に配置しただけなのでそこに戻るだけですが。
見てください、この悲しげな表情……
服喪中
親しい人の死からまだ立ち直っていないロキールさんは、話しかけても今はそんな気分じゃない、とばかりに会話を拒否するだけです。
そうか、そんなに1号の死がショックなのか……ならばお友達のところに全員仲良く送ってあげましょう。
全員殉死。ロキールさん達が怯え、恐れていたことが現実になりました。
殉死
ちなみにこんな可哀想なことをしたのは、なにもロキールさんを苛めたかったからではありません。
この状態で24時間待機orリスポンしたら、ロキール2号~10号の死体はどうなるのか、知りたかったからです。
「WIKill05」クエストの主人公「Victim」エイリアスを演じていたと思われる最初の被害者のロキールさんは、毎回、通常の死体消去のタイミングでは消えずに残っていました。
ではその犠牲者の友人役のエイリアスを演じたロキールさん達は?
彼らの死体は消えるのでしょうか、消えないのでしょうか?
消えませんでした……やっぱり。
やっぱり
どうやら死体が消えないという現象は、WIKill05クエストのエイリアスを演じている最中だった…というのが根本の原因だったようです。
クエスト上演に必要な主役格のエイリアスだけでなく、オプショナルの脇役エイリアスを務めていたNPCたちも死体が消えずに残ってしまうんですね。
ということは、もしかすると……WIKill05クエストが終了し、ロキールさん達がそのエイリアスを演じる役目から解き放たれたら、死体は通常通りのタイミングで消えるようになるのではないでしょうか。
そんなわけでこの「WIKill05」クエストはいったいいつ終わるのか、クエスト内容を再び調べてみました。
WIKill05クエストの上演時間を司る「WIKill05Scene」
WIKill05Scene
WIKill05クエスト内に設定されている「WIKill05Scene」というシーン……クエストの終了するタイミングは、このシーンに設定された単純なタイマー装置が鍵を握っていました。
このシーンは、「Begin on quest start」という項目にチェックが入っているので、クエスト開始と同時に自動的に始まります。そしてリアル時間で240秒(4分)、「HabitationCenterMarker」(舞台の中心地に置かれてるマーカー)が待機した後に「シーン終了」となります。
ちなみにマーカーに対してタイマーが指定されているのは、単に行動の主体となるものが何もないとアクションが設定できないため、便宜的に対象としたのでしょう。
そしてこのシーンは「Stop quest on end」にチェックが入っていますので、シーンが終了したらクエストも終了です。つまり「WIKill05」クエストは開始から240秒継続し、4分たったら自動終了するわけです。
シーンのタイマーってこんな使い方もできるのか……勉強になるなあ。

そんなわけで4分間、放置してから改めて死体がどうなるか調べてみると……ロキールさんの死体は最初の犠牲者もその友人たちもすべて、24時間待機後のタイミングで綺麗に消えてくれました。
予想通り、タイマーに仕掛けられた4分が経ち、WIKill05クエストのエイリアスが外れると、ロキールさん達の死体は元の死体消去の原則に従って、ちゃんとお掃除されるようです。
ちなみに待機中のウィンドウが開いていた時間(※待機時間がカウントされている間)は、この4分間にはどうも含まれていないっぽいです。
待機ばかり繰り返していた検証中はまったく消える様子がなかったのは、おそらくそのためでしょう。
普通にプレイしていれば4分なんて時間はあっという間に経ってしまうと思いますので、この「WIKill05」というクエストによって死体がいつまでも残っている…と感じることは、あまり無いのかもしれませんね。


ところで、今回は死体が消えなくなる原因は「WIKill05」というクエストだけでしたが、NPCが死んだことをきっかけに始まるクエストは他にもいろいろあります。
今回のロキールさんたちでは条件が合わないので発生しませんでしたが、死者のゴーストが親族に憑りつくクエストや、死者と敵対関係にあった者から感謝されるクエストなど、NPCの設定によってはさまざまなクエストが発生したりします。
あるいはロケーションが変わることによって自動発生するクエストや、何かアイテムを落とした時に発生するクエストなど、スカイリムでは気づかないうちに様々なクエストが発生しています。
死んだNPCが、そういった「World Interactions(世界相互作用)」タイプのクエストのエイリアスに選ばれてしまっているせいで、死体が消えなくなる、という現象が発生する可能性は非常に高いです。
死体や灰が24時間経っても消えない!という場合は、そういった「エイリアス」の影響がないかどうかを検討してみる必要があるかと思います。


すみませんが長くなってしまいましたので、続きは別記事にさせていただきます。
続きはこちら→消えない死体の未練の謎(2)

2014/01/06

スカイリムの死後の世界

2014/1/6追記 申し訳ありません。死体消去のタイミングについて、以前の記事には誤りがありました。訂正箇所はこちら
ドラゴンだの吸血鬼だの巨人族だの、危険な生き物が街や家の周りをしょっちゅう徘徊しているスカイリムでは、人の死なんていうものはごく日常の出来事で、街の商人やサブクエストの関係者といった大事なNPCがあっさり死んでしまうことも特に珍しくはありません。
誰でも一度や二度は、フォロワーや配偶者といった身近なキャラを不用意に死なせてしまって、仕方なくロードしたり、禁断のresurrectコマンドなどを試みたりしたことがおありでしょう。
かくいうおばちゃんも今まで数え切れないくらいスカイリムの住人たちを無駄に死なせてきて、 コンソールコマンドで蘇生を試みるのも日常茶飯事だったりするわけなんですが、基本的には「死んじゃったら仕方ない」という方針でして、彼らの生き死については特にこだわったりはしておりませんでした。
しかし改めて考えてみると、スカイリム住人の「死」についてはいろいろ不思議に思うことがあります。
人は死んだら一体どうなるのか……まあ、ノルドであれば死んだらおおかた魂はソブンガルデにでも行くのでしょうが、ObjectReferenceとしての肉体は一体いつ、どのタイミングでこの世を去るのでしょう?
死霊術で灰になった場合は?……コンソールコマンドでは復活はできないのでしょうか?
また、死体がいつまでも消えずに残っているNPCがいますが、あれはいったい何が原因で成仏できずにいるのでしょう? 普通に死体が消えてしまう人とはどこが違うのでしょうか?
…などなど、考えはじめたらまた眠れなくなってきてしまいましたので、今回はそんなスカイリムの「死」というものについて、いまさらですが調べてみたいと思います。
実験のためにリバーウッド前にスタンバイするロキールさん達。
死に役には最適
さて、それではまず、スカイリムのごく一般的な「死」というものがどのようなものであるのか、改めて確認してみたいと思います。死体がいつまでも残っていたり、死体がいつの間にかあなたの知らない世界に飛んでいったりするような「異常」な死について調べるためにも、まずは何の小細工もされていない普通のNPCが死んだらどうなるのか、ということを知っておかなければ比較のしようがありませんからね。
そこで何のクエストもスクリプトも付いていない、素のままのロキールさん(※非ユニークのActorを配置したもの)をリバーウッド前に配置し、何度か殺して、その死体がどうなるか確かめてみたのですが、どうやら殺されたNPCの死体はその場を離れて10日経過した後、再び現場に戻った時点で「消える」ようでした。
ゲームをある程度プレイしていらっしゃる方ならばだいたいお察しのつく通り、ごく一般のNPCの死体は、通常ではその死体のある「セル」がリスポンするタイミングで消えるようです。
リスポンのインターバルは、デフォルトだと10日、クリア済のダンジョンなどでしたら30日。
ただしその時間が単に経過しただけではダメで、別セルにて「ロード」画面を発生させてから、そのセルにプレイヤーが改めて侵入するという状況を発生させることが必要みたいです。
よくクリーンセーブなどで30日待機しろ、などといいますが、「Qasmoke」などに単にcocして30日経過しただけではダメなんですね。
現場から遠く離れた場所でロード画面をしっかり発生させること……それが大事なようです。
このゲームではリスポンに限らず、別セルでロード画面を挟むということが重要、というか必須な場面が非常に多いような気がします。
ちなみにリスポン属性がオンになっているNPCの場合(たとえばリバーウッドに配置される衛兵さんとか)は、殺されてもリスポンのタイミングで初期状態にリセットされて再び復活します。

(2014/1/6訂正)死体は、別のセル(屋外の場合は5×5セル圏外)で、24時間が経過しただけで消えるようです。
ただしこの24時間にファストトラベルで経過した時間を含めて考えてはいけない模様……。
おばちゃんは検証の際、ロキールさんを殺害後、ファストトラベルでソリチュードやウィンドヘルムといった離れた街へ移動し、そこで半日ほど待機してからリバーウッドへ戻ったんですが、日付的には約1日半くらいが経過していたにも関わらず死体が依然として残っていたので、24時間というタイミングでは死体は消えないのだろう、と思ってしまいました。
しかもリスポンの設定を、検証の時間短縮の為に縮めていたのも間違いの元でして……設定を3時間に変更したリスポンのタイミングで死体がしっかり消えていたので、死体消去はリスポンのタイミングなんだと思い込んでしまったのです。ホント、浅はかすぎて弁解のしようもございません。
どうか記事を読まれた方が「死体は10日は消えない」と安心してしまって大事な人の死体をロストしてしまったりしませんように……(ホントすいません)

ちなみにこの24時間という時間はどうやら「iHoursToClearCorpes」というgame settingの数値(デフォルトは24)が関連してるようです。
この数値を3にしたら、3時間が経過しただけで死体が消えていました。
しかしこの時間に、ファストトラベルで経過した時間を含めて考えようとするとなにやら計算が合わなくなってきます。
たとえば……16日の正午ジャストにロキールさんを殺害し、マルカルスへファストトラベルで移動、そこで10時間待機してから再びリバーウッドにファストトラベルで帰還すると、18日の午前1時頃になっていますが、ロキールさんの死体はまだ消えていません。
ファストトラベルの時間は経過時間としてはカウントされないのかと思いきや……同じく16日の正午にロキール殺害→マルカルス→ソリチュード→ウィンドヘルム→リバーウッドとファストトラベル大旅行をすると、死体はしっかり消えてます。
もしかするとリバーウッドに戻る時だけファストトラベルの時間は含まれない(ファストトラベルする直前の時刻がリバーウッドのセルに入ったとみなされる)のかと思いきや、リバーウッド→マルカルス→ソリチュード→ホワイトラン→リバーウッドの経路だと死体は消えないのです。何でやー!
……まあ、確実に言えるのは、ファストトラベルの時間を含めずに24時間以上待機した後だと死体は消えるということです。
ちなみにこの24時間待機後というタイミングではリスポンはしませんので、リスポン属性のあるNPCであっても復活はせず、死体が消えるだけになります。
そんなわけで、死体が消えるのは「iHoursToClearCorpes」(デフォルト24時間)の時間以上どこかで待機した後、もしくは「iHoursToRespawnCell」「iHoursToRespawnCellCleared」で設定されたリスポンのタイミング(デフォルト10日、クリア済は30日)なわけなんですが、実はこの時点ではまだ、死体が消えたNPCはデータ上から完全に消滅したわけではありません。
死体が消えてしまった後でも、ロキールさんのRefIDをコンソールコマンドで直接「prid」してみると、削除予定のDマーク付きではありますが、しっかり存在していることが確認できます。
リスポンのタイミングでお掃除されたロキールさんのRefID
死体が消えても
コンソールコマンドの「MarkforDelete」を使用した時のような「D」の印がついています。
ちなみにこの状態でも「resurrect」コマンドを使えば、ロキールさんは一発で何事もなかったように生き返ります。また、念のためロキールさんを30人ばかり一気に殺して確かめてみたんですが、30人全員が死体が見えなくなったリスポン後でもRefIDは消滅することなくしっかり残存しておりました。
さらに遠方の町に何度もファストトラベルしたり、セーブ&ロードを繰り返したり、リスポンを何周と重ねてみたり、付近の住人たちを追加で殺害してみたり、思いつく限りの行動をいろいろ取ってみたんですが、ロキールさん達のRefIDはいつになっても消滅してくれませんでした。
セーブ後、一旦ゲームを終了して再びゲームを起動し直しても、死んだロキールさん達のRefIDは削除予定の印がついた状態のまま、依然として「prid」で選択できてしまいますし、蘇生させようと思ったらいつでも復活できてしまいます。
まさか……死んだNPCのデータって、ずっと消えないまま残っているの!?
もしや……と思いホワイトランに行って「prid 2c927」→「resurrect」してみると、
なんと、一年以上前に死んだはずのペラジア農園の人が復活してしまいました。
一年ぶりの復活
そんな(愕然)……このウルフリック首長のデータでペラジア農園の人が死んだのって、記憶はあまり定かではありませんが、確かDawnguardが発売された頃だった筈ですよ?
(吸血鬼の襲撃のとばっちりで死んだ気が……ってかこの人、灰にされたような気が……)
いったいセーブデータにはどれだけ昔の死人のことまで記録されてるんでしょうか。
もしかして予め固定配置された、esmやesp由来のNPCは完全削除はされない仕組みなんでしょうか?
ならば……ゲーム中で自動生成されるタイプのNPCは?
あんな畑で採れるタイプのNPCのことまでセーブデータに残る仕様なんだとしたら、とんでもないことになりますよね!?
Dawnguardで追加される、量産型フォロワーのトロール君。
IDの先頭2ケタの「ff」が自動生成されるオブジェクトの印です。
量産型トロール
たとえばこの武装したトロール君……とっても仕草がキュートで、ハスキー犬にも負けないくらいラブリーなペットフォロワーなのですが、彼らは固有の名前を持つワンコ達とは違い、必要になったらその都度生成され、いらなくなったら破棄されるという、使い捨ての生き物です。
こういったゲーム内で自動生成されるNPCというのは、予め発生数の決まっていないランダム沸きのNPCに多く見られます。(タロスお遍路で遭遇した帝国兵とストクロ兵の囚人のご一行様とかね)
つまりプレイ時間が長くなれば長くなるほど無限に増えてゆくというわけでして……そんな奴らのデータまでいつまでもセーブデータに残るような仕組みなんだとしたら、非常にヤバイ!ですよね。

そんなわけで戦々恐々としつつ確認してみたのですが、自動生成型のNPCが死んだ場合は、リスポン後、その死体のあった場所から離れた場所で「セーブ」してそのデータを「ロード」することでRefIDが消滅し、データ上の存在を完全に確認できなくなりました!
(ちなみにセーブ&ロードをする前……単にロード画面を挟んでいるだけの状態ですと、彼らのRefIDはいつまでも消えずに残り続けていました)
どうやら自動生成されたNPCは、削除予定のDマークがついた状態になると「セ-ブ」データへの書き込みからは除外され、その除外されたセーブデータを改めてゲーム中に「ロード」することで削除が初めて完了する……という仕組みのようです。
思い起こせばCritterの解析でも、スクリプト生成されたマーカーが「セーブ」&「ロード」という行為を挟むことで完全に削除されてしまい、それゆえに「セーブ」&「ロード」を経た後から幽霊Critterが「削除するものが無い!」と騒ぎ始めるというカラクリになっておりました。
あれと同じ挙動を取るのだとしたら……どうやら自動生成されるNPCの「死」については、セーブデータにいつまでも残るかもしれないという心配はしなくても良さそうです。
もちろんその死体に何のスクリプトもクエストのエイリアスもついていない場合に限るわけですが。


ところで検証している最中に偶然発見したんですが、死体がリスポンのタイミングで消えるのではなくて、死んでから数分しか経っていない、しかもプレイヤーはその場にずっと居たままという状態でも、死体が突如として消える現象があるんですね。
もしかしたら敵をわんさかと沸かせるModなどを導入されている方はとっくにご存知の、よくある現象なのかもしれませんが……どうやら、とある一定時間内に一定以上の死体が発生した場合、PCの負荷を減らすためなのか何なのかわかりませんけれども、余剰と見なされた死体がいきなり見えなくなる現象が起こるようです。
折り重なって倒れるロキールさん達。
20匹いた筈なのに……数えてみたら14匹しかいません。
ロキールの山
ちなみにこの現象、コンソールコマンドで被験者を「kill」や「killAllActors」などしていた時にはちっとも発生しませんでした。いったいどのような状況でそういった現象が起きたのかといいますと……実は検証するのに飽きて、ちょっとしたModを作って試していた時なんです。
それはインベントリに入った瞬間、持ち主のHPに30のダメージを与えるという、たわいもない毒リンゴModでして……ちなみに被験者のロキールさん達には、その毒リンゴを見つけたら、それが他人の物でもパクらずにはいられない、というAcquire(獲得)タイプのAIパッケージをつけてやっていました。
そんなわけで、その毒リンゴをロキールさんの群れの中に一個投げて落としますと……彼らはAIの設定に従って一斉に毒リンゴめがけて駆け寄ってくるんですね。
で、運よく最初に飛びついた一人が毒リンゴをゲットするわけなんですが、ロキールさんはベセスダ様の陰謀でHP25しかないため、毒リンゴから30のダメージをくらって即死してしまうのです。
すると近くにいたロキールさんが、すかさずその死体から毒リンゴをネコババして……そいつもリンゴをパクった瞬間「ああっ」とか叫んで死んでしまいます。
そしてさらにそいつの死体を漁ったロキールさんが「ううっ」と唸って倒れ、さらに次のロキールさんが「一体誰がこんなことを!」とか嘆きながら毒リンゴを奪って崩れ落ち、その次のロキールさんが「一体何なんだ?」とか驚きながらひっくり返り……
…とまあ、そうやってロキールさんが芋づる式にバタバタと倒れてゆく有様を楽しく鑑賞してたら、積み重なったロキールさんの死体が消える瞬間をばっちり目撃してしまったというわけなのです。
ええ、ちょっと疲れてます。年末忙しかったもんで。
リンゴではなく、ハニーナッツのおやつで「ホウ酸ダンゴ」を作るべきだったかもしれません。
毒リンゴ
「あれ?」と思って、何度か試してみましたが、毒リンゴ連鎖でロキールさん達を一網打尽にすると、毎回きまって14体しか死体が残りません。
ロキールさんを20匹から30匹に増やしてためしてみても、死体を数えてみると、やはり残存するのは14体までです(最初は多く残ってるように見えても数えてる最中に死体が消えたりします)。
これはもしかすると、何か死体関連の描画のセッティングがあるのかもしれない、と思って、試しに「iRemoveExcessDeadCount」というgame settingの値(デフォルトは15)を「7」にしてみたら6体の死体が残り、「3」にしてみたら2体の死体だけになりました。
どうやら描画されるロキールさんの死体の数はこの「iRemoveExcessDeadCount」という設定値に関連があることは確かなんですが、いまいちおばちゃんにはその仕様がよくわかりません。
どういうわけか死体の数はその数値よりいつも一つだけ少ないし、また近くにいるリバーウッド住人を追加で殺してみても、その数はカウントされないんですよね。
もしかしたら死体が積み重なるくらいの距離内で殺さないといけないのか、あるいはNPCの殺される時間の間隔なども一定値を満たした連続死でないと適用されないのか……
ま、その発生条件はよくわからないにしても、覚えておいた方が良いのは、スカイリムではそういった余剰の死体が自動的に非表示にされる現象がある、ということです。
この現象に巻き込まれて死体が消えてしまった場合、死体がdisableされている状態になっていますので、もしその個体を生き返らせたいならば「resurrect」だけでなく「enable」を使ってやる必要があります。
フォロワーなどがこういった死体消去の対象になるかどうかはわかりませんが、もしmovetoしてもフォロワーの死体が見つからない、なんていう状況になったら「enable」してみると発見できるかもしれません。


さてお次は、死霊術によって灰にされてしまった場合の死体について調べてみようと思います。
おばちゃんは今まで、死体を灰にされたら生き返らせることはできない、と何の根拠もなく思い込んでいたんですが、果たして本当に灰になったら蘇生は不可能なのでしょうか?
なんか妙に満足そうなイイ顔してますね。死顔が素敵って素晴らしい。
ゾンビロキール
ロキールさんの死体を死霊術で蘇らせて、灰にしてみてから改めてロキールさんのRefIDを調べてみると、たとえ姿が見えなくても、そのRefIDには特に異変もなく、削除マークの印すらつかずに、ごく普通の死体と同じようにデータ上に存在していることが確認できました。
また、ロキールさんの「灰」は、RefIDを調べてみると「ff000a88」になっていました。
先頭が「ff」なのは、ゲーム中に生成されたオブジェクトだからですね。おそらく「灰」は死霊術の魔法効果で自動生成されるものなんでしょう。
この灰はいったいいつ消えてなくなるのか……念のため確認してみると、この灰がお掃除されて見えなくなるのは死体の時と同じようにリスポンのタイミングのようでした。
さらに自動作成のNPCの死体の時と同じように、セーブ&ロードをすることで「灰」のRefIDそのものが綺麗さっぱり完全消滅することも確認できました。
昔はこの灰はいつまでも残るので有名でしたが……アップデートでしっかり改善されたようです。

ところで、灰が消えたリスポン後のタイミングで、ロキールさんのRefIDを改めて調べてみたのですが、ちょうど死体がリスポンのタイミングで消えた時のように、その時点でのロキールさんのRefIDは、削除予定のDマーク付きの状態に変化していました。
そこで「resurrect」をかけてみると……なんと、灰になって消えた筈のロキールさんは何事もなかったように元気に復活するではありませんか!
あれれ? 灰になっても、全然蘇生オッケーじゃん。
おかしいなあ……おばちゃんが灰になったら生き返らせることはできない、と思い込んだのって、実際に試してみて「こりゃダメだ」と思ったことがあったからなんですが……
昔試してみたのって、灰が消えた後ではなく、灰になってからすぐ、だったのかなあ。

そんなわけで、まだ灰があるうちにロキールさんのRefIDを「resurrect」をしてみたところ、やっぱりというか案の定というか、ロキールさんの姿はその場には現れず、蘇生はしませんでした。
しかしおかしなことに、何やらロキールさんの灰の山を調べるとロキールさんの声がします。
最初は幻聴か何かかと思いましたが、灰の山をアクティベートするとやっぱり、「は……はい?」とか「何だ?」とか言うロキールさんのほわわんとした声が聞こえてくるのです。
ロキールさんはまさか、灰として新たに生まれ変わったんでしょうか。
いやいやいやいや……
お話できるようになったロキールさんの灰。見かけによらず芸達者です。
灰の山
ためしにロキールさんのRefIDをpridして、現在の所在地の座標を調べてみると、ちゃんとx座標もy座標もプレイヤーのごく近辺の範囲に存在していることが確認できます。
…というか、何度か座標を調べてみると、毎回、前の数値とは違う座標値が出てくるんですね。
これは……どうやら灰の山になったわけじゃなさそう。だって動いてるもん。
おそらくロキールさんは、その辺をぶらぶら歩き回ってるんじゃないのかな。
いました。ロキールさんは灰ではなく、透明人間として生き返ってたみたいです。
新たなゴースト
灰の山を調べた時にロキールさんが返事をしたのは、おそらく死霊術によって作られた灰の山は、灰になったNPCをアクティベートするのと同じ動作になるという仕掛けがあるためではないかと思われます。
ロキールさんが死んでいる状態だった時は、灰の山を調べることでロキールさんのインベントリにアクセスすることができていたわけですが、ロキールさんがresurrectコマンドによって生き返ってしまったので、ロキールさんと「話す」という挙動に変わってしまったのでしょう。
ちなみに隠密のしゃがんだ状態で灰の山を調べてみたところ、ロキールさんのインベントリを覗くことができました(ようするにスリの状態になったわけですね)。
ロキールさんが透明人間として新たに生まれ変わっても、以前の肉体の残骸である灰の山との間には切っても切れない深いつながりがあるようです。

ところでロキールさんがなにゆえ透明人間として蘇ってしまったのか、についてですが……
こちらをご覧ください。
灰になる途中
これはロキールさんが灰になってゆく途中のスクリーンショットですが、ほわほわっとした光の粒が舞う視覚効果と共にロキールさんの体が透けていっているのが分かるかと思います。
おそらく死霊術の効果が解けて灰になる時、いきなり死体がdisableなどで瞬時に消えるのは変なので、死体の透明度(アルファ)をフェードアウト効果つきで「0」にされたのです。
その透明度の設定が残ったままになっているから、ロキールさんは透明人間として復活しちゃったのではないでしょうか。
そんなわけで、コンソールコマンドの「SetActorAlpha 100」でロキールさんの透明度を全快にしてみると、ちゃんと元通りに、めでたく完全復活を遂げることができました。
これでもう吸血鬼達が街を襲撃しに来ても怖くありませんね。灰にされてしまっても、
「resurrect」→「SetActorAlpha 100」のコンボで生き返るんですから。
もちろん、あらかじめNPCのRefIDを控えておく必要はありますが。


さて、だいぶ長くなってまいりましたが……お次はあなたの知らない世界にいつのまにか死体が移動しているという、怪談のような「死」の現象について調べてみたいと思います。
下のスクリーンショットのような不気味な場所……通常ではプレイ中に辿り着く場所ではありませんが、街の住人などの所在を「moveto」して突き止めようとしたら、ここに来てしまった……なんて方も案外いらっしゃるのではないでしょうか。
ここ、周囲の壁の妙な光沢といい、形状といい、最初に来た時はビックリしますよね。
WIDeadBodyCleanupCell
この死体安置所のような場所は「WIDeadBodyCleanupCell」というID名のセルでして、「WIDeadBodyCleanupScript」というスクリプト付きで生成されたNPCが死んでしばらくたった後(デフォルトでは半日)に、とあるクリーンナップ処理を行うために転送される場所のようです。
とあるクリーンナップ処理というのは、そのNPCの所持品が、自身の「棺」のコンテナにごっそり移動するという「埋葬」を模した死後処理のことです。
つまり、この死体安置所に送られるのは、各街の「死者の間」などにきちんと埋葬される場所を持つ市民たちというわけなんですね。
たぶん生前にきちんと墓を買ってるとか、きちんと税金を納めてるとか、近所の人達との付き合いをおろそかにしていないとか、そんな理由で手厚く葬ってもらえるんでしょう。

ところでこの「WIDeadBodyCleanupCell」というセルには、メインクエストの「外交特権」でお世話になるマルボーンさんがぼんやり所在なさげに突っ立っていて、最初に来た時はギョっとさせられます。
もともと死にやすい人ではあるし、場所が場所だけに、「あら、この人もいつの間にかお亡くなりになってたのね……(涙)」なんて思うわけなんですが、確認してみると、どうやらこのマルボーンさんはマルボーンさん本人ではないようです。
この人はクエスト「外交特権」の裏方のNPC……偽マルボーンさんです。
フェイクマルボーン
メインクエストの「外交特権」のくだり……ソリチュードの宿屋でマルボーンさんと打ち合わせをした際に、マルボーンさんが予めサルモール大使館に武器や装備を運んでおいてやる、というので所持品を彼に預けるという一幕があったかと思います。
実はあの時、アイテムを預けた相手は目の前に居たマルボーンさん本人ではなく、このセルに待機していたフェイクのマルボーンさんだったみたいです。
なんでまたこんなややこしいことを……と呆れてしまいますが、もしかするとマルボーンさん本人のインベントリにプレイヤーのアイテムを預かってしまうとマルボーンさんに何か事故があった時に紛失してしまうかもしれない、という心配があったのかもしれません。
しかし、何も裏方のマルボーンさんをこんな不気味な場所に待機させておく必要は無いですよね!?
なんでわざわざこんな場所に配置したのかなあ。

ちなみにこの死体安置所に送られてくるNPCは、街の住人達……それも雑貨屋や鍛冶屋など店を営んでいる市民が多いわけなんですが、そういった商人達の「死」について、あれ?と思ったことがあります。
たとえばホワイトランで雑貨屋を経営しているベレソアさん……この方って、一度死んでしまうと、resurrectで生き返らせてやっても雑貨屋としてのセリフが出てこなくなるんですね。
これは一体どういうわけだろう、と思ってベレソアさんのデータをよくよく見てみたら……思いも寄らない落とし穴があって「あらら」と思いました。
さすが英国人をモデル?にしたブレトン……皮肉のセンスが違います。
ベレソアさん
ベレソアさんは例えるならば、「ホワイトラン劇場」というお芝居(Quest)で「質屋の主人(PawnshopOwner)」という役(Alias)を演じている最中だけ、商売できる機能を持っている役者さんのようなものです。
しかもベレソアさんが演じる「質屋の主人」という役には、死んだらバックアップの人に役を譲って即座にその役を降りるという、スクリプトがついてます。
このスクリプトさえついていなければ、たとえ死んでも勝手に役から降ろされることはないので、商人としてのフラグを失うことはないんですが……この引継ぎのようなシステムがかえって仇になって、ベレソアさんは商売ができなくなるようです。
ちなみにベレソアさんのバックアップ役はイソルダさんなんですが、彼女がベレソアさんの跡を引き継いで、ベレソア一般雑貨店の商品を売ってくれることは通常の状態ではないだろうと思います。
もしかしたらUnofficial Skyrim PatchなどのModを入れてたら変更されてるかもしれませんが……イソルダさんは雑貨屋商人としてのフラグが立っても、ベレソア一般雑貨店の店内に入ってくるというスケジュールをもたないので、商売可能なロケーションの条件が整わないみたいなんですよね。
ちなみにイソルダさんをmovetoで強制的に店内に連れてくれば、その間だけは商品を売ってくれます。
しかしそれにしても、なんでまた後継者がイソルダさんなんでしょうか。
店を譲るんなら、あのバイト君に譲ればいいのにさ。

そんなわけで生き返らせたベレソアさんを再び雑貨屋として働かせるには、彼をあの気味の悪い死体安置所セルから、元のベレソア一般雑貨店までmovetoで連れて戻ってきて、
setFactionRank 51596 0
setFactionRank 51599 0
…と、ベレソアさんを手動で商人系のファクションに加入させてやる必要があります。
ちなみに「51596」というのが商人が加入する「JobMerchantFaction」のID、「51599」の方が雑貨屋さんが入会する「JobMiscFaction」のIDです。
ベレソアさんの他にも、こういった後継者システムが仇となって商人役のエイリアスから追い出されてしまい、商売ができなくなってしまうNPCがいるかと思われます。
もちろん引継ぎがうまくいって後継者が代わりに売買を行ってくれる場合は必要はないでしょうが、もしそういったフォローがない場合は、上記のように死んだ商人のファクションを改めて手動で設定してやる必要があることでしょう。


お次は死体がいつまでも消えないという現象の謎について調べたいと思いますが……だいぶ長くなってきましたので、続きはまた今度にしておきたいと思います。
死体だの埋葬だの、なんだかさんざん縁起の悪い話をしてしまいましたが、皆様どうか良いお年を。

2013/10/17

スカイリム室内装飾ガイドの続きの話

スカイリムの世界では、プレイヤーが自分の持ち物(インベントリ)からアイテムを捨てた場合、そのアイテムの座標は実際の位置とは異なる、ちょっと特殊な状態にあります。
そういった特殊な状態のアイテムは、ロード画面を挟んだ後、そのアイテムのある場所(セル)に改めてプレイヤーが侵入する時に初めて実際の位置と座標が一致する通常の状態になります。
そのため自宅などの飾りつけをする際は、捨てたアイテムをロード前にいくら動かしても無駄です。
そのアイテムが武器、もしくは最初からそのセル内に存在している場合でない限り、大半のアイテムはロード画面を挟むと、アイテムを捨てた直後の位置に配置が戻ってしまいます。
アイテムを捨てたら、まずは外に出て、ロード画面を挟んで戻ってくる。
それがスカイリム室内装飾のお約束です。

ところでこの不思議な現象についてなんですが、少し補足することがありまして、実はコンソールコマンドを使って直接、プレイヤーのインベントリからアイテムをドロップさせた場合は、ちゃんと実際の位置と座標が連動する通常の状態でセル内に出現するんですよね。
「drop」コマンドだけではなく、アイテムを新規生成する「PlaceAtMe」コマンドでも同様です。
またコンソールコマンドではなく、スクリプトの処理でアイテムを出現させる場合も、最初から座標が連動する状態になってます。

…ですから、たとえばプレイヤーがアイテムを置いた場所に別の何か別のオブジェクトを配置するようなModを作る場合は、プレイヤーが「アイテム」を捨てた瞬間に、そのアイテムとそっくりな別の「アイテム」を「PlaceAtMe」ですげ替えるという小技を使うとうまくいきます。
プレイヤーが捨てたアイテムをそのまま、他のオブジェクトを配置する目印として使ってしまうと、実際の座標と見た目の位置が違うので、正確な位置指定ができませんのでね。

ちなみに「アイテムを捨てた瞬間」というのは、そのアイテムがセル内にロードされる瞬間に稼動する「Event OnLoad()」のタイミングや、もしくはアイテムがインベントリから別の場所に移動した瞬間の「Event OnContainerChanged()」のタイミングで察知できますので、それらのイベント時に捨てたアイテムとそっくりさんな別アイテムをPlaceAtMeで新規配置してやればよいです。
スクリプトによる配置は瞬間的に行われますので、形状が同じ物であればアイテムを捨てた瞬間に別の物にすげ替えられた、ということに気づく人はいないでしょう。
もちろん、捨てた瞬間に稼動するようなスクリプトをアイテムに直接つけた場合は、PlaceAtMeですげ替えるアイテムの方は最初に捨てるアイテムとはBaseObjectが異なる別個の物である必要があります。
ややこしいですが、プレイヤーのインベントリから捨てる専用のアイテム(a)と、位置を指定するための配置用アイテム(b)の2種が別オブジェクトとして必要、ということですね。


ところで最近気がついたのですが、実は「PlaceAtMe」等のスクリプト、もしくはコンソールコマンドでアイテムを配置していても、そのアイテムの座標が実際の位置と連動しない特殊な状態になってしまう…という状況があります。
それは、そのアイテムと同じnifファイルを使っているアイテムが、既に座標連動しない特殊な状態でセル内に存在している場合…です。
つまり、PlaceAtMe等で配置するよりも先に、プレイヤーがそのアイテム、もしくはそのアイテムと同じnifファイルを使用している別アイテムをセル内に捨ててしまっていると、コンソールコマンドやスクリプトで配置されたアイテムもプレイヤーが捨てたアイテム同じように座標が連動しない状態で配置されてしまうのです。……地味に困ります、これ。
同じ形状ですが、左の銀の皿にのっているのが「イスグラモルのスープスプーン」、
右の皿は単なる「フォーク」です。

スプーンなのに、なにゆえフォークなのかはさておき……PlaceAtMeで配置したスープスプーンも
先にプレイヤーによってフォークが捨ててあると、座標は連動しない状態で生成されてしまいます。
セル内のアイテムの座標の挙動については、過去に色々実験をしたことがありまして、まあ、詳しくは過去記事(【実験編】【考察編】)を直接見ていただくのが良いのですが、あまりにもクソ長いので簡単にまとめますと、プレイヤーが捨てたアイテムでも、同じセル内に既に座標確定している同種のアイテムがある場合は、そいつが一種のテンプレートのような役目を果たすのか、ロード画面を挟まなくても最初から座標と見た目上の位置が連動している通常の状態になるんですよね。
…で、過去の実験ではそこまで思い至らなかったんですが、実はそのテンプレート的な存在になりうるのは、座標確定している通常の状態のものだけではなかった…ようなんです。
実はプレイヤーが捨てた座標連動しない特殊な状態のアイテムも、セル内に同種のアイテムがいない場合は「テンプレ」となって、後に続く弟たちの挙動を決めてしまう影響力があったんですね。
しかも参照しているnifファイルが同一のアイテムは、たとえBaseObjectが別の異なるオブジェクトでも、最初に呼び出された物にならって、座標連動する、しないという特性を帯びてしまうようなのです。
うーむ、これっていったいどういう原理なんでしょうねえ……
まあ、仕様ですと言われれば「そうですか」と思うしかないわけなんですけども。
しかしこれだけのアイテムをいっぺんにバラまいても画面がカクついたりとかしないのはスゴイです。
そのための仕様です……と言われたら、納得せざるをえない。

ちなみにこれはどんなアイテムが水に浮くのか調べていた時のスクリーンショット。
決して自宅のゴミを不法投棄しにきたわけではありません。
そういえば、まったく同一のnifファイルでも、格納されている場所(パス)が違えば、別のメッシュデータと認識してくれるようでして、座標連動する、しないの特性は引き継がれることはありませんでした。
ですから上記の薪をキャンプファイヤーに置き換えるModなどで、アイテムの外観にゲームオリジナルのバニラのnifファイルを使う場合は、念のためそのMod専用のフォルダ内にnifファイルをコピーして参照場所を変えて使用した方が良いかもしれません。
ゲーム本体のメッシュの場所をそのまま指定していると、同じnifファイルを使った他のアイテムが、Modの配置用アイテムの座標を狂わせてしまう可能性がなきにしもあらず……ですので。

2013/01/06

ウィンターホールド大学教師陣によるバトルロイヤル

魔法が忌避されがちなノルドの地・スカイリムにありながら、魔術の鍛錬や習得を望む魔術師たちがタムリエル中から集まる学術の塔、ウィンターホールド大学……

大学のクエストを進めてゆくと、プレイヤーは魔法の実力の如何に関わらず、大学最高峰の地位であるアークメイジの座に就任することになりますが、果たして他に適任な実力者はいなかったのか……
またクエストの途中、あえない最期を遂げるアークメイジのサボス・アレン氏はどの程度の実力の持ち主だったのか……などなど、いろいろ気になり出したら眠れなくなってきてしまったので、大学関係者(教師陣)の面々を集めて戦わせて検証してみることにしました。
試合はバトルロイヤル方式で、最後の一人が残るまで戦ってもらい、生き残った順から高い点数をつけていこうと思います。
一回きりのバトルだと、勝敗は運の要素が大きすぎるので、試合は20回ほど行って、総合で誰がどのくらい強いのかを判断するつもりです。
【ウィンターホールド大学教師一覧(教師じゃない人も若干いますが)】
ウォンターホールド大学教師一覧
ちなみに各先生方の能力値のデータは、レベルがプレイヤーと連動するタイプのキャラについては、そのMaxレベルの数値に合わせて設定してやることにしました。
そんなわけですので、Maxレベルが30止まりの回復魔法のコレット先生や、召喚のフィニス先生などは、Maxレベル50クラスの他の先生方に比べると、最初から不利な状態です。
レベル固定の司書のウラッグ先生(Lv10)や、付呪のサルジアス先生(Lv4)に至っては、他の先生方と同じ土俵に登らせるのはもう苛め以外の何物でもないと思うんですが、デフォルトの設定がこうなっているのですから、このままで頑張っていただくことにします。
参考までに……先生方の能力値です。
【破壊】ファラルダ Lv50 HP640 MP495 SP50 破100 回100 片99 重99 変68
【幻惑】ドレビス・ネロレン Lv50 HP458 MP295 SP132 幻100 破100 片99 重99 回66
【変性】トルフディル Lv50 HP658 MP413 SP214 変100 隠87 話87 幻87 回54
【召喚】フィニス・ゲストール Lv50 HP292 MP243 SP50 召88 回84 変62 破57
【付呪】サルジアス・トゥリアヌス Lv4 HP75 MP60 SP60 付26 回27 破22
【回復】コレット・マレンス Lv30 HP342 MP295 SP98 回97 変97 隠67 召51
【調達】エンシル Lv40 HP375 MP295 SP115 破100 幻100 片72 重72 回43
【顧問】アンカノ Lv50 HP459 MP376 SP50 召100 破100 変100 回100 隠68
【学長】サボス・アレン Lv50 HP559 MP576 SP150 召100 破100 変100 回100 隠68
【補佐】ミラベル・アーヴィン Lv50 HP559 MP576 SP50 召100 破100 変100 回100 隠68
【司書】ウラッグ・グロ・シューブ Lv10 HP175 MP130 SP80 弓34 隠35 軽28 回28
【考古】アーニエル・ゲイン Lv30 HP392 MP343 SP50 召88 回84 変62 片57 隠36

スキルの数値だけを見ると、アンカノさんやミラベル先生はアークメイジに匹敵する実力をお持ちのような感じなんですが、実際には取得している魔法の種類やAIの戦い方が勝敗の鍵を握っています。
ちなみにバトルロイヤルの会場は、ウィンターホールド大学の「元素の間」で行うことにしました。こちらは円形の広間を取り囲むように巨大な柱が何本も並んでいて、身を隠すのにもってこいの物陰が多数存在する、魔術師にとっては好都合な戦場です。
教師12人によるバトルロイヤルの様子。魔法がガンガン飛び交うのでド派手です。
バトルロイヤル
魔法のせいで画面にエフェクトがかかり、なかなかうまくスクリーンショットが撮れなかったのですが、せっかくですので戦いの様子をちょっとだけご紹介しようと思います。
炎のマントと魔力の壁で身を固める、鉄壁のサボス・アレン氏。
鉄壁の防御
アークメイジのサボス・アレン学長の実力は、やはり伊達ではなかったです。
ドレモラ・ロード召喚という最終兵器があるのも反則技に近いんですが、この方、ものすごく戦い方が姑息といいますか、AIが狡猾なんですよね。
まず、いろんな方角から的にされてしまう広間の中央には絶対に出て行こうとしません。
毎回、柱の影にうまく隠れながら、他の先生方が集まってるところに、遠距離からどっかんどっかんとエクスプロージョンを決めてきます。
アークメイジを唯一、マットに沈める実力の持ち主、破壊魔法のファラルダ先生。
ドレモラの兄貴
ファラルダ先生もサボス・アレン氏並みに場所取りがうまいのですが、この方は攻撃を食らって膝をついてしまった時でさえも、足をひきずりながら、ちゃんと柱の影に隠れようとするので、感心してしまいました。
回復のタイミングも危なげないし、回避能力もすこぶる高いです。
ファラルダ先生とサボス・アレン氏が最後に二人残ると、なかなか決着がつきません。
まあ、大抵は最終兵器ドレモラを呼び出すアークメイジに軍配が上がるんですけどね。
上画像は、ドレモラの兄貴が突進してくるので仕方なく安全地帯から出てきたファラルダ先生を、柱の影で芋ってたサボス・アレン氏がここぞとばかりに狙撃してるところです。
アークメイジの戦法は理にかなっているのですが……卑怯すぎます。
ある意味、ドレモラよりたちの悪い、アーニエル・ゲイン氏。 なんなのこの人
魔術師にとって、近接戦闘を迫ってくる敵の存在はやっかいな代物です。
その敵の直接攻撃が痛いだけでなく、逃げ回るうちに、せっかく取った安全なポジションを失って、他の魔術師達の魔法の射程範囲の中に身をさらすことになるからです。
まあ、今回は魔術大学の先生たちオンリーの試合なので、ほとんどの人が直接攻撃なんかしないのですが……1人だけ肉弾戦が大好きな変わり者がいました。
魔術大学の先生なのに、拳を使うのが大好きなアーニエル先生。
フックフック
この方、アイスストームやライトニングボルトなど、ちゃんと呪文を取得しているのに、どうして魔法を使わないのかしら、と思ったら……破壊魔法のスキル値が低いんですね。
召喚のスキルはあるので、死霊支配はできるようですが……あとは己の肉体を武器にして戦うしか手段がないみたいです。
それにしてもねえ……他の人がみんな魔法使ってるのに、一人だけ狂ったみたいに拳を振り回してるのって、ものすごく目立ちますよ。
襲われた方も、「えっ、殴るの?素手で?」みたいなビックリした顔で見てるし。
キレると刃物もふりまわします。しかも振り回し方が狂気じみています。
なんとかに刃物
どうやら振り回してるオークのダガーは、ウラッグ先生の持ち物を拝借したようです。
(ウラッグ先生は残念ながら毎回、試合開始早々にお亡くなりになります)
なんとかに刃物…といいますが、得物を手にした後のアーニエル先生の暴れっぷりはますます狂気に拍車がかかり、異様な雰囲気を醸し出しています。
しかもこの人、妙にしつこいというか、一度ターゲットを決めたらとことん粘着するタイプみたいなんですよね。標的にされた方はたまったものじゃないです。
アーニエル氏につられてダガーを抜くアークメイジ。
アークメイジもつられる
さすがのアークメイジの賢いAIも、狂犬モードのアーニエルに対してはどう対処したらよいのか、わからなくなってしまったようです。
懐に入られて、ついダガーを抜いてしまったものの、こんなもの振り回してもダメージなんかたいしたことないわけで……しかし、距離を取って魔法を使いたくても、アーニエル氏がべったり張り付いているものだから、困った顔をしていました。
マント系の魔法で近づくなオーラを出していても、狂犬アーニエルはおかまいなしに突っ込んでくるのだから、どうしようもありません。
飛び散る血飛沫……魔法対決の筈なのに、アーニエル氏の周囲だけ血だらけです。
アンカノさんピンチ
他の先生方の集中砲火を食らってヨロヨロしてるアンカノさんに、すかさず目をつける、血に飢えた獣のようなアーニエル氏。
ただでさえツイてなさそうなアンカノさんが、こんな疫病神に憑りつかれて無事に回避できるはずがありません。
案の定、むちゃくちゃに切りつけられたあげく、とどめまで刺されてました。
フィニッシュムーブ(?)まで繰り出すとは……恐るべし。
とどめの一撃
なんでこんな殺人鬼みたいな人が大学にいるんでしょう?
狂犬アーニエル
なんだかアーニエル特集になってしまいましたが……あまりに1人だけ浮いていたので、つい追いかけてしまいました。
それにしても魔法合戦は見てて楽しいですね。ドラゴンボールの技の応酬みたいで。
各NPCの戦い方も、標的になりやすい人や、大立ち回りの好きな人、遮蔽物に隠れようとする人など、いろいろ特徴があって、何度観戦しても見飽きませんでした。


さて、肝心の結果についてですが……各試合ごとに、最後まで生き残った勝者を12点、その次に残った人は11点、三位は10点…と順番に点数をつけて集計したところ、下記のような結果になりました。
【ウィンターホールド大学・バトルロイヤル勝敗表】
順位 専門・氏名 得点 取得した最高順位
1位 学長 サボス・アレン 235点 1位(17回)
2位 破壊 ファラルダ 207点 1位(3回)
3位 補佐 ミラベル・アーヴィン 192点 2位(6回)
4位 顧問 アンカノ 181点 2位(6回)
5位 狂犬 アーニエル・ゲイン 124点 3位(1回)
6位 変性 トルフディル 121点 3位(1回)
7位 幻惑 ドレヴィス・ネロレン 119点 4位(1回)
8位 回復 コレット・マレンス 111点 5位(3回)
9位 召喚 フィニス・ゲストール 100点 4位(4回)
10位 調達 エンシル 98点 3位(1回)
11位 司書 ウラッグ・グロ・シューブ 48点 8位(1回)
12位 付呪 サルジアス・トゥリアヌス 24点 10位(1回)

優勝はダントツ1位のサボス・アレン氏……やはりアークメイジは圧倒的に強かったです。
疑って申し訳ありませんでした!アークメイジ。
2位~4位のファラルダ先生、ミラベル先生、アンカノ氏は、実力は互角だったとは思うのですが、ファラルダ先生の回避能力と位置取りのうまさが頭一つ分、飛び抜けていたように思いました。
5位~7位の3人も、わずかな得点の差なので、実力は拮抗してると思うのですが、狂える考古学者のアーニエル・ゲイン氏が5位に食い込んできたというのが驚きです。
ちなみに彼はレベル30固定のキャラなんですよね。
20もレベルの違うトルフディル先生やドレヴィス先生を押しのけて5位にランクインするとは……もしレベルが同格だったらどうなるのでしょうか。想像するのも恐ろしいです。
11位12位のお二人は、無理につき合わせてしまってごめんなさい、でした。