Game Making
(c) Mad Killer
──────────────────────────────────────────
Guten tak, уважаемые читатели! В этом
разделе вы не найдете готовых процедур и
программ. Так что, любители халявы (тоесть
взял вытянул, вставил - всё работает) эта
рубрика не принесёт для вас должного ре-
зультата, но благо, что материала, ввиде
готовых процедур, предостаточно в других
Sp-изданиях.
Мне всегда хотелось почитать такую руб-
рику, где на простом доступном уровне (а
не как профи - нагрузил кучу инфы и всё)
было всё рассказано о том что и как. С
проблемой написания игры сталкивается, на-
верное, каждый второй спектрумист, будь то
бэйсик или если силы позволяют ассемблер.
В бэйсике проблем намного меньше, нежели в
асме (Ага, и скорость раз в 70 поменьше -
прим. Cooper'а). Поэтому мы постараемся
больше времени уделять написанию трудов
именно на ассемблере. Здесь будет описан
мой опыт в данном вопросе. Как позитивный,
так и негативный. Вообще-то, любой опыт
нужен однозначно, хотя нужно стараться,
чтобы негатива было поменьше. Тогда и про-
блем поубавиться, и высвободится место для
прогрессивной работы.Дабы решить некоторые
вопросы, связанные с этой проблеммой и вы-
нудило меня написать данный опус по этой
теме.
Для начала давайте разберёмся какого жа-
нра игру вы собрались писать. Разобрались?
Ок. Теперь можно взять листок (чистый ;)
бумаги и прикинуть дизайн игрушки. Я делаю
так всегда и в процессе работы внешний вид
довольно часто изменяется в зависимости
от ваших идей, желаний и возможностей. Ли-
стик, обычно, берётся в клеточку, рисуется
рамка размером типа одна клеточка - одно
знакоместо. Далее рисуется примитивный эс-
киз. Если есть под рукой художник или вы
"сам себе режиссер" ;), то с ним обсуждае-
тся возможность технической реализации на-
рисованного. Если результат положительный,
то радуються все ;)
Далее - самое главное, на мой взгляд,
то, что иногда забывается, а потом часто
напрягает разработчиков - это распределе-
ние памяти. Опять же, я, не знав такого
вначале, столкнулся с проблемой нехватки
памяти для моих процедур. Как поступаю те-
перь. Беру опять ручку, лист бумаги, жела-
тельно блокнот небольшой и пишу, что хочу
видеть в своей прогрмме.Все крупные проце-
дуры, музыку, графику, основной код прог-
раммы. Где начнётся объектный код, длину
музыки... Вобщем, всё записываю. Смотрю,
что остаётся. Если память израсходовалась
и что-то не вошло, смотрю, чем можно поже-
ртвовать, а без чего не обойтись. Поверь-
те, сделав это, вы, во-первых, не будете
ломать голову, что куда, во-вторых, как
было со мной, через месяц не забудете, что
куда грузить и как оно взаимосвязанно меж-
ду собой. И одна хитрость: если воз-
можность, то всегда оставляйте буфер в
памяти длиной 6912 байт. Почему именно та-
кой? А вдруг вам захочется кинуть одурен-
ную картинку в конце, а не будет куда? Или
для работы многим процедурам необходим бу-
фер и вы просто не заметили этого, а тут
будет большая радость, длины хватает. И на
самый крайний случай можно туда пихнуть
какой-то финт и всё - вы чемпион ;)
Немного отвлекусь от темы и порассуждаю,
вернее, сообщу вам, дорогие друзья, люди,
господа (кому что больше нравится). Не за-
махивайтесь на огромные проэкты с кучей
уровней и всяких-разных наворотов. Сделай-
те лучше игру с одним законченым уровнем и
попроще, но с возможностью дальнейшего
продолжения игры. Сколько я знаю проэктов
замороженных и безвозвратно утерянных име-
нно из-за этого. Так что, подумайте. Мне
кажется, что людям будет приятнее увидеть
готовую небольшую игру, нежели крутую, но
ввиде демо-версии.
Идём дальше, товарищи ;) Для более-менее
внятного понимания придумайте, как будут
называться файлы к вашей игре, а то, быва-
ет, файлов немерянно и куда их деть, хрен
вспомнишь. (Прим. Cooper'а: мда... Вообще-
то, на мой взгляд, иметь кучу файлов - это
плохой тон в написании игр. Можно работать
непосредственно с трэками и секторами, ми-
нуя файловую систему. А можно извлекать
файлы непосредственно из hrip или rar ар-
хивов. Сложного там, в принципе, ничего
нет.) Я бы посоветовал делать так:
name.asm1 (исходный текст асма версия 1)
name.sprb1 (спрайт битвы 1)
name.scrov (экран Game Over)
Ну и так далее. Так довольно удобно ориен-
тироваться в том море файлов, относящихся
к своей разработке.
Слава Богу, это уже прошли. Будем пыта-
ться дальше разобраться в перепетиях дан-
ного мероприятия! ;)))
Ну и ещё один немаловажный вопрос. Обя-
зательно делайте несколько копий всего,
что делаете! И желательно ежедневно (вер-
нее, постояно, после каждого шага). Мне
было очень и очень плохо, когда диск с
моим полугодовым трудом вылетел из-за глю-
ка TR-DOS. Я чуть было не сдох от злости и
была бы под рукой кувалда, то я за себя не
отвечаю! ;)))
Также стараюсь всегда, если это возмож-
но, хранить данные так: один диск графика+
музыка (один резерв), другой диск - тексты
асма (также копия)+рабочий диск (вся имп-
ровизация+музыка+графика и стараюсь, по
мере возможности, чтобы всё это работало.
Ну для начала, думаю, хватит. Смею наде-
яться, что данная рубрика будет постоянной
на страницах нашего журнала и мы сможем
ещё много узнать и почерпнуть интересного
и нового для всех нас, как старх воинов,
так и новобранцев.
С уважением, ваш покорный слуга и "бес-
толковый" журналист, гений ;))) всех вре-
мен и народов Mad Killer, в сговоре с кла-
сными ребятами из RSM в одной банде Patri-
ots.
До новых встреч, друзья!
P. S. Надеюсь,и у вас есть что нам расска-
зать!
──────────────────────────────────────────