1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Development Game Engine Design etc

Discussion in 'Software' started by Noob4ever, 12 Apr 2010.

  1. Noob4ever

    Noob4ever always learning

    Joined:
    14 Oct 2007
    Posts:
    327
    Likes Received:
    1
    Well my friends and I have been talking for years about making our own mmo, since for the most part every single one we've tried in the past 6-7 years now we havent liked much, and we've tried em all.

    We can all program to some degree or another, but its looking like the majority of the engine design will fall to me, my question is this.

    Are there any good books on the outlines and basic concepts of a game engine? I've seen a few on amazon, but as far as I can tell none of them are very good, and since I'm going to be getting this book, then about 30 others :D I'd like some input on whats good, whats not, and where to start, thanks

    Noob
     
    Last edited: 12 Apr 2010
  2. Elledan

    Elledan What's a Dremel?

    Joined:
    4 Feb 2009
    Posts:
    947
    Likes Received:
    34
    Wouldn't it make more sense to use an existing engine? My company has developed its own in-house 3D game engine and tools and it took us 2 years just to get a decent engine, let alone do something useful with it.
     
  3. Ph4ZeD

    Ph4ZeD What's a Dremel?

    Joined:
    22 Jul 2009
    Posts:
    3,806
    Likes Received:
    143
    I'm not sure an MMO is an achievable goal for a bedroom coder. Start with a simpler design and get the experience from that.
     
  4. SazBard

    SazBard 10 PRINT "C64 FTW"

    Joined:
    28 Apr 2009
    Posts:
    328
    Likes Received:
    5
    Let me give you a few links to some good prog sites. Apologies if you know these already!

    Make sure to visit this one and ask lots of questions.
    http://www.thechaosengine.com/forum/index.php

    And also,
    http://www.gamedev.net/

    But to reiterate what Ellendan has said, It would be much easier to use an existing engine, some good ones are completely free! Ask about on the two top links forums.

    Good luck, I hope you bring some fresh ideas to the mmo table, god knows they are desperately needed.
    :)
     
  5. BentAnat

    BentAnat Software Dev

    Joined:
    26 Jun 2008
    Posts:
    7,230
    Likes Received:
    219
    There're some GREAT places to learn engine coding.
    http://www.gameinstitute.com/ , for example, offer some great courses in the subject matter. Not cheap, but worthwhile if you're serious about it.

    In general, i'd use something like UDK (Unreal Development kit - available for free for non-commercial use), ogre, etc for engine basis, and focus my energy on the game itself.
     
  6. Zoon

    Zoon Hunting Wabbits since the 80s

    Joined:
    12 Mar 2001
    Posts:
    5,902
    Likes Received:
    829
    There's several engines which are open sourced these days, or you could try writing a total conversion or addon for an existing game to cut your teeth on game development.

    Once you've got your experience with game engines you can either write in the extras you need, or start from scratch if you're nuts :)
     
  7. BentAnat

    BentAnat Software Dev

    Joined:
    26 Jun 2008
    Posts:
    7,230
    Likes Received:
    219
    Also, the choice would depend on whether you want to go commercial or not.
    Seeing that it's supposed to be an MMO (my recommendation for a first project would go against this), I'd reckon I'd be commercial. That limits your options WRT engines a bit, But it's worth it to consider development time of an engine (often never ending, as you start with a current engine, and then in 2 years, when the game itself is done, you've added so much to it that it's still acceptable by modern standards), as opposed to the licensing costs of an existing engine.
    It really boils down to a few factors:
    - How much time are you willing to invest
    - What's the budget?
    - Are you planning to make it a commercial project?
    - Are you confident that you can make it happen from start to finish?
     
  8. Flibblebot

    Flibblebot Smile with me

    Joined:
    19 Apr 2005
    Posts:
    4,830
    Likes Received:
    299
    Also, bear in mind that writing an MMO would at least double the amount of code you have to write, as you'll need to have client-side code and server-side code. You'll also need to make sure that the server-side code is scalable and able to work on multiple servers - and be stable, too. Id say that part is much, much harder than the client-side coding.

    My suggestion would be to cut your teeth using something like XNA to get used to game coding, designing and managing assets, etc. and see how that goes. If you manage to produce something decent, set your sights a bit higher and start again.

    Start small, work your way to something bigger one step at a time.
     
  9. BentAnat

    BentAnat Software Dev

    Joined:
    26 Jun 2008
    Posts:
    7,230
    Likes Received:
    219
    That's actually BRILLIANT advice:
    Use XNA, and if you feel you got the hang of it, you can get a XBox dev license and sell games on XBL... good games there make loads of money, enough to potentially sustain further development.
     
  10. WTF_Shelley

    WTF_Shelley The picture is wheeljack

    Joined:
    6 Apr 2005
    Posts:
    185
    Likes Received:
    5
    I would start with something like Asteriods get that running and then scale to the next level ;) mario bros. At the moment you sound like a starting hill climber planning to scale K2. Not flaming you or insulting your brains but multiplayer netcode is a evil sob to code for. You have to plan for lag, dropped packets, corrupted packets, packets out of sequence, network failure and a whole list of other stuff. Try XNA and see how you get on before coding a game engine for scratch using c (shudder)
     
  11. Cerberus90

    Cerberus90 Car Spannerer

    Joined:
    23 Apr 2009
    Posts:
    7,666
    Likes Received:
    208
    I'm trying to create a simple game, using a pre-made engine (sort of an engine, SFML).

    And its bl***y difficult, I dread to think how much has to go into an MMO, but then an MMO would have a large team working on it, I'm on my own for my game, :D.
     
  12. JazzXP

    JazzXP Eh! Steve

    Joined:
    30 Apr 2002
    Posts:
    1,669
    Likes Received:
    13
    If you have to ask anything about writing an MMO, you're not ready to write an MMO. Like the others have said here, start out with something simpler. Get an existing engine and work off that.

    If you want to do it all yourself, design a game, not an engine. An engine will come from the game, you won't know what you need until you start coding it, otherwise if you're designing an engine, chances are you'll be putting in code that will never end up being used.
     
  13. Noob4ever

    Noob4ever always learning

    Joined:
    14 Oct 2007
    Posts:
    327
    Likes Received:
    1
    We've talked long and hard about it, and mmo is the eventual goal, we theres 4 of us who can put in alot of time into it, theres a couple more who can put partial time time into it, and a new engine because whats out there would take nearly as much work to convert as it would be to write from scratch, nothing really meets our needs, though that xna idea sounds great. We were thinking maybe a year, at least before we could techdemo the engine and then maybe find some financial backers.

    This would be commercial, first year it would be 4 of us working full time on it, with hopefully exspansions after that. Thanks for the links to the sites as well guys, further advice along these lines would be helfpful, not so much the if you have to ask dont contemplate it, we already figured at least 1.5-3 years on the engine. Before we even get into the rest of it.
     
  14. BentAnat

    BentAnat Software Dev

    Joined:
    26 Jun 2008
    Posts:
    7,230
    Likes Received:
    219
    Getting financial backing on just the engine is gonna be hard.
    At the end of the day, the engine is defined by the Game's needs.

    My thought (as stated above) would be to generate a bit of a passive income, as well as some experience using XNA and Selling those games on XBL. From there you can start planning a bigger game.
    As you said - 1.5-3 years for an engine. However, you could probably release 3 games in that time, and organise financial backing for the "big project" in the meantime.
    Publishers (as the main source of "financial backing") are more willing to back established developers that have proven they have what it takes to make a game that sells.
     
  15. Zoon

    Zoon Hunting Wabbits since the 80s

    Joined:
    12 Mar 2001
    Posts:
    5,902
    Likes Received:
    829
    Yeah, you need a good producer who can take all your ideas and crush them into something cohesive, and it definitely couldn't hurt for you to still take on board the idea of making some mini games.

    Maybe if one of you is good at Flash, you could make one of those ridiculously addictive micro-transaction games that fill up Facebook, possibly using a cut down version of the universe you're creating for your MMO, kind of a junior version of it.
     
  16. Coldon

    Coldon What's a Dremel?

    Joined:
    14 Oct 2006
    Posts:
    208
    Likes Received:
    10
    books wise, stay away from the eberly books and any books that try to teach you how to code in a graphical API when building an engine. Also stay away from books that try to cover everything in one book (coding, design, etc.) Each component in a game engine often has whole books dedicated to it.

    the renderer is also the smallest part of the engine and is one of the simplest elements to code. I've personally whipped up a basic directx 10 rendering in a a few days but doing things like resources management, view and occlusion culling, animation, physics and so on is where the hard part is. So don't think cause you've done a bit of graphics programming you'll be okay.

    I recommend jason gregory's game engine architecture book as a good starting point, I will be reviewing the book on my blog, he covers all the aspects of a game engine from a very high level and doesnt actually try and show you how to code or how to do things, he tells you what the key components are, what they do, why they are there and the rest is up to you.

    Also be wary of "game development" schools, as they will basically run you through a basic programming course, a rough intro to DX9/10/OGL and send you on your way. If you are really serious about game coding you will need to spend a lot of time learning the language (c++) and all its little tricks.

    The language you need to focus on is c++, and that will not be simple, the syntax and basic of the language are simple enough but once you get into the advanced topic your head will spin. I've been working in C++ as my main language for around 4 yrs now and all the template meta programming stuff still gives me a headache.

    Also for any game, the coding is often the smallest portion of work needed, the art and assets is the big big time consumer and make sure before you start you have dedicated artists on your team cause its not that easy to write an animation system without having any animated models.

    Also the best starting point for any game isnt the engine, its the design doc, the design doc will define the requirements of your game and subsequently your engine (big open environments? player viewpoint will determine level of detail, etc). Write a big ass game design doc with the backstory, main characters, some quests. All player classes, weapons, spells, the game rules, the gameplay mechanics, and all that jazz. Once you are done with that then take a critical look at it and then decide your next step.

    best of luck and I hope you guys get it done!

    PS. If you want to reuse an existing renderer/engine look at: irrlicht, OGRE, Delta3D
     
    SazBard likes this.
  17. BentAnat

    BentAnat Software Dev

    Joined:
    26 Jun 2008
    Posts:
    7,230
    Likes Received:
    219
    C++ definitely. Unless you do go the XNA route - in hwich case it's a lot of C#.

    As I Stated before, GameInstitute has some good courses (i went through two of their C++ modules, and they are stunning, as far as training can be stunning). I have no doubt that their engine, AI, Physics, etc courses are equally good.
    If I am not mistaken, GI was founded (amongst others) By Andre LaMothe. LaMothe was/is one of my primary teachers of everything programming and game related.
     
  18. barndoor101

    barndoor101 Bring back the demote thread!

    Joined:
    25 Oct 2009
    Posts:
    1,694
    Likes Received:
    110
    4 people working full time? i have heard of Mods with more manpower taking longer than this, and a mod is an order of magnitude easier than creating an MMO from scratch.
     
  19. Noob4ever

    Noob4ever always learning

    Joined:
    14 Oct 2007
    Posts:
    327
    Likes Received:
    1
    For the engine, thats the point of the thread mate, we know its not an easy or quick process.
     
  20. barndoor101

    barndoor101 Bring back the demote thread!

    Joined:
    25 Oct 2009
    Posts:
    1,694
    Likes Received:
    110
    oh 4 people just for the engine? thats slightly more doable, but you had better know what ur doing. from scratch is always gonna be hard - you might be better off taking a built engine and adjusting it to your own requirements - Torchlight for example took the open source OGRE engine - and they are building an mmo around that at the moment.
     

Share This Page