Да есть там конфигурационные xml файлы, даже в код джавы лезть не надо (и почему такой кривой баланс удивляет еще больше), я думаю для многих это не новость (я 1 раз залез на серверную часть), ну и короче, в них можно прописывать глобальные переменные типа:
<ClassObject classId="93" className="Adventurer">
<stat name="ordinaryPhysicalDamage" outolympiad="1.20" olympiad="0.92" />
</ClassObject>
с их помощью и выставляется весь баланс, например тут говорится что дамаг Adventurer увеличен на 20% вне олимпа. В коде лишь общие формулы расчета, типа такой хрени:
return "AttackInfo [damage=" + damage + ", defence=" + defence + ", crit_rcpt=" + crit_rcpt + ", crit_static=" + crit_static + ", death_rcpt=" + death_rcpt + ", lethal1=" + lethal1 + ", lethal2=" + lethal2 + ", lethal_dmg=" + lethal_dmg + ", crit=" + crit + ", shld=" + shld + ", lethal=" + lethal + ", miss=" + miss + ", isPvP=" + isPvP + "]";
А по поводу рандома, типа есть мифы о разных фишках при заточке, но там используется мощный алгоритм генерации случайных чисел MersenneTwister, что означает - хер обманешь их рандом)