Adams II (2000)

Материал из Posmotreli
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к навигации Перейти к поиску
Вавилонская башня stub.pngПеревод авторского текста «Bad Game Designer, No Twinkie! II»
Викифицируйте. Улучшайте перевод. Не занимайтесь отсебятиной.

Два года назад я написал статью «Плохо работаешь, игродел», в которой было описано то, что я считаю промахами разработчиков игр, и что надоело видеть в играх. Я получил много электронных писем. Большинство из них вторили: «Мне тоже надоело!», но некоторые заявляли, что иногда я был слишком резок. Итак, я начал делать список того, что меня раздражает. Вот пять, на большее нет места. Итак, представляю статью «Плохо работаешь, игродел, часть вторая». Часть этих ошибок программистские, а не дизайнерские, но, думаю, мысль понятна.

Игры, которые работают слишком быстро[править]

Я знаю, это звучит странно: что, слишком быстро — это проблема? Но я люблю играть в старые добрые игры, а они часто работают на новых компьютерах слишком быстро. К приставкам, это, очевидно, не относится, а на ПК это большая проблема.

С денежной точки зрения издателям, разумеется, до этого дела нет. Для них игра пяти- или десятилетней давности — это не ближе, чем каменный век. Они сделали все деньги, которые могли сделать с игры, игроки должны выкладывать деньги на новые игры, а не играть в старые. Но с инженерной точки зрения это не извинение, это спешное программирование. Если ваша игра работает слишком быстро, значит, вы не следите, как быстро она должна работать. И, наконец, вы тратите впустую самый ценный ресурс — такты процессора[1]! С лишними тактами процессора можно сделать вот что:

  • Сгенерировать промежуточные кадры и более плавную анимацию. Это возможно, если ваша система анимации может делать промежуточные кадры — но таких сейчас всё больше.
  • Потратить «лишнее» время на компьютерный интеллект. Просмотреть дерево вариантов глубже; прокрутить алгоритмы поиска пути подальше, дать монстрам больше мозгов. Масштабируемый интеллект — это нетривиальная задача. Но некоторые части, в которых задействованы повторяющиеся и бесконечные вычисления, например поиск пути, становятся первыми кандидатами на «лишние» такты.
  • Сгенерировать больше многоугольников. Многие игры на слабых машинах урезают количество многоугольников, получается жутко. А почему бы не пойти в противоположном направлении? Разработать игру, которая бы смотрелась фантастически на гипотетической трёхгигагерцовой[2] машине, а затем сделать «масштабирование» под имеющиеся компьютеры. С повышением скорости аппаратного обеспечения игра будет всё красивее и красивее. Конечно, есть вопросы с расходом памяти и другими ресурсами, кроме тактов процессора, но, по-моему, овчинка стоит выделки.

Первая игра, которую мне пришлось писать профессионально, писалась под машины от 4,77 МГц 8086 до 25 МГц 80386. Поскольку в игре был сетевой режим, она должна была нормально работать на всех машинах. Я справился с этой задачей, устроив всё на таймере. Главный цикл крутился с максимальной скоростью, чтобы обеспечить быструю реакцию на клавиатуру и мышь. Но процедуры отображения были привязаны к таймеру и запускались, когда время выйдет. Я не пробовал, но, думаю, она бы шла с той же скоростью и на моём 400 МГц Pentium II.

Нет сохранения и паузы в любой момент[править]

Сохранение игры стало темой споров с самого начала, я в этом споре всегда был на стороне игрока. Многие разработчики не любят сохранение, поскольку оно позволяет переиграть с любого момента, когда какая-нибудь мелочь пойдёт не так, что позволяет проходить игру быстрее и проигрывать не так часто. Короче, игрокам не приходится ощущать разочарование и страдание в том объёме, в котором их приготовил разработчик. Плохо. Переигрывать весь уровень из-за ошибочки, совершённой в конце, надоедливо. А не к этому ли ты стремишься, разработчик?

Это машина игрока. И он что хочет, то и делает. И нечестно штрафовать его, если ему захотелось в туалет или зазвонил телефон. Игроки должны останавливать игру там, где они хотят, не теряя того, что они заработали. Если пауза сильно помогает игроку (например, в тетрисе), игровое поле надо прятать.

Это, понятно, не относится к сетевым играм.

Тупиковые ситуации[править]

Тупики, или, как их называют в романтической британской терминологии, «смертельные объятья» (deadly embrace), происходят, когда два процесса ждут того, что никогда не случится. Избежание тупиков — это классическая проблема информатики: например, процесс A захватил ресурс X, но для продолжения работы ему нужен ресурс Y; у процесса B есть ресурс Y, но он требует X, так что эти процессы бесконечно ждут, пока ресурс не освободится[3].

В игровых терминах тупик наступает, когда нужен ресурс, чтобы строить механизм, который производит этот самый ресурс. Впервые это со мной случилось в Settlers 3. У меня не хватило камня на домик каменотёса, а без каменотёса я не смогу набрать ещё камня. Это не проблема игры, поскольку игра дала мне достаточно ресурсов, чтобы построить домик, но я потратил их на что-то другое. Конечно, отсутствие ресурсов можно сделать условием проигрыша: например, если игрок теряет строительные юниты и здание, производящее их, игра может сообщить о поражении.

Чем сложнее экономическая модель, тем чаще бывают тупики. В Settlers 3 экономика чрезвычайно сложная. Когда я дошёл до этого тупика, мой народ процветал и на меня никто не нападал; я просто допустил экономическую ошибку. К счастью, в игре был обход: разобрать часть зданий на стройматериалы. В конце концов я построил злосчастную избушку, и дело продолжилось.

