Gauntlet Devlog

Hey, I’m Blatm and I did most of the initial Gauntlet design for Duelyst II. I’ll give a TL;DR of how Gauntlet works, and then talk about the design in depth.

  1. RUN STRUCTURE: You draft a deck and then play 4 matches with that deck, win or lose.
  2. REWARDS: Gauntlet runs cost 20 gold. You get some random rewards that don’t depend on your record, 5 gold per win, and a Gauntlet ticket for 3+ wins.
  3. DRAFTING: Building a deck consists of choosing between 3 “buckets” of cards 17 times, and then deleting up to 4 of those buckets. Each bucket is a group of 2 or 3 cards, size chosen at random, and each individual card is generated independently at random.
  4. WEIGHTS: Some cards appear during the draft more often than others. Before this was determined by rarity, but now I hand picked weights for each card instead.
  5. CROSS-FACTION: occasionally cards from other factions appear during the draft. Each card has a hand-picked chance of appearing in a different faction, and any card can appear.

Run structure

In Duelyst 1, Gauntlet runs lasted until you got either 12 wins or 3 losses. I think 4 games no matter what will be more fun for most players for a couple reasons:

  • Runs took way too long before. A lot of the fun of Gauntlet is drafting decks and playing different things. A dozen games with the games with the same deck really drags on, and doesn’t let you draft very often.
  • If runs last longer if you’re winning, that means that the average Gauntlet match is between above-average Gauntlet decks. This is mostly because the bad decks got eliminated much more quickly than the good ones, but also because a 12-3 run structure encouraged players to take big risks during drafts by rewarding them so much more when they get lucky. I also found it a bit annoying that most of my opponents had above average decks. A 4 games run structure puts a stronger emphasis on playing with mediocre decks, and I think that’s more of the spirit of Gauntlet and the feeling players are looking for, and is also an important part of skill expression in limited formats.
  • Philosophically, it was important to me that Gauntlet be equally accessible to everyone, regardless of how much they win. A 12-3 run structure lets you play the game more if you’re good at it, and that’s not fair. Saying you get to play 4 matches no matter if you win or lose doesn’t have this problem.

Rewards

My goal when choosing Gauntlet rewards was to make the game mode as fun as possible, and to allow players to play whenever they’d like, just like ladder. With this goal in mind, picking rewards was tricky, because there are a lot of factors that conflict with one another and need to be balanced. I’ll walk you through my reasoning that lead to this rewards structure. I view this as a work in progress, and, just like for every other aspect of Gauntlet, I’ll be listening closely to feedback and keen to tweak things.

My starting point was to see if Gauntlet could simply be totally free with zero rewards, basically just like ladder. The main reason I don’t think this is a good idea is because, as I talked about in the run structure section above, getting players to play with mediocre drafts was of major importance to me and really essential to a fun Gauntlet experience in my view. I didn’t see how I could ever make this happen if the entry cost was a flat zero. I chose a 20 gold ticket cost because I figured that’s the lowest it can go while getting players to play bad decks, and it’s low enough that, by making the surrounding choices the way that I did, players will hopefully still be able to play as much as they want. Another reason I ended up deciding against a completely free Gauntlet was because internally I got a lot of feedback telling me that players feel good when they get rewards at the end of the run. I think the current rewards cater to that and let runs feel like a short story instead of bleeding into one another.

Having picked a 20 gold starting point, I needed to then make rewards that would let you play more runs. Because I think players should be incentivized to try with mediocre decks, there had to be some benefit to having more wins, but I also wanted to make that benefit as small as possible. Like I mentioned in the section on run structure, my philosophy is that Duelyst is for everyone, and Gauntlet shouldn’t advantage players who win a lot over others. From that perspective, a huge benefit for getting lots of wins is unfair. I also wanted to avoid Gauntlet feeling like a high stakes ordeal. I prefer if it feels like just another game mode to go and play for fun whenever you want. While some players do like the high stakes feeling, I think most probably don’t, so overall the decision is that that’s not what Gauntlet is going to be about. With these considerations in mind, having a reasonably accessible Gauntlet ticket as part of the rewards looks like the way to go. Hopefully that, plus the 5 gold per win reward, plus the 15 gold per 3 wins the game gives you by default, plus the random rewards below, will let players play as much as they like.

