Как мы делали игру и что из этого вышло

by on July 26, 2014

Пару дней назад один мой старый боевой товарищ кинул любопытную ссылочку на видеоролик.
Оказалось – какие-то ребята прошли и записали на видео игрушку, которую мы писали в далекие и лохматые 90е годы.
Для начала – видео прохождения игры:

Для меня особенно любопытно было именно то, что кто-то все же умудрился пройти эту игру: сам-то я даже и не играл в нее, не говоря уж о том, чтобы пройти до конца.

В то далекое время очень популярными были игры из серии Dizzy, такие аркадно-квестовые приключения, поэтому и было решено написать что-то подобное.

Команда была такая: Дима Романенко - главный идеолог, художник, музыкант, создатель сценария, сцен игры и всеобщий пинатель лентяев; Лёха Леготин - основной программист логики игры, также занимался сценарием, продвижением ее по разным каналам и исполнял обязанности PM; Виталя Савенков - программист, создатель некоторых утилит и библиотек; я тоже делал вспомогательные утилиты и некоторые библиотеки.
Игра писалась весьма долго - это вообще, наверное, мой первый совместный и распределенный проект. У каждого были роли, все были завязаны друг на друга и подводить особо было ну никак нельзя.

По технической стороне вопроса:
Конечно же: ассемблер Z80, это без вопросов - альтернативы этому просто не было. Но нас это не пугало, а только радовало - до сих пор вспоминаю с умилением логичный и очень красивый язык - хотя, конечно не настолько красивый как был в Motorola 68000 но, за неимением Amiga приходилось писать на том, что было. И это нам нравилось!
Я написал для игры низкоуровневые библиотечки работы со спрайтами: хранение, выборка, отрисовка. Также сделал RealSpriteTransformer - инструмент для вырезания спрайтов из подготовленных картинок и сохранение их в отдельный файл, самое крупное, наверное, из моего взноса в игру был RealMapEditor - как понятно из названия - редактор карт для игры. Это были такие экранные редакторы с весьма небедным функционалом.
Помню, что Виталя создал достаточно специфичную штуку для хранения результирующих карт: что-то наподобии zip-архиватора с построением глоссария, всевозможными ухищрениями и прочими такими новыми для нас, тогдашних, вещичками из области алгоритмов и математики. Именно использования такого архиватора/разархиватора позволило вместить немало игровых экранов (насколько я помню, мы делали игру для 48-и килобайтного спектрума). В конечном итоге, как я помню, все прекрасно поместилось и даже осталось место :)

Ну и еще по ходу создания игры нам пришлось придумать название своей группе. Тот же Виталя без труда сгенерировал мега-пафосное имя: Famous Faces Factory - типа: "фабрика известных лиц", а вкратце - FFF.

Хорошее было время, по-настоящему креативное!

PS. Комментарий от Алексея:
Ну, во-первых, Real Sprite Transformer v1 .02 делали как раз вы с Виталием, причем успешно где-то посеяли исходники. Во-вторых, процедуру "лопата" делал как раз я, она все равно не до конца оптимизировала, и иногда глючила, поэтому я ее результат еще ужимал своим головным мозгом, вот! Хотя, может, первую версию и он делал, не помню уже. http://zxpress.ru/book_articles.php?id=454 - там есть упоминания авторов - таки "лопату" для мап едитора я делал!

No Comments

Перепутье программиста

by on April 13, 2014


Последние несколько дней неторопливо размышляю о непростых проблемах выбора.
Имею в виду первоначальный выбор архитектурного решения на этапе проектирования – через несколько месяцев разработки неправильный выбор особенно сильно бьет и наказывает.
Самое нехорошее в этой ситуации – непонятно, как быть? Переписывать все заново и терять время? Тащить дальше кривое решение? Пресловутый рефакторинг?

1 Comment