Укажите метод раздачи или рандомизации, варианты действий игрока, таблицу выплат и поддерживаемые опции. Внешне похожие игры могут требовать разной математики и тестирования при изменении правил или дополнительных ставок.
Превратите правила в матрицу решений
| Область правил | Какой вопрос решить |
|---|---|
| Начальное состояние | Какие карты, значения или позиции начинают допустимый раунд? |
| Выбор игрока | Какие действия доступны в каждом состоянии и сколько они стоят? |
| Тайм-аут | Какое действие или результат применяется, если ответ не приходит? |
| Ничья или нестандартный результат | Какое правило выплаты и приоритета действует? |
| Дополнительная ставка или раздача | Как она оценивается и связывается с основным раундом? |
| Прерывание | Какое состояние сохраняется и как игра возобновляется или рассчитывается? |
Используйте матрицу, чтобы определить тестовые случаи до реализации. Название знакомой игры не заменяет фактический набор правил конкретного варианта.
Отделите серверное состояние от его отображения
Серверная запись должна устанавливать принятые решения и результат. Анимации и сообщения должны точно показывать это состояние, включая задержанные или восстановленные действия. Повторный запрос клиента не должен незаметно создавать новую ставку или решение.
Сохраняйте историю раздачи или раунда, которая связывает версию правил, действия и результат. Поддержке нужны доказательства, позволяющие объяснить исход без опоры на последний экран, который видел игрок.
Принимайте ветви правил и финансовые записи вместе
- Проверьте каждую согласованную ветвь матрицы, включая тайм-ауты, ничьи и нестандартные выплаты.
- Прервите и возобновите характерные раунды.
- Сравните историю со списаниями, зачислениями и отменами в кошельке.
Определите требования к оценке и распространению планируемой версии. Изменение варианта, дополнительных ставок или правил выплат может изменить объём тестирования, даже если интерфейс выглядит похоже.
Подготовьте комплект разработки
Согласуйте передачу правил, математических разработок, материалов, клиента, сервера, адаптера и результатов тестов. Укажите права на каждый компонент и команду, отвечающую за обновления. Если несколько игр будут использовать общую инфраструктуру, согласуйте проект RGS с требованиями к их состояниям и транзакциям.
Пришлите точный вариант игры и правила выплат, поддерживаемые устройства и способ распространения. Для согласования объёма работ перечислите дополнительные функции отдельно.