Mephs
24-07-2008 20:00:10
I already hear the groaning at the use of the word "MMO" somewhere in this post, I'll make this as brief as possible.
I've been in a planning/design stage for the last 2 years, mostly with free time and as a hobby, and reading as many articles about the industry as I can. I have a pretty decent understanding that I'm lighting the fuse to my own human cannon pointed directly at a brick wall. I do have about intermediate experience with a few OO languages, such as Java and C#, with a bit of delving into C++ and vague scratching-of-the-surface when it comes to memory management.
The plan is an MMOSRPG, which I think simplifies some aspects of the development process. Namely, an online tactical RPG that plays much like some old classic tacticals, i.e. Final Fantasy Tactics, Ogre Battle, etc. Just for reference sake, since typically an MMO is free-range in 360 degrees, real-time, etc.
Anyway moving on to the questions:
Graphics: I've messed around with a few engines and I think I'm going with (M)OGRE [MOGRE is the C#/.NET wrapper for OGRE, of course] as my graphics engine. Given a 2d (sprites) / 3d landscapes graphical structure, do you think this would be adequate, and using C# no less? Would it be overkill, or just fine given OGRE's beautiful integration and capabilities?
Language: C# mainly for the client, I'm thinking, anyone really have a solid conclusion that C# in today's 2039582035GB computing world is acceptable for such a project?
Networking: Here is where the cannon fires and I plunge headfirst into the wall. I really do not have any real experience programming server-client relationships, though I do have a basic understanding of networking in general (packets, TCP, UDP). How difficult will it be to break into writing just a simple server-client, and eventually graduating to a level that I can implement for the purpose of a larger scale game?
Networking 2: Given the nature of the game (turn-based combat), would this greatly simplify the workload of the server, and on writing the server's code? Or would it still be about as intense a project as I'm lead on to believe?
(Also note that for things like writing server/client and all that I am very patient and willing to learn from the ground up if necessary)
Networking 3: I hate to ask this but, is it absolutely necessary I do the server code in C++? Some people swear by it and already have the garlic and crosses out when I mention C#, I bet, or is it acceptably capable of doing what I need done? Also, what kind of libraries for networking type stuff would you suggest for the final product? For learning? I keep hearing about IOCP but I'm not finding many resources relating it to C# or .NET in particular.
Database: I am pretty fluent with SQL and managing databases, I was just curious if there is any caveat to using say, MySQL vs. MSSQL Server vs. Oracle, etc. If anyone knows of course.
That's about all I can think of that I'm not 100% on just yet. Again, this is a 2 year in-design project that I'm really just now starting to actually work on writing the code for, starting with the client side and an offline workable graphics demo =). Any and all help/suggestions is greatly appreciated. I'm not going to tout things I can't show for yet, so I'm not about to go into any more detail about the project, or try to hype it until I have something that's actually functional
Lastly, and this is optional and more of a Marketting question: If you ever did play games like FFT, Disgaea, OB and all those, would you play an online based game in the same style?
I've been in a planning/design stage for the last 2 years, mostly with free time and as a hobby, and reading as many articles about the industry as I can. I have a pretty decent understanding that I'm lighting the fuse to my own human cannon pointed directly at a brick wall. I do have about intermediate experience with a few OO languages, such as Java and C#, with a bit of delving into C++ and vague scratching-of-the-surface when it comes to memory management.
The plan is an MMOSRPG, which I think simplifies some aspects of the development process. Namely, an online tactical RPG that plays much like some old classic tacticals, i.e. Final Fantasy Tactics, Ogre Battle, etc. Just for reference sake, since typically an MMO is free-range in 360 degrees, real-time, etc.
Anyway moving on to the questions:
Graphics: I've messed around with a few engines and I think I'm going with (M)OGRE [MOGRE is the C#/.NET wrapper for OGRE, of course] as my graphics engine. Given a 2d (sprites) / 3d landscapes graphical structure, do you think this would be adequate, and using C# no less? Would it be overkill, or just fine given OGRE's beautiful integration and capabilities?
Language: C# mainly for the client, I'm thinking, anyone really have a solid conclusion that C# in today's 2039582035GB computing world is acceptable for such a project?
Networking: Here is where the cannon fires and I plunge headfirst into the wall. I really do not have any real experience programming server-client relationships, though I do have a basic understanding of networking in general (packets, TCP, UDP). How difficult will it be to break into writing just a simple server-client, and eventually graduating to a level that I can implement for the purpose of a larger scale game?
Networking 2: Given the nature of the game (turn-based combat), would this greatly simplify the workload of the server, and on writing the server's code? Or would it still be about as intense a project as I'm lead on to believe?
(Also note that for things like writing server/client and all that I am very patient and willing to learn from the ground up if necessary)
Networking 3: I hate to ask this but, is it absolutely necessary I do the server code in C++? Some people swear by it and already have the garlic and crosses out when I mention C#, I bet, or is it acceptably capable of doing what I need done? Also, what kind of libraries for networking type stuff would you suggest for the final product? For learning? I keep hearing about IOCP but I'm not finding many resources relating it to C# or .NET in particular.
Database: I am pretty fluent with SQL and managing databases, I was just curious if there is any caveat to using say, MySQL vs. MSSQL Server vs. Oracle, etc. If anyone knows of course.
That's about all I can think of that I'm not 100% on just yet. Again, this is a 2 year in-design project that I'm really just now starting to actually work on writing the code for, starting with the client side and an offline workable graphics demo =). Any and all help/suggestions is greatly appreciated. I'm not going to tout things I can't show for yet, so I'm not about to go into any more detail about the project, or try to hype it until I have something that's actually functional
Lastly, and this is optional and more of a Marketting question: If you ever did play games like FFT, Disgaea, OB and all those, would you play an online based game in the same style?