Engine Recreation Project

Discussion in 'ToEE Engine Recreation Project' started by DarkStorm, Sep 13, 2009.

Remove all ads!
  1. DarkStorm

    DarkStorm Established Member

    Joined:
    Oct 2, 2003
    Messages:
    514
    Likes Received:
    3
    Hi everyone,

    I think the other posts went slightly off-topic, so I am starting a new thread.

    As I wrote in the other threads, I am in the process of rerecreating the ToEE engine using C#.

    My current plan is to get the file formats and graphics engine working first, then move on to refactoring/optimizing the core and then finally scripting the actual game logic.

    This thread is intended as a status/discussion thread.

    Installation Instructions
    Install the SlimDX (DirectX Wrapper for C#) Runtime (8.2 MB).
    You can get it at the following URL:
    http://slimdx.googlecode.com/files/SlimDX Runtime (March 2009 SP1).msi

    Unpack the archive attached to this post to your ToEE installation directory and start Engine.exe. (You can unpack it to any directory that contains the ToEE DAT files).

    Notes
    Use the arrow-keys to navigate the map.
    Use File->"Load Map" to load a map first.
    Feel free to check out the View and Debug menus. Disabling lighting may not work anymore since the engine reads the MDF files now and they govern whether lighting is enabled or not.

    Please feel free to comment!

    Changelog
    2009-09-13:
    • gmesh.gmf/gmi are now read and displayed correctly
    • Clipping Geometry is now scaled correctly
    • The MDF format should now be parsed correctly
    • Implemented texture animations (UVType wavey, swirl, drift)
    • Implemented Multi-Texturing for Models
    • Fixed a lot of memory leaks and other bugs
    • Switched to DirectInput for smoother scrolling regardless of framerate
    • global.lit is now read and (hopefully) interpreted correctly
    2009-09-18:
    • Implemented Animations
    • Clipping Geometry can now only be clicked when visible
    • Data will now be read from the data\ directory
    • The ToEE path can be chosen via a Dialog Box. The program doesn't need to be placed in the ToEE installation directory anymore.

    Screenshots
    [​IMG]
    Nulb with static geometry (water) and embedded objects (trees/icons).

    Videos

    Animations:
    http://www.youtube.com/watch?v=eiSxcMWXClk
    http://www.youtube.com/watch?v=ZUhk_4D2FBM
    http://www.youtube.com/watch?v=x4OjkLlHFbo

    Cu,
    Storm
     

    Attached Files:

    Last edited: Sep 18, 2009
  2. Gaear

    Gaear Bastard Maestro Administrator

    Joined:
    Apr 27, 2004
    Messages:
    11,038
    Likes Received:
    42
    Very cool. Is there any way to get this to work with custom maps and modded maps? I assume that would involve loading from the modules folder instead of the DATs.
     
  3. DarkStorm

    DarkStorm Established Member

    Joined:
    Oct 2, 2003
    Messages:
    514
    Likes Received:
    3
    That is a rather simple fix. I would have to write a VirtualFileSystem reads from the real filesystem. It is on the ToDo, but i want to do animations first.

    Cu,
    Storm
     
  4. DarkStorm

    DarkStorm Established Member

    Joined:
    Oct 2, 2003
    Messages:
    514
    Likes Received:
    3
    I updated the ZIP file attached to the first post and the changelog.
     
  5. Sitra Achara

    Sitra Achara Senior Member

    Joined:
    Sep 1, 2003
    Messages:
    3,622
    Likes Received:
    538
    I'm wondering, in what ways are you planning to improve upon ToEE? And are you confident you can avoid issues like the slowdowns in the nodes, wonky RNG, etc?
     
  6. DarkStorm

    DarkStorm Established Member

    Joined:
    Oct 2, 2003
    Messages:
    514
    Likes Received:
    3
    Speed, code quality, maintainability.

    *edit*: Oh and the rule set... One idea for future improvements would be switching to the Pathfinder ruleset (it's like D&D version 3.75).

    Yes. There are far more complicated games that get pathfinding right and there are a ~lot~ of papers on good RNG. On the "slowdowns" in nodes and other areas: I think those slowdowns are closely related to the wonky pathfinding in ToEE. And even on that topic there are a lot of good publications.

    Cu,
    Storm
     
  7. Sitra Achara

    Sitra Achara Senior Member

    Joined:
    Sep 1, 2003
    Messages:
    3,622
    Likes Received:
    538
    Any new features planned? Things like scroll-cases, better NPC looting mechanics, wall spells, day-night transfer without map change, etc?
     
  8. DarkStorm

    DarkStorm Established Member

    Joined:
    Oct 2, 2003
    Messages:
    514
    Likes Received:
    3
    Well, planned? The first goal is to get near the same feature set as the original game. The good thing about redoing the engine is, that you can implement such features at all... :)

    To address your proposed changes: Yes to all of them, except free-flow day-night transfer. It MAY be possible, but switching the pre-rendered backgrounds without an area switch could look ... bad... Possible with an automatic fade to black or something like that.

    But tbh, before I think about that, I'll work on the basics first ;-)

    Cu,
    Storm
     
  9. Sitra Achara

    Sitra Achara Senior Member

    Joined:
    Sep 1, 2003
    Messages:
    3,622
    Likes Received:
    538
    I understand. Just saying, and I'm no expert, that you might want to have those things in mind when you implement data structures and whatnot, to facilitate adding such things later on.

    Either way, good luck :) there's obviously a lot of work to do.
     
  10. Shiningted

    Shiningted I changed this damn title, finally! Administrator

    Joined:
    Oct 23, 2004
    Messages:
    12,740
    Likes Received:
    374
    The game already does a smooth transition of backgrounds - its the mobs that stand on them who don't follow their day/night routines until there is a map change.

    This sounds so amazingly awesome that most folks are too shocked to respond ;) I suppose mounted characters are out of the question?
     
  11. DarkStorm

    DarkStorm Established Member

    Joined:
    Oct 2, 2003
    Messages:
    514
    Likes Received:
    3
    I guess so. We'd lack animations and models (and probably sounds).

    Cu,
    Storm
     
  12. Sitra Achara

    Sitra Achara Senior Member

    Joined:
    Sep 1, 2003
    Messages:
    3,622
    Likes Received:
    538
    If art assets are the limitation, you could always use placeholders. There are 3d modellers around here who could do the rest. In other words, if you can implement the mechanics, at least as a dormant option, other people could do the rest later on :)
     
  13. DarkStorm

    DarkStorm Established Member

    Joined:
    Oct 2, 2003
    Messages:
    514
    Likes Received:
    3
    Well, to be honest it's not a priority. I don't think the ToEE world is big enough for mounts anyway... But since the program is open source and the end-goal is a very maintainable code-base (don't forget this is C#, so no untracable crashes!) and a very low entry barrier for new coders (Free IDE, very few external dependencies) all this stuff should be easy to add later on.

    Right now my priority is to get th base game going. The next topic will be pathfinding (I'll go with basic A* for now, later on I could convert the tile-based blocking information into navigation meshes. That would allow for pixel-perfect blocking information to be used. Here's a VERY good article on navigation meshes: http://www.ai-blog.net/archives/000152.html)

    If you want to try out the latest version without actually installing a compiler, I could set up an automatic build server for you guys (It would auto-compile the latest svn revision and put the .exe up for download).

    Cu,
    Storm
     
  14. Gaear

    Gaear Bastard Maestro Administrator

    Joined:
    Apr 27, 2004
    Messages:
    11,038
    Likes Received:
    42
    Seconded. Even if we don't always say much (I don't because most of what you're doing is way over my head ;)), we're watching very closely. The implications for this project being successful are astounding.

    If you just mean the sounds themselves, that would be no problem.
     
    Last edited: Sep 26, 2009
  15. Gaear

    Gaear Bastard Maestro Administrator

    Joined:
    Apr 27, 2004
    Messages:
    11,038
    Likes Received:
    42
    @DarkStorm, would you like this thread and related threads stickied so they don't get lost in the shuffle?
     
Our Host!