• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

3D Pokemon MMORPG : Team needed

30
Posts
16
Years
    • Seen Jan 18, 2019
    edit - Sorry, this position is not open at the moment.
     
    Last edited:
    93
    Posts
    16
    Years
    • Seen Jan 14, 2010
    For the love of GOD don't use Panda, its slow, undocumented, under supported, inconsistent, and ridiculous.

    Python is hardly an environment you want to be writing an MMO in, while most MMOs use a scripting language to power small things, the core of it is on a more stable base like an executable binary.

    3D mmos are much more complicated than 2D, having spent most of my life time drueling over creating one, you have several key problems to watch out for.

    Server Side Collision: Your choice of python limits your external libraries unless you plan on binding them yourself in which case you would be insane. The server side collision should be lightning fast and simple, yet it can't have ANY slip ups, no falling through floors walking through walls, it has to be perfect.

    Content Handling: 3D is signficantly harder to render than 2D, which means it requires a TON more optimizations than a 2D game. Especially an MMO. Typically it's expected that a person can walk anywhere in your world while not having to experience a loading screen. Which means your going to have to load and unload content on the fly. Which for 3D requires alot more time than 2D, as a result all content loading should be done on a seperate thread.

    Terrain: I suspect you'll be using a normal hight map approach to this, your going to have to optimize this. Players expect to see for miles, rendering terrain full blow for miles is going to KILL your FPS, you'll be tempted to use Panda's Terrain Scene Node, DONT DO IT, it's extremely inefficent and won't be suited for the kind of stuff you'll be doing. Texturing is going to be a problem, you'll need a decent way to splat small textures all over the place. Don't even think about making one giant texture for terrain patches.

    Networking: You have 3 options use a library, Quick but not optimized. Tcp, slower but customizable, or UDP quick but unstructured. Depending on the depth of your world you should make your selection. TCP is not really slow, its fast but slower that UDP. World of Warcraft uses TCP as well as many other mainstream MMOs. I suggest TCP to simplify your networking.

    Lag, its inevitable, and more prominant in 3D games than 2D. Theres simply more data to be sent. I suggest you read up on Source Engine's lag handling.

    Hope some of that helps.
     
    93
    Posts
    16
    Years
    • Seen Jan 14, 2010
    I see two issues with the plan.

    1) Your using a Scripting Language to write a Program. Python no matter how much it likes to call itself a programming language. Is not a programming language. Its a Scripting Language. Scripts aren't compiled before hand into bytecode or executable binary. Instead it is compiled on the fly when you run the program. Causing it to be slow, and use lots of memory. Scripting languages are ment to extend something not create something.

    2) Your trying to use a 3D library. Ogre, Irrlicht, Panda, Crystal something or another. They all are prebuilt 3D engines which use Scene Nodes. Scene Nodes are great but don't quite fit into a MMO world theres a lot of wasted space with scene nodes you don't need. Also they each have their own way of loading resources. Ogre likes to load everything in at the beginning. Irrlicht likes to complain alot. Panda is like trying to get a baby to drive a stick shift. I suggest you just crack open a book on OpenGL, strap on your stupid, and get at it. With a language OTHER than python. Something that compiles, like C#, Java (Not recomended for 3D, or anything for that matter), C++, or Visual Basic. OpenGL will give you the holy grail option of running on a Mac (Although I don't see why you'd want that), or Linux.


    To make a successful 3D cross platform game I'd use.

    C++ - Language
    OpenGL - Graphics
    wxWidgets - File IO, Windows, Networking
    IrrKlang - Sound
    Lua - To extend the game through scripting
     
    Back
    Top