One Year of Placing Fires
Today marks the one year anniversary of Fireplace’s first commit.
1461 commits later, Mulligans have finally been implemented…
About time, huh?
Mulligans set a
choice variable on the player. If that variable is set,
ending the turn or performing any action will result in an error.
choice variable is an action (a
MulliganChoice, specifically). It has
cards attribute which contains the list of cards that can be picked.
To perform the mulligan, call
player.choice.choose(card1, card2, ...).
This will first draw an amount of cards equal to the amount of chosen cards,
and then shuffle the chosen cards into the deck (therefore, the chosen cards
will never be re-drawn).
choose() with no arguments will perform an empty mulligan (keep all cards).
Jousting has also been implemented, using the following syntax:
Joust(FRIENDLY + MINION + IN_DECK, ENEMY + MINION + IN_DECK) & Buff(SELF, ...)
The classic joust is aliased to
JOUST to help readability and avoid repetition.
Auras have been rewritten again. They are completely gone from the CardDefs.xml file and are now action-driven instead. This makes them much easier to implement and also paves the way for attribute scripts to become auras as well. I’ll be very sad to see them go, but the action/selector system is just so much more flexible.
The Grand Pack Analysis
The Grand Tournament is out!
Yesterday, I posted about a pack analysis we intend to run over crowdsourced data of the TGT packs. In the 12 hours since TGT has come out, we have had over three hundred submissions including over eleven thousand packs!
Fluxflashor has already set up a website that allows for automatic processing of submissions and viewing the submitted data.
The data is pouring in and the next post on this blog will be a short analysis on the set, as well as the raw CSV data and the source code used to generate it. The analysis will be cross-posted to both Hearthpwn and /r/Hearthstone.
Kettles and Stoves
Work on matchmaking in Stove is progressing at a very fast pace. The first Kettle commit (previously known as Firesim) is in the Fireplace tree, right on time for the anniversary.
Both Fireplace and Stove have been relicensed from GPL3 to the Affero GPLv3.