Вопрос ... (влияние luck на выпадение лута)
-
хехех две карты
-
За время, проведённое на мартинах, у меня собралось 4 :? карты мартина, 2 аксессори для Пеко, одна каска и один Джур :?
-
недавно узнал, что многие слова - заблуждения.
Оказывается, что шанс 0.01 небудет считатся случайной вероятностью.
Тоесть варианты того, что вещь выпадает исключительно из каждого 10000-го моба, и то, что шанс - это случайность, неверны.
Вещь выпадает из каждого 10000-го моба с идеальной точностью.
НО! Этот шанс из ВСЕХ монстров на карте. Тесть будут учитыватся не убитые вами, а все убитые монстры на карте.
Пример для непонимащих:
Син пытается выбить поринг карту(Гы ), он уже убил ровно 9999 порингов,
тут подваливает новис и валит поринга, ему выпадает карта, а син валит дальше. Воть как невезет=
Так же и я с первого моба выбил Орк Зомби.
Так что меньше слушайте сказки про две карты.:PЗ.Ы. Вот только незнаю, это относится к отдельной карте или ко всем монстрам одного типа в игре.
-
А это , как его, источник слухов можно???
Ссылочку какую нибудь...
-
Я так сразу и думал, что не от вас зависит, а от появляющихся монстров. Так что нужно выбивать то что надо на маленьких картах по возможности. К примеру в лаберинте.
-
Два одинаковых предмета иногда падают, например мёд из витаты или крылья из летучей мышки. А в остальном как повезёт. Вон в пирамиде иногда за день один лут, а иногда вещей за час на пару милионов...
-
@Bowie:
недавно узнал, что многие слова - заблуждения.Оказывается, что шанс 0.01 небудет считатся случайной вероятностью.
З.Ы. Вот только незнаю, это относится к отдельной карте или ко всем монстрам одного типа в игре.
Это не относится к игре вообще.
То есть - слух -
оч странно - следуя такой логике из МВП вообще карты валиться не могут, ибо сервак рестартится бывает и между рестартами ты ну никак не свалишь 10к допелей :roll: , тем не мение 1 карта из МВП (не допеля конечно) на сервере вроде как есть :roll:
И как быть с теми вещами, которые имеют шанс выпадения равный ?? одновременно должны валится :roll: ? -
обычный рандом и все эти сказки про 10к монстров для карты слухи. Сам выбивал из фабре 2 карты подряд. Сначала 1 фабре через пару фабре вторую.
Выпадение каждой вещи считается отдельно. И вещи с одинаковым шансом не обязательно выпадают вместе. Хотя бывает часто такое. -
@Bowie:
недавно узнал, что многие слова - заблуждения.Оказывается, что шанс 0.01 небудет считатся случайной вероятностью.
Тоесть варианты того, что вещь выпадает исключительно из каждого 10000-го моба, и то, что шанс - это случайность, неверны.
Вещь выпадает из каждого 10000-го моба с идеальной точностью.
НО! Этот шанс из ВСЕХ монстров на карте. Тесть будут учитыватся не убитые вами, а все убитые монстры на карте.
Пример для непонимащих:
Син пытается выбить поринг карту(Гы ), он уже убил ровно 9999 порингов,
тут подваливает новис и валит поринга, ему выпадает карта, а син валит дальше. Воть как невезет=
Так же и я с первого моба выбил Орк Зомби.
Так что меньше слушайте сказки про две карты.:PЗ.Ы. Вот только незнаю, это относится к отдельной карте или ко всем монстрам одного типа в игре.
ммм.. интересно как же это я, будучи новисом выбил 3 поринг карты подряд за 15 минут, т.е. 30000 порингов запинали другие? Вот в это я не поверю!!!
-
Да, очевидно сказки.
Как программер могу уверенно сказать, что метод "карта из 10000-го моба" сложнее реализовать чем просто рандом (надо иметь таблицу счетчиков по каждому item-у, ее где-то сохранять, и пр.), при этом количество карт выбитых за 1 год будет одинаковым как для первого, так и для второго варианта. И нафига тогда корячиться?
Если представить себе, какая нагрузка приходится на сервер, то становится ясно - программеры ОБЯЗАНЫ упрощать везде где возможно. -
Если программеры что-то и обязаны - то обязаны они оптимизировать код сервера в отношении производительности. Но никак не облегчать жизнь самим себе.
Поясняю. Впихнуть рандом вместо счетчиков для программера проще, но работает куда тормознее. Разных типов монстров не так много - допустим, типов монстров 10000, на каждого хватит счетчика размером в 2 байта. В сумме эти счетчики будут занимать аж 20 кб в оперативной памяти... честно говоря, текущие HP всех монстров в мире занимают значительно больше. )
Теперь смотрим на быстродействие. В случае со счетчиками нам нужно сделать один переход по указателю (в массиве), один инкремент и одну проверку if. В случае с рандомом мы имеем call (вызов функции рандома) со всеми вытекающими последствиями (работа со стеком) - и кучу инструкций внутри самой функции рандома.
Итак?
Строго говоря, еще оптимальнее вообще сделать один-единственный счетчик для всех типов монстров. А чтобы не было "коварных планов со стороны всех игроков сервера по согласованному выбиванию доппеля" - счетчик крутить не до 10000, а до 100. Другими словами каждую сотую смерть моба бросается рандомный однопроцентный кубик. Получаем те же 0.01%, только вызовы рандома осуществляются в 100 раз реже.
P.S. Я теоретизирую. Как это реализовано на нашем сервере (да и на других) я не знаю.
P.P.S. Ничего личного, но либо ты какой-то неправильный программер, либо просто заклинило. Бывает ) -
а я как не программер сказал бы, что эти счётчики, это удаление гландов через...
ps. и как идёт тогда определение воровства дропа ? тож на каждом 100 мобе.
pps. лично я читал на зарубежном форуме, что определение дропа идёт при респе моба. И весь дроп прыгает с порингом в массиве с остальными циферками. Но это тоже голословно было. -
С точки зрения теории вероятности - да. Решение кривоватое. Но при 1000 игроков онлайн и смертях монстров раз в секунду (может и чаще - статистику не подсчитывал) необходимый уровень случайности будет достигаться. Заодно от генератора будет требоваться корректно выдавать шанс 1%, на что он вполне способен. А вот способен ли генератор хорошо работать на числах вида 0.01%, я не знаю.
-
Счетчиков никаких нет, это была бы очень глупая затея )))
Есть только вызов функции генерации случайного числа после смерти монстра. Для тех кто думает, что это ресурсоемкая задача - смотрим описание линейного конгруэнтного генератора используемого в стандарте ansi-c -
Antzekyrre, у программеров в ходу такая поговорка: "жизнь слишком коротка, чтобы писать на ассемблере". Твоя модель дает некоторое преимущество по качеству случайных чисел (действительно, 0.01% более требователен к разрядности и подбору коэффициентов, чем 1%). При написании и оптимизации на низком уровне, эта модель будет лучше чистого рандома. Но по ресурсоемкости у нее нет явных преимуществ, если использовать высокоуровневые ЯП со стандартными (не самописно-оптимизированными) компиляторами. Там ведь неявных вызовов может быть больше, чем заданных программистом. А если вместо компиляции идет трансляция скрипта, то твоя модель это "удаление гландов через...". Обращение к рандому - вызов, обращение к счетчику - тоже вызов. И что проще при отладке, сбалансировать обработку счетчика или составить корректную таблицу вероятностей дропа с учетом особенностей выбранного линейного конгруэнтного генератора?
Если программеры что-то и обязаны - то обязаны они оптимизировать код сервера в отношении производительности. Но никак не облегчать жизнь самим себе.
Программеры обязаны сделать работающую программу в сроки, установленные заказчиком. А оптимизировать только в отношении производительности - чистый концепт. Бизнесмены такого не понимают, для них важно, чтобы разница в стоимости аппаратной части для оптимизированного и неоптимизированного кода не превышала убытков от срыва сроков окончания проекта. Для бизнесмена лучше кривой (но работающий) код, созданный за год, чем идеальный код, написанный за десять лет.
-
У меня сегодня ДР. Так вот, где-то за час качания из мимиков было выбито 2 олд блю бокса. Заставляет задуматься...