Results 1 to 13 of 13
  1. #1
    Community Member LeoLionxxx's Avatar
    Join Date
    Aug 2010
    Posts
    871

    Question What language is DDO written in?

    So, I’m a student who’s been studying computer sciences and programming. I must say, it is a lot of fun (might consider a career of it) and has really changed how I look at computers and programs. DDO, for example, I find myself thinking stuff like “So when you make a melee attack, it calls the command to generate this number, then add any constant...” “When I kill an enemy here, it must trigger a counter to let the quest know I’ve done this...” and stuff like that. It is a lot of fun to think of.

    It has got me wondering though: What programming language is DDO written in? I doubt that it’s in java, they only recently made DDO accessible on Macs. So I’d be inclined to believe A C language like C# or ++. Does anyone know? How might one find out? Is it supper secret and I’ll forfeit my life if I find out?
    Because DDO content is created by hand, some issues cannot be fixed with a global change. We must fix these issues one-by-one by hand with the help of bug reports. This includes:
    Ladder issues: please include the /loc when reporting a ladder issue

  2. #2
    2014 DDO Players Council Flavilandile's Avatar
    Join Date
    Aug 2010
    Location
    France
    Posts
    3,643

    Default

    As far as I know the engine behind the physics of the game is the Havok engine.

    It has C APIs.

    Now the file format used by DDO is a bit special and is common with LoTRO and AC.

    Usually going into more details leads to being banned, so I won't go into more details.
    Some details are available... elsewhere.
    On G-Land : Flavilandile, Blacklock, Yaelle, Millishande, Larilandile, Gildalinde, Tenalafel, and many other...

  3. #3
    Community Member Charononus's Avatar
    Join Date
    Jun 2010
    Posts
    5,345

    Default

    I don't think you'll ever get a direct dev answer as knowing too many details would make it easier for some to take apart in their minds irregardless of the fact those that wish to reverse such programs as mmo's and create various things with them already do.

  4. #4
    The Hatchery Urist's Avatar
    Join Date
    Dec 2010
    Posts
    501

    Default

    Games like DDO are usually written in C++. Mostly through industry inertia, AFAIK. My DDO install includes msvcp71.dll and msvcr71.dll, which are C++ and C runtime libraries, which backs up that supposition, at least.
    That said, oftentimes games include a scripting layer on top of the engine (Lua is a popular language for this) for more easily developing and managing the actual game logic. Judging from the age of the game, and some things devs have mentioned on the forums, it wouldn't surprise me if it were all implemented at the C/C++ level, even on the server side. I certainly don't see any familiar names among the other client-side DLLs (other than JavaScript, which is a possibility, but probably Awesomium-related).

  5. #5
    Community Member Therigar's Avatar
    Join Date
    Aug 2006
    Posts
    5,316

    Default

    I am with the others here.

    There is an underlying engine that bears a lot of similarities to Visual C++ and I suspect that this is the basis for the engine. If you work with any visual language you'll know that there is a lot of drag and drop which automatically produces code.

    I think the game engine does this on the developer level, which is why you can see layers building up when you enter an instance or find yourself swimming for a while until all of the harbor landscape loads. Each piece of the landscape is built on top of an underlying piece and each has its own coding that has to execute in order to create the scene.

    (We'll conveniently ignore how this is horribly inefficient and how it slows the game for less powerful computers or those with slow internet connections. It is a by product of using visual design tools and probably here to stay.)

    Otherwise there are clear indicators that the calls go to C or C++.

    From a programer's POV it doesn't make much difference if it is C or C++ as the two are so nearly the same that most people wouldn't know if there was a difference.

    Here are some differences if it matters to you.

    Because C++ executes C (but not the reverse) it is probable that at its core everything is C++ and that the things that look like C are just really simplistic C++.

  6. #6
    Community Member
    Join Date
    May 2013
    Posts
    155

    Default

    Quote Originally Posted by LeoLionxxx View Post
    So, I’m a student who’s been studying computer sciences and programming. I must say, it is a lot of fun (might consider a career of it) and has really changed how I look at computers and programs. DDO, for example, I find myself thinking stuff like “So when you make a melee attack, it calls the command to generate this number, then add any constant...” “When I kill an enemy here, it must trigger a counter to let the quest know I’ve done this...” and stuff like that. It is a lot of fun to think of.

    It has got me wondering though: What programming language is DDO written in? I doubt that it’s in java, they only recently made DDO accessible on Macs. So I’d be inclined to believe A C language like C# or ++. Does anyone know? How might one find out? Is it supper secret and I’ll forfeit my life if I find out?
    As others have already said only the devs can tell you exactly what technologies and programming languages they used. Since this is a distributed software (client side, server side and probably separate databases) you end up with having to cope with several programming languages and scripting languages.

    Customer information will (hopefully) be stored in a different database than game related data. So you end up with a farm of different servers where servers serve some special purpose. E.g. Licensing servers for the 3rd party tools and software they use. Monitoring tools for network and hardware utilization. Etc.

    Where the actual game logic resides depends on how the devs have arranged their software. It might be all inside the database (e.g. PL/SQL or some other database programming language). They might have located all game logic inside their own server component (e.g. C/C++ or anything else which is suited for handling concurrency). As it is now you can only guess. With the technologies availablde today I'd probably not use C for a server component anymore but a language with garbage collection and built-in support for concurrent programming.
    Last edited by deuxanes; 09-15-2013 at 01:21 PM.

  7. #7
    Community Member mrphlegm's Avatar
    Join Date
    May 2010
    Posts
    143

    Default

    brainf**k

  8. #8
    2014 DDO Players Council Flavilandile's Avatar
    Join Date
    Aug 2010
    Location
    France
    Posts
    3,643

    Default

    Quote Originally Posted by deuxanes View Post
    Where the actual game logic resides depends on how the devs have arranged their software. It might be all inside the database (e.g. PL/SQL or some other database programming language). They might have located all game logic inside their own server component (e.g. C/C++ or anything else which is suited for handling concurrency). As it is now you can only guess.
    No guesses needed, gamelogic resides in client_gamelogic.dat. ( at least partially )
    On G-Land : Flavilandile, Blacklock, Yaelle, Millishande, Larilandile, Gildalinde, Tenalafel, and many other...

  9. #9
    Community Member moomooprincess's Avatar
    Join Date
    Mar 2008
    Posts
    3,014

    Default

    Not to long ago, some of us got the message to download some C++ libraries. So, take a guess.

    The Microsoft Visual C++ 2010 Redistributable Package installs runtime components of Visual C++ Libraries required to run applications developed with Visual C++ on a computer that does not have Visual C++ 2010 installed.
    Last edited by moomooprincess; 09-15-2013 at 08:11 PM.
    Recipemaker Guild: Top Chef School of Recipes

    Event Statistics: Risia, Festivult, Midwinter, Daily Dice, Mimic Hunt

  10. #10
    Community Member bsquishwizzy's Avatar
    Join Date
    Nov 2010
    Posts
    2,822

    Default

    First, requiring a MSVC distributable package doesn't mean the core system is C or C++. It only means that a portion of it ruins some native code, which could be a third-party product, or some such stuff.

    Secondly, One or more of the application pieces uses managed code, which could include Managed C++ or even C#. Many high performance apps usually revert to C++, however, if you know what you're doing you can write stuff using C# and get performance at or near C# (I do it all the time).

    I've had a couple of DDO apps throw exceptions, that looks awfully like exceptions that come from C# / VB apps. The native C++ stuff tends to throw exception messages that look somewhat different.

  11. #11
    Community Member Atremus's Avatar
    Join Date
    Oct 2010
    Location
    Aegis
    Posts
    1,269

    Default

    I thought it was written in Lag++
    Characters: Celemia / Tukson / Thau (Broken link) / Atremus

    “A pessimist is one who feels bad when he feels good for fear he'll feel worse when he feels better.”

  12. #12
    Community Member
    Join Date
    Jan 2012
    Posts
    2,104

    Default

    Quote Originally Posted by Atremus View Post
    I thought it was written in Lag++
    +1


    but i thought it was:
    Taenebrae, Daemonsoul, Daemoneyes and Daemonheart of Argonessen
    Glitzakram - Trade Thread

  13. #13

    Default

    http://en.wikipedia.org/wiki/LOLCODE

    HAI
    CAN HAS LAG?
    VISIBLE "Dungeons and Dragons Online"
    KTHXBYE
    Last edited by morkahn82; 09-16-2013 at 01:19 AM.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

This form's session has expired. You need to reload the page.

Reload