Integer Payout Function (вставьте "ожидаемое" значение, выведите максимальное распределение для "развлечения")
У нас есть несколько случаев в нашей игре, где мы хотим рандомизировать "выплату" с учетом ожидаемого значения выхода. Например, вместо того, чтобы награждать "10 кредитов" каждый раз, мы хотели бы вознаграждать в среднем 10 в долгосрочной перспективе с добавлением некоторой случайности с целью сделать его более "веселым", сделав его немного непредсказуемым.
Достаточно просто изменить его на случайную величину или даже сделать его нормальным распределением, но это не совсем оптимизировано для "развлечения". Разница в полезности для пользователя между 5 и 15 кредитами относительно невелика, но если бы был шанс, что время от времени они получат 100 кредитов, это будет большой ничьей и надеждой.
Есть ли алгоритм, который оптимизирован для игроков? По сути, это очень простой игровой автомат - я ожидаю, что кто-то провел исследование, чтобы определить, что делает что-то вроде этого увлекательным и забавным, но я даже не знаю, с чего начать искать что-то подобное.
2 ответа
Я думаю, что статьи, опубликованные lavin, звучат очень интересно и должны быть рассмотрены, но, не зная ничего об алгоритмах игровых автоматов, я бы предложил что-то простое. Простая вещь, которую нужно сделать, это просто случайный выбор из двух разных дистрибутивов, например:
выберите случайную форму U на [0,1] если (U <= p) выбрать случайную нормаль из N(10,2,5) если (U > p) выбрать случайную нормаль из N(100,10)
Здесь вы просто устанавливаете p, чтобы быть вероятностью вознаграждения, получаемого от менее захватывающего распределения (и очевидная 1-p - вероятность того, что оно придет из более захватывающего распределения). Вам не нужно использовать нормали для этих дистрибутивов. Больше униформы тоже подойдет.
Некоторые из алгоритмов, используемых игровыми автоматами, подробно описаны в этой статье, включая обычно используемый способ создания "промахов", "бонусного режима", чтобы сделать азартные игры более увлекательными.
и это еще одна статья. хотя вам может потребоваться быть в университете, чтобы получить доступ к полному тексту для этого (если вы не хотите платить за это).
Я не знаю, написал ли кто-нибудь программу, которая реализовала эти методы, но я надеюсь, что идеи, использованные на старых машинах, все еще работают в цифровом мире.