The basic inspiration for the feature is the inconsistencies in the color of the Basic Hunt Event cards (among the promo, core and expansion cards): since the core card backs are one color, the expansion card backs (i.e. for the Lonely Tree) are another and the promo cards a third, it's impossible to randomly draw a BHE card.
(You know, because you always know which ones are 'Random Event' cards and which ones are the special events.)
The feature, then, simulates the creation of a "deck" including 12 "Random Event" BHE cards and one each of any of the three additional BHE cards and then draw them off one at a time.
(It even rolls the d100 for you...because that took ten seconds to implement and what the hell, you know?)
At any rate, if you're a subscriber and you want to check it out, click the "System" tab and make sure that you've got the "Beta" preference set to "Enabled". From there, click into any of your Settlements/Campaigns, click on the sidenav/burger and click the "β Hunt Phase" button.
And please, if you do end up messing with it, let me know what you think: how could it be better, how would you incorporate it into the existing tools, etc.
Thanks for using the Manager!
Corrections and Fixes
- Fixed a bug where removing a cursed item from a survivor caused API failures.
- The Settlement Sheet's "Lost Settlements" controls look clickable now (i.e. the cursor changes on mouse-over at wide resolution, etc.); incrementing Lost Settlement count no longer reloads the settlement.
- Added the subscriber-only Hunt Phase feature as a beta:
- added hunt_phase.css because I'm going to experiment with atomic/feature CSS files, I think.
- Skinned the feature at all three breakpoints
- The utils.email_exception() method now logs the exceptions it emails. This prevents me having to tab over to gmail when I'm working, mostly.
- Added a self.CursedItems to the Survivor object so it doesn't have to load that AssetCollection when initialized.
- Refactored the add_cursed_item() and rm_cursed_item() methods of the Survivor class to use self.CursedItems.
- The rm_cursed_item() now fails gracefully if the user attempts to remove a non-existing handle from the survivor.
- Updated rm_cursed_item() so that if a user removes the last cursed item on a survivor, the 'Cursed' epithet goes away.
- Admin Panel indicates whether the user has Beta content enabled.
- admin.py now has the ability to set the user's Beta preference (to True or False). It also dumps the user's preferences now when it's done.
- The User class method set_patron_attributes() now removes the bogus 'beta' key from the self.user['patron'] dict.