The Smash Balls
Invasion
The Smash Balls
Invasion

Реализация

В самом начале разработки у меня была идея создать продолжение игры "Arkanoid" - мы даже сделали "интро", для которого я долго сочинял наполненный пафосом и безграмотностью "сценарий":

В качестве исторической ретроспективы можно скачать эту "предысторию":

"Arkanoid 3" Intro
"Arkanoid 3" Intro
"Вступление" для "Arkanoid 3".

"'Arkanoid 3' Intro" в сборнике всех наших игр:

"SBIgame" Bundle
"SBIgame" Bundle
Игры запускаются на современных версиях Windows без каких-либо дополнительных действий.

В итоге от этой идеи отказались - EDV хотел что-то оригинальное, без какой-либо привязки к другим играм. Также сразу было принято решение делать игру для 2-х игроков и расположить "ракетки" по бокам игрового поля (мы посчитали, что так для совместной игры будет нагляднее). Прототип игры создавался для разрешения экрана 320x200 точек:

Игровые элементы прототипа:

"ракетка"
"ракетка"
"кирпичик"
"кирпичик"
шарик
шарик
враг "Микки Маус"
враг "Микки Маус"

Эту версию игры также можно скачать:

The Smash Balls: Invasion (Prototype)
The Smash Balls: Invasion (Prototype)
Первый прототип игры.

"The Smash Balls: Invasion (Prototype)" в сборнике всех наших игр:

"SBIgame" Bundle
"SBIgame" Bundle
Игры запускаются на современных версиях Windows без каких-либо дополнительных действий.

К разработке мы подходили как в "больших" играх - например, расписывали алгоритмы:

И даже pисовали эскизы (многое в игру не вошло):

Сама игра была написана на языке Assembler. Для создания утилит использовались разные языки: например, редактор уровней я написал на Delphi, а компилятор ресурсов в общий файл - на Pascal. Графические спрайты я моделировал в Rhino 3D, а потом обрабатывал в Adobe Photoshop. Перед сборкой в файл ресурсов игры спрайты преобразовывались в формат PCX, а затем приводились к "единой палитре цветов" - для этого EDV придумал целую "теорию палитр", а сам "преобразователь" написал наш друг SaNTa на C++. Для сетевого режима игры использовался протокол IPX - как наиболее простой и универсальный на то время.

В заключение несколько интересных фактов о разработке:

  • Для быстрой перерисовки элементов изображения применялся так называемый "метод грязных квадратов";
  • В игре используется специальный алгоритм сглаживания экранного шрифта;
  • Взрыв "ракетки" - это спрайт взрыва гранаты из "Half-Life";
  • Для визуализации "теории палитр" SaNTa написал программу их просмотра в трехмерном виде;
  • Алгоритм синхронизации в сетевой игре был темой дипломного проекта EDV.
© 2002-2022 Dmitry Zubtsov [Dimich]