The random rewards, at the time of writing, are as follows:

  • 57% chance of a random card, selected by choosing one of the five cards in an orb uniformly at random.
  • 28% chance of gold – 50:16:4:1 ratio for 5:10:15:20 gold
  • 15% chance of spirit – 20:8:3:1 ratio for 5:10:20:40 spirit

It was tricky to pick these, and they could easily change in the future. One bit of feedback I got a lot internally was that lots of players enjoy surprise in rewards, and this is what lead to random rewards in the first place. Most of the random reward is a random card, because that’s the reward that’ll have the most variety. On the other hand, the random reward also wants to be gold from time to time out of consideration for players who want to play Gauntlet exclusively. On the third hand, we wanted the value of the random reward to have a good amount of consistency, since it can feel pretty bad if some of the possible outcomes are way better than others and if most of the random reward is about those few really high value outcomes. I had to pick some compromise between rewards being an exciting surprise for some players and having the values of the possible outcomes be consistent, and the above seems like a reasonable balance to me.

Another consideration in picking these random rewards is that the rewards overall should be generous. I really want Duelyst to be accessible and for players to be able to play it however they like, so I’m very inclined to give away lots of stuff. I hope the rewards above do a good job of being more generous than they appear.

Drafting

This is definitely the change I’m most excited about. Lots of players like Gauntlet because of the variety, and lots of players like Gauntlet because of the skills it tests. Duelyst as a game, and especially in a limited format, has a strong tendency to favour consistent general purpose cards like Healing Mystic and Martyrdom, with more situational or niche cards like Aurora’s Tears and Bonechill Barrier often being suboptimal. When the draft only offers you one of three cards each pick, it was almost always optimal to pick the most consistent card, since you were pretty unlikely to be offered cards that supported your Bonechill Barrier or whatever, and even if you did and were in a situation to pick them, the payoff wasn’t much higher than just picking the more well rounded cards every time.

Buckets address a lot of this and make the environment much more diverse. Now you see many more cards during a draft, so you can more consistently pull off weird things. More solid but less synergistic picks, while definitely still powerful, do involve some compromise and can lead you down different paths. Now maybe that Healing Mystic comes with a Voice of the Wind, and maybe you’d pick a bucket of Borean Bear and Blazing Spines over that. If all of these were offered individually Healing Mystic would probably get chosen much more than the other cards. A bucket of Mystic and Voice of the Wind is still good, and if you take it then maybe you then get offered a bucket Hailstone Prison and Glacial Elemental, and you can switch gears and focus on that synergy if you want to. If these had all been offered individually, I would have picked Healing Mystic and Hailstone Prison, and end up with a deck that’s pretty similar-feeling to my previous decks.

The bucket system is also skill testing in ways I hope will have wide appeal among Gauntlet fans. The variable size of buckets, half the time 2 and half the time 3, makes players end up in a wider variety of situations and gives them more things to consider. Depending on the rest of your draft. sometimes it’s advantageous to have more cards, sometimes it’s advantageous to have fewer, and I think the judgement calls involved are very tricky. After drafting your 17 buckets, you’re prompted to remove up to 4 of them from your deck. It’s important for promoting synergy-based cards because it lets players make some more speculative picks, and I think it also adds a new and deep mechanical element to the draft.

Weights

How often each card appears during drafts essentially defines the format, i.e. how it feels to play matches. Previously, the offer frequencies were determined by rarity alone, and hand-picked weights for each individual card give a lot more control for shaping the format. I’m anticipating changing the weights of cards often and sometimes dramatically. These weights are available below so super tryhard players can make decisions they perceive as more skillful because they know what the weights are. Here are some considerations that went into how I picked the current weights.

I thought Duelyst 1’s Gauntlet, during 2 draw, suffered a lot from its minimal archetype diversity. Some of the lack of diversity was a result of the consistency vs. synergy trade off I talked about in the drafting section above, but a lot of it was that the card set was designed with constructed in mind, and some archetypes really need some pretty specific cards to make any sense. By tweaking weights, I’m hoping that factions can have multiple different-feeling draft archetypes, like Vespyrs or Walls in Vanar, or Dervishes or Artifacts in Vetruvian. My aim was to have different factions feel different to draft with regards to how their archetypes relate to one another; Vespyrs and Walls in Vanar are very close and can bleed into each other, whereas Dervishes and Artifacts in Vetruvian are more about each having their own separate package. I think it’ll be fun to tweak weights from time to time to either fine tune or mess with the relative power levels of these archetypes.

