Разработчик «Ведьмака 1» рассказал о фатальной ошибке, из-за которой пришлось заново проходить всю игру

/ ИгрыНовости / Игры

Создателям «Ведьмака» пришлось организовать спасательную операцию, когда они случайно отправили важного персонажа в «путешествие» в страну забвения.

Артур Ганшинчик (Artur Ganszyniec) потратил более полугода на прохождение первой части ведьмачьей серии CD Projekt. Для фанатов цикла это было интересно тем, что главный сценарный дизайнер раскрыл множество интересных деталей производства, включая анекдоты о различных проблемах в ходе работы или недоработках, ускользнувших от разработчиков.

ВНИМАНИЕ: дальнейшая часть текста может содержать легкие спойлеры к эпилогу «Ведьмака». Читаете на свой страх и риск!

Где Яэвинн?

Одну из таких историй поляк описал в последнем, 26-м эпизоде своей серии — как раз перед тем (и после того), как он пожаловался на свое «крайне глупое» решение, которое просочилось в релизную версию первого «Ведьмака». Так вот, в определённый момент в эпилоге у игрока должна быть возможность поговорить с Яэвинном. Вот только во время тестов Ганшинчик наткнулся на ошибку: вместо сцены с эльфийским бойцом игра оставалась на чёрном экране.

Теория заключалась в том, что чёрный экран был переходом, скрывающим перемещение соответствующих персонажей на сцену. Однако после короткого расследования создатель обнаружил «небольшую» проблему: оказалось, Яэвинна нельзя было телепортировать, потому что… он не жил. А по крайней мере, игра считала его мёртвым, что потребовало дальнейшего расследования, ведь Ганшинчик был уверен, что они проследили, чтобы ничто в новой локации не могло убить эльфа.

Мы поняли, что Яэвинна там нет, потому что игра утверждала, что он не может здесь появиться, так как мёртв. Мы гадали: почему, кто его убил? Мы убедились, что в этой локации нет ничего, что могло бы его убить. На мгновение мы застопорились, но тогда я подумал: «Когда мы в последний раз видели Яэвинна?».

Как оказалось: в конце 3-го Акта эльфа в последний раз видели живым во время разговора с Геральтом, после которого Яэвинн исчезал. Однако поиск источника последующей ошибки занял некоторое время (как мы упоминали в предыдущей новости: типичная для того времени опора проекта на скрипты давала о себе знать CD Projekt Red), но в конце концов была обнаружена причина, которую невозможно было разглядеть с первого взгляда.

Одна убийственная ошибка = тест на полное прохождение игры

Исчезновение Яэвинна после беседы с героем должно было быть типичной процедурой: мол, NPC телепортируется или «деспавнится», чтобы не занимать место в игровом мире. Загвоздка в том, что вместо типичной команды отзыва какой-то разработчик воспользовался устаревшей командой — неизвестно, из любопытства, от скуки или по другой причине — которая имела «небольшой» и глубоко спрятанный в документации побочный эффект: присваивала данному персонажу метку «мёртв». Другими словами: это был не отзыв, а перманентное убийство NPC.

Это была устаревшая команда, которую уже не следовало использовать. Будь то по ошибке, из любопытства или просто от скуки, автор скрипта добавил к Яэвинну команду с текстом «удалить персонажа, пометить его как мёртвого и убедиться, что он больше никогда не появится».
Но это было трудно заметить. Этого не было в названии команды. Это было запрятано где-то глубоко в документации скриптового языка. Так что на вид это выглядело как стандартная команда «деспавн», и мы понятия не имели, что игра получила приказ, чтобы данный персонаж больше ни при каких обстоятельствах не появлялся.

Чтобы стало «веселее» для создателей, скриптовая система «Ведьмака» также привела к тому, что на этой поздней стадии производства любые изменения — например, удаление убийственной команды — полностью портили файлы сохранений, и, таким образом, кто-то должен был пройти всю игру заново, чтобы проверить, действительно ли ошибка была устранена. Для справки: на завершение только основного сюжета «Ведьмака» требуется около 35 часов. Даже если разработчик использовал сокращения (скажем, абсурдно увеличенный урон, чтобы не тратить время на боссах и мобах), ему всё равно пришлось потратить много часов — только для того, чтобы проверить, исправлена ли одна ошибка.

Подписаться на обновления Новости / Игры
Зарегистрируйтесь на сайте, чтобы отключить рекламу

ℹ️ Помощь от ИИ

В статье есть ошибки или у вас есть вопрос? Попробуйте спросить нашего ИИ-помощника в комментариях и он постарается помочь!

⚠️ Важно:

• AI Rutab читает ваши комментарии и готов вам помочь.
• Просто задайте вопрос 👍
• ИИ может давать неточные ответы!
• ИИ не скажет «Я не знаю», но вместо этого может дать ошибочный ответ.
• Всегда проверяйте информацию и не полагайтесь на него как на единственный источник.
• К ИИ-помощнику можно обратиться по имени Rutab или Рутаб.

Топ дня 🌶️


0 комментариев

Оставить комментарий


Все комментарии - Игры