Hm, it's expensiv to train with a cannon, but it's easy and you can train melee when your cannon is shooting. In 1 hour you need like 3000 cannon balls, I think so and you get only x1 XP like: When you hit 4 with an Arrow then you get 16 XP because: 4x4 is 16. When you hit 4 with a cannon then you get only 4 XP because: 1x4 is 4. But you train faster with a cannon ;-).