Skip to content

Latest commit

 

History

History
56 lines (37 loc) · 8.63 KB

spec.md

File metadata and controls

56 lines (37 loc) · 8.63 KB

Техническое задание на «Пиксельхантер»

Пиксельхантер – это онлайн-игра в которой игроку предлагается отличать фотографии от фотореалистичных изображений.

Описание функциональности

Экраны приложения

Приложение состоит из нескольких последовательно переключающихся экранов. По ходу прохождения игры, пользователь переходит от первого экрана к последнему. Часть экранов отвечают за игровой процесс: экран начала игры, на котором пользователь вводит свое имя и экран игрового шага; другая же часть экранов отвечает за вспомогательные сценарии, такие как сравнение результатов игрока с его предыдущими играми.

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

Приветственный экран

Переход на этот экран осуществляется кроссфейдом: пока фон предыдущего экрана плавно скрывается, фон этого экрана, плавно показывается.

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

Начало игры

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

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

Игровой шаг

В течение игры пользователь видит поочередно 10 игровых экранов.

Игровой экран может быть одного из трех типов:

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

  • одно изображение: в этом режиме пользователь должен выбрать для показанного изображения картина это или фотография.

  • три изображения: пользователю показывается три изображения из которых ему нужно выбрать одно по определенному принципу — либо из трех изображений нужно выбрать единственную фотографию, либо единственную картину.

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

Время отведенное, на каждый из ответов ограниченно 30 секундами. Если игрок не успевает ответить на вопрос за отведенное время, за этот ответ ему засчитывается ошибка и происходит переход к следующему шагу. Оставшееся время показывается индикатором в верхней части экрана. Когда у пользователя остается 5 секунд на ответит, индикатор начинает мигать.

Снизу, на игровом экране показан индикатор прохождения игры. Каждый из ответов кодируется определенным символом:

  • если игрок еще не ответил на этот вопрос, вопрос показан серым индикатором
  • правильно отвеченный вопрос отмечается зеленым цветом
  • если пользователь отвечает на вопрос быстрее чем за 10 секунд, ответ считается быстрым (индикатор правильного ответа с иконкой молнии)
  • если ответ на вопрос занял дольше 20 секунд, такой ответ считается медленным (индикатор правильного ответа с иконкой черепахи)
  • неправильно отвеченный вопрос помечается черным цветом

Результаты игры

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

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

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

Расчет очков производится по следующему принципу:

  • за каждый правильный ответ дается 100 очков
  • за каждый быстрый ответ дополнительно начисляется 50 очков. Таким образом, быстрый ответ приносит игроку 150 очков
  • за каждый медленный ответ с игрока снимается 50 очков. Таким образом, каждый медленный ответ приносит игроку 50 очков
  • за каждое неиспользованное право на ошибку добавляется 50 очков

В конце игры результаты пользователя отправляются на сервер для синхронизации с данными других пользователей.