Игра — Морская разведка
Саму игру можно затестить в этом посте ↓ (в нем же вы найдете примеры правил и исходящего сюжета)
Ключевая фишка — рисуем море / поле / лес при помощи emoji (смайликов).
Скачать примеры полей смайловПри необходимости поменять фоновые смайлики на другие, воспользуйтесь «поиском с заменой» в блокноте. Ниже схематически привожу структуру команд. Подгоняйте её под себя. Заголовками выделю названия команд. Абзацами отдельные блоки. Начнем :-)
Ресурс - Морская разведка
В содержимом пустое поле (все смайлики одинаковые)
В примечании — массив правильных ответов (кораблей). Например: А-2,Б-2,В-2,Г-5,А-6,Е-1,Д-5,Б-5,Л-7
Ресурс главный всего один, поэтому дальше будут только команды
Ресурс — случайные корабли
Важно! Создание такого ресурса позволит сделать вечнозеленую игру. Т.е. такую игру в которую ваши подписчики могут играть самостоятельно. Корабли будут расставляться случайным образом из ваших заготовок.
В содержимом построчно записываете комбинации кораблей. Комбинации даны только для примера:
А-2,Б-3,В-2,Г-5,А-6,Е-1,Д-5,Б-1,Л-7 А-3,Б-1,В-3,Г-4,А-5,Е-2,Д-6,Б-2,Л-3 А-2,Б-4,В-4,Г-3,А-6,Е-1,Д-5,Б-3,Л-2 А-2,Б-5,В-3,Г-2,А-4,Е-2,Д-5,Б-4,Л-1 А-1,Б-6,В-2,Г-1,А-2,Е-1,Д-5,Б-6,Л-3 А-2,Б-7,В-1,Г-6,А-1,Е-4,Д-5,Б-5,Л-2 А-1,Б-4,В-4,Г-7,А-2,Е-5,Д-5,Б-7,Л-6 А-2,Б-1,В-2,Г-3,А-3,Е-2,Д-5,Б-2,Л-5
Не забудьте записать номер ресурса. В примере номер ресурса 80407
1) Морская разведка - Очистить море
Событие: сообщение с текстом: очистить море
.
Условие: Сотрудник аккаунта + Реакция на невыполнение: Доступно только сотрудникам
.
Действия:
1) Изменить ресурс сообщества с номером равным (подставить номер ресурса. Пусть будет: 14902
) и для содержимого установить значение: (скопируйте поле смайлов из документа по ссылке выше).
2) Переменная %sea%
= {get}14902|id|body{/get}
.
3) Отправлено сообщение с текстом:
Текущая ситуация на море:
%sea%
Время выполнения команды: %run_time% сек.
2) Морская разведка - Построить корабли - Комментарии
Использовать по желанию. Всё это может управляться только командой № 3 (сотрудниками сообщества).
Событие: Добавлен в приватный список подписчиков с названием: построить корабли
. Номер события: Х
.
Опционально (только если есть ресурс с комбинациями). Нажимаем добавить секцию
и добавлен в приватный список подписчиков с названием: автопостроение
. Номер события: Y
Действия:
1) Временной переменной %array%
присвоить значение: {get}80407{/get}
Данную переменную следует делать, только если вы намерены делать «вечнозеленую» игру.
2) Временной условной переменной %content%
(лучше не менять название) присвоить значение:{array}%array%|1|rand|col{/array}
, если:
- Событие с номером Y
есть среди текущих (запускается подписчиком при завершении игры). Данное условие следует делать, только если вы намерены делать «вечнозеленую» игру.
илиА-2,Б-2,В-2,Г-5,А-6,Е-1,Д-5,Б-5,Л-7
, если:
Переменная {array}%content%|2|val|col{/array}
= 0 (админ — дундук)
или (значение по умолчанию) ↓{array}%content%|2|val|col{/array}
= вторая строка поступающего от администратора сообщения (админ все сделал верно, или почти верно).
3) Изменить ресурс сообщества с номером равным 14902
и для примечания установить значение: %content%
.
4) Изменить ресурс сообщества с номером равным 14902
и для содержимого установить значение: (скопируйте поле смайлов из документа по ссылке выше). + Берите действие из уже добавленных.
5) Отправлено сообщение с текстом:
Новый флот построен. Начинайте игру сначала! 🙃
3) Морская разведка - Построить корабли - Сообщения
Вспомогательная команда для нужд администратора.
Событие: Написал сообщение сообществу с текстом содержащим: построить корабли
Условие: Сотрудник аккаунта + Реакция на невыполнение: Доступно только сотрудникам
. (Добавляйте из существующих!)
Действия: те же, что в команде 2 (с теми же номерами = добавлены из существующих), только последнее — «написать сообщение» вместо «написать комментарий», в котором при этом можно дописать переменную %content%
. Пример нормального текста сообщения:
Новый флот построен.
Установлены следующие корабли:
%content%
4) Морская разведка - Посмотреть море - Комментарии
Вспомогательная команда для игроков. Помогает посмотреть что там с морем, чтобы думать перед тем как проверять квадрат / стрелять / строить.
Событие: Написал комментарий в сообществе под постом c ID: 1566
(у вас будет другой номер поста! Но обязательно надо конкретный), с текстом содержащим: море
.
Действия:
1) Переменная %sea%
= {get}14902|id|body{/get}
.
2) Написан комментарий в сообществе под постом c ID: %id_1%
(+ в ответ на комментарий: %object_id%
), содержащий текст:
Текущая ситуация на море:
%sea%
Время выполнения команды: %run_time% сек.
Морская разведка - Проверить район - Комментарии
Главная команда игры :-)
Событие: Написал комментарий в сообществе под постом c ID: 1566
(у вас будет другой номер поста! Но обязательно надо конкретный), с текстом подходящим под регул. выраж: ^[А-Л]-[1-7]$
.
Условия:
1) Переменная %reply_to%
равна %reply_to%
(значит, что это комментарий первого уровня, а не ответ на другой). Иначе (реакция на невыполнение) написать комментарий:
Можно проводить разведку только в комментариях первого уровня! Не в ответах на чужие или свои комментарии
2) Корабли еще есть (простой вариант игры):
Числ. переменная {array}{get}14902|id|note{/get}|0|count{/array}
больше 0
.
Иначе выполнить событие с номером Х
(см. пункты 12
, 13
ниже ↓). Именно номера этих действий нужно указать через запятую.
Условие 3 — опциональное. Данное условие следует делать, только если вы намерены делать «вечнозеленую» игру.
3) Корабли еще есть (вечнозеленая игра):
Числ. переменная {array}{get}14902|id|note{/get}|0|count{/array}
больше 0
.
Иначе выполнить действия с номерами Х
(см. пункты 12
, 13
ниже ↓). Именно номера этих действий нужно указать через запятую.
4) Корабль существует:
Числ. переменная {array}{get}14902|id|note{/get}|%content%|num{/array}
больше 0
(корабль или его часть найдена в примечании ресурса). Иначе (реакция на невыполнение) написать комментарий:
Вы не попали, %first_name%!
Попробуйте еще 🙃
Действия:
1) Переменная %sea%
= {get}14902|id|body{/get}
.
2) Переменная %letter%
= {array}%content%|1|val|-{/array}
.
3) Переменная %row_num%
= {math}{array}А,Б,В,Г,Д,Е,З,И,К,Л|%letter%|num{/array}+1{/math}
. (Перечислил тут все возможные буквы как массив. После чего нашел порядковый номер элемента массива. И не нужно пилить длинные временные переменные) :-)
4) Переменная %row%
= {array}%sea%|%row_num%|val|col{/array}
.
5) Переменная %col%
= {math}{array}%content%|2|val|-{/array} +1{/math}
.
6) Переменная %new_row%
= {array}%row%|%col%|val|:|⛵️{/array}
.
7) Переменная %sea%
= {array}%sea%|%row_num%|val|col|%new_row%{/array}
.
8) Изменить ресурс сообщества с номером равным 14902
и для содержимого установить значение: %sea%
.
9) Изменить ресурс сообщества с номером равным 14902
(не забудьте сменить на свой!) и для примечания удалить элемент массива: %content%
.
10) Написан комментарий в сообществе под постом c ID: %id_1%
(+ в ответ на комментарий: %object_id%
), содержащий текст:
%first_name%, вы нашли корабль!
Текущая ситуация на море:
%sea%
Время выполнения команды: %run_time% сек.
11) Временно можно добавить отладочную информацию:
Действие: «отправить сообщение» с опцией «сотрудникам» и текстом например:
Отладка:
Буква: %letter%
Номер строки: %row_num%
Номер столбца: %col%
Важно! Действия 12, 13 следует делать, только если вы намерены делать «вечнозеленую» игру. Их обязательно ставить на паузу.
12) Написан комментарий в сообществе под постом c ID: %id_1%
(+ в ответ на комментарий: %object_id%
), содержащий текст:
Победа что ли? Нет, вы только выиграли сражение. Вражеская мощь не дремлет, подкрепление врага на подходе. Бегите или сражайтесь, при следующем залпе на вас нападут новые враги
13) Действие: «Выполнить событие» с номером Y
, где Y
— номер события
из команды 2 для расширенной игры (список — автопостроение
).
Пожалуй это все. Если хотите выразить благодарность или оставить замечение, комментарии этого поста к вашим услугам. Творческих взлетов!
Вернуться на главную страницу инструкций