IMO, Java sucks, but I\'d rather see Java than C$, erm, I mean C# / .NET, i.e., Sun is still (a bit) better than Microtheft. :/
However, I think that it might actually be an option to have the updater in Java, selfupdate-wise.
Pros:
1) The updater could, even on W9x/ME, painlessly access the CS files, as it doesn\'t use them if it is Java
2) The JRE doesn\'t get updates as frequently as CS does
Cons:
1) updating the JRE would then require user action, which isn\'t good,
2) JRE isn\'t nearly as free as CS, so I\'d rather stick with CS.
Oh yeah, if you mod the client, or the server, you don\'t violate the license. You may, however, not redistribute the art, be it with or without the modified or unmodified versions. However, this isn\'t a real problem IMO, as the updater will fetch the art, so no need to bloat your distribution files with it.
And converting Java code to C(++) code isn\'t actually a good idea. AFAICS, it would be easier to just draw up some design documents instead of Java code and code the things in C(++) than to actually port them.