Другой способ избежать тупиков — это дать дополнительный источник ресурса, пусть даже минимальный. В «Монополии» при переходе через старт даётся двести монет. Даже если у игрока нет недвижимости, с которой он может собирать доходы, ему всё равно даются эти 200 $.

Тупики — это не всегда просчёт разработчика, но нужно или найти способ одолеть тупик (например, пройти старт или разобрать здание), или обнаружить его и закончить игру. Игры, которые попадают в тупик и сидят там вечно, создают впечатление недоделанных.

Толкание громадных камней[править]

Итак, я играю в Indiana Jones and the Infernal Machine, и не могу выйти из первой комнаты. Я не играл много в такие игры, поскольку они для меня какие-то слишком дерганые. Но фирма Lucas Arts сделала эту игру не требующей особой координации. Я перепробовал всё. Не вышло. Не нашёл выхода из первой комнаты… Неудачник!

«Проходилка» сообщила вот что: есть каменный куб, полтора метра в поперечнике, и я его должен тащить куда-то. ЧТО???

Посчитаем[4]. Камень имеет плотность около 3 т/м³, объём глыбы 3,375 м³, в итоге получается около десяти тонн. Вот столько весят огромные опоры Стоунхенджа. А Индиана должен просто толкать этот камень! Понятно, почему я не додумался до этого.

В играх физика и так странная. Например, в Sonic the Hedgehog можно менять направление прямо в воздухе[5]. Я слышу странное жужжание — Исаак Ньютон крутится в могиле. Может быть, перетаскивание громадных глыб и стало избитой темой, но, думаю, с этим надо кончать. Кроме того, игры типа «Индианы Джонса» напоминают реальный мир. Квесты всегда требуют обдумывания, но обдумывание должно быть в разумных рамках — иначе можно думать бесконечно. Мне лично физические просчёты бросаются в глаза. Конечно, это зависит от жанра, но здесь я говорю: «Не будет печеньки!». Индиана Джонс простой человек, а не супермен.

Большие груди и прочее ребячество[править]

Несколько лет назад в фирме EA во время разработки приставочного варианта симулятора американского футбола Madden NFL Football случился казус. Один из художников сделал простую (всего четыре кадра) анимацию девушки из команды поддержки с неправдоподобно громадной грудью, колышущейся вверх-вниз. Художника мгновенно уволили и поручили другому перерисовать девушек. Его уволили не потому, что он плохо рисовал. Уволили его потому, что он был больше заинтересован в своих больных сексуальных фантазиях, чем в работе компании, и попусту тратил время и деньги компании.

У меня есть ответ бездарным олухам, которые допускают в играх большие груди и прочий ребяческий юмор. Только как написать подипломатичнее? Наверное, так:

Повзрослейте!

Вы позорите отрасль. А нам, всем остальным сотрудникам, приходится объяснять родственникам, друзьям, законодателям и всем остальным, что это не мы бездарные вытряхиватели денег, а они. Мне приходится не переставая объяснять всему миру (не геймерам, но людям с правом голоса), что по кучке продуктов, сделанной дебильными подсматривателями и порнушниками, нельзя судить обо всей игровой индустрии в целом. Что такие игры становятся аргументом в руках политиков, которые ратуют за запрет видеоигр. Если вы, конечно, понимаете, к чему приводят ваши похотливые выделки. Но нет, вы продолжаете витать в своих ребячьих фантазиях и не видеть ничего дальше своего полового члена.

Было бы ещё хорошо, если бы вы делали свою работу на совесть. Но ваши творения не тянут даже на эротику. Они не сексуальны и не смешны — только тупы и отвратительны. На зрелом рынке вас бы давно выдавили — хотя бы в подполье. В конце эры порнокоролей, когда они перестали прикидываться легальными кинопродюсерами, они ушли в тень и организовали свою собственную индустрию со своими низкими стандартами качества. Почему бы вам не сделать то же самое — со своими выставками и наградами, и общаться будете с такими же, как и вы — думающими «одним местом»? Вырастайте или уходите.

Примечания[править]

  1. Здесь следует заметить, что эти игры делались в те времена, когда из процессора пытались выжать все соки, ибо критичным было всё — объём памяти, частота процессора, видеокарта — всё. Задача была — заставить всё это работать побыстрее, для чего применялись разные трюки. Когда процессоры стали более быстрыми, игры стали летать так, что приходилось запускать их через замедлялку, которая вставляла такты холостого хода, чтобы игрок успел хоть как-то среагировать. Что-либо сделать с этим сложно, но игроделы пытаются — в переизданиях, например, некоторым играм делают патч для движка, фактически заменяющий графический движок более современным, а текстуры — на более качественные; кроме того, вводится синхронизация с таймером для предотвращения «сверхскоростного полёта» игры на быстрых компах. Но… Иногда проще переписать игру заново, и тогда делается ремейк, а не доделка — Здесь и далее примечания переводчиков.
  2. Статья 2000 года. На момент перевода 3-гигагерцовые машины уже есть в продаже.
  3. Если такое допущено в коде игры, она виснет намертво.
  4. Расчёты переведены в метрическую систему, и Адамс, по-видимому, ошибся: плотность его камня — почти плотность стали.
  5. Впрочем, в играх, управляемых кнопками, трудно варьировать дальность и высоту прыжка, так что простим разработчиков.