На информационном ресурсе применяются рекомендательные технологии (информационные технологии предоставления информации на основе сбора, систематизации и анализа сведений, относящихся к предпочтениям пользователей сети "Интернет", находящихся на территории Российской Федерации)

Игры!!!

69 986 подписчиков

Свежие комментарии

Как одна строчка кода испортила Warhammer Online

И другие истории о небольших ошибках, которые приводят к серьёзным последствиям.

Не так давно автор мода для Aliens: Colonial Marines улучшил поведение искусственного интеллекта в игре, изменив всего одну букву в файле конфигурации. Эта история вызвала бурное обсуждение, а создатели игры даже открыли у себя на сайте вакансию редактора, «который «любит искать опечатки в коде».

Патрик Клепек, журналист Vice, решил напомнить читателям, что история Aliens: Colonial Marines далеко не уникальна. Например, в марте 2018-го игроки выяснили истинную причину странного поведения искусственного интеллекта в Civilization VI. Зачастую управляемые компьютером правители полностью игнорировали экономику и военное дело и вкладывали все ресурсы в религию. Как оказалось, виной всему был баг: слово «yield» (уступать) в коде игры было записано как «yeild».

Журналист решил выяснить, насколько часто в индустрии происходят подобные казусы, и задал соответствующий вопрос в твиттере. С ним связалась Лия Миллер, одна из создателей MMORPG Dark Age of Camelot и Warhammer Online: Age of Reckoning, и рассказала свою историю.

Вскоре после того, как разработчики Mythic Entertainment выпустили Warhammer Online, в их адрес стали поступать многочисленные жалобы от игроков. Все, как один, утверждали, что игра ощущалась медленной, а управление неотзывчивым. Ничего более конкретного недовольные игроки сказать не могли.

Члены нашей команды перерабатывали боевую систему, пытаясь cделать так, чтобы она ощущалась более быстрой, и искали изъяны в работе серверов. Но фидбэк был таким расплывчатым, что исходя из него никто не мог вычленить конкретную причину проблемы.

Лия Миллер

Разработчики делали попытку за попыткой, но решить проблему так и не удавалось. Так прошло шесть месяцев.

Спустя полгода недавно устроившийся в компанию программист заметил нечто странное в коде игры — в нём содержалась строчка, доставшаяся Warhammer Online по наследству от предыдущей игры студии — Dark Age of Camelot. Она была связана с телефонными линиями — строчка была родом из тех далёких времён, когда высокоскоростным подключением могли наслаждаться лишь избранные, а пользоваться телефоном и играть онлайн одновременно было невозможно.

Он работал в компании недавно и ещё не был знаком с кодом. Возможно, именно поэтому он изучил эту секцию кода пристальнее, чем кто-либо до него.

Лия Миллер
геймдизайнер
Dark Age of Camelot

Как только разработчики избавились от этой «древней» строчки, Warhammer Online немедленно заработала так, как и должна была — быстро и «гладко».

В коде Dark Age of Camelot была строчка, которая искусственным образом устанавливала скорость обмена определённых типов данных между клиентом и сервером. Думаю, она служила для того, чтобы улучшать пропускную способность, но, помимо этого, она могла быть частью системы, созданной для того, чтобы игроки, подключённые по телефонной линии, оставались конкурентоспособными в PvP.

Лия Миллер
геймдизайнер

В Dark Age of Camelot эта задержка была практически незаметна — система была рассчитана на стандартные компьютеры своего времени. Однако затем Mythic Entertainment решила использовать тот же самый код для Warhammer Online, совершенно забыв об этой строчке.

Миллер не утверждает, что игра провалилась исключительно из-за ошибки в коде, но она точно не сыграла разработчикам на руку. К тому моменту, как код успели починить, большая часть игроков уже «мигрировала обратно в World of Warcraft».

Другие разработчики также поделились историями о масштабных багах, вызванных незначительными ошибками в коде. Например, разработчик Мэтт Лэйси признался, что как-то раз выпустил игру, которая вылетала в 100% случаев в високосный год, а создатель Semblance рассказал о строчке кода, которая из-за ошибки «съедала» 41 fps, так что в 2D-платформер приходилось играть при 19 кадрах в секунду.

Брайан Шарп, один из разработчиков Deus Ex 2, рассказал о том, как ему в течение трёх лет приходилось неправильно писать слово «acquired» (приобретённый), потому что на самом раннем этапе разработки кто-то впечатал его с ошибкой («aquired»).

Сам журналист вспомнил о знаменитом своей сложностью уровне из Super Mario 64 — в какой-то момент выяснилось, что проплывать через подводные кольца настолько тяжело по вполне определённой причине. Из-за мелкой ошибки в коде физическое расположение колец не соответствовало их визуальному отображению.

Источник

Картина дня

наверх