So I finally got around to writing a dumper for the custom java class loader that Darkfall uses.
Turns out they have at least 4611 classes. I say at least because apparently the JVM is optimized to only load classes that it has reason to believe will be or are being used, the implications of which mean that the more features of the game being used, the more classes will be loaded.
I have a hard time thinking that there can be many more classes simply on the basis that 4600 is quite a lot to begin with, but also that I tried to hit at least the majority of basic functionality of the game.
I’ll post some examples of what the code looks like in a bit. Most of it is obfuscated so it is full of randomized 2 and 3 letter named variables and class names.