Spell Compendium Mod

Discussion in 'General Modification' started by Sagenlicht, Feb 28, 2021.

Remove all ads!
  1. Sagenlicht

    Sagenlicht Member

    Joined:
    Apr 14, 2004
    Messages:
    86
    Likes Received:
    12
    @_doug_ Thank you, I will modify Sniper's Shot as soon as the changes are live
    @Pygmy Speaking of Sniper's Shot, I added a quick fix in to Snipers Shot until I redo it completly so now Melfs should not be overpowered anymore :)
    @Sitra Achara thank you for your kind words and I fully understand your argument about the limitation of what is doable in python.

    Anyways, I edited the first post and updated overrides.zip.

    New spells:
    dirge of discord and allegro

    Fixes:
    bonefiddle and harmonic chorus now require concentration,
    fixed sniper's shot so melfs does not add sneak dice on DoT damage

    Next update will be Assassins level 3 spells
     
  2. Endarire

    Endarire Ronald Rynnwrathi

    Joined:
    Jan 7, 2004
    Messages:
    634
    Likes Received:
    54
    Ranged sneak attack is normally within 30'. If the code infrastructure is in place to allow it from any range, letting people use Far Shot with SA seems technically easy.
     
  3. Pygmy

    Pygmy Established Member Supporter

    Joined:
    Oct 8, 2010
    Messages:
    425
    Likes Received:
    9
    Congratulations, I am disappointed to report that as intended by RAW Harmonic Chorus does not increase caster level for crafting purposes so no crafting weapons of speed at 5th level [Lareth & Co wouldn't know what hit them]
     
    Last edited: Mar 3, 2021
  4. Pygmy

    Pygmy Established Member Supporter

    Joined:
    Oct 8, 2010
    Messages:
    425
    Likes Received:
    9
    Player's Handbook 2 contained a feat Crossbow Sniper Crossbow Sniper – Feat – D&D Tools (arkalseif.info) which extended sneak and skirmish range to 60' for a crossbow for which the character has proficiency and weapon focus. Perhaps this could be added please?
     
  5. _doug_

    _doug_ Established Member

    Joined:
    Jul 9, 2009
    Messages:
    210
    Likes Received:
    69
    Sounds doable. I'll look into adding it.
     
    Pygmy likes this.
  6. Endarire

    Endarire Ronald Rynnwrathi

    Joined:
    Jan 7, 2004
    Messages:
    634
    Likes Received:
    54
    @_doug_
    Should temporary bonuses to caster level like from harmonic chorus count toward meeting prereqs? Seemingly not since they're by definition temporary, though an Orange Ioun Stone seemingly should since it's a permanent bonus while held.
     
  7. Sitra Achara

    Sitra Achara Senior Member

    Joined:
    Sep 1, 2003
    Messages:
    3,049
    Likes Received:
    223
    @Sagenlicht I saw you removed spells from the Assassin's spell list (that were added just so he has something to pick). Not sure, but this might cause issues for existing Assassins who picked those spells - have you tested that?
     
  8. Sitra Achara

    Sitra Achara Senior Member

    Joined:
    Sep 1, 2003
    Messages:
    3,049
    Likes Received:
    223
    About Dolores Blow:
    The reason it's causing it to miss is that you're overwriting the flags. You should do:
    Code:
    flags = evt_obj.attack_packet.get_flags()
    flags |= D20CAF_CRITICAL
    evt_obj.attack_packet.set_flags(flags)
    
    You did this in another spell too (phantom something).

    However I think the best approach that would also avoid hairy issues (like rolling 1 in the confirmation roll etc) is to just add a query "Crit Hit Confirmation Guaranteed". Hacky workarounds always end up biting you in the ass, it's best to be explicit about it. (For example, the visual bug you mentioned - we'll probably fix this in a way such that these flag manipulations won't work anymore)

    Also as I mentioned in the other thread, the implementation using direct field manipulation is buggy - e.g. when you cast the spell and then save the game, the field gets reset somehow, and then when loading the save it causes the crit range to be 21-20 (i.e. can never score a critical hit).
     
    Last edited: Mar 5, 2021
  9. Sagenlicht

    Sagenlicht Member

    Joined:
    Apr 14, 2004
    Messages:
    86
    Likes Received:
    12
    Yeah I thought that they were added to compensate for missing spells, and I removed them because I added new assassins spells. But the argument about old saves games is more than valid and far outweights the idea ab0ut correcting the spell list. I will change that with the next upload and simply add the new spells.

    Ok :)
     
    Last edited: Mar 6, 2021
  10. Daryk

    Daryk Veteran Member

    Joined:
    Jan 14, 2012
    Messages:
    1,118
    Likes Received:
    23
    By that logic, if a character could sustain Harmonic Chorus for eight hours a day, wouldn' t if count after all?
     
  11. Endarire

    Endarire Ronald Rynnwrathi

    Joined:
    Jan 7, 2004
    Messages:
    634
    Likes Received:
    54
    Definitely, like with the feat Persistent Spell!
    @Daryk
     
  12. Sagenlicht

    Sagenlicht Member

    Joined:
    Apr 14, 2004
    Messages:
    86
    Likes Received:
    12
    I updated the overrides.zip in the first post.

    Latest Changes:
    added:
    Level 3
    Find the Gap, Wraithstrike
    Level 4
    Resonating Bolt, Resistance, Greater, Sirine's Grace, Dolorous Blow
    fixed:
    Critical Strike no longer stacks with keen edges or improved crit feat and now requires a melee attack.
    Harmonic Chorus is now dismissable

    re-added assassin compensation core spells

    There are traces of Fugue in the zip, but I still working on that spell :(
     
    Pygmy likes this.
  13. Sitra Achara

    Sitra Achara Senior Member

    Joined:
    Sep 1, 2003
    Messages:
    3,049
    Likes Received:
    223
    @Sagenlicht the latest dev build now includes your spell enums, as well as:
    - obj.can_melee(tgt) and the python query for critical strike
    - tpdp.SpellPacket method get_spell_component_flags()
     
  14. Sagenlicht

    Sagenlicht Member

    Joined:
    Apr 14, 2004
    Messages:
    86
    Likes Received:
    12
    Thank you Sitra.

    I do set flags in Phantom Threat + Phantom Foe as well yes (to be precise, I add D20CAF_FLANKED). I do this because there is no isFlanked query in Python, which was my original plan to do. Correct me if there is one. Though I'd be happy if there would be one, I often use get_flags() & D20CAF_FLANKED as well, which would be covered by that query as well.
     
  15. Pygmy

    Pygmy Established Member Supporter

    Joined:
    Oct 8, 2010
    Messages:
    425
    Likes Received:
    9
    If anyone else is adding Sagenlicht's spells to their game don't forget that you will have to update your Constants.py file again with the latest additions.
     
Our Host!