Продумываем структуру приложения

Прежде чем делать игру, надо подумать где чего и что за чем будет следовать. Самое простое, это взять и нарисовать все содержимое игры типа такого

2013-03-23 18.26.44

По сути игра состоит из двух больших блоков: геймплей и меню, сейчас поговорим о менюшке.

А сам геймплей как правило можно разделить на: сессионный и последовательный, сейчас у нас будет сессионный.

И так, есть набор менюшек, которые отражают общий ход игры ( может быть уровень, прохождение сюжета и т.д.) и некоторый набор возможный опций или действий и игра.

Рассмотрим пример к которому будем стремиться, вот он на мобильный и вот на ПК (конгрегейт), надо сказать, что мобильная версия нагло сперта с кингдом раша.

Что мы видим сначала?

  1. Загрузка
  2. Заставка
  3. Начальное меню
  4. Сохранялка
  5. Карта игры

Теперь разберем и адаптируем к себе. Я собираюсь делать приложение на телефон, надо всегда помнить что там нет мышки, только тач пад, но зато есть жесты. Мы делаем игру на флэше, и на телефоне исполнителем кода будет AIR, когда паблишим флэшку, там есть такая строчка

Снимок

 

она позволяет встроить в пак AIR. Но он и так прекрасно подкачивается когда ставишь приложение на телефоне. А все наполнение игры ( картинки анимация и т.д. ) будут у нас в библиотеке, так что никакой подгрузки не будет вовсе.

Далее заставка – ну тут все понятно.

Начальное меню. В этих играх мы видим 2 характерные кнопки, Start и Credits. Это конечно чудесно, но если делать заставку в которой будет написано кто сделал игру, то зачем эта вторая кнопка непонятно. Скорее всего, потому что нехорошо делать менюшку из одной кнопки. Впрочем у меня есть идея получше, поставим туда попрошайку (Donations).

Снимок

Вот так выглядит оно в моей игруле

За ним идет окно сохранений. Очень хорошая идея взятая со старинных игруль, делать только 3 позиции. Раньше это ограничение оправдывалось малым количеством памяти, но оно добавляет некой реиграбельности приложению. С точки зраения программирования это будет что-то типа

var storedValue:ByteArray = EncryptedLocalStore.getItem(str); 
str_ = storedValue.readUTFBytes(storedValue.length);

 У флэша есть такое хранилище, в котором можно все запомнить, а кому интересно можно даже базы данных делать. Остается по нажатия выбрать только нужные сохраненные данные и все. Тут надо помнить, что у нас могут быть какие-то заданные параметры, тогда надо будет сделать выбор этого параметра. Например, у меня это герой, всего их 6, но создавая новую запись ты выбираешь одного из них и развиваешь.

Дальше идет скорее геймплей чем меню, на этом экране будет размещаться все элементы игры. Я пока остановился на таком наборе:

  • Магазин
  • Произвольная игра
  • Книга знаний
  • Собственно карта
  • Выбранный игроком герой

На карте будет определенная дорожка (она же сюжет) которую мы проходим последовательно, и узнаем какие-то интересности о выбранном персонаже и его окружающей вселенной.

Книга знаний – это место где можно узнать о своих войсках и о войсках противника, и вообще всю информацию справочную.

Магазин – понятно чего.

Заключение

Вот и вся в принципе игра, лично мне нравится разделять и властвовать, так что каждое окошко – это отдельный класс в коде. Да и практика показывает, что запихивание все в 1 класс приводит к забрасыванию проекта. Дальше планирую рассказать о самом геймплее, ну и о процессе подробнее.