Skip to content
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

Specifying Bloodhunter's Patron #134

Open
kompoth opened this issue Jul 27, 2022 · 7 comments · May be fixed by #167
Open

Specifying Bloodhunter's Patron #134

kompoth opened this issue Jul 27, 2022 · 7 comments · May be fixed by #167

Comments

@kompoth
Copy link

kompoth commented Jul 27, 2022

I am trying to generate a Bloodhunter of the Order of the Profane Soul and can't figure out how to select a Patron. I see that patron option is a FeatureSelector, just like a Fighting Style, so it seemed logical that patron should be specified the same way:

classes = ['Blood hunter']
levels = [3]
subclasses = ['Order of the Profane Soul']
...
features = ('Crossbow Expert')
feature_choices = ('Archery', 'Undying')

This works for Archery, but the Undying still is unspecified in the resulting character sheet. Also tried other options like 'Fiend' (used values from OtherworldlyPatron class).

Is it a bug? Thank you.

@canismarko
Copy link
Owner

Hi, there.

Try putting the patron in the subclasses list: subclasses = ["Order of the Profane Soul", "Undying"]

This is how warlocks handle patron features: https://github.com/canismarko/dungeon-sheets/blob/master/examples/warlock1.py

I haven't tested it with Bloodhunters, so please let me know if that works.

@kompoth
Copy link
Author

kompoth commented Jul 27, 2022 via email

@canismarko
Copy link
Owner

Ah, yeah I think I understand the problem.

Patrons were initially included for Warlocks, and apparently the subclasses became the Patrons, but I think this is incorrect. I think Pact Boon is actually what it should be since it occurs at lvl 3 just like all the other classes. If we made the patron at feature choice like you selected then Pact of the Whatever became the subclass, I think it would all work properly for BloodHunter classes as well.

That would be a breaking change, so it will take some careful thought. I'll work on it when I have some free time, unless you feel motivated to submit a PR.

@canismarko
Copy link
Owner

Note to self: make sure to include spells and damage resistances from #135

PJBrs added a commit to PJBrs/dungeon-sheets that referenced this issue Jul 6, 2024
Among other things, this fixes

canismarko#134
@PJBrs
Copy link
Contributor

PJBrs commented Jul 6, 2024

The options need to be non-capitalized in dungeonsheets/features/bloodhunter.py:

diff --git a/dungeonsheets/features/bloodhunter.py b/dungeonsheets/features/bloodhunter.py
index 9d6f943..f6a5c21 100644
--- a/dungeonsheets/features/bloodhunter.py
+++ b/dungeonsheets/features/bloodhunter.py
@@ -1102,12 +1102,12 @@ class OtherworldlyPatron(FeatureSelector):
     """
 
     options = {
-       "Archfey": ArchfeyPatron,
-       "Celestial": CelestialPatron,
-       "Fiend": FiendPatron,
-       "Great Old One": GreatOldOnePatron,
-       "Hexblade": HexbladePatron,
-       "Undying": UndyingPatron,
+        "archfey": ArchfeyPatron,
+        "celestial": CelestialPatron,
+        "fiend": FiendPatron,
+        "great old one": GreatOldOnePatron,
+        "hexblade": HexbladePatron,
+        "undying": UndyingPatron,
     }
     name = "Otherworldly Patron (Select One)"
     source = "Blood Hunter (Order of the Profane Soul)"

I've added this patch to the following commit
cd9e7d4

PJBrs added a commit to PJBrs/dungeon-sheets that referenced this issue Jul 7, 2024
Among other things, this fixes

canismarko#134
@canismarko
Copy link
Owner

@PJBrs Ah interesting. Somewhere then there must a str.lower() call, right?

Thanks for implementing that fix. Could it be a separate PR instead of getting lumped into those other ones? They're already complicated enough that I don't have bandwidth to process them, and adding more stuff makes that worse. Ideally, each PR would address one thing, like multiple issues are mutually related or something.

@PJBrs PJBrs linked a pull request Jul 11, 2024 that will close this issue
@PJBrs
Copy link
Contributor

PJBrs commented Jul 11, 2024

Over here: #167

PJBrs added a commit to PJBrs/dungeon-sheets that referenced this issue Aug 17, 2024
Among other things, this fixes

canismarko#134
PJBrs added a commit to PJBrs/dungeon-sheets that referenced this issue Aug 22, 2024
Among other things, this fixes

canismarko#134
PJBrs added a commit to PJBrs/dungeon-sheets that referenced this issue Aug 22, 2024
Among other things, this fixes

canismarko#134
PJBrs added a commit to PJBrs/dungeon-sheets that referenced this issue Aug 22, 2024
Among other things, this fixes

canismarko#134
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants