Орнул с деда, почти угадал про таймер. Формула такая:
get(99) + 1 <= chance = true(ура я заточил)
где get(99) - это сгенерированное через Вихрь Мерсенна случайное число от 0..99, для его генерации подается значение:
8682522807148012L + System.nanoTime (это абстрактное время таймера, с точкой отсчета - старт потока или еще есть другие варианты, но не как не вяжется на наше время). Если тут и есть какая-то зависимость, то явно не для местных умов.
Сами шансы задаются тоже через xml конфиги, на эпилоге который я разбирал было AltFixChanceWeapon=100,100,100,100,100,100,76,75,74,63,62,59,58,57,56,55 думаю легко догадаться, что это означает.
Вот пример полного конфига:
# Выберите формулу расчёта шанса заточки
# Choose a formula for calculating the chance of enchant
#-------------------------------------------------
# normal - обычная формула
# pvp - более гибкая формула для тех кто держит PvP
# fixed - формула с фиксированными шансами заточки
EnchantFormulaType = fixed
#-------------------------------------------------
# Настройки формулы PVP
#-------------------------------------------------
# Более гибкая формула для тех кто держит PvP или просто нехочет чтобы у него люди бегали переточёные
# Представляет из себя прогрессию где шанс на каждой +1 уменьшаеться
# поумолчанию с +3 до +4 65%...50% 40% 30 20 10 5 1 1 1;для тех кто непонял: 80-15=65;
# шансы могут принимать значения от 16(1%) и до 160(100% на +10)
# уровень safeEnchant также влияет на форумулу с него начинаеться отсчёт % на уменьшение
# для тех кто непонял при safeenchant = 5 - +5 - +6 65%
AltEnchantChanceWeapon = 80
AltEnchantChanceMageWeapon = 80
AltEnchantChanceArmor = 80
PenaltyforEChanceToHandBlunt = 18
#-------------------------------------------------
# Настройки формулы FIXED
# @EnchantMaxWeapon = количеству элеметнов в @AltFixChanceWeapon
# @EnchantMaxArmor и @EnchantMaxAccessory = количеству элеметнов в @AltFixChanceArmor
#-------------------------------------------------
AltFixChanceWeapon=100,100,100,100,100,100,76,75,74,63,62,59,58,57,56,55
AltFixChanceArmor=100,100,100,100,100,100,64,64,64,43,43,43
AltFixChanceArmorFullBody=100,100,100,100,100,100,64,64,64,43,43,43