
Относительно системы начисления опыта ломали копья не раз. Основных претензий, насколько мне известно, две:
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 Скорость убывания опыта можно регулировать показателем степени (который здесь был равен трем), можно также добавить очковый бонус для НУ... впрочем, это уже детали. Жду отзывов и возражений.