Как работает дроплист

accavit

Пляшущий с бубном
Участник
Сообщения
133
Розыгрыши
0
Решения
2
Репутация
0
Реакции
22
Баллы
220
Хроники
  1. Interlude
Исходники
Присутствуют
Сборка
Lucera 1.7
1. Помогите, пожалуйста, понять, как рассчитывается шанс по категориям? Категория "-1" это споил вроде. А дальше как? Между остальными категориями распределяется 100% шанс? То есть:
категория 0 = 70% (допустим);
категория 1 = 20%;
категория 2 = 10%.
Если допустим, игра просчитала, что выпал дроп из категорий 0 и 1. То при этом дальше рассчитывается дроп внутри каждой категории?
Например:
В категории 0 только 1 вид дропа (Адена), значит она выпадет стопроцентов.
В категории 1 своя группа предметов, например:
Stem - 50%;
Thread - 30%;
Iron Ore - 3%;
Varnish - 1%.
Тогда игра может посчитать и сказать, что ни один элемент отсюда не выпал? Или обязательно что-то выпадет? Как это вообще считается?

2. В таблице droplist базы данных значения уже с учетом настроек рейта дропа в конфигах или еще без учета этого?

3. Пример: у меня в таблице БД указан шанс дропа Thread - 12%. В конфигах рейт дропа х10. Значит, если в базе данных эти настройки без учета конфига, то в игре этот Thread должен падать с шансом 120%, то есть с каждого моба. Но у меня нет такого в игре.

Поэтому и возникают вопросы о связи Базы Данных, конфига, категорий, шансов и просчета дропа. Помогите, поясните, пожалуйста. Если есть ссылки на нормальный материал для хроник Интерлюд, то поделитесь, пожалуйста
 
Вначале идет расчет шанса самой категории а после уже внутри категории. к примеру у тебя идет 2 категории итемов значит тебе максимум может упасть по 1 из категорий за раз. На птсе шанс внутри категории всегда должен быть 100%. т.е если срабатывает шанс второй категории то уже внутри категории 1 из итемов точно упадет, если у тебя срабатывает шанс на 2 категории то у тебя выпадает 2 итема.
 
{группа №1 шанс 30%}
{предмет №1 шанс 10%}​
{предмет №2 шанс 20%}​
{предмет №3 шанс 30%}​
{предмет №4 шанс 40%}​
{конец группы}

Сначала должен прокнуть шанс группы, если он прокнул, далее идет расчет того, какой предмет выпадает с группы. Как выше написали, сумма шансов внутри группы, по задумке, должны ровняться 100%. Рейтовка должна влиять на шанс группы, к примеру рейты сервера х15, шансы группы станут:

{группа №1 шанс 450%}
{предмет №1 шанс 10%}​
{предмет №2 шанс 20%}​
{предмет №3 шанс 30%}​
{предмет №4 шанс 40%}​
{конец группы}

450% означает что группа прокнит 4 раза с шансом 100%, и 1 раз с шансом 50%. Но шансы предметов внутри группы не изменятся, что сохраняет ту самую изначально указанную пропорцию.

В кратце. Шансы группы определяют выпадет ли предмет, шансы внутри группы определяют какой именно предмет выпадет. Можете представлять себе их как лутбоксы, шанс группы определяет откроется ли лутбокс в принципе, шансы предметов определяют дроп с лутбокса.

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

PS: В вашем случае с:

Stem - 50%;
Thread - 30%;
Iron Ore - 3%;
Varnish - 1%.

Все зависит от сборки, некоторые могут принимать данные шансы в таком же виде и тогда с группы действительно может ничего не выпасть. Другие сборки, могут учитывать пропорцию шансов, то есть к примеру сумма ваших шансов ровна 84%, далее выбирается рандомное число от 1 до 84, и если оно входит в диапазон от 80 до 83 до дропнится к примеру Iron Ore, в таком случае дроп будет всегда (надеюсь понятно почему).

Фактический шанс дропа предмета вычесляется по формуле ( шанс группы / 100 ) * ( шанс предмета внутри группы / 100 ) * 100.

Рассчитаем фактичиский шанс для 4 предмета в данной группе:

{группа №1 шанс 30%}
{предмет №1 шанс 10%}​
{предмет №2 шанс 20%}​
{предмет №3 шанс 30%}​
{предмет №4 шанс 40%}​
{конец группы}

( 30 / 100 ) * ( 40 / 100) * 100 = 0.3 * 0.4 * 100 = 12%

А теперь с рейтами х15:

{группа №1 шанс 450%}
{предмет №1 шанс 10%}​
{предмет №2 шанс 20%}​
{предмет №3 шанс 30%}​
{предмет №4 шанс 40%}​
{конец группы}

( 450 / 100 ) * ( 40 / 100) * 100 = 4.5 * 0.4 * 100 = 180% что будет означать 1 предмет упадет 100%, и еще 80% получить +1 предмет. Ну естественно это по теории вероятности, которая может и не работать так логично на малых отрезках в виде 4.5 проков группы.
 
Последнее редактирование:
@Mex-Vision

