Volunteers needed - beta testing next Temple+ release

Discussion in 'General Modification' started by Sitra Achara, Oct 1, 2020.

Remove all ads!
Tags:
  1. anatoliy

    anatoliy Established Member

    Joined:
    Feb 18, 2017
    Messages:
    626
    Likes Received:
    179
    No mods in regards to Turn Undead unfortunately. It would be easier though...
     
  2. Sitra Achara

    Sitra Achara Senior Member

    Joined:
    Sep 1, 2003
    Messages:
    3,545
    Likes Received:
    466
    No, I mean *any* mods - that includes your module(s), sagenlicht stuff etc. If you recall there was a 1000 condition limit which sagenlicht recently broke in his branch, and I imagine you've added quite a few yourself so maybe you ran into the same issue.
     
    anatoliy likes this.
  3. anatoliy

    anatoliy Established Member

    Joined:
    Feb 18, 2017
    Messages:
    626
    Likes Received:
    179
    Good catch @Sitra Achara !!

    Apparently Turn Undead condition hit number 1000! That's not good. Will it work with more conditions limit?

    Update: Looks like it works well.
    Code:
            static int(__cdecl* orgHashtableInit)(CondHashSystem* hashtable, uint32_t capacity) = replaceFunction<int(__cdecl)(CondHashSystem* hashtable, uint32_t capacity)>(0x101EB9F0, [](CondHashSystem* hashtable, uint32_t capacity) {
                if (capacity == 1000) capacity = 2000;
                return orgHashtableInit(hashtable, capacity);
            });
    
    I'm using KOTS module and 121 new conditions, mostly for monsters.

    Update 2: In total 1024 modifiers:
    len(debug.dump_conds())
    1024
     
    Last edited: Feb 14, 2022
  4. Sitra Achara

    Sitra Achara Senior Member

    Joined:
    Sep 1, 2003
    Messages:
    3,545
    Likes Received:
    466
    I've already hooked that elsewhere, so no duplicates please. I haven't actually changed the capacity for next release though.
     
  5. anatoliy

    anatoliy Established Member

    Joined:
    Feb 18, 2017
    Messages:
    626
    Likes Received:
    179
    Yes, sure. I just hooked for my development.

    Capacity won't change anything IMHO. Either I will reduce unused modifiers in my module, or suppress ones created for Complete Arcane spells.

    In any case, for ToEE increase of capacity will not have effect.
     
  6. Sitra Achara

    Sitra Achara Senior Member

    Joined:
    Sep 1, 2003
    Messages:
    3,545
    Likes Received:
    466
    Eh? What makes you say that?
     
  7. anatoliy

    anatoliy Established Member

    Joined:
    Feb 18, 2017
    Messages:
    626
    Likes Received:
    179
    It's easy - around 900 are used now with Sagenliht's modifiers. Changing capacity will not increase modifiers, they still are going to be ~900 in number.
     
  8. Sitra Achara

    Sitra Achara Senior Member

    Joined:
    Sep 1, 2003
    Messages:
    3,545
    Likes Received:
    466
    Ah I thought you meant sthg else. Anyway I probably will increase the capacity, just playing it safe for next version.
     
    anatoliy likes this.
  9. Sitra Achara

    Sitra Achara Senior Member

    Joined:
    Sep 1, 2003
    Messages:
    3,545
    Likes Received:
    466
    Small update:

    The main thing holding back the release was stability concerns. I'd gotten reports of seemingly random crashes, which I couldn't trace to the root cause.

    The trouble is that since these are relatively infrequent, it's hard to reproduce and diagnose - I just don't have the time to play the game for tens hours until such a crash occurs.

    So I've been working on an automated playtester that goes through some section of the game over and over, hoping to be able to reliably reproduce the crash error. I've so far got it to basically play the tutorial dungeon in a loop. Which is pretty cool, but unfortunately it doesn't trigger any crash yet (or fortunately, depends on how you look at it).

    The current plan is to keep expanding this infrastructure, with several goals in mind:
    1. Generalize its UI handling so it handles any resolution, and windowed mode
    2. (related to above) Make it deployable so more users can test it concurrently
    3. Set it up as a test bench for new features/spells/classes/etc - would probably save me many hotfix releases :)
    4. Eventually, perhaps players won't be required at all ;)
     
  10. Shiningted

    Shiningted I want my goat back Administrator

    Joined:
    Oct 23, 2004
    Messages:
    12,571
    Likes Received:
    305
    How many times did I say this? Also, disable the console.
     
  11. Sitra Achara

    Sitra Achara Senior Member

    Joined:
    Sep 1, 2003
    Messages:
    3,545
    Likes Received:
    466
    August and Sagenlicht like this.
  12. Sitra Achara

    Sitra Achara Senior Member

    Joined:
    Sep 1, 2003
    Messages:
    3,545
    Likes Received:
    466
    Little update:
    I've finally got me a laptop - dual booted wife's macbook, no less (why didn't I think of that sooner??)
    Means I can get about an extra 5 hours a week for Templeplus, which is a lot for me these days :rolleyes:

    Now I have 2 months to do this, which is until baby #3 is out :confused:
     
    August, anatoliy and Pygmy like this.
  13. Daryk

    Daryk Veteran Member

    Joined:
    Jan 14, 2012
    Messages:
    1,153
    Likes Received:
    26
    Congrats! It doesn't get easier after two, but it's not as hard as the transition from one to two (and much less than the transition from zero to one!).
     
  14. Sitra Achara

    Sitra Achara Senior Member

    Joined:
    Sep 1, 2003
    Messages:
    3,545
    Likes Received:
    466
    Update:
    Getting a laptop really put me back on track. Besides the additional hours, it helps with the headspace management. Much easier to pick it up in the evening that way.

    Right now I have the auto player crudely going through the new game motions: New game, select PCs at the party pool, get through the shopmap and some of the early Hommlet motions (picking up Elmo and doing the Furnok gambling bit for lodging quest).
    This might not sound like much, but most of it was about laying the infrastructure: figuring out where the UI elements are programatically, moving amd clicking the mouse (now works in windowed mode too and independently of resolution), and setting up convenient dialogue handlers.

    The next step is to generalize these basic building blocks to more complex higher level actions, so the auto playtester can handle things like simple combat and getting around with less pre-scripting / manual fiddling.
    By next week or so I expect it to capable of grinding random encounters in a loop with simple melee combat, at least.
     
    August, Buffed Rabbit and _doug_ like this.
  15. Endarire

    Endarire Ronald Rynnwrathi

    Joined:
    Jan 7, 2004
    Messages:
    866
    Likes Received:
    90
    Why is there a ToEE bot?
     
Our Host!