On a larger scale, weights can be used to control the overall volume of various card types. For example, I’ve heard lots of players say that they worry ranged minions or similar threats will be stronger than what they’d enjoy. I tried to set the weights of stuff like efficient removal pretty high, so that players won’t feel helpless against early game ranged minions. Another example is that I generally increased the weights of 2 cost minions, because Duelyst decks almost universally require a pretty high number of those to function at all reasonably. Without this weight increase I was finding that drafts were a bit less fun, since it was too often correct to just take the 2 drop. With the higher weights, I could more reliably get the volume of 2 drops I needed, and that let me pick other kinds of cards more liberally.

Cross-Faction

Right now, 3% of cards that are offered will be from a faction different from the faction you’re drafting. The relative frequency with which these cross-faction cards appear is by default their usual weights, but many cards appear more or less often than that, by a hand-picked amount. Just like the weights from the previous section, these numbers are available below, and I anticipate that they’ll change often.

Without the inclusion of cross-faction cards, I found the drafting experience quickly became a bit repetitive and bland. Decks from the same faction weren’t feeling that different from one another. Cross-faction cards added some much-needed texture to drafts, sometimes because the cards were salient and memorable, and sometimes because they enabled completely novel synergies or formed the basis of a totally unique deck. Also from time to time you get to do some really silly things for a few games and that’s a blast.

There were a lot of considerations when picking cross-faction weights. One of the biggest is that I don’t want players to feel like they got completely blindsided by nonsense constantly. For example, Spiral Technique, which already has a somewhat low weight right now, appears cross-faction half as often as it would by default. This is because usually Spiral Technique just ends the game immediately and seems like it’s definitely going to make players feel blindsided. Considering that there are five times as many cross-faction cards as there are faction cards, I’m hoping that overall these sorts of experiences are something players can laugh about every once in a while, but aren’t commonplace.

Instead, I wanted to promote cards that, when they appear cross-faction, change how the game is going in a way that gives players a novel experience without being out of line power level wise, even when they’re completely unexpected. Ancestral Divination and Grandmaster Z’ir are examples of cards that appear more often cross-faction than their base weights would dictate.

One pretty straightforward reason some cards have cross-faction weights far from their default is if they’re cards that make basically no sense without faction-specific supporting cards. Wraithling Fury is a clean example of this. It does still appear cross-faction sometimes because that’s kind of funny, but pretty infrequently.

I also aimed to use cross-faction weights to help balance factions a bit. In Gauntlet, some factions rely on specific generically powerful cards to be strong overall. An example of this is Young Silithar in Magmar. If a player chooses to draft Magmar, I think they’re looking to get some Young Silithars as one of the benefits of their choice. Young Silithar is in general a pretty strong card, and pretty generically useful, so lots of decks would pick it cross-faction. With this in mind, I increased Young Silithar’s base weight, but then decreased its cross-faction weight by the same amount, so that overall it’s offered a normal amount cross-faction, and an above normal amount in Magmar.

An example of a use of cross-faction weights to balance but in the opposite direction is Chromatic Cold. As I mentioned in the weights section, I heard a lot of worry the power of some cards widely perceived as annoying, and Chromatic Cold tends to be good against those kinds of cards. I bumped up the cross-faction weight of Chromatic Cold to help make the format overall a bit more fair. However, I recognize that a lot of the appeal of playing Vanar is that they have strong removal, and I didn’t want to undermine this. I increased the default weight of Hailstone Prison quite a bit, and this does make it appear cross-faction more too, but it impacts Vanar much more, preserving their identity and distinct advantages.

Thanks

Huge thanks to Stimulant, Suraako, and Zeza for implementing all these changes.

Weights as of 2023/04/02

Each card offered has a 53% chance of being from your faction, 44% chance of being neutral, and 3% of being cross faction. Below, all the cards in the game are listed with their relative frequencies, normalized so that these relative frequencies average to 1. The number in the rightmost column is how much these weights are rescaled by when being offered cross-faction.

