Skill land rate formula in l2j is wrong as i know. The formula is kinda complex. First it takes base land rate that is power or effect power.
Than it adds another modifier based on your m atk and the target m def is skill is magic
MAtk = your MAtk
MDef = your MDef
If Matk > Mdef than (Matk / ( Mdef + shield def(if shield def is succesefull)) at 0.5 power ) *100 -100
else (Matk / ( Mdef + shield def(if shield def is succesefull)) at 0.05 power ) *100 -100
Than if you use ss/bss/sps
rate = rate till now
Code:
if (rate > 10000 / (100 + ssmodifier))
rate = 100 - (100 - rate) * 100 / ssmodifier;
else
rate = rate * ssmodifier / 100;
Tha it adds lvl modifier that has a long formula XD
Than it adds resists
Than it gets a random of 100 that is <= whit rate.