Тест о том, почему в коллках часто оказывается много одинаковых элементов, а нужных - ноль штук.

Мне опять скучно было)                                                                                                                      

Каждый клик случайно раздает 50 элементов. А разброс в 10 элементов оказывается не таким уж редким явлением...



Самое маленькое попавшееся число: 10

Самое большое попавшееся число: 10

1010101010


В текущей пачке, когда последнего элемента еще было 0 штук,
Одного из элементов уже выпало 0 штук.

Комментарии
Ну раз уж скучно, может составишь таблицу гос цен всех шмоток и бижи)
внешняя ссылка и сразу)))

Ромашка, ой... вдруг стало не скучно)
да тут рандом на колы понятен давным давно, выбирается из колы 1 элемент и на него шанс меньше, чем на другие, поэтому часто и нет 1го элемента в колах. Я так зеленой костью с 500-600 до 3к бил, потому что не падал непокупной элемент, докупил потом на 3к. И по другим колам точно так, 1 элемент стабильно реже падает
Нет абсолютной уверенности в том, что последующие распределения в случае данной коллекции являются независимыми от предыдущих. Все-таки она весьма особенная.

По факту при сборе >200 коллекций разброс элементов не превышает 5% от ожидаемого (или, соответственно, 10% между крайними значениями), что считается равномерным распределением по принятым правилам (погрешность 5% считается допустимой)
То есть примерно так:
ожидаемое в идеале количество каждого элемента - 200 для 200 коллекций.
фактическое - 191, 202,203,197,207; (191+ 202+203+197+207 = 200х5 = 1000)

Максимальное отклонение от ожидания – модуль (200-191) = 9 (4,5% от 200)
Максимальное отклонение между крайними значениями – модуль (207 – 191) = 16 (8% от 200)

При > 350 коллекций вроде еще лучше становится.

Хотя не факт, что «выравниватель» учитывает количество собранных коллекций и выпавших элементов.
возможно, что есть совершенно другая зависимость, при помощи которой намного проще регулировать рандом, чем учитывая все предыдущие выпадения элементов для каждого конкретного игрока.

Вариантов при этом масса, и все по своему хороши.

Например:

Первые 6 недель игры приоритетно выпадает элемент Х - то есть распред равномерный, но у данного элемента он в два (или три) раза выше;
Вторые 6 недель - элемент Y = через один от Х по возрастанию (в пределах цикла из 5-ти элементов, то есть элемент с номером 5+1 = элемент с номером 1)
и т.д.

А другому элементу параллельно присвоен пониженный приоритет, и меняется тем же способом.

Начальный Х выбирается относительно случайным образом. если, например, он будет = "волшебная отмычка", то Y будет равен "компас кладоискателя"
Такой распред (или любой другой аналогичной концепции) стимулирует к сбору коллекций на длительном промежутке времени. И приведет к выравниванию при условии относительно стабильных во времени действий игрока. Возможно, что интервал сокращается на каждом последующем временном "витке". То есть, когда каждый элемент окажется охваченным воздействием, то вместо 6 недель в данном случае, интервал перехода станет 5 недель, потом - 4 недели, и так до минимального установленного разумного значения, например, в 2 недели, которое уже в дальнейшем будет стабильным.

У меня конкретно 214 колок собрано. Периодически накапливался столбик из определенного элемента коллекции с отклонением от остальных в 10-15 штук. Провалов одного элемента по отношению к полным коллекциям более 7-9 не было.

Докупалось мною всего 20-30 элементов, не более 2-3 за раз ( то есть менее 1%), чтобы на Мс прокла вытащить уже после перестрела – типа без него стремно, или молоток перед варом хотелось. Несколько проданы в игру - золота не было коня купить на тролей чота пачемута, а взять его быстро на лодке негде. Наверняка отравнялось бы все даже лучше без срочной докупки и продажи.


Но еще грамотнее не заморачиваться, а просто сразу не напрягаться, когда один из элементов стремительно опережает остальные. Ибо это может быть такой задумкой «режиссера».

Для простоты (чтобы вообще не нужно было хранить инфу о предыдущих действиях), выбор первых элементов может быть привязан к любой константе в отношении конкретного игрока - например, дата создания персонажа (самое норм). Тогда в любой момент при выпадении элемента коллекции можно будет узнать, не обращаясь к данным предыдущих операций, какая формула рандома актуальна в конкретный день.


