1. ToEE to Release on Steam!

    Please see this thread for details: https://co8.org/community/threads/temple-of-elemental-evil-on-steam.13593/
    Dismiss Notice

Modding Help

Discussion in 'General Modification' started by Talym, Nov 23, 2025.

Remove all ads!
  1. Talym

    Talym Member

    Joined:
    Jan 23, 2025
    Messages:
    8
    Likes Received:
    0
    I've successfully edited the paladin class to get bonus feats as a fighter by copying the entry over from the class011_fighter.py file to the class013_paladin.py file, and I was able to make it so fighters get a bonus feat each level. I was also able to increase the skill points per level and hit die of the fighter class by editing the .py files in the overrides folder in my mod.

    However, when I attempt to modify the saving throws by changing the 0 to 1 for either will or ref for the fighter, it does not show up in the character creator.

    In addition, when I change the text for the Monk to be the same base attack bonus as a full martial, it does not reflect in the character editor.

    Is there another file i Need to get into to adjust base attack bonus and saving throw progressions?
     
  2. Basil the Timid

    Basil the Timid Dont Mention the War

    Joined:
    May 19, 2008
    Messages:
    1,129
    Likes Received:
    5
    check out the tpgamefiles\scr\tpModifiers
    • I see a file for Paladin but not Monk
    • I don't know what (value, 0 , 137) mean

    I had no trouble doing what you are suggesting, but I did it for the Temple+ classes with no problem. I changed monk to full BAB but I haven't checked it. Based on what I modded to the base gnome class regarding stat bonuses and penalties, I could see that my changes were not applied when I pressed Begin Adventuring. I believe @dolio explained to me that the PC generator calls back to the baked on elements in the engine. Apparently, it could be changed but only if a pro-modder wants to invest the time on a custom change, which is highly unlikely.
     
  3. Talym

    Talym Member

    Joined:
    Jan 23, 2025
    Messages:
    8
    Likes Received:
    0
    That's what the consensus I've also gotten from chatgpt is that I'd need to modify the engine itself in C++. So now I've started reading over that stuff to try and figure out if I can get that done.
     
  4. dolio

    dolio Established Member Supporter

    Joined:
    May 30, 2005
    Messages:
    495
    Likes Received:
    131
    Saving throws are handled by the class condition. The condition applied when you take a class is the result of `GetConditionName` in the class file. And for the "Paladin" condition, the saving throws are hard coded.

    It's possible to write your own "MyPaladin" condition in python, and change that to be the condition that is applied for paladins. I think it might also be possible to name the python condition "Paladin" to overwrite the existing one (i.e. don't do `ExtendExisting`), but I haven't actually tried it, so I'm not 100% sure.

    In the case of paladins, the only thing the class condition does is BAB and saves, so it's not that much stuff. Some other classes have more stuff that would be more work, though.
     
    Buffed Rabbit and Malba_Tahan like this.
Our Host!