Перейти к содержимому

Выпадение разных карт.


Рекомендованные публикации

Игроки
685 публикаций
60 707 боёв

Дело было вечером, делать было нечего и внезапно пришла вот такая идея:
У нас в игре есть огромное количество карт, и если не путаю то балансер постоянно клепает команды в реальном времени.
Вот скажем почему не сделать следующим образом:
1) Для каждого уровня боев генерируем случайную перестановку доступных карт. Каждая карта в каждой перестановке участвует один раз.
2) Далее в течении скажем 2-3 минут все бои одного уровня генерируются на одной карте из полученной перестановки, начиная с первой. После истечения времени берется следующая карта из перестановки.

//время можно выставить любое, причем не обязательно одинаковое и/или константно забитое, можно так же делать случайным в определенном диапазоне.
3) Когда генерация боев происходит на последней карте из перестановки создаем новую перестановку, учитывая что у нас около 30 карт, то это порядка 30 факториал вариантов, для лоу лвлов поскуднее но не сильно важно. 

Я вижу несколько явных преимуществ:
1) Действительно будет разнообразие карт, оно будет чувствоваться.

2) Ни для кого не секрет что зачастую бывает, что выпадает около 5 разных карт за 10-15 боев, играя на нельготной технике одного уровня такого не будет происходить в принципе, если только не турбосливы за минуту.
3) При вводе новых карт можно легко настроить высокий шанс выпадания новой карты.
//тут стоит сказать что зависит от реализации, но в первые дни после патча вполне реально сделать что бы каждая третья карта была из списка новых.
Это поможет игрокам изучить новую карту, за два дня и не сильно надоест и изучить можно.
4) Я честно не знаю как именно устроен балансер программно, но сделать вышеописанное можно в короткие сроки и не нужно высоких мощностей.
Моё личное мнение:

Spoiler

 

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

Изменено пользователем Toluk
  • Плюс 4
Все танки хороши, просто у многих вместо рук клешни...
Динамика типа странный предмет ни у кого ее нет, а у меня она есть...
Ссылка на комментарий
Игроки
6 354 публикации
25 851 бой
Т.е. идея в чем? Сегодня с 18:30 до 18:37 у всех Ласвиль а завтра, например Песчаная река? В принципе остроумно, но как это скрестить с режимами? Изменено пользователем NuIex
Ссылка на комментарий
Игроки
685 публикаций
60 707 боёв
21 Июл 2014 - 06:20 пользователь NuIex сказал:

Т.е. идея в чем? Сегодня с 18:30 до 18:37 у всех Ласвиль а завтра, например Песчаная река? В принципе остроумно, но как это скрестить с режимами?

Не совсем так, мы не будем знать когда будет какая карта.
Каждый раз будет случайная последовательность, т.е. например с 18-30 до 18-37 каждый день будет случайная карта. Вполне возможно что выпадет одна и та же но и это можно учесть и не допускать такого.
Про режимы:
Насколько я помню, для режимов отдельные генераторы команд, для них можно так же сделать собственные перестановки и так же будут разные карты.
Другое дело что там карт не много, но это уже проблема режимов, а не карт.

Изменено пользователем Toluk
Все танки хороши, просто у многих вместо рук клешни...
Динамика типа странный предмет ни у кого ее нет, а у меня она есть...
Ссылка на комментарий
Игроки
6 354 публикации
25 851 бой
21 Июл 2014 - 18:36 пользователь Toluk сказал:

Не совсем так, мы не будем знать когда будет какая карта.
Каждый раз будет случайная последовательность, т.е. например с 18-30 до 18-37 каждый день будет случайная карта. Вполне возможно что выпадет одна и та же но и это можно учесть и не допускать такого.
Про режимы:
Насколько я помню, для режимов отдельные генераторы команд, для них можно так же сделать собственные перестановки и так же будут разные карты.
Другое дело что там карт не много, но это уже проблема режимов, а не карт.

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

Есть один подводный камень, который может обеспечить крепкую мель. Вот смотри выпала карта "А", программа следит чтобы она не выпадала еще 1-2 часа. Но программа не может следить за игроком "Вайнер" который заходит в игру переодически за вечер и отыгрывает пару тройку боев с интервалом 1-2 часа. В итоге игрок "Вайнер" бежит на форум и кричит, что ничего не работает у него было 4 карты "А" за игровую сессию.

 

Про режимы вопрос снимаю запамятовал )))

Изменено пользователем NuIex
Ссылка на комментарий
Игроки
685 публикаций
60 707 боёв
21 Июл 2014 - 13:32 пользователь NuIex сказал:

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

Есть один подводный камень, который может обеспечить крепкую мель. Вот смотри выпала карта "А", программа следит чтобы она не выпадала еще 1-2 часа. Но программа не может следить за игроком "Вайнер" который заходит в игру переодически за вечер и отыгрывает пару тройку боев с интервалом 1-2 часа. В итоге игрок "Вайнер" бежит на форум и кричит, что ничего не работает у него было 4 карты "А" за игровую сессию.

 

Про режимы вопрос снимаю запамятовал )))

В теории если карта А была n-ной по счету в перестановке, то шанс что она будет n-ной в следующей не 100%. Тут достаточно сделать проверку, что бы разница между перестановками была скажем более 40%(цифра с потолка, но думаю даже 70-80% не сильно затруднит).
+ можно же сделать время выпадения одной карты тоже случайным, скажем 2,3,4,5 минут, каждый раз случайно.
как пример рассмотрим 25 карт
в одном случае может быть на все карты потребуется 75 минут (1 час 15 мин), а в следующий 125 минут (2 часа 5 мин), таким образом игрок "Вайнер" должен быть крайне не везучим чтобы ему выпадала одна и та же карта постоянно
В любом адекватном способе выбора карт всегда будет шанс выпадения одних и тех же карт, другое дело, что в данной концепции нужно делать серьезные перерывы между боями, мне кажется что большинство играет сессию боев подряд и выходит, для таких игроков будут разные карты.
Еще есть возможность с разными уровнями боев, на границе мид и хай лвлов немного разный пул карт, но разница не настолько существенна.

