-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Dragon Discipile WIP #619
base: master
Are you sure you want to change the base?
Dragon Discipile WIP #619
Conversation
Good start! Oh and blindsense is kinda redundant in this game I think. I suppose it could he integrated in spot checks, but meh. |
My plan was to store the Heritage in the Breath Weapon and in the Dragon Apotheosis Functions as an arg anyways, those are the only functions that care about the heritage. Saving the heritage as an arg makes it easier to add new dragon types in the future if really needed. Now I really like the idea to handle the heritage via a radial menu. This saves alot of feat headaches indeed :) Will do it that way. |
BTW, maybe the dragon heritage should have its own condition - for example if any other classes use that kind of stuff (e.g. Pathfinder Sorcerers). |
Updated Help File (close to finished) and fixed typo Edit: Found my error |
Added Ability Boost Feature. Known Bugs: Missing: |
Added Cone Breath Weapon particles Know Bugs: Missing |
newSpellId = tpactions.get_new_spell_id() | ||
spellPacket.caster_level = attachee.stat_level_get(classEnum) | ||
tpactions.register_spell_cast(spellPacket, newSpellId) | ||
tpactions.trigger_spell_effect(newSpellId) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If you want the "turn around" animation to play beforehand, you should push an animation goal and move this part to the action frame. I think Arcane Archer has this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Will do, was actually surprised the caster doesn't turn automatically when I use target mode: ray. The caster e.g. turns automatically when you use target_mode: cone
I think the claw/bite stuff needs engine level hooks. IIRC it looks up obj_f fields that are NPC only. |
Ok |
Oh, on that note, are there other things that grant natural attacks? I know polymorph does, but it does so through mimicking an existing proto entry. |
Wow, looks great! Question - why have you decided to go with Breath Weapon as a spell implementation? But I feared that Supernatural ability should not be treated as spell. So no spell resistance nor AOO nor counterspelled nor dispelled. |
Unless I'm missing something, the above is for AI with automatic target selection, which is not suitable for PC class obviously. Making this an action with a spell makes use of the UI picker infrastructure.
Yes, there ought to be a flag for this... |
Sure. Thanks Sitra! Look, my comment is not criticism per se. I saw this and now will try to accommodate such technique in my modules :) |
I don't know when you wrote that, but actually ai tactic "cast area" was broken until quite recently. I'm still not sure how well it works for cones actually. |
Updated help file. Help file is finished and only needs to be corrected for things that maybe gets change due to technical limitations (see below). About the bite/claw thing. A few spells in the Spell Compendium would add claw/bite attacks as well. I am not aware of any other claw/bite attacks outside spells or non humanoid races as sources for such attacks. Claw attacks are usually two-weapon attacks and the penalty for it is usually reduced by the (in ToEE I belive non existing) https://www.d20srd.org/srd/monsterFeats.htm#multiattack feat. Blindsense Wings Breath Weapon Spell Selection @anatoliy-savchak ty :) |
Well I was wondering if it should be converted to a general thing rather than DD specific. I guess it can always be changed later though.
Yeah I think we can take a pass on that.
I don't understand, is this different than Eldritch Knight? |
Yes completely. An Dragon Disciple only gets bonus spells no progression or even spells per day. A DD 10 / Sor 1 still could only cast 1st level spells only three per day. All the DD gets is more spells known and in by raw he could choose every time he gets a bonus spell in which spell level he wants to have the new spell. And yes, I only noticed this while doing the help file, I just assumed it would work the way the other PrC's work :( |
The Dragon Disciple bonus spells aren't known spells. They are per-day spell slots. You get to add one spell-per-day to any level you can already cast on those levels. I think there's no way to give them in ToEE. The engine just hard-codes bonus spell slots from high ability scores as the only possibility. I made issue #542 a while back about it. |
Ah ty for correcting this @dolio. Ok they are not more known spells but more spells per day then. But yeah it is still not the normal PrC spell progression sadly :( |
Yeah, it's surprisingly weak, since it doesn't seem like the rest of the class is really sufficient to make you a competent fighter. Incidentally, I've noticed that the original (I think) designers misinterpreted Multiattack, too, since you mentioned it. What it's supposed to do is make 'secondary' natural weapon attacks hit at -2 (rather than -5). However, what they did instead was give monsters with Multiattack a bonus attack, and this ends up being an unarmed strike (dealing nonlethal damage) rather than an actual natural attack. I think the way natural attacks are specified (currently) just lets you pick arbitrary to-hit penalties, so they should have just picked -2 for creatures with the feat, and -5 for creatures without. Two claws could be the primary natural attack, I think. They just happen not to be in the case of DD. |
Making explicit bonus spell feats for every class and spell level is pretty icky... why go down that route? |
Oh I am unsure how to handle this properly, this was my first draft idea. The Dragon Disciple could get a bonus spell for every level and spell class he chooses as he gains level. It is not limited to his highest class, arcane or whatsoever. So in theory a 2nd Level Cleric/2nd Level Sorc/1st Level Bard that then goes Dragon Disciple could choose to add a bonus spell to: Cleric Spell LEvel 0 or 1, Sorc Level 0 or 1 or to his Bard spell Level 0 every time he gets a bonus spell slot. Now I am unsure how this Bonus Spell thing is needed by other classes or items like a spell storing ring, so my first idea was let's do some conditions everyone could use. But I am open for suggestions :) Possible bug: I don't get evt_obj.caster_class to work, it runs into an error. |
Excellent! |
heritageElement = heritage_feat_utils.getDraconicHeritageElement(heritage) | ||
saveDescriptor = getSaveDescriptor(heritageElement) | ||
flags = evt_obj.flags | ||
#This is not working properly, because as soon as the spell uses reflex_save_and_damage |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you give an example?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I did a post in the co8 forum, found it easier to attach all needed files there.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should be fixed now, please help test this :)
@DudeMcDude could you please look into this, it keeps me from finishing the bonus spells. If I am doing something wrong there I apologize, but to me it seems not to work. |
…/TemplePlus into DragonDisciple
… so it'll correctly apply the spell descriptors
#I am unsure why evt_obj.caster_class is not working, can't get a print of it either | ||
#print "evt_obj.caster_class: {}".format(evt_obj.caster_class) | ||
#Disabeld for now due to this | ||
#if not evt_obj.caster_class == classEnum: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've added get_caster_class() method to the event object; I think the issue was that it was directly accessing an enum field which makes it typed in python, and this causes the issue
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks that fixed the issue!
* Changed Bonus Spells per Day to be in line with general PrC handling in ToEE (highest arcane class is automatically selected) *Minor Breath Weapon Fix
I changed the spells per day behaviour to be in line with the general arcane caster class PrC handling in ToEE, so the spells per Day will automatically applied to the highest class and spell level. This simplifies the handling considerable. Should have done this in the beginning. Bonus Spells per Day Dragon Disciple Feature is now completed and doesn't use any workarounds. |
Dragon Disciple - changed description to Coming soon
…otos definition per each spell...
…uggestion') on enemy, e.g. summoned Balor from Skull
Possibly fixes #661
Created a Dragon Discipile Help File (WIP)
Created Dragon Discipile Feat text files (Heritage incomplete)
Started to work on Dragon Discipile Feats