Delays, Drafts and Deadlines

Hello everyone! There's been a HUGE influx of people from Twitter for some unknown reason (thanks Terry! <3), and I haven't updated the mod in a while, so figured I'd keep you posted on what's happening. I was originally hoping to update this mod every week, on a Monday (except for critical bugs I'd missed), but I'm running a bit behind. There'll be an update out this week (hopefully), but a main reason for the delay was me attempting to patch in a whole new quest, which I ultimately gave up on. I was working on a Draft Mode for the Jester - a cool concept, I feel... but HELL to execute in practice. If you don't know what a Draft mode is, I'll explain:

  • You're offered a selection of 3 cards, and you choose one of them.
  • This card is then added to your deck - you can't "skip" cards
  • When your deck reaches a certain size (e.g. Hearthstone: 30 cards (normal deck size), Slay the Spire: 15 cards(slightly bigger than normal)), your run starts!

This sounds like it would work fine for Jester - just give him a choice of cards, he can "specialize" into one of the normal bands (Fire, Poison, Shields, etc.) just fine, but there's a few glaring issues with modding this in:

  • You always start the run in the world map, there's no way to replace the opening cutscene with a "pick cards" mode.

Even if you could replace the cutscene with a selection of cards, it'd be far more fiddly than I'd like to turn that into adding cards into your deck.

  • How would you even make an option to "pick" a card?

A week or so ago, there was a discussion in the Dicey Dungeons Discord about how to make a "backup" card reusable. Backup cards are the cards for Jester which just have a button. Call for Backup Robot, for example, gives you a random piece of equipment. Call for Backup Witch discards your hand, and so on. Since they just have a button, these are really useful for making a card you can just click on! TheMysticSword put this to good use with their Megaquest mod, but I wanted to see if I could put my own twist on this.

As it turns out, this was easier than I'd thought! Jester already has 3 cards in his hand by default, so you can, in theory, give him 3 "choices" per turn. Each of these "choice" cards will add the actual card to your deck, and then you can use them as normal. Except for a few MASSIVE issues:

  • This means you'd need a "Draft: ___" card for EVERY item available in Draft Mode...

Indeed you do, and it's a pain to manage! You need one of these cards for EVERY item you intend to include in a Draft Mode, and it's just... space and time-consuming to get working. The code is the same for each item (it uses the equipment's name to decide which card to add), but... is finicky to get working.

  • How do you give the Jester an initial set of Draft options?

You can give the player random equipment somewhat easily - you can set a script to activate on the episode start, and so you can arbitrarily give the player any type of items when they load up. However, there's no way to dynamically say "hey, get all the Draft: ___ cards", so you need to manually add each of these. This is pretty error-prone, since you might miss some!

  • Duplicates?

One key feature most drafting systems have in common is that each option is unique. You'll never be offered two Saronite Chain Gangs in the same set of options, since this would dilute your choices down from 3 to 2. However... that's not really doable here! Since the way that the Jester gets his initial draft options is by shuffling lots of "Draft: _____" cards into his deck, he's bound to draw two Boops at some point. This can be limited by only shuffling one of each option into your deck (but remember, you need 30 of these options), but this kind of kills the ability to "lean into" a specific type of deck. You can't really make an Ice deck with only one Snowflake!

  • What if the player ends their turn midway through the Draft process?

Luckily, the player's hand is conserved. So they couldn't "mulligan" away their options if they didn't like their set. However, this would thoroughly mess up the previous way I was doing this - each "Draft: ____" card just added the corresponding card to your deck. Your deck gets shuffled between turns, and there's a risk this would give you a "Draft: Boop", "Sword", "Draft: Stumble" situation, where you have an actual card shoved between two draft options. This is bad! So, there's 2 ways I combatted this.

First, remove the "Next up:" display and the "Discard" button until the player finishes the drafting process. This is to stop the player from discarding two duplicate options (which ideally wouldn't happen anyway...).

Secondly, give the player a Finale card (Finale cards always appear at the bottom of your deck) which starts the run. Instead of just giving the player each drafted card, whenever you click a Draft option, increment a variable corresponding to that card. So picking up a "Draft: Booplicate" would increase your "Booplicate" counter by 1. Then, have a Finale card which goes over every single variable, and gives you those cards! This... works, but requires you to have a list of every single Draft card on hand. Which is a bit annoying to keep track of - miss one out, and while you can draft that card, you'll never receive it! Furthermore, you can't make a Finale card also a Backup card (give it a button), so this means you need to put a dice into it, which is awkward as hell.

So yeah! Even after all this, it ended up... kind of working! This is some footage from an early prototype. 

This has all since been stripped from the mod (for now), though. v0.17 promises to add some new stuff which should hopefully make this a lot easier to pull off (as well as open up some possibilities for new items), so don't completely say goodbye to this idea! 

Get More Fluff

Leave a comment

Log in with to leave a comment.