More than 5 years ago I was playing with DirectSound and Direct3D and I found it really exciting although it took much time to get some good results with C++. I was a college student then. Now I have mostly enterprise development experience in C# and PHP, and I do it for living. There is really no chance to earn money with serious game development in our country. Each day more and more I find that I miss something. So I decided to spend an hour or so each day to do programming for fun.
So my idea is to build a world simulation. I would like to begin with something simple - some human-like creatures that live their life - like Sims 3 but much more simple, just basic needs, basic animations, minimum graphic assets - I guess it won’t be a city but just a large house for a start. The idea is to have some kind of a server application which stores the world data in MySQL database, and some client applications - body-less AI bots which simulate movement and some interactions with the world and each other. But it wouldn’t be fun without 3D. So there are also 3D clients - I can enter that virtual world and see the AI bots living. When the bot enters visible area, it becomes material - loads a mesh and animations, so I can see it. When I leave, the bots lose their 3d mesh bodies again, but their virtual life still continues.
With time I hope to make it like some expandable scriptable sandbox to experiment with various AI algorithms and so on. But I am not intended to create a full-blown MMORPG
I have looked for many possible things I would need (free and open source) and now I have to make a choice:
OGRE3D + enet (or RakNet). Old good C++. But won’t it slow me down so much that I won’t have fun any more?
CrystalSpace. Formally not a game engine but very close to that. C++ again.
MOgre (OGRE3D wrapper for .NET) + lidgren (networking library which is already used in some gaming projects). Good - I like C#, it is good for fast programming and also can be used for scripting.
XNA seems just a framework, not an engine, so really have doubts, should I even look at XNA Game Studio
Panda3D - full game engine with positive feedback. I really like idea to have all the toolset in one package, it has good reviews as a beginner-friendly engine…if you know Python. I have 0 experience with Python, but I’ve heard it is easy to learn. And if it will be fun and challenging then I guess I would benefit from experience in one more programming language .
So the question is - would you suggest Panda3D, for fun, easy workflow and expandability, and so I can create and integrate all the components I need - the server with the database, AI bots and a 3D client application? Or maybe I should choose some other 3D engine+netwroking library combination?
Thanks for ideas.