Когда закончился июль и начался август, я взялся за то, что должно было быть самым долгим из всех уровней в конце, но не в смысле размера, а по времени, необходимому, чтобы все расставить по своим местам. Шестой уровень, в сущности, простой лабиринт, содержащий стены и этажи, по которым гигантские чужие, похожие на огромные поршни, движутся вверх, вниз и вокруг, пока маленькие ползающие чужие, похожие на сороконожек, карабкаются по полу и потолку, периодически двигаясь вперед и назад. Поршни двигаются только по прямым линиям, а Ползуны подпрыгивают взад и вперед от стен. Правильная синхронизация всего с фоном — это трудоемкое испытание.
Мне пришлось запрограммировать перемещение каждого чужого небольшими частями по одному и убедиться, что они не закончились движением сквозь стену, потолок или зарывались в пол перед переходом к следующей части анимационного пути. Единственный способ это сделать: постоянно собирать и загружать уровень снова и снова и, наблюдая, убеждаться, они пошли туда, куда должны были пойти.
Перебирая другие спрайты чужих, я заставлял их обычно делать то, что они предположительно должны были, затем я мог пропустить что-то, однако на этом уровне все должно было быть на своем месте, я даже не мог продвинуться, используя заново шаблон спрайтового перемещения, так как движения каждого чужого сильно различались. Тут есть небольшая путаница, что должно происходить в конце шестого уровня: он не имеет финального Босса, как на других уровнях, там просто происходит качание Поршней некоторое время, но некоторые люди настаивали, что им в самом деле получалось найти этого финального Босса. Все это тянется от версии для PC Engine\TurboGrafx-16, где после взрыва нескольких этих поршней экран начинает прокручиваться снова, представляя большого чужого, который охватывает обшивку и случайно раскалывается пополам, стреляя огненными шарами. Я предполагаю, что кто-то где-то решил, что финал уровня оригинальной аркадной версии не был достаточно захватывающим или не был симметричным с остальной частью игры, но этого нет в оригинале, поэтому мы не добавляли это в наши версии.
Пока я складывал шестой уровень, Роб закончил работу над звуком и музыкой. Ему потребовалось всего лишь пару недель, чтобы закодировать трехканальную звуковую систему для бесспорно монофонического Спектрума: удивительный подвиг, совершенный как создание всей музыки и звуковых эффектов, как мы и договаривались. Я особенно волновался услышать звук большого Кругового Лазера при стрельбе, так как думал, что немного переборщил, описывая его Робу: "Я хочу, чтобы это звучало, как при расколе вселенной пополам, кричащей от боли!", хотя и это не вполне соответствует моим истерическим требованиям. Остальное было в километрах и километрах дальше от моих "попискиваний" с паузами, которые я придумал для Rampage. Вставить кода Роба, который он назвал БИНАСКАН в мой код было довольно просто, его полные и совершенные инструкции были…
Убедитесь, что байты шаблона звуковой волны не пересекают границу страницы. Также убедитесь в наличии двух свободных байтов в начале ORG OPCODE (для использования в программном перенаправленном стеке).
LD HL, A*256+B+C ГДЕ
A = НОМЕР ЗВУКА.
B = ЦЕЛАЯ/ПОЛОВИННАЯ ИЛИ ЧЕТВЕРТНАЯ НОТА.
C = НОМЕР КАНАЛА.
ЗАТЕМ ВЫЗОВИТЕ BEEP
… и это были они.
Код Роба плавно проскользнул в мой, без свободных промежутков или поврежденных регистров, Роб правильно обо всем позаботился и когда я настроил все подпрограммы и опробовал, то все работало красиво. У нас была одна проблема в самом начале, когда некоторые звуковые эффекты звучали одинаково независимо от того, какое значение "B" мы устанавливали в параметре, но Роб вскоре исправил это, и с тех пор все работало отлично. У меня возникла идея, как Робу получить его деньги, но так как это предполагало солгать Activision, я захотел пока придержать все в себе, кроме того, этот шанс смог сработать, когда игра будет завершена. ЕСЛИ игра будет завершена, я должен буду сказать, что пока Роб и я кодировали игру, Уэйнрайт должен придумать окончательный план, как восстановить контроль над тем, что мы считали его игровым кодом и сбить немного денег с Activision в процессе. К сожалению, у него был недостаток: я бы попал в суд, если бы не подыгрывал.