-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Лов.
Игра в лова между упругими управляемыми шариками "прыгунами" на двухмерной карте.
Правила
Несколько игроков-прыгунов появляются в случайных местах на карте [Оптимальное число игроков 5-15, в зависимости от карты].
Случайный прыгун назначается убегающим. А все остальные должны его словить.
Причем словить должны быстрее чем за 30 секунд.
Далее возможны варианты:
- время истекло - и убегающего не словили. Тогда убегающий прыгун становится Ловом.
В этом режиме лова уже он начинает ловить, и должен словить любого из игроков.
Если лов словил кого нибудь он вновь становится убегающим.
- игрока словили, тогда тот кто словил становится убегающим.
Чтобы поощрять игроков гоняться за друг другом существует система очков.
- Убегающий получает очки за время которое он остается не словленным.
- Лов теряет очки пока не словит кого нибудь. Игроки могут получать бонусные очки и за другие действия. Об этом будет сказано ниже.
- Все получаемые очки (кроме бонусов "монеток") будут пропорциональны множителю, который будет возрастать со временем игры. Например начинать с x1 и +0.2 за каждую минуту. Тогда через 5 минут за все действия игроки будут получать в 2 раза больше очков чем на первой минуте, через еще 5 минут в 3 раза больше и т.д. Это будет подстегивать играть до конца т.к. если даже кто-то вырвется в начале его можно будет догнать с помощью множителя в конце.
Побеждает тот у кого за время игры будет больше всего очков. Время игры фиксированно и задается перед началом игры. По умолчанию может быть 10 минут.
Управление
Управление прыгуном осуществляется полностью с помощью мышки. Общее правило таково, что куда указывает курсор мышки в ту сторону прыгун получает постоянный импульс ускорения (так как если бы сзади него была невидимая турбина, подталкивающая по направлению к курсору). Если же нажать и зажать левую кнопку мыши то постоянное ускорение исчезнет и прыгун будет предоставлен самому себе. Взамен он будет накапливать не потраченное ускорение, и когда кнопка будет отпущена оно будет в один момент высвобождено в направлении курсора. Лимит накопления импульса зависит от текущей скорости: чем скорость больше тем импульс больше. Это нужно для того чтобы прыгун на больших скоростях был таким же маневренным как и на малых. Кроме того сила импульса зависит от направления импульса по отношению к направлению вектора скорости. При полном совпадении с вектором скорости импульс должен иметь стандартную силу 100%, при отклонении от вектора скорости увеличиваться и достигать максимума при противоположным направлением с вектором скорости. Это нужно для того чтобы прыгун мог с помощью импульса резко затормозить, или резко поменять направление.
Физика
Прыгуны полность упругие. Отбивание от других прыгунов и от стен на 99% упругое, т.е. прыгун практически не теряет скорость. Максимальная скорость прыгуна формально не ограничена, но среда в которой он находится имеет сопротивление (больше сопротивления воздуха, но намного меньше сопротивления воды). Изза него набор скорости после определенного порога становится проблематичным. Сделано это для того чтобы во время игры прыгуны не мельтишили по карте, а двигались со скоростями приемлимыми для восприятия игроков. После превышения порога разумности (например при помощи импульса), скорость начинает плавно падать до порога, даже если в направлении вектора скорости прикладывается постоянное ускорение.
Столкновения между прыгунами
Если 2 прыгуна сталкиваются то тот прыгун у которого была меньше скорость в момент столкнования получает оглушение на несколько секунд. Оглушенный прыгун немного замедляется сам по себе и получает временный штраф к набору скорости. За оглушения игрок получает дополнительные очки. Если лов ударяет любого игрока то лов автоматически оглушается. Сделано это из-за того что, поскольку тот кого ударили сразу становится убегающим, медлительность лова поможет ему избежать поимки сразу же и во 2 раз.
Камера
Камера привязана к прыгуна но не слишком жестко. т.к если будет привязана жесто (прыгун всегда в центре) то все окружающее будет сильно мельтишить при движении и отбивании от стенок на большой скорости. Лучше чтобы камера была как бы привязана к прыгуну на невидимой резинке с длинной в состоянии покоя 0 и возможностью растягивания на длинну не больше 1/4 экрана. Параметры резинки можно подкорректировать, главное чтобы это было не в ущерб динамике.
Бонусы
В случайных местах карты могут появлятья бонусы для прыгунов. Бонусы могут действуют некоторое время и могут быть положительные, нейтральные и отрицательные.
Статические
- монетки - при взятии дают 20 очков.
Положительные (улетают от прыгунов):
- ускорение - увеличение ускорения и максимального размера импульса.
- тяжелый - в столкновениях наносится больше урона другим шарам - больше оглушения. Прыгун так же становится чуть больше.
- невидимка - прыгун становится практически не заметным - надо присматриваться чтобы его обнаружить.
Нейтральные (стоят на месте или двигаются хаотично):
- притяжение - прыгун слегка притягивает других прыгунов в некотором радиусе. Этот бонус хорош для догоняющих и плох для убегающих, поэтому он считается нейтральным.
- отталкивание - ... наоборот.
Отрицательные (догоняют прыгунов):
- замедление - уменьшение ускорения и максимального размера импульса. легкий - в столкновениях наносится меньше урона другим шарам - меньше оглушения. Прыгун становится чуть меньше.
- неупругий - прыгун теряет 10% скорости при каждом столкновении.
Элементы окружения
На карте могут быть расположены разные элементы окружения которые оказывают влияние на игру.
- движущаяся дорожка - придает прыгуну ускорение в некотором направлении.
- магнит - притягивает к себе в некотором радиусе.
- неупругая стена - полностью глушит скорость прыгуна при лобовом столкновении.
- мячики - круглые тела разного размера и массы. С ними можно только физически взаимодействовать и больше ничего. Мячик в движении будет всегда постепенно терять скорость до 0. На вид они должны сильно отличаться от прыгунов, чтобы нельзя было спутать.
Карта
Карты будут симметричные, размером в 9 - 16 экранов. Конфигурации стенок произвольные. Изначально планируется делать карты с помощью алгоритма вырезания снежинки, т.к. он довольно простой. Возможно написать свой генератор карт. Старатья избегать явных тупиков, но и не делать крату слишком открытой. Это могут быть например коридоры замкнутые по кругу. Ширина коридора от 4 диметров прыгуна и больше. Стенки гладкие, чтобы по возможности не препятствовать движению прыгуна.
Графика и интерейс
Графика минималистичная но якркая. Интерфейс в игре (справа сверху) отображает список игроков отсортированный по очкам + очки каждого.
При получении очков это должно быть сразу заметно - крупные цифры очков всплывают над прыгуном со звуковым сопровождением. Звуки сопровождают также: столкновения, когда словили убегающего, когда убегающий стал ловом, когда берут бонус и тп.
Слева сверху находится общее время игры и миникарта-радар. Сверху по центу - время до превращения текущего убегающего в лова.
Визуализация прыгунов:
Каждый игрок может выбрать цвет своего прыгуна и рисунок. С рисунком 1 - красивее, 2 - становятся виднее все вращения прыгуна.
Имя прыгуна (кроме своего) написано под ним. Показ имен можно отключить в настройках, т.к. по большому счету прыгуна можно
распознать по цвету и рисунку. Если цвет прыгуна светлый - значит рисунок будет черным. Если цвет темный - то рисунок белый.
Каждый прыгун отрисовывается с контуром по кругу чтобы было контраст с картой.
Подсветки:
Убегающий подсвечивается салатовым цветом.
Догоняющие - бледно красным. Лов подсвечивается ярко красным а убегающие от лова - бледно-салатовым.
Стрелки:
Для догоняющего/лова сбоку экрана есть крупная стрелка которая всегда указывает в каком направлении находится убегающий
(несколько убегающих для лова). Для убегающего же стрелками указываются направления на всех догоняющих.
Так упрощается ориентация в пространстве, и легче принять решение куда поворачивать в случае чего
(например убегающему логичнее повернуть туда куда указывают меньше стрелок догоняющих..).