Проекты - paintballno.ru-vkontakte - Документация

Материал из AOW

Перейти к: навигация, поиск

Содержание

Среда и условия разработки

Приложение собрано с помощью Adobe Flash Builder. Используемый SDK при публикации релизной версии (swf) - 4.1. Язык разработки ActionScript 3.0 расширеной Flex. Схема данных представляет собой MVC. Корневой контейнер Paintball.mxml Приложение представляет собой Flash-клиент, запускаемый с помощью браузера.

Для диагностики и анализа работы основного приложения существует отдельное приложение Service, корневой исполняемый контейнер называется Service.mxml. Это приложение загружает лог работы основного и отражает в своем интерфейсе.

Строеиние относительно расположения

Проект paintballno.ru-vkontakte (PVK) состоит из 3 функциональных составляющих:

Приложение

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

Сервер VK

На сервере VK размещаются данные для идентификации пользователя при загрузке приложения. Работа с VK может проходить в 3 режимах:

  • боевой (основной, http://vkontakte.ru/paintballwars);
  • тестовый VK (http://vkontakte.ru/app2176088);
  • тестовый локальный (загружается с локального размещения при наличии и корректно настроенного файла конфигурации src\data.txt);

Регулирование тестового/боевого режима для вызова приложения из VK производится комментированием строк в файле src\service\network\vkontakte\Vkontakte.as с комментарными подписями "Тестовый" и "Боевой". Регулирование локального/удаленного(VK) режима: если приложение находит файл src\data.txt, то пробует загружать параметры идентификации из него, однако в браузере, где проводится запуск локального режима, должна быть авторизирована страница с данными, соответствующими src\data.txt.

Игровой сервер Paintball

На нем хранится база данных игроков, их характеристик, коэфициенты игрового процесса, загружаемые графические swf элементы - локации, интерфейс, представления фигурок юнитов, их оружия, амуниции и пр, а также их анимации. Существует боевой (http://pb.yela.ru) и тестовый (http://paintballno.artofweb.ru) игровые сервера. Настройка целевого производится в файле src\service\initialization\InitializationAppParams.as в методе execute() .

Взаимодействие серверов и приложения

Сервер VK

Методы взаимодействия с сервером VK описаны в пакете src\service\network\vkontakte. Работает по схеме запрос-ответ. Данные запроса формируются в строку в соответствии с протоколом VK для внешних приложений и отправляются на сервер VK методом post. Методы работы для запросов описаны в API VK на сайте Вконтакта.

Игровой сервер

Методы взаимодействия с игровым сервером находятся в пакете src\service\network\gameserver. Схема работы также основывается на логике "запрос-ответ". Виды запросов и их предпологаемые ответы находятся по адресу [1].

Работа приложения

Модели данных

Главная модель данных - CoreModel (src\service\model\implementation\coremodel). На ее основе формируются остальные модели - команды, игрока, школы, магазина и пр, которые размещаются в соотв. пакетах директории src\service\model\implementation.

Пример разработки

Добавление функции реинкарнации

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

  • карма остаётся
  • монеты, столько же сколько на старте игры

Реинкарнация возможна только единожды. Возможность и стоимость реинкарнации изменяется в зависимости от текущего уровня игрока. Также при реинкарнации предусмотрена возможность увеличения одной из характеристики команды игрока - ловкость, точность или выносливость - на 5%.

Входные данные На сервере хранятся запросы:

  • player/getReincarnationCost - возвращает массив расценок и уровней возможности реинкарнации в формате <С_Уровня:По_Уровень:Цена:Еденицы>
  • player/reincarnation - Запускается с параметром, где указвается вид хар-ки, которую нужно прокачать - Осуществляет действие реинкарнации (изменение в базе данных игрока его характеристик, отнимает от указаных единиц стоимость произведенной реинкарнации)

Разработка веб-сайтов, автоматизация.
По всем вопросам обращайтесь по телефонам:

+7 495 640 29 90
+7 495 729 07 98
http://artofweb.ru