Silverguard Squire            1.00    1.00
Azurite Lion                  1.15    1.00
Lightchaser                   1.15    1.00
Sunstone Templar              0.92    1.00
Windblade Adept               1.15    1.00
Arclyte Sentinel              1.00    1.00
Silverguard Knight            1.00    1.00
Lysian Brawler                1.00    1.00
Sunriser                      1.00    1.00
Suntide Maiden                1.00    1.00
Ironcliffe Guardian           1.00    1.00
Second Sun                    1.00    1.00
Elyx Stormblade               0.84    1.00
Grandmaster Z'ir              0.68    1.30

Beam Shock                    1.00    1.00
Lionheart Blessing            1.00    1.70
Aegis Barrier                 0.80    1.00
Aerial Rift                   1.00    1.90
Auryn Nexus                   1.00    1.30
Magnetize                     1.00    1.00
Sundrop Elixir                1.20    1.50
True Strike                   1.00    1.30
Lasting Judgement             1.20    1.00
Martyrdom                     1.35    1.80
Sun Bloom                     1.00    1.00
Tempest                       1.20    1.00
War Surge                     1.00    1.40
Divine Bond                   1.00    0.60
Decimate                      0.80    0.45
Holy Immolation               1.00    0.40
Circle of Life                1.00    1.90

Sunstone Bracers              1.00    1.00
Skywind Glaives               1.00    0.70
Arclyte Regalia               1.00    0.70

Heartseeker                   1.00    1.00
Chakri Avatar                 1.44    1.00
Kaido Assassin                1.38    1.00
Tusk Boar                     1.15    1.00
Celestial Phantom             0.80    1.00
Gore Horn                     1.00    1.00
Jade Monk                     1.10    1.20
Lantern Fox                   1.00    1.20
Widowmaker                    0.70    1.00
Four Winds Magus              1.00    1.00
Keshrai Fanblade              0.60    1.00
Hamon Bladeseeker             1.00    1.00
Scarlet Viper                 0.87    1.00
Storm Kage                    0.42    1.00

Inner Focus                   1.25    1.25
Juxtaposition                 1.30    1.00
Mana Vortex                   1.20    1.00
Ancestral Divination          1.20    1.80
Artifact Defiler              0.50    1.00
Ghost Lightning               1.20    1.58
Mist Walking                  1.00    1.00
Saberspine Seal               1.00    1.00
Deathstrike Seal              0.70    1.00
Eight Gates                   1.00    1.00
Mist Dragon Seal              0.80    0.50
Phoenix Fire                  1.40    1.00
Killing Edge                  1.00    1.00
Onyx Bear Seal                1.00    1.00
Twin Strike                   1.20    1.50
Heaven's Eclipse              0.90    1.50
Spiral Technique              0.60    0.40

Bloodrage Mask                1.20    0.80
Mask of Shadows               0.95    0.80
Cyclone Mask                  0.70    0.40

Dunecaster                    1.15    0.30
Ethereal Obelysk              1.66    1.00
Imperial Saboteur             1.44    0.70
Orb Weaver                    1.15    1.00
Pyromancer                    1.15    1.00
Fireblaze Obelysk             1.30    1.00
Portal Guardian               1.20    1.20
Windstorm Obelysk             1.30    1.00
Mirage Master                 0.60    1.00
Sand Howler                   1.00    1.00
Wind Shrike                   1.00    1.00
Starfire Scarab               0.90    1.00
Aymara Healer                 0.56    1.00
Oserix                        0.68    1.20

Fountain of Youth             0.60    1.00
Siphon Energy                 1.40    0.80
Auroras Tears                 1.10    0.80
Blindscorch                   1.00    1.00
Scion's First Wish            1.00    1.50
Bone Swarm                    1.00    0.70
Rasha's Curse                 1.30    1.30
Sand Trap                     1.00    1.50
Scion's Second Wish           1.00    2.00
Astral Phasing                0.50    0.50
Inner Oasis                   1.28    1.00
Scion's Third Wish            1.00    1.00
Entropic Decay                1.00    1.00
Syzygy                        1.00    1.00
Stars' Fury                   1.16    0.50
Dominate Will                 0.75    0.50
Time Maelstrom                0.63    0.50

