New Release [2010/07/18]

Discussion in 'ToEE Engine Recreation Project' started by DarkStorm, Jul 18, 2010.

Remove all ads!
  1. Agetian

    Agetian Attorney General Administrator

    Joined:
    Aug 14, 2004
    Messages:
    2,526
    Likes Received:
    0
    Wow, this is absolutely fantastic! :D Great job, your progress is simply outstanding!

    - Agetian
     
  2. DarkStorm

    DarkStorm Established Member

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

    first of all: Thanks for your feedback.

    I'll try to do that. It really is just a debugging feature to see where you can move. Right now I am not actually supporting clearing the overlay from within the engine, but I'l add it. I guess I need to do that anyway to add support for other overlay types (read: footstep sound overlay, flyable, sector visibility and so on).

    Right now that's supposed to be this way because I didn't update the selction mechanism ;-) The plan is to make the thing playable first, then I'll worry about "editor" features (which'll make modding muuuuch easier).

    Yes, it ignores the Co8 modifications for now, since there are some Python features used that I cannot convert automatically. I'll concentrate on Vanilla first, then I'll look at converting (and maybe improving, since there need to be fewer workarounds) Co8.

    @Agetian: Thanks!

    Regards,
    Storm
     
  3. DarkStorm

    DarkStorm Established Member

    Joined:
    Oct 2, 2003
    Messages:
    514
    Likes Received:
    3
    Soo... I fixed a big bunch of issues related to rendering.

    Here's a good shot that shows some of the improvements:
    [​IMG]

    The fish is now rendering.
    The water surface is also translucent again.
    The direction of drift on the water is now correct (you cant see that on the screen ofcourse)
    Global and local lighting is fixed (no lights in imeryds run)
    HSD files are now parsed and imported, and for now it auto-adjusts the Y-position of any mobile according to the data from the HSD. Interestingly enough, ToEE used this for the trees too! Without HSDs, the cypress trees would be above the water.

    Wooohooo for correct daylight.mes based lighting:
    [​IMG]

    Regards,
    Storm
     
  4. Sitra Achara

    Sitra Achara Senior Member

    Joined:
    Sep 1, 2003
    Messages:
    3,622
    Likes Received:
    538
    Great work, as always!

    A few small (?) requests for the next release -

    * Scrolling with arrow keys.
    * Shift + ~ to open up the console.
    * Box selection.
    * Combat system ;)

    Also, how do you access the PC (or other game objects) via console?
    In ToEE, you had the game.party array, which contained the game party (PCs and NPCs).
    And game.leader was the leftmost character.

    Issues encountered:

    Will o wisps don't render:
    [​IMG]

    A crash report:
     

    Attached Files:

    Last edited: Jul 23, 2010
  5. DarkStorm

    DarkStorm Established Member

    Joined:
    Oct 2, 2003
    Messages:
    514
    Likes Received:
    3
    Heyho,

    *all* party related data structures are entirely implemented in JavaScript. The relevant file is scripts/party.js

    All console commands are executed as normal scripts.

    You can access the player via:

    Party.getPlayers()[0]

    Followers via: Party.getFollowers()[0]

    If you have the GUID of an object and want to access that you can do:
    Maps.findMobileById('{guid-here}')
    That searches across *all* maps (not just the current one) and returns the corresponding object. The GUID is case-sensitive.

    I wont do the combat system in the next version (additional planning necessary, especially since a lot more d20 state is required for that), but I'll look into the other requests.

    Regards,
    Storm
     
  6. DarkStorm

    DarkStorm Established Member

    Joined:
    Oct 2, 2003
    Messages:
    514
    Likes Received:
    3
    Addendum:

    When did that crash occur? Sadly, it occured in the big fat Qt libraries for which i have no debugging symbols right now (meaning: I don't get meaningful locations from the crashdump). Did you have any way to reproduce it? I really ought to recompile Qt with symbols, so I can trace such issues in the future. (That takes several hours though)

    Regards,
    Storm
     
  7. UniversalWolf

    UniversalWolf agricola

    Joined:
    Sep 15, 2008
    Messages:
    36
    Likes Received:
    0
    This is such a great idea. ToEE is my favorite engine for a cRPG ever. If you can remake it fixing the bugs and making it more moddable, I'll be very happy.
     
  8. Sitra Achara

    Sitra Achara Senior Member

    Joined:
    Sep 1, 2003
    Messages:
    3,622
    Likes Received:
    538
    It was at the Earth Temple, when I clicked one of the door icons leading downstairs:

    [​IMG]

    I had 2 followers (don't remember which, probably same as screenshot), worn equipment (boots, eye of flame cloak, chainmail...) and it was after about an hour of play.

    Can't replicate it though.

    P.S. I was joking about the combat system :) it's obviously going to be a ton of work.

    P.P.S. Thinking about the other requests, they seem small, but now that I think about it they'd probably take more time than they deserve right now. Don't feel pressured to include them in the next release, by all means focus on the bigger things - you're doing great so far. :)

    P.P.P.S. Except for the ~ for console. If I managed to do it, it's trivially easy :yes:
    For those interested - in shortcuts.js:
    Code:
    var Keys = {
        F10: 0x01000039,
        AsciiTilde: 0x7E
    };
    
    And in debug_ui.js:
    Code:
    function showDebugBar() {
        var debugBar = gameView.addGuiItem('interface/DebugBar.qml');
        debugBar.debugEvent.connect(handleDebugEvent);
    
        Shortcuts.register(Keys.F10, function() {
            debugBar.takeScreenshot();
        });
        Shortcuts.register(Keys.AsciiTilde, function() {
            showConsoleWindow()();
        });
    }
    
    Though I'm not clear about is the difference between debug_ui and debugBar, there seems to be duplicity?
     
    Last edited: Jul 24, 2010
  9. DarkStorm

    DarkStorm Established Member

    Joined:
    Oct 2, 2003
    Messages:
    514
    Likes Received:
    3
    debugBar is old. You may have overwritten a previous version and it kept the old file. But in the end I just renamed debugBar->debug_ui to keep it in line with the other ui files.

    I hope it's okay if I copy your keybinding into the next version? :)

    Regards,
    Storm
     
  10. Sitra Achara

    Sitra Achara Senior Member

    Joined:
    Sep 1, 2003
    Messages:
    3,622
    Likes Received:
    538
    Sure thing. :)
     
Our Host!