-
v3.0.0 Stable
released this
2025-12-05 12:04:24 +00:00 | 343 commits to main since this releaseWhat's Changed
Like 2.0, this is pretty much a rewrite. The differences are so huge that I don't even know how to begin to describe them. You don't need to start completely from scratch, but you will likely need to consult the example cards and wiki again to figure out how to do things.
Notable Changes
I can't cover all changes. This update took 2 years after all.
- Switched to using Bun exclusively. Bye Node.js!
- Switched to using Biome instead of xo. Bye xo! (#363)
- Added
Player.boardinstead ofGame.board. - Remove
readline-syncdependency. (#365) - Rewrite enchantments to use cards. (#400)
- Add card tags. (#370)
- Use enums instead of union types. (#364)
- Restructured API for the hundredth time.
- Add tests.
Full Changelog: https://github.com/LunarTides/Hearthstone.js/compare/v2.0.0...v3.0.0
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
v2.0.0 Stable
released this
2023-12-31 20:06:07 +00:00 | 613 commits to main since this release2.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
dcShowUncollectibleto false (a4c2a7e0) - move heropower cards from spells folder (3885043d)
- allow giving cards starting with a number (bdc50dbd)
- fix spelldamage where damage > 9 (ff2f7be9)
- card:
- dc: fix error message when exiting using command (841252bd)
Other Changes
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:
Tests
- add more tests to cards (9bc14681)
2.0.0-beta.7 (2023-12-19)
Chores
- add todos to config (cff359c2)
- update vanillatypes dependancy to 3.0.0 (06e5dae0)
- update dependencies (69d2aa4c)
- rename runner to hub for clarity (a5265eaa)
- bump version to 2.0.0-beta.7 (2f2f8fcd)
New Features
- script: add argument to not filter cards in vc generator (5505d7e9)
Bug Fixes
- cclib: escape ' in fields (20b56a66)
- fix location card immortality (ad43b55f)
- fix diy 1 verification (4c98a708)
- fix singular xo issue (35c50bcd)
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:
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:
- 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
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:
- 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
historyCardOnlyNamefrom handleCmds (a8e265a0) - add getting date into its own function (32ac6374)
- add history type to the types.ts file (80f2db86)
- add
eventPlayerto passive ability (fa92254d) - dc:
- 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
- began adding test cards (08c61696)
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
gameparameter 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
triggerDeathrattleparameter fromdestroyWeapon - Renamed
addDeathrattletoaddAbility - Renamed
maxMaxManatomaxMana - Renamed
maxManatoemptyMana.
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
runCommandfunction 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
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
v2.0.0-beta.8 Pre-release
released this
2023-12-30 20:52:39 +00:00 | 629 commits to main since this release2.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
dcShowUncollectibleto false (a4c2a7e0) - move heropower cards from spells folder (3885043d)
- allow giving cards starting with a number (bdc50dbd)
- fix spelldamage where damage > 9 (ff2f7be9)
- card:
- dc: fix error message when exiting using command (841252bd)
Other Changes
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:
Tests
- add more tests to cards (9bc14681)
Full Changelog: https://github.com/LunarTides/Hearthstone.js/compare/v2.0.0-beta.7...v2.0.0-beta.8
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
v2.0.0-beta.7 Pre-release
released this
2023-12-19 12:43:15 +00:00 | 652 commits to main since this release2.0.0-beta.7 (2023-12-19)
Chores
- add todos to config (cff359c2)
- update vanillatypes dependancy to 3.0.0 (06e5dae0)
- update dependencies (69d2aa4c)
- rename runner to hub for clarity (a5265eaa)
- bump version to 2.0.0-beta.7 (2f2f8fcd)
New Features
- script: add argument to not filter cards in vc generator (5505d7e9)
Bug Fixes
- cclib: escape ' in fields (20b56a66)
- fix location card immortality (ad43b55f)
- fix diy 1 verification (4c98a708)
- fix singular xo issue (35c50bcd)
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:
Full Changelog: https://github.com/LunarTides/Hearthstone.js/compare/v2.0.0-beta.6...v2.0.0-beta.7
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
v2.0.0-beta.6 Pre-release
released this
2023-12-01 15:31:29 +00:00 | 689 commits to main since this release2.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:
- 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)
Full Changelog: https://github.com/LunarTides/Hearthstone.js/compare/v2.0.0-beta.5...v2.0.0-beta.6
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
v2.0.0-beta.5 Pre-release
released this
2023-10-26 09:14:07 +00:00 | 730 commits to main since this release2.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)
Full Changelog: https://github.com/LunarTides/Hearthstone.js/compare/v2.0.0-beta.4...v2.0.0-beta.5
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
v2.0.0-beta.4 Pre-release
released this
2023-10-19 07:55:06 +00:00 | 774 commits to main since this release2.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
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:
- 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)
Full Changelog: https://github.com/LunarTides/Hearthstone.js/compare/v2.0.0-beta.3...v2.0.0-beta.4
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
v2.0.0-beta.3 Pre-release
released this
2023-10-12 18:37:26 +00:00 | 831 commits to main since this release2.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
historyCardOnlyNamefrom handleCmds (a8e265a0) - add getting date into its own function (32ac6374)
- add history type to the types.ts file (80f2db86)
- add
eventPlayerto passive ability (fa92254d) - dc:
- 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
- began adding test cards (08c61696)
Full Changelog: https://github.com/LunarTides/Hearthstone.js/compare/v2.0.0-beta.2...v2.0.0-beta.3
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
v2.0.0-beta.2 Pre-release
released this
2023-10-03 12:37:07 +00:00 | 883 commits to main since this releaseFeat
- 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
gameparameter from ability - put event manager into its own file
- cclib: make overridePath implicitly use dirname
Full Changelog: https://github.com/LunarTides/Hearthstone.js/compare/v2.0.0-beta.1...v2.0.0-beta.2
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
v2.0.0-beta.1 Pre-release
released this
2023-09-26 10:02:56 +00:00 | 915 commits to main since this releaseChangelog
BREAKING CHANGE
- Removed the
triggerDeathrattleparameter fromdestroyWeapon - Renamed
addDeathrattletoaddAbility - Renamed
maxMaxManatomaxMana - Renamed
maxManatoemptyMana.
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
runCommandfunction 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/v2.0.0-beta.0...v2.0.0-beta.1
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- Removed the