2019-12-14

Outer Worldsでコンパニオンが死んでいないのに死亡したと認識されるバグ

https://twitter.com/_taylorswope/status/1205252714680045568

今日、#TheOuterWorldsのパッチ1.2をリリースした。これには「ゲームがコンパニオンを死んだとみなす」バグの修正も含まれている。このバグは俺のキャリアで最も長い時間を費やしたデバッグ作業となった。

このバグの概要は、一部のプレイヤーで、コンパニオンクエストが失敗とクエストログにでる。その理由はコンパニオンが死んだからだ。しかし字祭にはコンパニオンは死んでいないにもかかわらずだ。

これは解せないもので、というのも超新星モードでもなければ、コンパニオンは死なないからだ。

リリース前に1度か2度だけこの問題が発生したが、QAチームは再現できなかったので、その原因を特定することはできなかった。

原因の特定が困難だった理由は、どこで問題が発生しているかわからなかったことだ。問題が発現したすべての例で、10時間以内に問題が起こったのでクエストが壊れたらしい、ぐらいしかわからなかった。

この問題の調査にはすべてのスクリプトとコードで、コンパニオンが死亡すると認識する場所を洗い出す必要があった。

論理的に考えて問題の原因箇所となりうる唯一のスクリプトが実行される状況は、コンパニオンのヘルスがゼロになったときだ。銭湯が終わるまで待ち、復活させる。それ以外の場合に、本当に死んだとマークする。

ゲーム中、コンパニオンが存在するがアクティブなパーティには加入していない常用というのは、船の中だけだ。問題は、コンパニオンが船の中にいるときは、ダメージを受けないはずなのだ。

「ダメージを受けない」というのは「死なない」という意味ではない。攻撃によってダメージを受けないが、他の要素ではダメージを受ける。そのうちの一つは、とても高い距離から落下するというものだ。

問題は、船の中には落下死できる場所はない。そこで、今度はなぜコンパニオンがそんな高い場所に移動するのかということを突き止めなければならなかった。

大量の仮説を考えた。「もしかしたらファストトラベルで他のマップに移動したとき時に位置データが維持されているのではないか」とか「もしかしたら2人のコンパニオンが衝突した時に物理演算によって上方向に加速したのではないか」

個人的にお気に入りの仮説は、「コンパニオンがランダムイベントで牛がスポーンする場所に立っていて宇宙に打ち上げられるのではないか」 だ。仮説が否定されたときはちょっと落ち込んだものだ

そしてゲームがリリースされたが、たまたま発生した本来起こりえない不具合だったという希望は打ち砕かれた。世界中のプレイヤーがコンパニオンクエストが失敗したぞと報告し始めたからだ。

最終的に、ユーザーのレビューの中にあった何気ないコメントに、コンパニオンが虚空を登っているという変なバグを見たというものがあり、このコメントによって問題箇所の特定ができた。

開発上、NPCが周りとインタラクトするシステムは、「家具」とよばれている。これは文字通り椅子に座ると言った家具であることもあるが、端末使用とか壁に寄りかかるといった動作もすべてそうだ。

家具システムの奥深いところに、プレイヤーが会話中は、すべてのNPCに新しい家具インタラクションを無効化するコードがあった。

問題は、ハシゴの使用は2つの異なる家具インタラクションになっていた。一つはハシゴに取り付いて登る動作、もう一つは登るのを辞めてハシゴから降りる動作だ。

そのため、誰かがハシゴを登り始め、停止する前にプレイヤーが会話に入った場合、ハシゴから降りることができず・・・まあ、その・・・

なかなか笑えるバグだ。

20 comments:

hrroman said...

If you are stuck with your marketing assignment then in this case you can opt for our Marketing Assignments. we provide the best Online marketing expert .We also provide Market Analysis Assignment help for students across the globe. for more information contact us +16692714848.

bamgosoocom said...


I know this if off topic but I'm looking into starting my own blog
and was curious what all is needed to get setup? I'm assuming having a blog like yours would cost
a pretty penny? I'm not very internet smart so I'm not 100% positive. Any tips or advice would be greatly appreciated.

