Wake of Gods Forum | Форум Во Имя Богов

Full Version: ГСЧ - Генератор случайных чисел & ЕРМ
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5 6 7
(10.04.2018 13:34)Algor Wrote: [ -> ]Sedman7, если у тебя не куча рандом-команд за секунду выполняется
нет, один скрипт на всю карту, полный текст скрипта я привёл, вопрос какбы вроде покачто решил но так и не понял в чем причина, суть в следующем:
было 2 игрока красный (игрок 1) и синий (игрок 2), играю красным, синему дал замок на пустыре и 2 жилища существ просто чтобы ему было чем заняться, рандом работал хорошо, потом я добавил статичного героя, розового (игрок 8) и НЕ дал ему замка, после этого начал виснуть рандом, одно и тоже число выдаёт. я удалил розового героя (игрок 8) и вместо него поставил коричневого (игрок 3) и дал коричневому замок и после этого рандом заработал нормально, хотя число 36 по прежнему выдается, как мне кажется, чаще остальных.
    В общем вроде как получилось что если у комп. игрока один статичный герой и нету замка, некуда ему ходить, то рандом зависает на одном и том же числе.

НО экспериментально повторить такую ситуацию я не смог, создал чистую карту кинул этот скрипт и таких же игроков без возможности ходить и всё работало нормально, но на карте которую создаю помогло изменение с розовго на коричневый цвет, это в высшей степени странно...
Есть ли какой-нибудь способ замены стандартного генератора случайных чисел VR:R?
ElfbI, а какой нужен, сбалансированный?
Berserker, который можно использовать для замены оного в скрипте 39 измененные специализации героев (39 wog - hero specialization boost) там в бою автокаст заклинания идет все время в одну тушку.
In 39 wog - hero specialization boost script it is not completely random. With every action, like wait, walk, defend the chance increases for the spell to trigger.
PerryR, chance is ok. Autocast at one target every time is not ok.
VR:R sometimes bugs yes, it can happen that it always gives same result. I dont know how this happens... 102
Restart sometimes helps
VR:R uses Heroes native Random function, used throughout the game. It's not perfect. Would be nice to replace it with Mersenne Twister random number generator, but only with full multiplayer support.
А можно ли создать в игре таймер непрерывно считающий от 1 до 100 мсек в фоне, а при определенном событии (атака монстра) останавливался и выдавал соответственно значение от 1 до 100. Просто игровой рандом не совсем рандом. Это добавит человеческий фактор как при подкидывании монетки, при этом сознательно повлиять на результат не получится.
Igor, смысла никакого нет. Большинство ГСЧ (генераторов случайных чисел) есть на деле генераторы псевдослучайных чисел. Можно при загрузке игры менять значение генератора так, что результаты будут разные.
Berserker, в том и задумка, что без вмешательства человека невозможно получить истинный ГСЛ. А тут человек активируя событие каждый раз получает случайное время на таймере, т.к. неспособен повторить те же действия с точностью до мсек.
Время не случайная, а линейно возрастающая величина. В общем, такой практикой не пользуются нигде, ибо предсказать результат хорошего ГПСЧ невозможно, а против save/load есть возможность как раз генерировать новое стартовое значение генератора по микросекундам или любому другому источнику.
Berserker, вот, а где взять этот источник? Мне на ум только цикличный таймер пришел. Или можно системное время получить на ERM в мсек? При сохранении игра подписывает время сейва, значит что-то такое должно быть.
Igor, а чем не устраивает штатный рандом привязаный ко времени? !!VRy1:S0 T99 +1;
Поробуй:


Всем на заметку. VR:T есть убийца сетевой игры. Абсолютно не ясно, зачем он. Лучше заменить штатный генератор на Вихрь Мерсена, только я с ходу не разобрался, как это сделать аккуратно.
Pages: 1 2 3 4 5 6 7
Reference URL's