Staff of Y'Kir                1.30    0.70
Wildfire Ankh                 0.70    0.70
Hexblade                      1.10    1.10

Abyssal Crawler               1.18    0.50
Blood Siren                   1.15    1.00
Darkspine Elemental           0.92    0.50
Gloomchaser                   1.61    1.40
Nightsorrow Assassin          1.28    1.00
Shadow Watcher                1.00    1.00
Abyssal Juggernaut            1.15    1.00
Aphotic Devourer              1.00    1.00
Bloodmoon Priestess           1.00    1.00
Black Solus                   0.89    0.50
Reaper of the Nine Moons      0.76    1.40
Shadowdancer                  1.00    1.20
Vorpal Reaver                 0.69    1.20
Spectral Revenant             0.68    0.50

Darkfire Sacrifice            1.00    1.00
Grasp of Agony                1.00    0.50
Void Pulse                    1.00    0.85
Consuming Rebirth             1.00    1.00
Daemonic Lure                 1.50    1.50
Soulshatter Pact              0.90    1.00
Deathfire Crescendo           1.00    1.00
Rite of the Undervault        0.60    1.60
Ritual Banishing              1.20    1.00
Shadow Reflection             1.00    1.00
Wraithling Fury               0.90    0.30
Wraithling Swarm              1.30    1.00
Breath of the Unborn          0.78    1.00
Dark Seed                     0.70    0.70
Dark Terminus                 1.30    1.50
Nether Summoning              1.00    0.50
Shadow Nova                   1.15    1.00

Horn of the Forsaken          1.30    1.00
Spectral Blade                1.00    1.00
Soul Grimoire                 0.70    1.00

Kujata                        1.15    1.60
Phalanxar                     1.15    1.00
Young Silithar                1.32    0.85
Earth Walker                  1.00    1.00
Primordial Gazer              1.00    1.00
Vindicator                    1.00    1.00
Elucidator                    0.70    1.00
Grimrock                      1.00    1.00
Veteran Silithar              1.00    1.00
Kolossus                      1.00    1.00
Spirit Harvester              0.80    0.70
Makantor Warbeast             0.93    0.50
Silithar Elder                0.59    1.20
Unstable Leviathan            0.85    1.00

Amplification                 0.80    1.00
Dampening Wave                0.80    1.00
Flash Reincarnation           1.00    1.30
Greater Fortitude             1.00    1.00
Mana Burn                     0.80    1.00
Diretide Frenzy               1.00    0.60
Mind Steal                    0.50    1.50
Natural Selection             1.30    1.50
Tremor                        1.00    1.00
Chrysalis Burst               1.00    1.00
Kinetic Equilibrium           1.00    1.00
Earth Sphere                  1.00    1.40
Egg Morph                     1.30    1.40
Metamorphosis                 1.30    0.60
Plasma Storm                  1.20    0.60
Fractal Replication           0.80    1.00
Bounded Lifeforce             0.80    0.60

Iridium Scale                 0.80    1.00
Twin Fang                     0.90    1.00
Adamantite Claws              1.00    1.00

Snow Chaser                   1.00    1.00
Borean Bear                   1.44    0.40
Crystal Cloaker               1.15    1.00
Crystal Wisp                  0.80    2.10
Hearth Sister                 1.15    1.00
Fenrir Warmaster              1.30    0.70
Glacial Elemental             1.10    0.40
Wolfraven                     0.81    1.00
Razorback                     1.31    1.00
Voice of the Wind             1.00    1.50
Arctic Displacer              1.00    1.00
Frosthorn Rhyno               0.92    1.00
Draugar Lord                  0.87    1.00
Ancient Grove                 0.68    1.20

Flash Freeze                  1.20    1.50
Polarity                      1.00    1.00
Aspect of the Fox             1.08    1.00
Bonechill Barrier             1.27    1.00
Boundless Courage             0.90    1.00
Chromatic Cold                1.36    2.20
Frostfire                     1.00    1.00
Hailstone Prison              1.72    1.00
Mark of Solitude              0.86    1.00
Mesmerize                     1.49    1.00
Blazing Spines                1.20    1.00
Cryogenesis                   1.00    0.75
Gravity Well                  1.20    1.50
Aspect of the Wyrm            0.75    1.00
Avalanche                     0.80    0.50
Spirit of the Wild            1.00    0.30
Aspect of the Mountains       1.00    0.70