Review my webpage - 휴게텔
(jk)

sportstotolink said...

After looking at a handful of the articles on your blog, I truly like your technique of writing a blog. 토토

yasul.top said...

"First off I want to say excellent blog! I had a quick question in which I'd like
to ask if you don't mind. I was interested to know how you center yourself and clear your mind prior to writing.
I have had a tough time clearing my thoughts in getting my thoughts out there.
I do enjoy writing however it just seems like the f

First 10 to 15 minutes are generally wasted simply just trying to figure out how to begin. Any ideas or hints?
Thank you!"

야한소설

ophunter.net said...

Usually I never comment on blogs but your article is so convincing that I never stop myself to say something about it. You’re doing a great job Man, Keep it up. 대딸방

massage.blue said...

Interesting stuff to read. Keep it up. This is very informative and interesting for those who are interested in blogging field. 스포츠마사지

gunma.top said...

"Undeniably imagine that which you stated. Your favorite reason seemed to be at the net the easiest factor to take note of. I say to you, I definitely get irked at the same time as people consider issues that they just do not recognize about. You controlled to hit the nail upon the highest and also defined out the entire thing with no need side effect, other people can take a signal. Will likely be again to get more. Thank you" 출장마사지

casinosite24.com said...

Nice blog and absolutely outstanding. You can do something much better but i still say this perfect.Keep trying for the best 카지노사이트

SAFE SITES18 said...

This blog is very informative the stuff you provide I really enjoyed reading. 토토사이트

SAFE SITES18 said...

This is an excellent post I seen thanks to share it. It is really what I wanted to see hope in future you will continue for sharing such a excellent post. 바카라사이트닷컴

SAFE SITES18 said...

I’m truly enjoying the design and layout of your website. It’s a very easy on the eyes which makes it much more enjoyable for me to come here and visit more often. 카지노사이트링크

casinositewiki 카지노사이트 said...

Hi ! this is often nice article you shared with great information. Thanks for giving such an exquisite informative information. Feel free to visit my website; 카지노사이트위키

casinositewiki 카지노사이트 said...

I am a fan of reading to add insight to information. Thank you for this great blog. this is here, the few months I am visiting and following you. What I really like about you is that your writing style. Feel free to visit my website; 먹튀검증가이드

casinositetop 카지노사이트 said...

I'm writing on this topic these days, , but I have stopped writing because there is no reference material. Then I accidentally found your article. I can refer to a variety of materials, so I think the work I was preparing will work! Thank you for your efforts. Feel free to visit my website; 카지노사이트링크

oncasinosite 카지노사이트 said...

Hi! I just would like to give you a huge thumbs up for the great info you have got right here on this post. I'll be coming back to your site for more soon. Feel free to visit my website; 배트맨토토프로

ireland assignment help said...

Pay someone to do your assignment and save time and effort! With our reliable service, you can trust us to get your assignment done efficiently and effectively. Say goodbye to sleepless nights and let us take care of your assignment needs with professionalism and dedication.

Malta Assignment Help said...

The assignment writers of MaltaAssignmentHelp.com understand the importance of assignments in your academic career. That's why they offer masterful assignment writing services in Malta that are planned to help you succeed. With the writers, you can be assured of receiving custom-written,original assignments that meet your academic requirements.

Diploma Assignment Help said...

Experience academic triumph with our Math Assignment Help Services in the UK. We blend precision, clarity, and in-depth understanding to deliver assignments that stand out. Your success is our priority, and our services reflect this commitment.

clean elriyadh said...

كلين الرياض شركة تنظيف بالرياض: خدمات تميز وجودة
ارخص شركة تنظيف منازل بالرياض

al-duaji said...

شركة النور تقدم خدمة تسليك المجاري بالضغط في الدمام. يتم استخدام أحدث التقنيات والأدوات لضمان فتح وتنظيف المجاري بسرعة وكفاءة.
شركة تسليك مجاري بالضغط بالدمام