![]() |
Вероятностный расчёт
Друзья, у меня в разработке игры пришло время добавить чуточку рандома. По этому поводу хочу вас спросить, возможно у кого-нибудь есть готовое решение, которым можно поделиться и не изобретать велосипед. Задач две. Во-первых, зная вероятность наступления события, получать значение типа "истина-ложь". Во-вторых, имея несколько событий с разной вероятностью, определить то из них, которое произойдёт.
А если ничего подобного не найдётся, то буду признателен за рекомендации, как реализовать. Пока единственный способ, который мне приходит в голову, выглядит примерно так. Если у нас есть событие, которое должно произойти с вероятностью 0.7, то мы будем генерировать псевдослучайное число в интервале от 0 до 1 и возвращать true, если оно окажется больше 0.3, т.к. (1-0.7). Примерно так же и с числами: генерировать случайные числа в диапазоне от 0 до значения вероятности каждого и выбирать событие с наибольшим значением. Корректно? |
Цитата:
|
Godwarlock, спасибо. Примерно то же, но лаконичнее.
Забавно, но мне почему-то казалось, что это какая-то такая сложная конструкция должна быть непременно. |
Цитата:
Код AS3:
Цитата:
Код AS3:
Код AS3:
|
Цитата:
Хотя всё это хозяйство ещё балансировать и балансировать. С одной стороны, не хочется жёстко детерминированного поведения от NPC, а с другой, как чуть отпустишь, какой-то шаляй-валяй получается с его стороны :) Добавлено через 1 час 5 минут Код AS3:
|
Цитата:
|
Реализовал вариант выбора одного из нескольких объектов, с учётом сравнительной вероятности каждого.
Вот кусочек кода (всякие проверки я оттуда повыкинул для компактности). Код AS3:
|
| Часовой пояс GMT +4, время: 08:14. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.