10. ГЕНЕРАТОР ИГР GAMES DESIGNER
Как вы уже, наверное, поняли, создание компьютерных игр - дело весьма долгое и непростое. Даже на Бейсике. К тому же, на Бейсике никак не удается написать достаточно динамичную игру с большим количеством персонажей и предметов из-за невысокого быстродействия интерпретатора, встроенного в ZX Spectrum. Значит, нужно прибегать к помощи компиляторов или писать исключительно на ассемблере. Но это (особенно последнее) - еще более сложное дело. А ведь как хотелось бы сразу, не влезая глубоко в теорию программирования, произвести на свет собственное творение или, в крайнем случае, перекроить чужую игрушку по собственному сценарию. Но ведь и это тоже не так-то просто. Глянешь в потроха какой-нибудь программы - сплошные нули, единицы, ничего не понять. Что поделаешь! Любишь кататься...
Впрочем, можно все-таки прокатиться за чужой счет, чтобы хоть узнать, насколько это интересное дело - создавать компьютерные миры. Ну, а узнав, уже решать, стоит ли тратить время на изучение программирования.
Существует целый ряд игровых программ, которые снабжены специальными редакторами, позволяющими изменять некоторые параметры игры (например, создавать свой вариант лабиринта). Но, как правило, этих изменяемых параметров очень мало - один-два.
Генератор игр Games Designer, созданный в 1983 году фирмой Software Studios, предоставляет гораздо большие возможности для творчества. Найдя правдами или неправдами эту программу, вы сможете создать игру, даже не имея ни малейшего представления о программировании.
Собственно говоря, Games Designer представляет собой обычную игру-«стрелялку», но в ней позволяется менять все (или почти все) - от характера звука и цвета экрана до сценария. При случае вы сможете потешить свое самолюбие и похвастаться собственным творением перед друзьями и знакомыми: все изменения, естественно, могут быть сохранены на ленте (или на диске, если вы располагаете версией, адаптированной к системе TR-DOS).
Однако хватит предисловий, перейдем к делу.
Главное меню
После загрузки программы Games Designer на экране появляется главное меню (рис. 10.1). С помощью соответствующих цифровых клавиш выбирается один из восьми режимов работы. Вначале рассмотрим их все вкратце, а затем разберем некоторые из них более основательно.
1. PLAY GAME (Запуск игры). Думается, что в особых комментариях этот режим
не нуждается..
2. SELECT NEW GAME (Выбор новой игры). Вы можете создать до восьми различных игр и затем быстро выбирать любую из них, не перезагружая Games Designer. Надоело играть в одну игрушку - тут же нажатием одной клавиши поменяли ее на другую! Быстро и удобно. После того, как вы нажмете клавишу 2 в главном меню, внизу экрана появится запрос
Select new game: [1-8] (Введите номер новой игры)
Нажмите цифровую клавишу, соответствующую номеру нужной игры, и можете начинать играть. Если нажать Enter, то вы возвратитесь в главное меню.
3. ALTER SPRITES (Изменение спрайтов). Напомним, что спрайтами называют движущиеся по экрану картинки. Таким образом, этот режим позволяет менять графику игры, вводить в нее новые персонажи. Более подробно режим ALTER SPRITES будет рассмотрен в разделе Изменение графики.
4. CONFIGURATION (Внешний вид игры). При выборе этого пункта на экране появляется дополнительное меню, позволяющее изменять раскраску экрана, звук, выбирать тип управления (клавиатура или джойстик) и сам сценарий игры. Но об этом несколько позже, в разделе Внешний вид игры.
5. MOVEMENT (Перемещения противника). Режим позволяет формировать траектории движения объектов, управляемых компьютером (в дальнейшем мы будем называть эти объекты «противником»). О том, как это делается, читайте в разделе Перемещения противника.
6. ATTACK WAVES (Уровни сложности). Games Designer предоставляет широкие возможности по формированию уровней сложности и «агрессивности» противника. Здесь вы можете задавать количество противников на каждом уровне и число очков, получаемое за попадание в цель, применять различные варианты движения и менять скорость нападающих объектов. Противники могут быть достаточно беззащитны, уничтожая вас на манер камикадзе, но могут, кроме этого, еще и подрывать вас торпедами. Конечно, если вы сами того пожелаете. Все подробности о работе с этой опцией будут описаны в разделе Уровни сложности.
7. LOAD FROM TAPE (Загрузить игру с ленты). Эта функция предназначена, как вы, очевидно, догадались, для загрузки вариантов игр, которые были созданы в Games Designer и записаны на ленту (см. режим SAVE TO ТАРЕ). Отмотайте ленту на начало записанного ранее блока и включите магнитофон на воспроизведение. После окончания загрузки программа выйдет в главное меню. Если при загрузке возникнет ошибка, внизу экрана появится надпись: Таре loading error. Нажмите клавишу Enter для возврата в главное меню. Прервать операцию загрузки можно, как обычно, клавишей Space.
В дисковой версии эта функция отсутствует, а все изменения загружаются при старте Games Designer, если нажать клавишу Y на запрос Do you want load changes (Y/N). При нажатии любой другой клавиши программа запустится без загрузки изменений. Все восемь игр загружаются с диска одним махом, в ленточной же версии приходится загружать их по одной .
8. SAVE TO ТАРЕ или SAVE TO DISK (Записать игру на ленту или на диск). После выбора этого пункта главного меню внизу экрана появляется надпись Start tape then press Enter. Включите магнитофон на запись, затем нажмите клавишу Enter. По окончании записи компьютер попросит вас перемотать ленту на начало для проверки, написав внизу экрана: Rewind tape for verification. Если вы вполне уверены в своем магнитофоне, можете нажать Space и продолжать работу, если нет - воспользуйтесь предложением: включите магнитофон на воспроизведение и проверьте, нет ли ошибок. При обнаружении ошибки компьютер известит вас надписью Таре verification has failed, при появлении которой нужно нажать клавишу Enter и повторить запись.
В дисковой версии запись производится аналогично, только отсутствует функция проверки записи. При работе с дисковой версией возможно появление сообщения File absent press Enter, говорящего о том, что вы вставили в дисковод не тот диск. Вообще диск может быть и другой, но на нем обязательно должен быть записан файл gd.chan. Если вы перепишете этот файл на другой диск, то сможете получить дополнительный набор игр.
Игра
Вряд ли имеет смысл подробно описывать игру, которую можно изменять как угодно. Поэтому остановимся лишь на некоторых основополагающих моментах.
Игра, которую можно сконструировать в Games Designer, представляет собой, по сути, довольно примитивную «стрелялку». Однако это не делает ее менее увлекательной, особенно если учитывать возможность менять почти все се параметры. На вас нападают неприятельские корабли в открытом космосе или на голову пикируют неизвестные науке чудовища, сбрасывающие бомбы на парашютах, а вам нужно отстреливаться от всей этой пакости, уворачиваться от лобовых столкновений... Ну, и так далее (рис. 10.2). Наверное, вы уже поняли основную идею, а воплощение этой идеи зависит от вас. Впрочем, если в данный момент у вас нет соответствующего творческого настроя, можете воспользоваться уже готовыми вариантами, любезно предоставленными авторами Games Designer.
Во время игры в верхней части экрана высвечивается счет (SCORE), количество дополнительных «жизней» (LIVES) и рекордное количество очков, полученное в предыдущих играх (HIGH). Вам дается три дополнительные «жизни», то есть всего у вас имеется четыре попытки. Увеличить их количество в программе нельзя, но, наверное, это и не столь важно, поскольку облегчить себе жизнь можно и другими способами.
Игра может состоять из нескольких уровней сложности. Переход на следующий уровень происходит после того, как вы уничтожили всех
противников на предыдущем. За каждое попадание вы получаете установленное количество очков.
Игра заканчивается, когда израсходована последняя «жизнь». Если у вас появится желание прервать игру досрочно, нажмите клавишу Enter. Если вы все же доиграете до конца, компьютер попросит назвать ваше имя для внесения результата в таблицу рекордов - конечно, если количество набранных вами очков не слишком мало. Впрочем, на первых порах только нулевой результат не позволит вам стать рекордсменом. Используя клавиши б и 7, подведите курсор к первой букве своего имени и нажмите клавишу 0. Аналогично напечатайте и остальные буквы. Постарайтесь при этом не наделать ошибок: стереть неправильно введенную букву уже не удастся. Квадратик в конце алфавита означает пробел, а значок # используется для завершения ввода. Надо заметить, что зачислять себя в список рекордсменов вовсе не обязательно. Если вы не желаете этого делать, нажмите клавишу S, и игра начнется заново.
И в завершение этого раздела еще один важный момент, незаметный для «невооруженного глаза». Это возможность переопределения управляющих клавиш. Для этого игру нужно начинать, не просто нажав, находясь в главном меню, клавишу 1, а удерживать при этом Caps Shift. Если у вашего компьютера расширенная клавиатура, то можете воспользоваться одной клавишей Edit. На экране появится надпись Select new control keys (выберите новые управляющие клавиши), вслед за которой необходимо последовательно нажать клавиши: Вверх (на запрос Which key for up), Вниз (Which key for down), Влево (Which key for left), Вправо (Which key for right) и, наконец, Огонь (Which key for fire).
Порядок проектирования игры
Если вы не любите, когда кто-либо навязывает вам свое мнение, можете смело пропустить это вступление без ущерба для дальнейшего восприятия. Всем же прочим осмелимся дать несколько практических советов по последовательности проектирования игр в Games Designer.
Начинать разработку лучше всего с выбора типа игры: определения места действия, направлений движения объектов, способа управления (клавиатура, джойстик) и т. д. Далее задаются цвета фона и программируется звуковое оформление. Все необходимое для этого вы найдете в режиме CONFIGURATION главного меню. Затем задайте траектории движения противника с помощью режима MOVEMENT, потом переходите к ATTACK WAVES для определения характеристик каждого из восьми возможных уровней сложности, и только в самом конце приступайте к рисованию графических объектов.
Такой порядок удобен тем, что до выбора типа игры и определения характеристик уровней трудно предсказать, сколько спрайтов вам понадобится и под какими номерами они будут фигурировать. В этом порядке мы и будем вести дальнейшее изложение.
Внешний вид игры
При выборе пункта CONFIGURATION на экране появляется дополнительное меню. В ответ на запрос Select item: [1-8] нужно нажать цифровую клавишу, соответствующую требуемому пункту. Параметры, введенные при выборе пунктов 1...4, влияют на внешнее оформление игры. При этом внизу экрана появляется соответствующая подсказка, а номер пункта начинает мерцать. Если вы по ошибке выбрали не тот пункт, нажмите Enter, и все останется без изменений. Пункты 5... 8 служат для редактирования звуковых эффектов: выстрелов, взрывов. Рассмотрим пункты меню CONFIGURATION по порядку.
1. GAME FORMAT = X (Тип игры). Здесь X - число от 0 до 7. Именно этот параметр в основном и определяет сценарий игры. Вообще, принципиально различных типов игр в Game Designer не восемь, а четыре. Отличие одной четверки от другой состоит лишь в способе управления. То есть если вы хотите использовать клавиатуру, вводите числа от 0 до 3, а если вы предпочитаете играть, орудуя джойстиком, - числа 4...7. Итак, что же означают эти числа (или иначе - коды)? Попробуем описать типы игр, получаемые при вводе каждого из них.
Тип А (коды 0 и 4). У вас имеются, как говорят в технике, две степени свободы. Можно двигаться по нижней кромке экрана только в двух направлениях - вправо и влево, а также стрелять вверх. Противники нападают сверху и при этом могут сбрасывать на вас бомбы.
Тип В (коды 1 и S). В этом случае вы занимаете круговую оборону и, поворачиваясь в разные стороны, обстреливаете противника. Дозволяется также двигаться по всему экрану, причем если вы уйдете за его край, то тут же появитесь с другой стороны. Движение возможно по вертикали, горизонтали и по диагоналям. Разворачивайтесь в нужную сторону, используя клавишу «вправо» для поворота по часовой стрелке или «влево» - в обратную сторону, а вместо акселератора жмите на клавишу «вверх», и при этом не забывайте время от времени стрелять.
Тип С (коды 2 и б). Пожалуй, этот тип лучше всего подходит для имитации космического боя. Ваш корабль летит на фоне звездного неба (о том, как его получить, будет сказано чуть позже). Впереди, то есть в правой части экрана, появляются вражеские корабли, стреляющие ракетами. Уничтожайте противника из своей пушки, лавируйте и не допускайте столкновений с врагом и попаданий его ракет. Вы можете перемещаться по левой половине экрана, двигаясь в любом направлении. При этом нажав клавишу «вправо», вы получаете ускорение и двигаетесь до средины экрана, отпустив - плавно откатываетесь назад. Клавиша «влево» не задействована.
Тип D (коды 3 и 7). Этот тип очень напоминает тип В. Отличие состоит, пожалуй, только в отсутствии диагонального движения, да управление несколько проще -какую клавишу нажмете, туда и поедете.
2. BACKGROUND = X (Задний фон). Этот пункт позволяет подобрать цвет фона всего экрана (аналогично операторам Бейсика PAPER X и BORDER X). Кодировка цвета (соответствие чисел и цветов, их обозначающих) стандартная, принятая в Бейсике:
0 - черный;
1 -синий;
2 -красный;
3 - фиолетовый;
4 - зеленый;
5 - голубой;
6 -желтый;
7 - белый.
3. FOREGROUND = X (Передний фон). Аналогично предыдущему пункту можно определить цвет звезд (если вы включили звездный фон, см. ниже), а также цвет всех надписей, в том числе и в таблице рекордов. Соответствует бейсик-оператору INK X.
4. SPECIAL FX = X (Специальная функция). Эта функция определяет порядок появления противника и способ его уничтожения, а также включает или выключает звездный фон. Противники в играх могут появляться либо поодиночке, либо сразу группой. Столкновение с любым из них ведет к гибели, поэтому их приходится уничтожать. Это
можно делать либо на расстоянии, стреляя из пушки, либо подойдя почти
вплотную, и ударив, например, дубинкой. Интересующее вас число можете выбрать из приведенной таблицы:
Остальные пункты этого меню, как уже говорилось, позволяют менять характер звуковых эффектов.
5, б, 7, 8. MISSILE SOUND (Звук вашего выстрела), BOMB SOUND (Звук выстрела противника), SHIP EXPLODE (Взрыв вашего корабля), ALIEN EXPLODE (Попадание снаряда во вражеский корабль). Все звуки изменяются одинаковым способом, поэтому нет необходимости описывать эти пункты в отдельности. При выборе одного из них на экране появляются пять диаграмм, отражающих пять характеристик звука (рис. 10.3):
FREQ. - начальная частота. Чем выше «движок» на диаграмме, тем ниже получается тональность звука; RAMP1 и RAMP2 - составляющие огибающей звука (или проще -вибрации);
LEVEL - глубина вибрации; TIME - длительность звучания.
Изменяя эти параметры, можно получить звуки самого различного характера: от пулеметной очереди до жужжания бормашины.
На рис. 10.4 показана огибающая формируемого звукового сигнала: его частота периодически меняется. Рассмотрев этот рисунок, вы поймете, что означает тот или иной параметр звука.
Высота «движков» на диаграммах, а следовательно, и значения параметров, регулируется с помощью цифровых клавиш. Клавиши 1 и 2
изменяют положение движка на диаграмме частоты звука (1 - поднять движок, 2 - опустить), 3 и 4 делают то же самое на второй диаграмме, следующую диаграмму изменяют клавиши 5 и б, и так далее - то есть для регулировки каждого из параметров используется своя пара клавиш. Чтобы не действовать вслепую (точнее, вглухую), иногда нажимайте клавишу Symbol Shift, и вы услышите, какой звук получается в результате ваших манипуляций.