Bubble Shooter — различия между версиями
Iskorobog (обсуждение | вклад) (→Настройки) |
Iskorobog (обсуждение | вклад) (→Мина) |
||
Строка 98: | Строка 98: | ||
*'''res''' - Графический ресурс мины в пушке. | *'''res''' - Графический ресурс мины в пушке. | ||
*'''res1''' - Графический ресурс мины в полете. | *'''res1''' - Графический ресурс мины в полете. | ||
+ | *'''подложка''' - (bomb1bg) Графический ресурс для подложки бомбы (взрыв по радиусу). | ||
*'''Вероятность''' - Вероятность появления данной бомбы. | *'''Вероятность''' - Вероятность появления данной бомбы. | ||
*'''Скип''' - Количество пропущенных первых шагов для появления бомбы (не реализовано). | *'''Скип''' - Количество пропущенных первых шагов для появления бомбы (не реализовано). |
Версия 08:06, 15 марта 2017
Содержание
- 1 BubbleShooter Setup
- 2 Графика
- 3 Прицел
- 4 Курсор
- 5 Эффекты
- 6 Слушатели
- 7 Настройки
- 8 настройки Lost Numbers
- 9 Параметры бомб
- 10 Звуки
- 11 Очковая система
- 12 Состояния
- 13 Добавляемые параметры
- 13.1 Графический ресурс
- 13.2 Ресурсы функциональных шариков
- 13.3 Параметры анимации для шарика лунка
- 13.4 Параметры анимации для шарика колючка
- 13.5 Параметры анимации для шарика снежинка
- 13.6 Параметры анимации для шарика вредитель
- 13.7 Физика
- 13.8 Уровень сложности
- 13.9 Визуализатор общих очков
- 13.10 Игра выиграна: изменить состояние объекта
- 13.11 Игра выиграна: изменить параметр объекта
- 13.12 Игра проиграна: изменить состояние объекта
- 13.13 Игра проиграна: изменить параметр объекта
- 13.14 Выбили цвет: изменить состояние объекта
- 14 Хинты
- 15 Пример проекта
- 16 Пример реализации: задание уровня
Игровая механика BubbleShooter.
BubbleShooter Setup
Общие настройки
- память - (memo) Если 1, то при повторном открытии экрана объект не обновляет свои параметры (помнит текущие параметры, оставшиеся от предыдущего посещения экрана)
- res - графичесий ресурс поля для игры. Его размер является зоной для тапа.
- Слушатель - объект типа Matchbattle.
Группа - Сохранения
- нужны - если да, то сохраняет результаты игры в опции.
- сохранять глобально - (prof) Если ==0, то значение будет сохранено в текущий профиль, если 1 - то глобально.
- место - место в опциях, куда сохраняются данные игры.
- флаг старых сейвов - (old_records) Место в опциях, куда пишем флаг 1 , когда считали и отправили сейвы со старого бабл шутера
Графика
- красные шарики - графический ресурс шарика данного цвета.
- зеленые шарики - графический ресурс шарика данного цвета.
- синие шарики - графический ресурс шарика данного цвета.
- желтые шарики - графический ресурс шарика данного цвета.
- голубые шарики - графический ресурс шарика данного цвета.
- пурпурные шарики - графический ресурс шарика данного цвета.
Прицел
- res - Графический ресурс прицела, перетаскивается из редактора ресурсов.
- Время - Время от нажатия до момента появления прицела.
- Время перед мувом - Время от нажатия до момента появления прицела в движении.
- Смещение - Расстояние между пальцем и центром прицела.
Курсор
- res - Графический ресурс курсора, перетаскивается из редактора ресурсов.
- Кол-во шариков - количество шариков в курсоре.
- Отражения - максимальное кол-во отражений от стенок.
- минимальный скейл - (curminsc) минимальный скейл графики шариков
- максимальный скейл - (curmaxsc) максимальный скейл графики шариков
- время скалирования - (cursctm) время скалирования шариков
Эффекты
- Удар бомбы об гвоздь - объект, запускаемый на месте удара бомбы об гвоздь.
- Удар шара об гвоздь - объект, запускаемый на месте удара шарика об гвоздь.
- Очки в намберсах - объект, запускаемый в месте лопанья шариков.
- Очки в намберсах 2 - объект с финальными очками, летящими в цель.
Слушатели
- Выстрел - объект, которому передаются нижеследующие состояния при выстреле из пушки. Состояния: shot - выстрел обычным шариком, mine - выстрел миной, color - выстрел цветной бомбой, bullet - выстрел бомбой-ядром.
Настройки
- Позиция стреляющего - Позиция стреляющего шарика (x;y)
- Расстояние от следующего - Расстояние от стреляющего шарика до следующего за ним.
- Высота физической сетки - Высота физической сетки поля.
- Ширина физической сетки - Ширина физической сетки поля.
- Смещение - Смешение поля относительно начала координат родителя.
- Радиус шариков - Радиус шариков.
- Мин.радиус шариков - Мин.размер шариков во время "взрыва".
- Макс.радиус шариков - Макс.размер шариков во время "взрыва".
- Ширина шариков - Ширина шариков на поле. Вычисляется по формуле (2R+2).
- Высота шариков - Высота шариков на поле. Вычисляется по формуле (2R-2).
- номер фрейма графики шариков - (clip_frame) Номер фрейма в клипе графики шариков.
- Мин.энергия - Мин.энергия выстрела. (или что-то в этом духе, более точной информацией обладает только создатель оригинального кода баббла)
- Макс.энергия - Макс.энергия выстрела.
- убирать выбитый цвет из пушки - (fbub1) Убирать выбитый цвет из пушки (нет=0, да=1).
- Уровень - Уровень игры: новичок, любитель, эксперт, мастер, кастомный (настройки уровня сложности зависят от параметров заданных в добавляемом поле "уровень сложности")
- Вид игры - Режим игры: аркада, стратегия. Режим Аркада был создан для моды "битва", в котором предусматривалось добавление доп.рядов через определенное время бездействия игрока.
- Начальные шаги до наезда - Количество шагов через которое поле "накажет" игрока дополнительными рядами.
- Промежутки добавления - Время через которое будут добавляться следующий ряд (в режиме Аркада).
- Добавление рядов - Разрешить добавление рядов. Иначе только извне. Целесообразно использовать в снукере.
- Тип досыпания - Тип досыпания шариков. Снукер или классический бабблшутер.
- подтип классического досыпания - (addrowt) Вид классического досыпания шариков (нормальное=0,с заполнениями пустот=1).
- Обваливать висячие - Обваливать висячие шарики (да/нет). Отключение этого параметра используется в игре снукер.
- Отскок от потолка - Название говорит само за себя. Используется в снукере.
- Файл-описание уровня - Файл формата .xml в котором будет построены уровни для игры. Пример приведен справа.
- Номер уровня в файле - Стартовый уровень, с которого будет начинаться игра.
- матч по цифрам - (nummatch) Матч по цифрам (нет=0, да=1).
- multColor - (multColor) умножать число сматченых шариков на номер цвета при подсчете очков (нет=0, да=1).
- removeDropWait - (removeDropWait)
- объект подложки - (objback) Объект подлжоки, которой будет передана графика и состояни выстрела и его окончания.
- включить анти-чит - (anti_cheat) Включить проверку на чит (нет=0, да=1).
- собирать статистику - (collec_stat) Включить сбор статистики (нет=0, да=1).
- складывать строки - (is_summing) Включить сбор статистики (нет=0, да=1).Складывать ли наезжающие строки при выбивании нескольких цветов.
настройки Lost Numbers
- время перекрашивания - (lnreptm)
- макс скейл перекрашивания - (lnrepmaxsc)
- перекрашивать сразу - (lnrepimm) нет=0, да=1
Параметры бомб
Мина
- res - Графический ресурс мины в пушке.
- res1 - Графический ресурс мины в полете.
- подложка - (bomb1bg) Графический ресурс для подложки бомбы (взрыв по радиусу).
- Вероятность - Вероятность появления данной бомбы.
- Скип - Количество пропущенных первых шагов для появления бомбы (не реализовано).
- Количество - Количество появления бомбы за одну игровую сессию.
- Шаги - Количество шагов до появления данной бомбы.
- Шаги ok - Количество удачных шагов до появления бомбы.
- Шаги miss - Количество неудачных шагов до появления бомбы.
- n1 - Минимальное количество шариков взорванных за ход необходимое для появления данной бомбы.
- n2 - Максимальное количество шариков взорванных за ход необходимое для появления данной бомбы.
- Радиус - Радиус взрыва данной бомбы
- Эффект - Эффект на месте взрыва бомбы. Объект должен иметь состояние beg.
Цвет
- res - Графический ресурс бомбы-цвет в пушке.
- res1 - Графический ресурс бомбы-цвет в полете.
- Вероятность - Вероятность появления данной бомбы.
- Скип - Количество пропущенных первых шагов для появления бомбы (не реализовано).
- Количество - Количество появления бомбы за одну игровую сессию.
- Шаги - Количество шагов до появления данной бомбы.
- Шаги ok - Количество удачных шагов до появления бомбы.
- Шаги miss - Количество неудачных шагов до появления бомбы.
- n1 - Минимальное количество шариков взорванных за ход необходимое для появления данной бомбы.
- n2 - Максимальное количество шариков взорванных за ход необходимое для появления данной бомбы.
Ядро
- res - Графический ресурс ядра в пушке.
- res1 - Графический ресурс ядра в полете.
- Вероятность - Вероятность появления данной бомбы.
- Скип - Количество пропущенных первых шагов для появления бомбы (не реализовано).
- Количество - Количество появления бомбы за одну игровую сессию.
- Шаги - Количество шагов до появления данной бомбы.
- Шаги ok - Количество удачных шагов до появления бомбы.
- Шаги miss - Количество неудачных шагов до появления бомбы.
- n1 - Минимальное количество шариков взорванных за ход необходимое для появления данной бомбы.
- n2 - Максимальное количество шариков взорванных за ход необходимое для появления данной бомбы.
- Флайер - Флайер летящий под бомбочкой.
- Флайер 2 - Флайер летящий под бомбочкой.
- Скорость - Скорость перемещения бомбочки.
- Число отскоков - Число отскоков от стен для бомбочки.
Звуки
- shot - Звук выстрела.
- fail - Звук промаха.
- explosion - Звук взрыва шариков.
- intro - Звук в начале игры.
- game over - Звук окончания игры.
- bomb mine - Звук выстрела бомбы "мина".
- bomb bullet - Звук выстрела бомбы "ядро".
- bomb color - Звук выстрела бомбы "цвет".
- Взрыв бомбы мина - Говорит само за себя.
- Взрыв бомбы ядро - Говорит само за себя.
- Взрыв бомбы цвет - Говорит само за себя.
Очковая система
- Тип - classic, lostnumbers, nightopera
- Визуализатор шагов - счетчик, прогресс, которые отображает оставшееся количество шагов до "наезда".
- Визуализатор последних очков - счетчик, таймер, прогресс последних очков.
- Аниматор последних очков - машина со счетчиком (подобъектом), которая запускается в месте попадания шарика. Должна иметь состояние show.
- Тип подсчета - очки могут считаться как: 1) количество сматченных шариков * на kBub; 2) сумма порядковых номеров (сматчили 4 шарика -> очки = 1+2+3+4)
- kBub - коэффициент за сматченные шарики.
- kCmb - коэффициент за комбо.
- kMov - коэффициент за оставшиеся ходы.
- kTim - коэффициент за оставшиеся секунды.
- kPst - коэффициент за удаленные с поля вредители.
- kSnw - коэффициент за удаленные с поля снежинки.
Состояния
- pause - перевести объект в паузу;
- resume - вытащить объект из паузы;
- hint - выполнить хинт ( нужно в поле hntt указать номер хинта);
- gover -
- game_continue - продолжить игру (например, в случае, когда мы проиграли, но даем игроку шанс, убрав несколько нижних линий);
- game_lose - задекларировать проигрыш (например, когда мы проиграли, и игрок отказался от шанса продолжить игру);
- cur_on - отображать траекторию при прицеливании;
- cur_off - убрать траекторию при прицеливании;
- fbubswap - поменять местами шарики в пушке;
- del_bottom - удалить несколько (задается параметром) нижних рядов;
- effdigsc2 -
- update_params - обновить параметры объекта(пока только номер фрейма клипа шариков);
- reset_game - сбросит игру , которая сохранена в опциях;
- send_stat - отправить статистику.
Добавляемые параметры
Графический ресурс
- Клип - Графический ресурс, перетаскивается из редактора ресурсов.
- Номер цвета - Номер цвета, который будет соответствовать значению цвета в файле-уровня.
Ресурсы функциональных шариков
- Функционал - Записываем значение чудо-шарика из файла-настроек.
- Клип - Графический ресурс шариков, обладающих данным функционалом.
- Звук - Звук шарика, обладающего данным функционалом.
- Эффект - Машина/Патикл обладающие состоянием beg.
Параметры анимации для шарика лунка
- Время перемещения - время движения шарика в центр лунки.
- Время исчезновения - время исчезновения шарика в лунке (скейл).
- Время жизни - время жизни эффекта.
Параметры анимации для шарика колючка
- Время жизни - время жизни эффекта.
Параметры анимации для шарика снежинка
- Время жизни - время жизни эффекта.
Параметры анимации для шарика вредитель
- Время жизни - время жизни эффекта.
- Время ожидания скина - время, пока поменяется скин шарика.
- Эффект - эффект, возникающий в момент обрастания вредителя снежинками.
Физика
- Справа находится пример настроек физики для шариков радиусом 24.
- Move - Коэффициент отталкивания летящего шарика.
- MinDest2 - Квадрат минимального расстояния, когда шарик считается в покое.
- MinVel2 - Квадрат минимальной скорости, когда шарик считается в покое.
- Down - Трение.
- MaxVel - Максимальная скорость колебаний.
- Elast - Эластичность с-мы (коэффициент для сил действующих между соседними шариками).
- Glue - Коэффициент притяжения шарика к центру ячейки.
- MoveC - Радиус действия летящего шарика в ячейках.
- BangVel - Приращение для скорости взрыва.
Уровень сложности
Название параметров говорит само за себя. Создавать их можно бесконечное множество, главное не забывать назначать им порядковые номера в поле "уровень" по мере добавления новых уровней. Количество уровней сложности внутри объекта должно соответствовать количеству уровней сложности у необходимого Вам монстра. Количество цветов заданное в файле-настройках .xml имеет приоритет над теми, что мы задаем в объекте.
- Уровень - номер уровня.
- Кол-во цветов - число цветов на поле.
- Шаги до наезда - число шагов до наезда.
- Бомба мина: вероятность - вероятность появления мины в процентах.
- Бомба мина: радиус - радиус мины в шариках.
- Бомба ядро:вероятность - вероятность появления ядра в процентах.
- Бомба ядро: число отскоков от стен - число отскоков ядра от стен поля.
- Бомба цвет: количество - число бомб-цвет, которые появятся на уровне.
- Бомба цвет: шаги - число шагов вначале уровня до появления бомбы-цвет.
Визуализатор общих очков
- Объект - счетчик, прогресс, показывающий сумму очков за уровень.
Игра выиграна: изменить состояние объекта
- Объект - объект, состояние которого меняем при выигрыше.
- Состояние - новое состояние объекта.
Игра выиграна: изменить параметр объекта
- Объект - объект, параметр которого меняем при выигрыше.
- Параметр - параметр, который меняем.
- Значение - новое значение параметра.
Игра проиграна: изменить состояние объекта
- Объект - объект, состояние которого меняем при проигрыше.
- Состояние - новое состояние объекта.
Игра проиграна: изменить параметр объекта
- Объект - объект, параметр которого меняем при проигрыше.
- Параметр - параметр, который меняем.
- Значение - новое значение параметра.
Выбили цвет: изменить состояние объекта
- Объект - объект, состояние которого меняем при удалении цвета с поля. При этом BSh передает указанному объекту параметр param_removed_colors со значением количества выбитых цветов за данный ход.
- Состояние - новое состояние объекта.
Хинты
- Замена шарика - Для того, чтоб вызвать этот хинт необходимо сделать следующие манипуляции: Вызвать объекту BubbleShooter параметр hntt=0, после чего передать состояние hint.
- Удаление цвета - Для того, чтоб вызвать этот хинт необходимо сделать следующие манипуляции: Вызвать объекту BubbleShooter параметр hntt=5, после чего передать состояние hint.
- Ядро - Для того, чтоб вызвать этот хинт необходимо сделать следующие манипуляции: Вызвать объекту BubbleShooter параметр hntt=3, после чего передать состояние hint.
- Мина - Для того, чтоб вызвать этот хинт необходимо сделать следующие манипуляции: Вызвать объекту BubbleShooter параметр hntt=1, после чего передать состояние hint.
- Курсор - Для того, чтоб вызвать этот хинт необходимо сделать следующие манипуляции: Вызвать объекту BubbleShooter параметр hntt=0, после чего передать состояние cur_on. После выстрела курсор исчезает.
Пример проекта
S:\!MOBILE\!!!EditorGames\Wiki_sample\bubble_snooker_graphprogress.zip
Пример реализации: задание уровня
- 1) Если нам необходимо задать уровень шутеру прямиком из экрана где он находиться, и при этом он уже запустился (прорисовалась графика). То с начало мы должны передать ему состояние end, после чего задать необходимый уровень и переинитить сцену на которой он находиться (желательно чтобы на этой сцене был только шутер):
- 2) Если же, мы задаем нужный уровень удалённо ( с другого экрана), то мы расшариваем экран с самим шутером на сцену где будем задавать ему новый уровень. И на том экране (удалённом) задаём шутеру нужный уровень (levelNum).