Уважаемые ДМы... Не велите казнить, велите слово молвить!
Относительно системы начисления опыта ломали копья не раз. Основных претензий, насколько мне известно, две:
1) Приходится постоянно «качать» и отбиваться от «покачаев», что не способствует должной атмосфере на шарде. Это о старой.
2) Неинтересно и невыгодно ходить партией. Исчезли многие игровые схемы (один держит, другой бьет; один бьет, другой лечит и т.д.). Это о новой.
Имхо, обе претензии обоснованы и заслуживают внимания.
Почему бы не попробовать создать такую систему, которая снимала бы обе из этих претензий? Я не претендую на исключительность (хотя как инженер в математике разбираюсь ), может быть, у кого-то получится лучше. Но предложить-то можно?
Ниже цитируется существующий способ начисления опыта на Сиале.
При нанесении урона мобу значение урона записывается на личный счет нанесшему урон (НУ). Тем членам партии, кто видел это действие начисляется 10% урона, нанесенного НУ. (пример НУ нанес урон 10, ему записывается на счет 100, в его партии еще члена, из них видели удар 2ое, из них один был фамильяром. Наблюдателем (Н) записывается на их личный счет по 10.) Н считаются и РС и фамильяры и призванные существа.
Если моба бьют 2 разные партии (или 2 игрока не состоящие в партии), то всем им записывается соответствующие цифры на их личный счет. Для примера: Этого же моба подбежал и ударил до смерти пробегавший мимо игрок (ПМ), который не состоит ни в одной партии. Ударил на 8 хитов. Ему записывается на его личный счет 80 очков.
В момент смерти моба подсчитываются все очки урона. 10+10+100+80 = 200. Теперь подсчитывается для всех процент урона (%У). для Н %У = 5 , для НУ %У = 50, для ПМ %У = 40 . 5% потеряно из-за фамильяра.
Теперь для каждого участвующего подсчитывается "стоимость" моба" в очках экспы (СМ). СМ зависит от уровня моба (ЧР) и уровня игрока (конкретную формулу утаю).
Затем СМ умножается на классовый коэффициент игрока и на %У
P.S. Последнее изменение в системе опыта:
С целью поощерения игры игроков в партии ЧР моба теперь увеличивается в зависимости от числа игроков в партии. Формула выглядит так:
ЧР измененный = ЧР оригинальный * ( 1 + (количество участников убийства - 1)/9) , где количество участников убийства <= 4
Конец цитаты.
Все хорошо, но если один из сопартийцев не наносит урона мобам, то как бы он ни помогал остальным, он получит опыта раз в 5-10 меньше. Увы.
Как этого избежать? Предложение достаточно простое: производить распределение очков урона в соответствии с уровнем игроков. Если уровень равен или очень близок, то делить приблизительно поровну. Если уровень хоть сколько-нибудь заметно отличается – оставить как есть.
Дабы не быть голословным, предлагаю формулу, где НП – число партийцев, участвовавших в схватке, ЛНУ – уровень нанесшего урон, ЛH – уровень наблюдателя.
1) Всем членам партии (НУ и Н) начисляется по 10% от урона.
2) Остальные 100% распределяются следующим образом: каждый получает 100*(ЛН^3) / (ЛНУ^3 + ЛН1^3 + ... + ЛНN^3)
Пример: Предположим, что НУ 15 уровня наносит урон 10. За этим наблюдают сопартийцы Н1 16 уровня, Н2 13 уровня и Н3 8 уровня. Пробегавший мимо ПМ наносит урон 8. Что происходит далее?
а) ПМ получает свои 80 очков.
б) Все четверо в партии получают по 10 очков.
в) НУ получает дополнительно 100 * 15^3 / (16^3 + 15^3 + 13^3 + 8^3) = 100 * 15^3 / 10180 = 33.15 очка
г) Н1 получает дополнительно 100 * 16^3 / 10180 = 40.24 очка
д) Н2 получает дополнительно 100 * 13^3 / 10180 = 21.58 очка
е) Н3 получает дополнительно 100 * 8^3 / 10180 = 5.03 очка
Итог (округляем):
ПМ получает 80 очков.
НУ 15 уровня получает 43 очка.
Н1 16 уровня получает 50 очков.
Н2 13 уровня получает 32 очка.
Н3 8 уровня получает 15 очков.
Если же по умолчанию 10 очков не давать, то получим следующее:
ПМ получает 80 очков. (вместо 80 в действующей)
НУ 15-го получает 33 очка. (вместо 100 в действующей)
Н1 16-го получает 40 очков. (вместо 10 в действующей)
Н2 13-го получает 22 очка. (вместо 10 в действующей)
Н3 8-го получает 5 очков. (вместо 10 в действующей)
Как видим, трое сильных сопартийцев поделили 100 очков опыта приблизительно поровну (старший получил побольше, младший - поменьше). А нуб 8-го уровня остался всего с 5 очками... На мой взгляд, этого достаточно, чтобы сделать интересной игру в приблизительно равной компании, но недостаточно, чтобы «прокачать» действительно слабого игрока. Что и требовалось доказать.
PS Скорость убывания опыта можно регулировать показателем степени (который здесь был равен трем), можно также добавить очковый бонус для НУ... впрочем, это уже детали. Жду отзывов и возражений.