Alright, it seems that this exploit works on Freya servers. I got a little fix here for it for whoever is interested:
Credits go to Nik and everyone at L2J.
### Eclipse Workspace Patch 1.0
#P L2J_Server
Index: java/com/l2jserver/gameserver/network/clientpackets/RequestAcquireSkill.java
===================================================================
--- java/com/l2jserver/gameserver/network/clientpackets/RequestAcquireSkill.java (revision 4549)
+++ java/com/l2jserver/gameserver/network/clientpackets/RequestAcquireSkill.java (working copy)
@@ -94,7 +94,10 @@
if (!Config.ALT_GAME_SKILL_LEARN)
player.setSkillLearningClassId(player.getClassId());
- if (player.getSkillLevel(_id) >= _level && _skillType != 3)
+ // If current skill lvl + 1 is not equal to the skill lvl you wanna learn (eg: You have Aggression lvl 3 and the packet sends info that
+ // you want to learn Aggression lvl 5, thus skipping lvl 4.) or the packet sends the same level or lower (eg: Aggression lvl 3 and the
+ // packet sends info that you want to learn Aggression level 3).
+ if (Math.max(player.getSkillLevel(_id), 0) + 1 != _level && _skillType != 3)
{
// already knows the skill with this level
return;