p.s. сори за многа букав, но короче просто не получилось. видимо тема такая.
dream crystal, Во всех языках есть функция, автоматически создающая случайное число... а программисты ленивые люди, никому не нужно изобретать велосипед. При таких объемах кода как у нашей игры...
OPTlMUS PRIME, программисты конечно ленивые не только в плане за пивом сходить, но и в остальном они весьма заботятся о том, чтобы не создавать себе лишней работы на будущее. Главное - не программисты определяют результирующую концепцию, а заказчики кода. Программисты лишь воплощают ее наиболее простым способом (в идеале, если они умные профи, а не безалаберные стажеры-троечники).

касаемо условных "велосипедов", - их точно не надо изобретать. большинство "велосипедов" уже давно изобретены, о чем можно полюбопытствовать в дисциплине "теория алгоритмов", непосредственно относящейся к курсам математики и информатики одновременно.


если 20 игроков с количеством собранного Тарта > (больше) ста коллекций напишут что у них по факту было докуплено, или каков разброс, и как он формировался во времени, то можно будет судить.

а предложенный тест вообще не отражает реалий, так как 50 элементов коллекции не могут участвовать в единовременном распределении все сразу. Даже, если 50 игроков одновременно (! что слабовероятно) открывают рыжие сундуки. Но тогда сработает распред общего количества между конкретными игроками. А один игрок распределить себе 50 элементов в рамках одной "сессии" вообще не может в принципе - такого режима получения элементов не существует.

Сделайте тогда накопительно : 500-1500 кликов по одному элементу каждый раз случайным способом.

Обслуживание условно одновременных событий системой - это вообще отдельный вопрос. Временной интервал "одновременности" зависит от возможностей системы, или желания ее минимально нагрузить (при дефиците ресурса для обработки), или, наоборот, когда единовременная нагрузка пофиг, а требуется максимальное приближение к реалиям (при условно неограниченном ресурсе для обработки данных).

оно надо таким заморачиваться, не владея исходными условиями задачи, и лишь предполагая цели?
напишите, кому не лень, в цифрах по собранному тарту, если его много. На маленьком количестве - точно перекос. И случайным он быть не может.

Интересно, что у кого на большом количестве коллекций. 200-300-500 в таких рамках.
dream crystal, Да при чем тут вообще реальное распределение... Если вы любите умные слова, то должны были слышать про Бритву Оккама... нет смысла добавлять хитрозадуманных концепций, пока всё объясняется простыми вещами. Я не говорил, .что знаю как реально распределяются коллки в игре. А просто сделал честное случайное распределение, как если бы один игрок в течение N времени накопил 50 элементов [при условии что всё падает именно случайно, без хитрых костылей с принудительным невыпадением]. Только это накапливание реализовано одним кликом. А если результаты этих случайных кликов будут совпадать с тем, что реально выпадает людям в игре, значит так оно и работает...
OPTlMUS PRIME, так просто сами сделайте сравнение:

- случайное распределение 50-ти элементов одним кликом (но лучше 1000, конечно)
и
- случайное распределение 50-ти элементов 50-тью отдельными последовательными кликами (лучше, конечно 1000)

(реалиям игры соответствует второй способ распределения. и он совершенно точно отличен от первого).

и сравните результаты двух случайных распределений, организованных принципиально разными способами, для одинакового количества элементов.

вот мне тоже интересно что получится.

К вопросу об умных словах - мне представляется нормальным для обсуждения разумных тем использовать специально существующие для этого разумные термины. К любви это отношения не имеет вообще.

А едкие непрекращающиеся нападки тех, кто предпочитает общаться на языке тумба-юмба-кракатумба даже на такие исключительно специализированные темы - вообще являются проявлением примитивной желчной агрессии абсолютно некомпетентных в данном вопросе существ. Дайте им таблетку что ли уже для успокоения.




это что такое?
введите персонально для оптимуса, который скучает, 10е перерождение и золотые репы за 500к
Вот он наш любимый рандом:

Самое маленькое попавшееся число: 1

Самое большое попавшееся число: 19
Назгуленок, 1, 20 у меня
Десептиконыыы хдевыы
эм... чет у меня походу кнопка эта не работает.... раз 30 нажал - ничего не поменялось...

Самое маленькое попавшееся число: 10

Самое большое попавшееся число: 10


В текущей пачке, когда последнего элемента еще было 0 штук,
Одного из элементов уже выпало 0 штук.
-Каин_, Эмм... ага, k-meleon например не поддерживает код)
Самое маленькое попавшееся число: 9

Самое большое попавшееся число: 11
идеально 1 9 1 11 остальные 10
Засекреченэто что такое?
введите персонально для оптимуса, который скучает, 10е перерождение и золотые репы за 500к

Ну не все же умеют кланы уничтожать
Для того чтобы оставить комментарий, зарегистрируйтесь или войдите под своей учетной записью.