Механика Охотника
-
King of Lamers, Думаю, про редкий вещи может быть только теория везения TheEvilOne правильно сказал, что правильная теория не гарантирует огромного выигрыша, но стабильность.. Если мы говорим о яблоах, мёде и тд, то можно прикидывать вероятность и количество, которое мы получим в итоге (взять хотя бы пример Grif'a).. Но с редкими вещами, вероятность выпадения которых очень мала, по-другому: либо выпадет, либо нет - как повезёт.
-
King of Lamers, давно писал, видимо имел ввиду, что для редкого лута шанс выбить хотябы одну редкость из N мобов равен 1-exp(-p*N), p - шанс дропа. Но вроде это почти очевидно.
-
Я уехал из своей страны и не могу часто бывать в Сети. Оставляю модераторам право редактировать всё, что угодно и так, как угодно. PM не проверяю. Аривидерчи.
З.Ы. Слушайтесь Grif'a и Kohr-Ah'a, и будет вам щастье.
-
Grif, ты уверен в том что вероятность выбить хотябы одну редкость из N мобов равен 1-exp(-p*N) ?
по-моему 1-(1-p)^N
например шанс что из 3-х мобов упадет хоть один кусока лута шанс которого 60% тоесть: N=3, р=0.6
- Примем что q - это вероятнсть, что из моба не упадет кусок.
- Тогда q^N - это вероятнсть что из N мобов не упадет ни одного кусочка.
- Если взять обратное утверждение, что из N мобов упадет хотя бы 1 кусочек, то оно будет равно 1-(q^N).
- Так как q=1-p, то получится, что вероятность, что из N мобов упадет хотя бы 1 кусочек, будет равна 1-(q^N)=1-((1-p)^N)
короче для нашего случая:
1-((1-0.6)^3)=1-(0.4^3)=1-0.064=0.936=93.6%знак X^Y означает X в степени Y
для большого числа монстров, чтобы не получалось вроде число в степени 10000 используют упрощенные расчеты в виде распределений, но этого я писать не буду, юзайте поиск -
Я выбил тару из 20ой лягушки, фтопку рассчеты, просто месите мобов.
-
unnamed01, Замечательный пределcode:1655a0j8^N = exp(NLn(1-p)) ~ exp(N(-p))[/code:1655a0j8] Экспонетну лучше считать, чем 0.9999^10000.
-
я же сказал, что при больших кол-вах лучше использовать распределения,
кроме того не всегда "Р" стремиться к нулю...(я нуб, уже забыл как пределы считать, а про теорию вероятностей лучше и не спрашивать)
-
Cенькс это по научному, а по простому? Типа, по закону джунглей...
например вещь падаеет 1\4000 или вещь падает 1\1500, или вещь падает с шансом 0.01% как мне надо считать?
Я не понял слово exp, означает что это надо брать в квадрате?
Я просто запутался, например хочу узнать сколько надо завалить мобов чтобы выпала карточка, и считаю по формуле:
1-exp(-pN)=1-exp(-0.000110 000)=1-exp(-1)=0Что я делаю не так? и зачем в формуле минус?
-
exp - это экспонента, exp(x) значит e^x ("е" в степени "х"), e = 2.718281828459
1-exp(0) = 0 = 0%
1-exp(-0.5) = 0.393 = 39.3%
1-exp(-1) = 0.632 = 63.2%
1-exp(-2) = 0.865 = 86.5%
1-exp(-3) = 0.950 = 95.0%unnamed01, шанс выбить силк робу или карту, мал. Вопрос в том, сколько надо замочить тар, чтоб выбить карту ? 10 000 мобов - это всего 2/3 шанса получить долгожданную вешь. Я не спорю, ты абсолютно прав, что шанс (1-q^N), но это считать не удобно.
P.S. блин, сейчас опять психом обзовут из-за формул.
-
Grif, ты знаешь что ты псих?
2/3 шанса получить одну единственную карту, а еще есть какой-то, отличный от нуля, шанс получить две или три карты или даже 10 000 карт)))
К сожалению больше 10 000 карт из 10 000 мобов получить невозможно -
unnamed01, в РО можно. С лутеров, съевших еще кучу карт.
Нет, я себя психом не считаю. Просто на игровых форумах не принято заниматься математикой. -
2/3 полчить именно одну карту?) Или больше 0?
При 0,04 10к мобов... что б мне в аду гореть 1 карта) хотя б 3-4) -
Пытаюсь понять как расставлены скобки в этой формуле:
функция: Damage = (([({(DEX + [DEX/10]^2 + [STR/5] + [LUK/5] + UpgradeBonus + ImpositioManus + ATKCards + (rnd(ATK/100min(ATK, dex(0.8+0.2WeaponLevel)), max(ATK, ATK/100min(ATK, dex*(0.8+0.2*WeaponLevel)) + rnd(0, ArrowATK - 1)) * SizeModifier) * SkillModifiers * (1 - DEF/100) - VitDEF + BaneSkill + Upgrades} + EnvenomSkill) * ElementalModifier * DamageBonusModifiers * DamageReductionModifiers] * NumberOfMultiHits) - KyrieEleisonEffect) / NumberOfMultiHits
Развернул формулу:
[code:2uk0rbnb]Damage =
(
(
[
(
{
(
DEX + [DEX/10]^2 + [STR/5] + [LUK/5] + UpgradeBonus + ImpositioManus + ATKCards +
(
rnd
(
ATK/100min
(
ATK, dex(0.8+0.2WeaponLevel)
), max
(
ATK, ATK/100min
(
ATK, dex*(0.8+0.2*WeaponLevel)
) + rnd(0, ArrowATK - 1)
) * SizeModifier
) * SkillModifiers * (1 - DEF/100) - VitDEF + BaneSkill + Upgrades
} + EnvenomSkill
) * ElementalModifier * DamageBonusModifiers * DamageReductionModifiers
] * NumberOfMultiHits
) - KyrieEleisonEffect
)[/code:2uk0rbnb]В результате двух закрывающихся скобок не хватает. Где ошибка?
-
имхо должно быть так:
[code:3rix679p]
Damage =
(
(
[
(
{
(
DEX + [DEX/10]^2 + [STR/5] + [LUK/5] + UpgradeBonus + ImpositioManus + ATKCards +
(
(
rnd
(
ATK/100min
(
ATK, Dex(0.8+0.2WEAPON_LEVEL)
), max
(
ATK, ATK/100min
(
ATK, Dex*(0.8+0.2*WEAPON_LEVEL)
)
)
)
) + rnd(0, ARROW_ATK - 1)
) * SizeModifiers
) * SkillModifiers * (1 - DEF/100) - VitDEF + BaneSkill + Upgrades
} + EnvenomSkill
) * ElementalModifier * DamageBonusModifiers * $DamageReductionModifiers
] * NumberOfMultiHits
) - KyrieEleisonEffect
) / NumberOfMultiHits
[/code:3rix679p]Или в свернутом виде:
Damage = (([({(DEX + [DEX/10]^2 + [STR/5] + [LUK/5] + UpgradeBonus + ImpositioManus + ATKCards + ((rnd(ATK/100min(ATK, Dex(0.8+0.2WEAPON_LEVEL)), max(ATK, ATK/100min(ATK, Dex*(0.8+0.2*WEAPON_LEVEL))))) + rnd(0, ARROW_ATK - 1)) * SizeModifiers) * SkillModifiers * (1 - DEF/100) - VitDEF + BaneSkill + Upgrades} + EnvenomSkill) * ElementalModifier * DamageBonusModifiers * $DamageReductionModifiers] * NumberOfMultiHits) - KyrieEleisonEffect) / NumberOfMultiHits -
Ответ спустя пару месяцев.
Мне больше всего нравится такой вид, который мне кажется наиболее близким к реальности:Damage = Damage_init * ElementalModifier * DamageBonusModifiers * DamageReductionModifiers * NumberOfMultiHits - KyrieEleisonEffect
Damage_init = Damage_dummy * SizeModifiers * SkillModifiers * (1-DEF/100) + BaneSkill + Upgrades - VitDEF
Damage_dummy = DEX + [DEX/10]^2 + [STR/5] + [LUK/5] + UpgradeBonus + ATKCards + rnd(A, max(A, ATK)) + rnd(0, ARROW_ATK - 1)
A = ATK/100 * min(ATK, DEX * (0.8+0.2*WEAPON_LEVEL))
Куда идет ImpositioManus сейчас не знаю, но вроде б увеличивает ATK а не Damage_dummy.
Еще куда-то нужно вставить добавку класса бонуса от ВВС, сферок, нибелунгов, и прочих, которые называются "ничем не режется"