Внезапно придумался еще один плюс в копилку:
Скажем игрок "Вайнер" люто ненавидит карту А, она ему выпала и он слился как незнамо кто за минуту. Он знает что максимальное время выпадения карты скажем 6 минут, все что ему нужно сделать - подождать еще 6 минут и в ближайший час-два он эту карту не увидит.

Все танки хороши, просто у многих вместо рук клешни...
Динамика типа странный предмет ни у кого ее нет, а у меня она есть...
Ссылка на комментарий
Игроки
6 354 публикации
25 851 бой
21 Июл 2014 - 20:41 пользователь Toluk сказал:

Spoiler

 

В теории если карта А была n-ной по счету в перестановке, то шанс что она будет n-ной в следующей не 100%. Тут достаточно сделать проверку, что бы разница между перестановками была скажем более 40%(цифра с потолка, но думаю даже 70-80% не сильно затруднит).
+ можно же сделать время выпадения одной карты тоже случайным, скажем 2,3,4,5 минут, каждый раз случайно.
как пример рассмотрим 25 карт
в одном случае может быть на все карты потребуется 75 минут (1 час 15 мин), а в следующий 125 минут (2 часа 5 мин), таким образом игрок "Вайнер" должен быть крайне не везучим чтобы ему выпадала одна и та же карта постоянно
В любом адекватном способе выбора карт всегда будет шанс выпадения одних и тех же карт, другое дело, что в данной концепции нужно делать серьезные перерывы между боями, мне кажется что большинство играет сессию боев подряд и выходит, для таких игроков будут разные карты.
Еще есть возможность с разными уровнями боев, на границе мид и хай лвлов немного разный пул карт, но разница не настолько существенна.

Внезапно придумался еще один плюс в копилку:
Скажем игрок "Вайнер" люто ненавидит карту А, она ему выпала и он слился как незнамо кто за минуту. Он знает что максимальное время выпадения карты скажем 6 минут, все что ему нужно сделать - подождать еще 6 минут и в ближайший час-два он эту карту не увидит.

 

Каждый день играет пара миллионов, чисто по закону больших чисел такие игроки будут. А представить, что некоторые игроки так играют просто, например я так играю. Клиент у меня открыт весь вечер, но свернут я периодически захожу на 2-3-7-12 боев, а потом на 0,5-1-2 часа сворачиваю и занимаюсь другими делами. 

По последнему предложению. Весьма логично, но для этого игрок "Вайнер" должен уметь читать.  К сожалению эта категория игроков очень плохо и мало читает (((

В общем идея ничего так, но кардинального решения не содержит. 

Изменено пользователем NuIex
Ссылка на комментарий
Игроки
685 публикаций
60 707 боёв
22 Июл 2014 - 00:52 пользователь NuIex сказал:

Каждый день играет пара миллионов, чисто по закону больших чисел такие игроки будут. А представить, что некоторые игроки так играют просто, например я так играю. Клиент у меня открыт весь вечер, но свернут я периодически захожу на 2-3-7-12 боев, а потом на 0,5-1-2 часа сворачиваю и занимаюсь другими делами. 

По последнему предложению. Весьма логично, но для этого игрок "Вайнер" должен уметь читать.  К сожалению эта категория игроков очень плохо и мало читает (((

В общем идея ничего так, но кардинального решения не содержит. 

Лучше уж так чем как сейчас.

Метод конечно не идеальный, но меня уже начинает бесить, что постоянно одни и те же карты выпадают как бы я не заходил в бой.
Кардинального решения, что бы у всех постоянно выпадали разные карты, не возможно реализовать. Для этого нужны мощности как минимум отдельного сервера или супер компьютера + время подбора боев будет дольше чем сейчас бывает.

Все танки хороши, просто у многих вместо рук клешни...
Динамика типа странный предмет ни у кого ее нет, а у меня она есть...
Ссылка на комментарий
Игроки
6 354 публикации
25 851 бой
22 Июл 2014 - 16:26 пользователь Toluk сказал:

Лучше уж так чем как сейчас.

Метод конечно не идеальный, но меня уже начинает бесить, что постоянно одни и те же карты выпадают как бы я не заходил в бой.
Кардинального решения, что бы у всех постоянно выпадали разные карты, не возможно реализовать. Для этого нужны мощности как минимум отдельного сервера или супер компьютера + время подбора боев будет дольше чем сейчас бывает.

Ну не знаю как постоянно. Посмотрел вчера папку реплеев за 2 месяца. Два дня выпала песчанная река 4 раза и один день ещё какая то карта 3 раза. Остальные карты выпадали 1-2 раза при количестве боев 5-35 за вечер. Это в случайных боях. Не вижу особой проблемы...

Ссылка на комментарий
  • 2 недели назад......
Игроки
16 294 публикации
78 285 боёв

В связи с отсутствием активности в теме и согласно правил раздела, тема подлежит закрытию.



 



 



 



Тема закрыта.


  • Плюс 1
Ссылка на комментарий
Гость
Эта тема закрыта для публикации новых ответов.
  • Сейчас на странице   0 пользователей

    • Эту страницу никто не просматривает.
×
×
  • Создать...