Модифицируется количество, а не шанс. Шанс группы как и шанс внутри группы не может превышать 100%. Надеюсь что не нужно объяснять с математической точки зрения одну единицу представлять как больше чем 100% - т.е. одна корова в процентном соотношении из 150% не сможет стать полторы коровой. По простому - мы не можем дропнуть пол адены(постоянная единица измерения), т.е. чисто скинуть 50 копеек(такой единицы измерения как независимая единица у нас нет) на пол.
Исходя из фактической логики модифицируется количество ибо это прямо пропорциональные значение если они выходят за круг 100%нтов.
Мы ролим дроп при модификации шанса якобы мы убили моба * rate. По факту это тоже самое что ты выше описал, но чуточек сбоку.
Соответственно если шанс группы 100%, а дроп Шкуры с жопы дракона внутри группы 1.16% при рейте в 10 мы получаем 1(default param) * chance (1.16%) * 10 (rate amount of "Kill mob mod") = "16.6%", но если мы выходим за пределы 100%, то мы не можем дропнуть 1 шкуру с жопы дракона с шансом допустим 116%. Мы дропним 1 предмет с шансом 100%, а второй как независимую единицу с шансом 16%.

PS зависимости от сборки нет, математику не на*бать. Есть разница в том что есть группы и шансы внутри групп или предмет падает независимо и при рейтовке он уходит в 100%+ идет Round к 100%. Хотя вполне вероятно есть больные на голову которые дробят шанс при превышении 100%нтов, но это уже отдельный вид BDSM.
 
Последнее редактирование:
@Mex-Vision

Модифицируется количество, а не шанс. Шанс группы как и шанс внутри группы не может превышать 100%. Надеюсь что не нужно объяснять с математической точки зрения одну единицу представлять как больше чем 100% - т.е. одна корова в процентном соотношении из 150% не сможет стать полторы коровой. По простому - мы не можем дропнуть пол адены(постоянная единица измерения), т.е. чисто скинуть 50 копеек(такой единицы измерения как независимая единица у нас нет) на пол.
Исходя из фактической логики модифицируется количество ибо это прямо пропорциональные значение если они выходят за круг 100%нтов.
Мы ролим дроп при модификации шанса якобы мы убили моба * rate. По факту это тоже самое что ты выше описал, но чуточек сбоку.
Соответственно если шанс группы 100%, а дроп Шкуры с жопы дракона внутри группы 1.16% при рейте в 10 мы получаем 1(default param) * chance (1.16%) * 10 (rate amount of "Kill mob mod") = "16.6%", но если мы выходим за пределы 100%, то мы не можем дропнуть 1 шкуру с жопы дракона с шансом допустим 116%. Мы дропним 1 предмет с шансом 100%, а второй как независимую единицу с шансом 16%.

PS зависимости от сборки нет, математику не на*бать. Есть разница в том что есть группы и шансы внутри групп или предмет падает независимо и при рейтовке он уходит в 100%+ идет Round к 100%. Хотя вполне вероятно есть больные на голову которые дробят шанс при превышении 100%нтов, но это уже отдельный вид BDSM.
Мой расчет шанса в конце сообщения не более чем пример для просчета шанса самому, естественно что сборки врядли будут этим страдать. Ты же сам описал точно такой же механизм по сути:

Ты: Мы дропним 1 предмет с шансом 100%, а второй как независимую единицу с шансом 16%.
Я: 1 предмет упадет 100%, и еще 80% получить +1 предмет.

Мы говорим об одном и том же, просто я показываю на пальцах почему так получается для человека который задал вопрос.
Естественно что у группы не будет шанс 450%, под данным процентом я как раз подразумеваю 4 прохода по группе с шансом 100% и 1 проход с шансом 50%.

А зависимость от сборки имеется ввиду реализация шансов внутри группы, человек спрашивал, может ли при проке группы не упасть предмет если сумма шансов внутри группы меньше 100%. Этот момент может быть реализован по разному.

Короче, говорим об одном и том же, но на разных языках=)
 
Я: 1 предмет упадет 100%, и еще 80% получить +1 предмет.
А зависимость от сборки имеется ввиду реализация шансов внутри группы, человек спрашивал, может ли при проке группы не упасть предмет если сумма шансов внутри группы меньше 100%. Этот момент может быть реализован по разному.
Кстати в основном на сборках калькуляциями с дропом не занимаются, и крутят группы в количестве раз = рейтовке.
В логике с твоим примером, получается, что вероятность выбить 1 предмет = 20%, а два предмета = 80%
В случае с рейтовкой в виде количества попыток над группой, можно посчитать результаты и получить другие результаты:
- вместо 1-2 предметов появится разброс: от 0 до 15 из твоего примера
- шансы будут несколько другими. Можно принять вероятность выпадения нитки как 0.3 * 0.4 = 0.12 в одном испытании. Тогда если воспользоваться формулой Бернулли(например в онлайн калькуляторе) можно увидеть, что вероятность выбить 1 нитку=30%, 2 нитки=28.7%, 3 нитки=17%, а 0 ниток=14.7%

Какой можно сделать вывод:
Вероятность выбить 0 или 1 нитку, из твоего примера, на реальном сервере намного выше 30 + 14.7 = 44.7%, чем 20%, которые ты посчитал интуитивно, как посчитали бы большинство игроков.
Так и вероятность выбить 2+ нитки будет 55.3%, а не 80% из твоего примера.
И это довольно ощутимая разница, которую игроки могут воспринимать как подкрутки администрации, хотя это просто разница в подходе расчёта дропа.
 
Назад
Сверху Снизу