Java and MMRPGs
I am interested in writing an indie MMRPG. But now I'm asking myself: C++, C# or Java? My opinions:
- Okay, I'm not comfortable with C++, but it's industry standard and it's fast.
- I'm really comfortable with .Net and Visual C# but it's slow and not very deployable. (debatable, I know - but it's what I've found)
- Java seems slower to me compared to C++, but seems along the same lines as C#.
I don't want to deploy it using applets, because of security issues and required caching. So, applets may not be a plus for Java in this case.
I like C# because it's fun to code in. ;) Java seems better for networking, because threading and sockets in C# are not nice. Java sockets are much more predictable.
What language would you suggest and why?
I would recommend Java (it can be faster then C/C++ in some cases! this has been proven in games as well!)
Java is fun/easy to develop in, its cross-platform, and many famous games have already been programmed with it (famous = 1 million+ players) like Runescape and Minecraft (be aware that these two games aren't good examples of the capabilities of java graphics wise, but they are awesome!)
Also, I would not consider any specific language 'industry standard', C++ is used by large companies with hundreds of developers to develop games but the majority of the games made are not in C/C++
ClickerMonkey, just curious when you said that most companies develop with C/C++ but aren't made with them. Do you mean they sort of prototype the game but do the final build in another language for speed or efficiency? What languages would a C/C++ game be ported to, what are the advantages? Getting ready to start studying game programming in both Java and C++ and would like to get more perspective. Thanks for any light you can shine on this!
I meant most large companies develop with C++, but out of all of the games developed C++ is the less frequent (tons of flash games, Droid (Java) and iPhone games).
If you want to jump right in I would recommend Java and LWJGL, I've worked with C#, C++, C, VB.NET, and Java with regards to games, and used XNA, DirectX.Net, OpenGL, JOGL, and LWJGL as libraries.
Its my personal opinion however, I really like OpenGL (which LWJGL binds to), and there's tons of information online about it.
That was great advice and I'll be sure to follow it, thanks for your insight! :)