• v2.0.0 00bad55164

    v2.0.0 Stable

    LunarTides released this 2023-12-31 20:06:07 +00:00 | 613 commits to main since this release

    2.0.0-stable (2023-12-31)

    2.0.0-beta.8 (2023-12-30)

    Chores
    Bug Fixes
    • remove require-jsdoc from card files (f7b2bfb9)
    • move heropower cards into mana cost folders (88f4ec9c)
    • default dcShowUncollectible to false (a4c2a7e0)
    • move heropower cards from spells folder (3885043d)
    • allow giving cards starting with a number (bdc50dbd)
    • fix spelldamage where damage > 9 (ff2f7be9)
    • card:
      • make galakrond heropower cards uncollectible (247c2e27)
      • fix memory leaks in simple card reference example (a443e52e)
    • dc: fix error message when exiting using command (841252bd)
    Other Changes
    • finish adding docstrings to remaining functions (97da9331)
    • start mandating docstrings (95daf1de)
    Refactors
    • add cardIds file to make hardcoding ids less painful (d599794f)
    • remove detecting/upgrading .js/.mts files (d1e51b23)
    • revamp hub watermark (1d284e38)
    • put idscript in a loop (bb1082b4)
    • dc:
      • make import command take an argument (c6faa0a0)
      • make warning its own command (fadff432)
      • rewrite the command system (3b830f82)
    Tests

    2.0.0-beta.7 (2023-12-19)

    Chores
    New Features
    • script: add argument to not filter cards in vc generator (5505d7e9)
    Bug Fixes
    Other Changes
    • make yesNoQuestion player argument optional (224ca471)
    • generate instead of generator (264ce4ad)
    • change the type of HeroPower event to Card (e5f29e93)
    • fix example cards readme file (d4d3c4af)
    • add hero powers to their own card type (76415838)
    • add armor to hero blueprints (6c23f583)
    • improve example cards even more (3d5ebcd6)
    • more small improvements to example cards (0e1f2aa0)
    • small improvements to example cards (fa1ca87e)
    • reenable use of console.log (a55c6877)
    • rename uncollectible to collectible (50a89483)
    Refactors
    • remove "reload" debug command (f88a0237)
    • improve todo system (f2126b05)
    • remove trailing newline from watermark (cafbbb9b)
    • add 'openInBrowser' util function, change licenseUrl to githubUrl (d03c9701)
    • remove "set" debug command (4b2e7bcd)
    • remove "cmd" debug command (1ab1c84b)
    • remove "debug" debug command (b918e187)
    • move licenseUrl to the config file (ae6c09cf)
    • add arguments to getRandomTarget (e2a6a013)
    • dont show corpses for players if they cant use them (4d9ee808)
    • make corpse / runes supported classes less hardcoded (1891ea3d)
    • make the blueprint format more consistant (444192bb)
    • script:
      • improve processing message in propfinder (ab26a75c)
      • update propfinder to find everything at once (4f497da4)

    2.0.0-beta.6 (2023-12-01)

    Chores
    • update dependancies (13455f1a)
    • change Card.name doc to reflect new non-uniqueness (69db3e30)
    • bump build number to 6 (989da702)
    Continuous Integration
    • update node version to hopefully fix failing ci (13a335bc)
    New Features
    • add fancy shortcuts to the eval command (cc29764d)
    • add id and uuid to readable cards when in debug mode (a910ec8b)
    • add a deck (#342) (cbeb34df)
    • add Card.takeControl method (7b84b027)
    • add titan event (25548a3b)
    • add titan keyword (5825b759)
    • add CardEvent event (4e93e35f)
    • add getRandomTarget util function (f8e1ac32)
    • add getRemainingHandSize util function (2badeca0)
    • add getRemainingBoardSpace util function (9c9023d0)
    • script: add spellSchool and hpCost to upgradecards (e757973a)
    Bug Fixes
    • prevent fromTags from crashing when using special tags (e96664d1)
    • update cards to use ids (c3e2d0ff)
    • add titan command to help command (b54cb8d3)
    • uc: work better with xo (f38e07dc)
    • ai:
      • use canAttack and canTargetMinion in more places (e59e9535)
      • prevent infinite loop in chooseOne (62f8b704)
    • dc: fix importing not working (e1d157b7)
    • cclib: fix xo issues in import blueprint (9c935812)
    • script: make upgradecards to work with xo (a5ef98e8)
    Other Changes
    • add unordered cards (47db90c3)
    • split hero cards and hero powers (5c7acda3)
    • split stats into attack and health (ad1773e0)
    • add cardCollections to game (41865a13)
    • add brewing storm and dragon claw cards (4b1c2fbf)
    • remove CastSpellOnMinion event (cede02a5)
    • make all constant variables uppercase (d70b52e9)
    Performance Improvements
    • slightly optimize death knight heropwoer test (1bf264c1)
    Refactors
    • add return types to all functions (6503084e)
    • remove displayName and make name non-unique (161d97c2)
    • show history on game end (b2607e0a)
    • remove some ts-expect-errors (9626bfca)
    • make exports.ts exports lowercase (6fbde3d1)
    • make game class use this.functions (84230738)
    • remove useless ? and ! (ceef5288)
    Reverts
    • make all constant variables uppercase (3705412f)

    2.0.0-beta.5 (2023-10-26)

    Chores
    • update @hearthstonejs/vanillatypes dependancy (aa854803)
    • update dependancies (f5b93caf)
    • bump build number to 5 (c27de037)
    Bug Fixes
    • fix bug in card.canAttack (594c5c84)
    • negate check for overrideNoInput (7dbf2920)
    • make config file affect deckcode importing (cf02a072)
    • allow disabling converting tags in fromRarity (4edeeaef)
    • allow tags with colons to work with walls (5b1690b8)
    • tags don't remove partial matches if perfect match exists (cd272552)
    • add spaces when generating card exports (6809bbce)
    • script: manually exit from the generator (c95f760c)
    Other Changes
    • remove player.heroPowerCost (55e810ad)
    • rename color.strip to color.stripColors (bc54af16)
    • improve example cards (9de55adc)
    • remove Card.conditioned (4e235700)
    • update documentation for functions / interact (4e0a3b10)
    • rename printLicense to license (5316a011)
    • rename printName to watermark (0307f014)
    • rename printAll to showGame (563a4fd3)
    • remove capitalizeAll from util functions (f5b8aab8)
    • remove lastChar util function (a2f9eeb3)
    • add date-and-time dependancy (e5878cc7)
    • move vanilla card types to another project (dfc45f4f)
    • fix all xo warnings (8b18426e)
    • force no unused variables in linting (d82b63e4)
    Refactors
    • remove useless code from getReadable (a2661508)
    • add armor and hand size in printPlayerStats (d1f7f7f2)
    • add detail function in printPlayerStats (253b93c2)
    • add card.colorFromRarity (36dd5fc9)
    • make stats gray if cannot attack (a9a9ec50)
    • add hero power to printPlayerStats (e4359817)
    • move canAttack to Card class (606b2033)
    • invert condition to remove a tab (2f1442c2)
    • simplified code in printPlayerStats (673d1636)
    • remove color.preventParsingTags (1fe2ef03)
    • add color.stripAll to remove ansi and tags (bafd2c05)
    • combined blueprint into card types (3afbff23)
    • add option to prevent parsing color tags (bbbeca89)
    • show player weapon in printPlayerStats (79e02ccd)
    • rewrote printPlayerStats (5103abdc)
    • rename some parameters to remove underscores (9a9dc6c5)
    • remove uuid dependancy (c59c3199)
    • remove replay mechanic (b7bbce00)

    2.0.0-beta.4 (2023-10-19)

    Chores
    • cclib: add todos for smarter abilities (e926e820)
    • update types/node dependancy (95239bda)
    • bump build number to 4 (8eb1c580)
    New Features
    • vcc: find hero power text from the vanilla card (cdb219e3)
    • spawn in diy cards mid-game (0afb0d61)
    Bug Fixes
    • make set command work with new config system (6ac7e7d1)
    • fix showing keywords in cards (86a19529)
    • fix looking up cards from their ids (d47f739d)
    • prevent cards from causing xo errors (688b7356)
    • prevent eval commands in replay files (cbbe7fe5)
    • dc:
      • don't convert to vanilla if fatal error (4bc838a0)
      • fix adding / removing cards by ids (f89ada3c)
    • id: remove redundant tab when changing ids (1eaa1546)
    • vcc: add default spell school (ec2c32d7)
    Other Changes
    • update help for the set command (65011a38)
    • rename gainOverload to addOverload (78cc70e6)
    • rename gainMana to addMana (27084fb1)
    • rename gainEmptyMana to addEmptyMana (8783580a)
    • small error message improvements (eb392c5e)
    • remove evaling flag from the game (7c5d1e24)
    • combine all fs files into 1 wrapper (70bb269b)
    • merge helper files into functions (c2dbf84a)
    • rewrote chooseOne (a2671dc9)
    • change how chooseOne shows the options (65084013)
    Refactors
    • dc:
    • make help command use walls (61abdec4)
    • add debugCommandPrefix to config (bd0de770)
    • invert condition in history command (f78e8027)
    • move infuse code from tick to card class (ba640c14)
    • remove some useless checks (17dab137)
    • add useUnknownInCatchVariables (1dfd7b8e)
    • change param in galakrondFormula to number (8ba2c128)
    • use process.exit instead of errors (cb66bdf6)
    • move galakrondBump to the card class (9ba00076)
    • consolidated code from previous commits (b94a6af8)
    • add caching to reading files (823bd62b)
    • combine fs imports into one variable (1315aeba)
    • add vanilla card type file (19e3d9c0)
    • add a commands interact file (8f5188ce)
    • clone cards before adding it to history (8af4e3ca)
    • add newline after error in fromVanilla (d18c6800)
    • show commit hash in name if in debug mode (1f1fd6a9)
    • change all Number.parseInt to lodash.parseInt (345937eb)
    • add short version of italic in fromTags (3e24f3f5)
    • add dark prefix to fromTags (7bbbcc4b)
    • temporarily disable complexity checking (d5907ac5)
    • prevent passives from causing xo errors (5092f063)
    • change placeholders behind-the-scenes (26735d90)
    • use traditional turn counter function (1df672f1)
    • use assert.equal instead of just assert (682c0b31)
    • change back to 4 spaces instead of tabs (a17a68db)
    • began adding compatibility with xo (2e0f1278)
    • remove axios dependancy (a5ec4c80)
    • cclib: only add tests to cards that have an ability (199d7e78)

    2.0.0-beta.3 (2023-10-12)

    Chores
    • add example to show another ability format (f6476427)
    • add issue number to todos (f08e0fe9)
    • update dependancies (75b8f82e)
    • add test todos to more stage 2 cards (cc58d769)
    • update loc count in loc.sh (ae2b8cd1)
    • bump version to 2.0.0-beta.3 (9f30772f)
    New Features
    • make maximum hand length customizable (f941a4d5)
    • add forge keyword (9db981b7)
    • add ability to prevent event suppression (809dc3ce)
    • add ability to replay previous games (abda1963)
    • add stripAnsi to the color functions (44a936f1)
    • dc: add config to show uncollectible cards (5202190c)
    Bug Fixes
    • add forging to history and fixes to trading (16ecf54d)
    • fix game not launching editor on windows (6b86d11c)
    • fix location cards being displayed as minions (51963cbf)
    • game: run killMinions directly in attack (ffcd7cea)
    • cclib: fix finding abilities from text (b4d7401c)
    • dc: parse cmd as card before assuming times (4689a6e9)
    Other Changes
    • make vanilla.getAll return [] | Error (f4272c13)
    • remove player from take damage event (8b2e4935)
    • made a lot of card variables keywords (188ea0dd)
    • move cardupdater to vanilla category (753c0c75)
    • remove keyword and error function files (bd4cbd63)
    • remove activateBattlecry (1475e178)
    • use log files instead of replay files (3bff3262)
    • change game.cards to game.blueprints (9e413084)
    • make handleCmds take in an object for flags (9fbaca3d)
    • split interact into multiple files (8835d6fc)
    • move some card related functions to card class (bbabead4)
    • remove player functions module (3d47f754)
    • refactor functions into multiple files (3e3fe4a6)
    • dc: add comments explaining colored names (8a73a7f6)
    Performance Improvements
    • return early in applyEnchantments if list is empty (f75f6823)
    Refactors
    • allow "./" and fix a bug with restrictPath (eace3d3b)
    • split types into multiple files (455d074c)
    • reformat types file (95e717bc)
    • add game.pause to pause the game (4b898f8d)
    • move input, log from game to gameLoop (e2474fa0)
    • remove replacePlaceholders from tick (357723bf)
    • make replay throw error instead of false (b03a0273)
    • remove historyCardOnlyName from handleCmds (a8e265a0)
    • add getting date into its own function (32ac6374)
    • add history type to the types.ts file (80f2db86)
    • add eventPlayer to passive ability (fa92254d)
    • dc:
      • add less hardcoded defaults (f2502439)
      • reformat warning state logging (9707c4f8)
    • id: warn user about holes / dupes on start (4caf07ac)
    • ai: make _tauntExists always return Card[] (8c42da21)
    • cclib: only add create if text is truthy (b2225f38)
    • ccc: removed exit checks and added defaults (6f5297ee)
    Tests

    v2.0.0-beta.2 (2023-10-03)

    Feat

    • add back galakrond cards
    • cclib: add blueprint validation. try to compile
    • add traditional turn counter function
    • cclib: generate card exports on create
    • add watch in makefile

    Fix

    • uc: actually replace regex. replace all game params
    • ccc: use correct tribe instead of using _card

    Refactor

    • split idscript. use idscript in src index
    • uc: generate exports on completion
    • add common function for fs functions
    • use const instead of let
    • rename galakrond cards to their class
    • rename dry-run short command to '-n'
    • hide player attack stat if no attack
    • move trying to compile to tryCompile
    • remove optional fields from blueprints
    • uc: remove game parameter on upgrade
    • remove all game = globalThis.game
    • remove game parameter from ability
    • put event manager into its own file
    • cclib: make overridePath implicitly use dirname

    v2.0.0-beta.1 (2023-09-26)

    BREAKING CHANGE

    • Removed the triggerDeathrattle parameter from destroyWeapon
    • Renamed addDeathrattle to addAbility
    • Renamed maxMaxMana to maxMana
    • Renamed maxMana to emptyMana.

    Feat

    • find vanilla card types in the propfinder
    • add lodash and remove redundant functions
    • add caching to getLatestCommit
    • add wrapper functions for fs operations
    • add tests to most of the cards. add assert
    • add testcards script to unit test cards
    • game: add test ability to cards
    • game: add flag to temp disable output
    • add support for both spellings of gray tags.
    • add cli to do the runner's job through cmds
    • automatically update .mts extensions to .ts
    • script: add checking latest id in idscript
    • script: check mismatched types in propfinder
    • added a vanilla card property finder
    • added commit hash to version command
    • added function to get the version of the game
    • added function to get latest commit hash
    • added build number to config file
    • added alpha branch option to config file
    • Added commit hash and uname to log file
    • Added runCommand function to run shell commands

    Fix

    • vcc: swap durability and health for wpn / loc
    • update the desc field in upgradecards
    • ignore exports.ts file when reading cards folder
    • fix some todos and move / refactor others
    • game: fix bug with runCommandAsChildProcess
    • game: check if game exists before respecting no_output
    • add player to event value for takedamage
    • fix a cc library bug that always crashes it
    • game: fix openWithArgs to work with runCommand
    • make upgradeCards delete the dist folder
    • updated slice amount for ts files from 4 to 3
    • made some vanilla card properties optional
    • fix type docstring to not give an error
    • script: added placeholders in check warning
    • updated genvanilla scripts to run correct script
    • vcc: removed unused ts-expect-error
    • changed parameter to any type in print_todo
    • More reliable way of getting os name on linux
    • Shortened commit hash in log files
    • Removed more child_process imports
    • Added build info to version in package file
    • Added console.clear to cls function

    Refactor

    • add helper function to upgrade cards
    • remove all deprecated functions
    • sort card exports alphabetically
    • game: rename desc to text in cards
    • rename all snake case variables
    • game: remove functions.validateClass
    • game: make summonMinion not return card
    • dc: use shouldExit instead of only "exit"
    • game: make last return undefined
    • change dirname to not include dist
    • change name in exports to use hash of path
    • replace all </> with proper closing tags
    • use args.shift to get name instead
    • refactor openWithArgs to only 1 arg
    • add common helper function to runner
    • update cc's to take debug and type args
    • remove old code comment
    • make runCommand possibly return error
    • use optional chaining in cards
    • change export to use name instead of hash
    • change card extension from .mts to .ts
    • changed how cards are registered
    • made randList possibly return null
    • move dc and cc to a new tools folder
    • remove all ts-expect-error's
    • change config file to a typescript file
    • move searching cards folder to functions
    • move inline comments above the code
    • make getReadableCard a bit more readable
    • remove useless imports in runner file
    • game: change type-specific code playcard
    • ccc: change running type-specific code
    • changed where vanilla cards are stored
    • remove card creator folders
    • cclib: make getCardAbility more readable
    • cclib: change parameter to use camelcase
    • moved vc generator to scripts folder
    • made getVersion start at 1 instead of 0
    • renamed dev to beta in config file
    • game: removed parameter from destroyWeapon
    • game: renamed addDeathrattle
    • cclib: refactored getCardAbility
    • cclib: renamed function to ability
    • Refactored dormant a bit

    Full Changelog: https://github.com/LunarTides/Hearthstone.js/compare/v1.6.2...v2.0.0

    Downloads