Skip to content

Releases: wordbots/wordbots-core

v0.14.1-alpha

04 Jan 22:35
17f1fb6
Compare
Choose a tag to compare
v0.14.1-alpha Pre-release
Pre-release

Features

  • Community page just showing top players for now (#1365, #1372)
  • Support for passive win conditions (e.g. "When this object has 20 or more health, you win the game”) (#1376)
  • New vocabulary items:
    • actions['winGame'] (#1376)
    • targets['union'] (e.g. "Deal 3 damage to a robot and all adjacent robots") (#1363)

Improvements

  • Error message is now displayed when card execution fails in-game (#1319)
  • Higher-contrast event card images (part of #1356)

Bug fixes

  • Many bugs related to exiting sandbox mode (#1366, #1367, #1379)
  • Favorite Opponent and Recent Games sections of the profile page were broken (#1373, #1383)
  • Game would crash when an object that was just destroyed was referenced again as part of a single action (#1362)

Stability

  • Drastically reduce slug size, memory footprint, and startup time by switching to a text-only Discord bot and disabling api/card.png endpoint (#1388)
  • Remove unused dependencies and reduce bundle size (#1356, #1357, #1392)

v0.14.0-alpha

05 Dec 05:16
Compare
Choose a tag to compare
v0.14.0-alpha Pre-release
Pre-release

(See also https://github.com/wordbots/wordbots-parser/releases/tag/v0.14.0-alpha).

Features

  • Redesigned storage and metadata system for cards:
    • Cards now track their provenance (creator, creation time, updated time) (#1196, #1197, #1292).
    • Card provenance is displayed in the card creator and recent cards carousel (#1200, #1208, #1295).
    • Cards that aren't yours can be edited only by making a copy of them (#1198).
    • All cards and decks for all users are now stored in a single Firebase collection, greatly simplifying Firebase-adjacent code (#1275, #1279, #1281).
    • Card import from JSON is now handled more robustly, fixing a number of issues (#1287, #1288, #1289, #1290, #1291, #1292).
  • Ability to create private (unlisted) cards (#1268).
  • "New Here?" dialog on the home page that offers advice and tracks achievements (#1271, #1272, #1300, #1302).
  • Card behavior:
    • actions.returnToHand can now take a player as an optional second parameter (e.g. "return X to Y's hand") (#1241).

Improvements

  • Set creation improvements:
    • Group cards by type by default when creating a set (#1181).
    • Display number of cards of each type when creating a deck or set (#1182).
    • Explanation text that sets should have 30+ cards (#1180).
    • Better usability at smaller resolutions (#1193).
  • Wait for Firebase connection before loading the game, for consistency (#1213, #1285, #1298).
  • Forfeit button is now more clear, and exiting the tutorial is easier (#1318, #1337).
  • The game is now playable on a 1024x768 screen (#1238, #1253).
  • Keep left menu collapsed when screen width <1280px (#1217, #1256, #1267).
  • All usernames are now links to profile pages (#1219).
  • Indicator when creating or editing a deck belonging to a set (#1191).
  • Hide cards without text from the Recently Created Cards carousel (#1146).
  • Better profile page rendering (#1222).

Bugs

  • Game-breaking bugs:
    • Sets were not being saved correctly (#1173, #1188, #1283, #1284).
    • Cards were not being saved correctly for older users (#1178) .
    • Websockets didn't work over HTTPS (#1174).
    • Tutorial was broken (#1202, #1203, #1210).
    • Sometimes the wrong deck would be used when starting a game (#1187).
  • Card behavior bugs:
    • Objects that were destroyed by certain triggers and abilities remained alive until end of turn. (#1254, #1315).
    • getAttribute('cost') didn't work for objects on the board (#1175).
    • targets.they didn't work correctly for things like "Activate: Spawn a copy of this structure on each adjacent tile" (#1207).
    • Various card behavior edge-case bugs discovered in unit tests: #1225, #1229, #1232, #1236 .
  • Erroneous cards were displayed while creating/editing a deck in a set format (#1190, #1194).
  • Sandbox and practice-mode URLs didn't load the game correctly (#1239, #1338).
  • “Entering the lobby …” message was displaying more than once on game end (#1344).
  • Card tooltips were cut off in some situations (#1171, #1176).
  • Card Creator didn't remember card metadata correctly (#1206, #1310).
  • Various bugs with card carousel behavior (#1205, #1220, #1255, #1296).
  • Profile pages wouldn’t load for players without any games played (#1301).
  • Logged-out users couldn't view profile pages (#1211).
  • Set-format games weren't tracked correctly on profile pages (#1201).
  • Create Another checkbox in the card creator didn't remember its state (#1177).

Stability

  • Convert all remaining Javascript code (with small exceptions) to TypeScript.
  • Raise max-old-space-size to 4GB to avoid OOMing on Heroku (#1355).
  • Upgrade to Node 12 and TypeScript 4. (#1326, 1353).
  • Migrate linting configuration from eslint+tslint to eslint alone. (#1354).
  • Use a separate Firebase instance on staging and localhost (#1322).
  • Make parser and Firebase endpoints configurable on the command line, display them on the homepage on localhost, and use better defaults (#1346, #1347).
  • Replace callbacks with promises for all Firebase DB lookups (#1297).
  • Integration test to verify that all built-in cards parse correctly (#1244, #1354).
  • New unit tests for:
  • Major dependency upgrades: firebase, repng, tsnode, yarn.
  • Major devDependency upgrades: eslint*, jest, ts-jest.

v0.13.1-alpha

20 Jul 06:06
Compare
Choose a tag to compare
v0.13.1-alpha Pre-release
Pre-release

(See also https://github.com/wordbots/wordbots-parser/releases/tag/v0.13.1-alpha).

Features

  • New vocabulary terms:
    • actions.forEach (#1149)
    • targets.theyP (#1150)
    • triggers.afterCardDraw (#1160)
    • maximumEnergyAmount (#1159)
  • New features for existing vocabulary terms:
    • cardsInHand and cardsInDiscardPile can optionally take a list of conditions (#1158)
  • Cards now track their creator's user ID and username (#1169)

Improvements

  • Card collection view improvements:
    • Show each card's creator and timestamp in card collection view (#1167)
    • Sort by Timestamp in card collection view (#1156, #1172)

Bugs

  • Card Creator button was broken on homepage (#1147)
  • Create Another? checkbox unchecked after clicking Test Card (#1161)

Stability

  • Use HTTPS (#673)
  • Test to ensure that randomly created cards can be executed without crashing (#1155)
  • Better handling of actions.they that is less likely to cause bugs (#1151)

v0.13.0-alpha

02 Jul 05:51
Compare
Choose a tag to compare
v0.13.0-alpha Pre-release
Pre-release

(See also https://github.com/wordbots/wordbots-parser/releases/tag/v0.13.0-alpha).

Features

  • New vocabulary terms:
    • cardsInDiscardPile collection (#1116, #1117)
    • actions.moveCardsToHand (#1112)
    • actions.shuffleCardsIntoDeck (#1113, #1125)
    • globalConditions.collectionCountComparison (#1114)
    • targets.conditionOn (#1129)
    • triggers.afterCardEntersDiscardPile (#1115)
    • triggers.afterDestroysOtherObject (#1118)
    • New effects: cannotmove (#1110) and cannotactivate (#1111)
  • Improvements to existing vocabulary terms:
    • Ability to spawn enemy robots (#1104)
    • setAttribute and multipleAttribute can affect multiple attributes (#1099)
  • Duplicate Set button (#1103)
  • Game statistics by format displayed in profile page (#1018, #1094, #1095)

Improvements

  • Set list page improvements
    • Description of what sets are (#1106)
    • Sort published sets by num decks created (#1140)
    • Sort cards in set by cost (#1105)
    • Auto-expand card list for a set in permalink view (#1108)
  • Robot spawn hexes for each player indicated with a light tint (#1035)
  • "Create Another?" option in card creator (#1134)
  • Card creator URL now shows the ID of the card being edited, if any (#1093)
  • "Normal" game format renamed to "Anything Goes" (#1073)
  • Load card images asynchronously (#1137)
  • "Did You Mean?" messages auto-contract keywords (#1097)
  • Better access to New and Edit buttons on collection page (#1133, #1145)
  • Sandbox card selector now draws cards instead of moving them to the top of a deck (#1122, #1120)
  • More responsive buttons in card creator (#833)
  • Better discard pile button positioning (#1119, #1123)
  • Hide text select cursor in game board (#1134)

Bug fixes

  • Sandbox mode didn't work (#1077, #1082, #1083, #1092)
  • Clicking an empty tile would sometimes crash the game (#1127)
  • Profile page navigation was broken (#1087, #1088)
  • Activated abilities didn't display (#1078)
  • Randomize button was broken in card creator (#1135)
  • spawnObjects would sometimes spawn objects belonging to the wrong player (#1090)
  • Search bar text didn't persist in the Dictionary dialog (#1085)

Stability

  • Converted game/ components to Typescript (#1022, #1076)
  • New TSLint rule: prefer-object-spread (#1101)

v0.12.1-alpha

01 May 07:25
Compare
Choose a tag to compare
v0.12.1-alpha Pre-release
Pre-release

Improvements

  • Singleplayer game modes are now accessed from the Play page rather than a separate page. (#1069)

Bug fixes

  • Starting casual games was broken. (#1067)

Stability

  • Converted /components/hexgrid to Typescript. (#1064)

v0.12.0-alpha

21 Apr 23:51
Compare
Choose a tag to compare
v0.12.0-alpha Pre-release
Pre-release

(See also https://github.com/wordbots/wordbots-parser/releases/tag/v0.12.0-alpha).

Features

  • Sets. (#893, #904, #941)
    • Sets are player-created collections of cards that can be used to set up game formats with only those cards allowed in decks.
    • Sets page that lists published sets and all of your sets. (#908, #943, #937, #994, #1015)
    • Set creation and editing. (#912, #938, #1005)
    • Ability to share, delete, and publish sets. (#939, #969, #970, #940, #967, #984, #1004)
    • Deck creation from sets. (#942, #968)
    • Set game format that only allows decks built out of cards in a given set. (#893, #977, #1020, #1052)
  • The decks page now shows detailed information about what formats each deck is valid in. (#731)
  • Search bar in sandbox sidebar. (#957)
  • Robots' current speed and available movement tiles are now indicated by dots on the bottom of their hexes. (#862, #1054)
    • As a consequence, structures are no longer greyed out in-game, because it's clear from their lack of movement dots that they are structures. (#1051)

Improvements

  • Nav bar now indicates the currently selected page. (#910)
  • Player names in the multiplayer lobby now link to their profile pages. (#884)
  • The in-game timer is now colored with the current player color to indicate whose turn it is. (#925)
  • Sound effect improvements:
  • The deck picker now sorts decks by last-modified date. (#924)
  • Game timestamps are now stored correctly in firebase. (#883)
  • Discard pile was sometimes misaligned. (#885)
  • Game mode buttons scaled badly on small screens. (#832)

Bug fixes

  • The shared-deck format didn't synchronize game actions correctly between players, breaking the game. (#922)
  • Newly created user accounts didn't receive usernames. (#917)
  • Guests were unable to start casual games. (#1039)
  • Delete Deck button was broken. (#916)
  • The "Energy Well" card's triggered ability didn't work. (#923)
  • Sandbox mode was impossible to leave through the nav bar. (#886)
  • Clicking the victory screen would also close it for your opponent. (#1032)
  • Games created from the matchmaking queue were always treated as "normal"-format games, regardless of their actual format. (#1061)

Stability

  • Conversion of JavaScript code to Typescript:
    • common components (#1024)
    • /components/card (#945)
    • /components/cards (#1021)
    • /components/play (#976)
    • /components/users (combined with /components/profile) (#1023)
    • /containers (#1017)
  • tslint
    • Now works on Windows. (#933)
    • Enabled for TSX (as well as TS) files. (#1007)
    • tslint-react rules.
    • tslint-eslint-rules rules. (#1006)
    • tslint-microsoft-contrib rules. (#1013)
  • Shim Object.values().
  • Unit tests for game format validation. (#735)
  • Reorganized test scripts.
  • Faster startup on Heroku.
  • Resolve most peerDependencies issues. (#900)
  • Standardize z-index constants. (#651)
  • Store firebase permissions in git repo.
  • Updated major packages: @babel/core, @material-ui/core, react, ts-node, jest, mocha, typescript.

v0.11.1-alpha

10 Dec 04:19
36b6824
Compare
Choose a tag to compare
v0.11.1-alpha Pre-release
Pre-release

(See also https://github.com/wordbots/wordbots-parsers/releases/tag/v0.11.1-alpha).

Features

  • actions.spawnObject. (#872)

Improvements

  • Sort games on profile page by date. (#874)

Bug fixes

  • Tutorial was broken. (#875)
  • "The Bomb"'s activated ability didn't work. (#863)

Stability

  • Enforce Node v8.
  • Major package updates: react-redux, eslint-plugin-jest, eslint-plugin-lodash.

v0.11.0-alpha

14 Oct 23:39
Compare
Choose a tag to compare
v0.11.0-alpha Pre-release
Pre-release

(See also https://github.com/wordbots/wordbots-parsers/releases/tag/v0.11.0-alpha).

Features

  • Completely new Multiplayer interface. (#741, #604, #825, #855)
    • Separation of the existing Play page into Singleplayer and Multiplayer pages.
    • Unranked matchmaking. (#609, #730, #736)
    • Dialogs for selecting deck and format. (#742, #746)
    • Better queuing interface. (#755, #764, #762)
    • Better handling of "guests" (not-logged-in players). (#784, #783, #809)
  • Profile page with statistics and created cards. (#608, #795, #821, #801)
  • "Built-in cards only" game format. (#702)
  • Ability to create custom games without a turn timer. (#777)
  • Ability to create password-protected custom games. (#778)
  • Almost-working card obfuscation on server. (#807, #838, #837, #836 – but, see #856, #850 for why it's currently disabled).

Improvements

  • Notification when logged in or out. (#681)
  • Confirm password field in Register dialog. (#681)
  • Register button in top bar. (#684)
  • UI improvements to chat controls. (#676, #677)
  • Add " - Wordbots" to all page titles. (#686)
  • Make event images fill up all available space. (#859)

Bug fixes

  • Server request caching sometimes gave the client bad initial redux state. (#834).
  • The Play page crashed the server for non-logged-in players. (#722)
  • Leaving a game wasn't handled correctly on the server. (#806)
  • Test button in card creator was broken. (#759)
  • Chat was broken in the multiplayer lobby. (#785)
  • Deck validation wasn't working correctly on the server. (#738)

Stability

v0.10.0-alpha

21 May 00:44
Compare
Choose a tag to compare
v0.10.0-alpha Pre-release
Pre-release

Features

  • Support for multiple game formats. (#688, #707)
  • Shared-deck game format. (#668)
  • conditions['exactDistanceFrom'] (e.g. "Activate: Destroy all robots 2 spaces away.") (wordbots/wordbots-parser#74)
  • targets['generateCard'] (e.g. "Each object in play becomes a 0/2/1 robot.") (#619)

Improvements

  • Bigger game board display. (#671)
  • Side navigation in sandbox mode. (#599)
  • Display player name in all game modes when possible. (#678)
  • Get rid of time limit for practice games. (#680)
  • Save button text in card creator was sometimes misleading. (#661)
  • Remove unnecessary scrollbar and get rid of custom scrollbar styling. (#679, #685)
  • Recent-cards carousel improvements.

Bug fixes

  • Spectators could forfeit games they were spectating. (#666)
  • "Shutdown: return this object to its owner's hand" crashed the game. (#704)
  • Resizing the game window caused console errors. (#682)

Stability

  • Install material-ui-next as a separate dependency alongside material-ui. (#642)
  • Upgrade to CircleCI 2.0.
  • Receive parser version information for all parsed cards, to allow migrations when necessary in the future. (#697, #698)
  • Multiplayer code reorganization. (#613)
  • Update packages: firebase, react, react-dom, react-sound, style-loader.

v0.9.3-alpha

12 Apr 06:42
Compare
Choose a tag to compare
v0.9.3-alpha Pre-release
Pre-release

Features

  • Objects now deselect automatically after move/attack/activation (#644).
  • "Report" button in card creator to report failed parses to us via firebase (#598).

Improvements

  • Tooltip explaining sandbox mode (#587).
  • Reposition Discard Pile button to fit better on small screens (#649).
  • Hover effect on End Turn button.
  • Flip draw pile for top player in sandbox mode (#648).

Bug fixes

  • Forfeiting tutorial mode resulted in an invalid state (#653).
  • "Until end of turn" effects sometimes lasted into the next turn (#596).
  • Activated abilities sometimes didn't update the game board immediately.
  • Video tutorial covered up help text.
  • Leaving Sandbox mode sometimes redirected away from Wordbots (#652).
  • End Turn button overlapped badly with other elements.

Stability

  • Tests now work correctly on Windows.
  • Updated packages: react-slick.