Winterblade                   1.30    2.00
Coldbiter                     0.80    1.00
Snowpiercer                   1.00    1.00

Dragonlark                    1.00
Fire Spitter                  0.50
Helm of MECHAZ0R              0.90
Komodo Scavenger              1.00
Maw                           1.00
Moebius                       1.20
Planar Scout                  1.00
Prophet of the White Palm     1.00
Swamp Entangler               1.00
Aethermaster                  1.15
Araki Headhunter              1.15
Azure Horn Shaman             1.15
Bloodtear Alchemist           1.95
Bluetip Scorpion              0.92
Crossbones                    1.15
Dreamgazer                    1.49
Ephemeral Shroud              1.40
Flameblood Warlock            0.92
Ghost Lynx                    1.89
Golem Metallurgist            1.49
Healing Mystic                2.30
Jaxi                          1.95
Manaforger                    1.61
Piercing Mantis               0.92
Primus Fist                   1.61
Rock Pulverizer               1.15
Rust Crawler                  1.38
Silvertongue Corsair          1.01
Skyrock Golem                 1.15
Vale Hunter                   0.92
Wings of MECHAZ0R             1.03
Alcuin Loremaster             1.00
Blaze Hound                   1.00
Bloodshard Golem              1.00
Cannon of MECHAZ0R            0.80
Chaos Elemental               1.00
Crimson Oculus                0.70
Golem Vanguard                1.00
Lady Locke                    1.29
Mindwarper                    0.80
Mirkblood Devourer            1.00
Mogwai                        1.20
Prismatic Illusionist         1.30
Putrid Dreadflayer            1.00
Repulsor Beast                1.20
Saberspine Tiger              1.20
Sand Burrower                 0.80
Sarlac the Eternal            1.15
Shield Oracle                 1.45
Sojourner                     1.00
Spelljammer                   0.50
Sun Seer                      1.00
Sword of MECHAZ0R             1.00
Sworn Avenger                 0.80
Syvrel the Exile              1.00
Venom Toth                    1.00
Void Hunter                   1.00
Wind Runner                   0.75
Wings of Paradise             1.00
Artifact Hunter               1.00
Black Locust                  0.40
Captain Hank Hart             0.80
Chassis of MECHAZ0R           1.00
Cinderbeast                   1.00
Dioltas                       1.00
Emerald Rejuvenator           1.98
Frostbone Naga                1.00
Hailstone Golem               1.30
Hollow Grovekeeper            1.00
Keeper of the Vale            1.30
Lightbender                   1.00
Owlbeast Sage                 1.30
Primus Shieldmaster           0.80
Purgatos, The Realmkeeper     1.00
Silhouette Tracer             1.00
Songweaver                    0.50
Sun Elemental                 1.00
Tethermancer                  1.00
Thorn Needler                 1.00
White Widow                   0.40
Young Flamewing               1.00
Archon Spellbinder            1.00
Ash Mephyt                    1.00
Brightmoss Golem              1.00
Dagger Kiri                   1.00
Dancing Blades                1.15
Flame Acolyte                 1.00
Lux Ignis                     0.40
Rogue Warden                  0.40
Sworn Defender                0.70
The High Hand                 1.00
Twilight Sorcerer             1.00
Zen'Rui, the Blightspawned    0.70
Bonereaper                    0.46
Deathblighter                 0.74
Eclipse                       0.82
First Sword of Akrane         0.93
Jax Truesight                 0.28
Rook                          0.74
Serpenti                      0.93
Storm Aratha                  0.74
Stormmetal Golem              0.99
War Talon                     0.65
Astral Crusader               0.25
Dark Nemesis                  0.42
Dragonbone Golem              0.51
Grailmaster                   0.51
Paddo                         0.42
Pandora                       0.72
Red Synja                     0.59
Whistling Blade               0.68
Khymera                       0.42
Zurael, the Lifegiver         0.42