Skip to content

Instantly share code, notes, and snippets.

@fenhl
Last active June 10, 2020 13:54
Show Gist options
  • Save fenhl/ed2f4ca0f333095cbb6b7ba6dfc7fa46 to your computer and use it in GitHub Desktop.
Save fenhl/ed2f4ca0f333095cbb6b7ba6dfc7fa46 to your computer and use it in GitHub Desktop.
Lore Seeker changelog

This changelog is intended to provide users of Lore Seeker, including the website and the Discord bot (but not the desktop app, which has its own changelog), with a high-level overview of new features over time, as well as fixes of long-standing bugs. For the low-level details, please see the commit logs in the respective repositories. Some notable changes that are not included here are new official sets, updates of custom sets, and new rulings for custom cards.

A new entry will be added to this changelog for each Lore Seeker update, with entries from 2019 and earlier being summaries of all updates made that month.

June 7, 2020

  • Custom set updates, including card name changes, are now automatically applied to custom preconstructed decks.
  • An error in the install instructions for the Big Custom Box (Loose Files, Images on Demand), which could lead to card images not updating properly, has been corrected.
  • The deck: condition now interprets a * in the deck name position as “any deck in that set”.
  • The booster generator now supports Secrets of the River Cities.
  • The banned and restricted lists for Custom Standard, Elder Custom Highlander, and several official formats have been updated.
  • A bug that caused links to custom preconstructed decks to be broken has been fixed.
  • Custom set updates for the Custom Standard season 13 hotfix

May 1, 2020

March 3, 2020

  • Some errata have been applied to fix a few typos and other minor issues. Notably, the collector numbers of TC-7 Titan and TC-14 Behemoth have been fixed.
  • The BCB version number is now 12.3 since the current season is actually season 12, not season 14. Apologies for any confusion.
  • The downloads page now has a section for XMage, and the Big Custom Box section has an improved layout.
  • The pages /exh/news and /exh/todo have been moved to /xmage/news and /xmage/todo, respectively. Both now include cards that are banned in Elder Custom Highlander.
  • New conditions game:xmage (for printings which are available on XMage) and in:xmage (for cards which have printings available on XMage). Both support time travel, unlike the other game: conditions. f:exh is now equivalent to f:ech in:xmage.
  • The deck visualizer now has a “game” field, which can be used to check if the deck is available in paper, on MTGO, on Arena, or on XMage. As such, building decks for XMage is no longer limited to ECH.

February 9, 2020

January 24, 2020

January 14, 2020

  • New conditions: format:*, legal:*, restricted:*, and banned:*, for cards with that legality in any supported format.
  • New condition: is:ante.
  • Fixed Heroes of the Realm 2018 not being considered is:funny.
  • Custom Brawl and Elder Cockatrice Highlander preconstructed decks have been updated.
  • For Custom Brawl and ECH preconstructed decks, the decks page now shows the color identity and commander.
  • The deck view now uses an ECH precon's commander as the default card image to show, instead of an arbitrary card in the sideboard.
  • The power, toughness, color identity, and is:custom status of custom cards that reuse names of uncards have been fixed.
  • The MTGO Commander banlist has been fixed, and the Modern banlist has been updated for yesterday's announcement.
  • The Discord bot no longer errors when a card that can't be previewed (e.g. an uncard) is queried. Instead it just replies with the link to the card on the website.

December 2019

Includes changes made during the month of December, as well as the January 1, 2020 update.

  • New Discord bot command alias %commands (for %help).
  • The Discord bot's “unknown command” reply now includes a link to the bot documentation.
  • The Discord bot now recognizes the mana symbol emoji from the Custom Magic and Custom Standard servers as mana symbols.
  • The rulings condition now supports searching the card's rulings for text or regular expressions.
    • Known issue: rulings=n (where n is a number) no longer works as expected. Other comparison operators like >= and < still work and can be used as a workaround, e.g. rulings<1 for cards with no rulings.
  • New custom set: Secrets of the River Cities.
  • A new downloads page now hosts the official “Big Custom Box” Cockatrice downloads that includes all custom sets on Lore Seeker, as well as the preconstructed decks for Custom Standard, Custom Brawl, and Elder Cockatrice Highlander.
  • New format: Historic.

November 2019

  • Once per hour, cards newly legal in Elder XMage Highlander are posted to a channel on the ECH and EXH server.
  • When the deck visualizer's format legality check fails, it now shows all errors it could find instead of just the first one. The only exception is that if any card names aren't recognized, only these card name errors will be shown. Additionally, card and format names in the error messages are now links, and “this card isn't implemented on XMage yet” errors in Elder XMage Highlander deck checks now include the upvote button.
  • Fusion Dragon Highlander deck legality checks have been fixed.
  • Most phone keyboards will no longer automatically capitalize text entered into the search field.
  • New condition: frame:extendedart.
  • The EXH todo list now shows notices for cards which will be changed soon, as well as cards whose sets will be updated soon but haven't been reviewed yet.
  • New condition is:mainfront, which is similar to is:primary except that it only matches the left half of a split card. This way, each physical card has exactly one “mainfront” part. (Note that a meld pair consists of two physical cards, so both front faces are considered is:mainfront.)
  • The voting system for the EXH todo list has been fixed so that multiple parts of the same card (e.g. the front and back face of a double-faced card) are considered the same card.
  • New condition rulings which counts the number of rulings and can be used like other number conditions (cmc, loy, year, etc.), e.g. is:custom rulings>0 for custom cards with any rulings.

October 2019

  • For split, flip, double-faced, meld, and adventurer cards, the Discord bot now shows links to the other part(s) of the card in the card embed, above the type line.
  • For cards that are legal in Elder Cockatrice Highlander but not yet implemented for Elder XMage Highlander, the legality section on the card page includes an option to vote for the card to be implemented. The new todo list of unimplemented cards is sorted by number of votes.
  • Users who are signed in with Discord can now set their default sorting and view for search results on the new preferences page.
  • New query option sort:default can be used to use the default sorting even if a different one is set in preferences.
  • view:checklist is now darker in dark mode.
  • The bot now has a %help command which causes it to reply with a link to its wiki, where all of its commands are documented.
  • Card name changes not counting as is:errata has been fixed once again.
  • New format: Pioneer.
  • Cards newly implemented for EXH appear on https://lore-seeker.cards/exh/news. The page is updated hourly.
  • An internal server error when visualizing a Sealed pool as a deck has been fixed.

September 2019

August 2019

  • Last month's compatibility issue has been fixed and new official sets are once again being added as they are released.
  • Color indicator conditions have been renamed from in: to ind:.
  • New in: conditions, which check all printings of the card, similar to alt:, but with the kind of condition determined automatically, like any:.
  • New condition aliases oracle: (for o:), flavor: (for ft:), art:/artist: (for a:), wm:/watermark: (for w:), format: (for f:), color: (for c:), rarity: (for r:), edition: (for e:), type: (for t:), block: (for b:), id:/identity: (for ci:), indicator: (for ind:), display: (for view:), is:transform (for is:dfc), is:karoo (for is:bounceland), is:creatureland (for is:manland), is:tangoland (for is:battleland), has:watermark (for w:*), has:indicator (for ind:*), f:duel (for f:"Duel Commander"), and f:penny (for f:"Penny Dreadful"). All of these also work with other operators like <= if supported by the original condition.
  • New nickname conditions: is:canopyland (or is:canland), is:painland, is:storageland, is:shadowland, and is:triland.
  • Some new cards added to existing nickname conditions.
  • New conditions is:hybrid, is:phyrexian, is:modal, is:fullart, is:textless, and is:spotlight.
  • Color conditions now support nicknames like ci:izzet and c:bant.
  • Color conditions no longer support some of the more unintuitive syntax from magiccards.info. Notably, c:l is removed (t:land may be used instead), c: now means the same as c>=, and c! now means the same as c=. Same for ci and ind.
  • A few new set types have been added to the st: condition and each set is now categorized as all appropriate set types, rather than just one.
  • The st: condition now supports underscores as an alternative to spaces (e.g. st:duel_deck is the same as st:"duel deck").
  • All regular expression conditions are now in multiline mode, allowing . to match a line break.
  • New query option view:checklist.
  • New query option sort:artist.
  • New query option sort:set to sort by set code.
  • New query option alias sort:released (for sort:newall).
  • sort:-number has been fixed to sort sets reverse-alphabetically rather than alphabetically.
  • The “printed” (original) values of cards in custom sets are now set properly, so st:custom is:errata now shows cards which are different on Lore Seeker compared to their source.
  • The decklist parser now supports the new XMage deck format.
  • A long-standing bug where the Discord bot would display {G/W} in a card's mana cost (but not in rules text) as {R/W} has been fixed.

July 2019

  • Due to a compatibility issue, new official sets starting with Core Set 2020 are currently missing from Lore Seeker. I will note in the changelog when this has been fixed.
  • New conditions: layout:host and layout:augment (also available as is:host and is:augment).

June 2019

May 2019

  • The website now has a deck visualizer where you can paste/upload a decklist and it will be visualized in the same format as precons. Several formats are supported, including MTGO, Cockatrice clipboard, Cockatrice XML (.cod), and XMage. These decks are not yet saved on the server and cannot be shared via a link.
  • The bot now has a %ping command which simply causes it to reply with “pong”. Can be used to test whether the bot is responding to messages correctly.
  • The %booster command's reply now has links on the card names instead of next to them.
  • The Sealed page now has a button to visualize the Sealed pool as a deck.
  • New condition set: which is the same as e:.
  • If the system preference for reduced motion is enabled, hovering over a split, flip, or double-faced card now immediately shows the alternate image/orientation without an animation.
  • New condition is:oversized which shows planes, schemes, etc. but also oversized commanders.
  • New custom set: Scriptures of Urshad.
  • The website now accepts more characters in the part of the URL after https://lore-seeker.cards. This enables longer search queries.
  • Battlebond has been added to the booster pack generator.

April 2019

  • There is now a link to the Sealed page in the footer.
  • The release date of a deck is now shown on its page if known.
  • The Gefolge #magic channel and the Custom Standard guild are now in “inline mode”, a new feature of the Discord bot where messages can include multiple search queries using [[Card Name]] or [[search query]] syntax, and bot commands can be called without mentioning the bot (but still require the % prefix).
  • New condition is:partner for cards with the partner keyword.
  • New condition has:partner for cards with the “partner with” keyword.
  • The booster pack layouts of custom sets are now documented at https://gist.github.com/fenhl/8d163733ab92ed718d89975127aac152.
  • The booster pack generators for Dreamscape, Tesla, Vastuum, and Rakoa are now more accurate.
  • The booster pack generators for many official sets now do some basic color balancing for the common slots.
  • New bot command for generating one or more boosters from within Discord: %booster (aliases: %boosters, %pack, %packs, %sealed). Takes any number of set codes as arguments, with repeated set codes causing multiple packs from that set to be generated.
  • The rules patch has a more readable intro, as related patches are now grouped together.

March 2019

  • Lore Seeker has moved to https://lore-seeker.cards/. URLs on the old domain name, https://loreseeker.fenhl.net/, now redirect to the corresponding URL on the new domain name.
  • When a single result is found, the Discord bot's reply now links directly to the card page instead of to the search results.
  • The website has a new favicon which is the same as the Discord bot's avatar: a cropped version of the artwork for Lore Seeker, illustrated by Jason Felix.
  • The website has better error pages both when the server is running and when it's not.
  • Links to specific card printings no longer include the card name in the URL to shorten the link and improve performance. Links with card names currently still work but this may change in the future if support for custom set version history is added.

February 2019

January 2019

December 2018

November 2018

October 2018

  • Cards which have been renamed during the Lore Seeker import are now considered is:errata.
  • Official set codes are now used instead of magiccards.info codes in more parts of the website.
  • A new link on the website allows users to log in via Discord. This will be used for upcoming features like the deck editor.
  • The animation that plays when hovering over a double-faced card now has a slight 3D perspective effect.
  • New custom set: Netropolis.

September 2018

  • Ruins of Doharum is now properly marked as a custom set, so that its cards no longer appear as Vintage-legal.
  • Flipped flip cards are now correctly searchable by the unflipped version's mana cost. They have also gained reminder text to explain this.
  • New condition is:keywordsoup for cards which list a bunch of keywords and use a keyword order other than canonical order to do so.
  • New condition is:brawler for cards which can be played as commanders in Brawl-like formats, i.e. legendary creatures and planeswalkers. Does not automatically restrict to Brawl legality, in order to allow exploring hypothetical formats such as Eternal Brawl or Custom Brawl.
  • Front faces of Rakoa double-faced cards are now properly marked as is:primary instead of is:secondary.
  • The order of automatically generated reminder text lines on Dryad Arbor has been fixed.
  • An outdated format primer has been removed from the Custom Standard format page. A replacement is being worked on.
  • New custom format: Custom Modern.
  • The bot commands for Mental Judge Tower (%mjt, %cmjt, and %fmjt) and Momir Basic (%momir, %cmomir, and %fmomir) now accept an optional search query to further restrict the card pool. For example, use %mjt r>=R to play Mental Judge Tower with only rares and mythics, or use %cmomir 5 f:cm to get a random 5-drop creature from Custom Modern.
  • Conversely, the %rand command no longer requires a search query. A plain %rand command without any arguments will now return a random card from the entire Lore Seeker card database.
  • Color indicator conditions now support 3 new forms. Wildcards: in:* finds all cards with color indicators; the comparison operators <, <=, =, >=, and >: for example, in>R finds cards with a color indicator that is red and at least one other color; and numbers, e.g.: in>=3 for cards with color indicators of 3 or more colors.
  • The Discord bot now displays the card's color indicator, if any, in the embedded preview.
  • Several bugs that caused preview embeds for some cards, including all Rivals of Ixalan double-faced cards and all Structures, to fail to generate have been fixed. All cards currently in the database other than uncards have been tested and should now generate preview embeds.
  • The Discord bot now displays the starting stability of a Structure in the embedded preview.
  • The booster pack generator now supports Rakoa, Vastuum, and Ruins of Doharum.
  • In preparation for the Guilds of Ravnica release, the condition is:guildgate has been added, which differs from t:Gate in that it finds only the original 10 Gates, but not Gateway Plaza.

August 2018

July 2018

  • The footer of each page now includes a link to a Cockatrice Download of all custom sets on Lore Seeker. This feature is a work in progress and is missing critical features such as tokens and proper support for set updates.
  • Applied errata to Richard Garfield, Ph.D. to make him playable in the Bracket Cube.
  • The seal found on draft-matters cards is now considered a watermark and searchable with w:draft.
  • New condition is:holofoil for cards with holofoil stamps.

June 2018

  • More accurate Sealed pack generator for 9 sets, including Dominaria.
  • Restarting the website is now a lot faster. Expected downtime reduced from 10 minutes to 2 minutes.
  • For early sets with known print sheet rarities like “U3” for “appears three times on the uncommon sheet”, print sheet rarity is now shown on the card page.
  • New bot commands for playing Mental Judge Tower, a format which combines ideas from Judge Tower and Mental Magic into a format which can be played with just a search engine: %mjt (official cards only), %cmjt (cards from custom sets only), and %fmjt (“fusion”, i.e. both official and custom cards). The bot will generate a random seed with the appropriate search query to prepare a shuffled library. You can also include a list of mentions in the command to have the bot randomize turn order.
  • New custom set: Vastuum.
  • Applied errata to Chaos Orb and Falling Star to make them playable in Mental Judge Tower.
  • The top of the rules page now has a short summary of each rules patch.

May 2018

  • Card names with diacritics, such as Dandân, are now displayed properly.
  • New conditions is:secondary (same as not:primary), is:front (all logical cards which are on the front of the physical card, including flipped flip cards and cards with aftermath), and is:back (same as not:front).
  • New condition is:booster for card printings which appear in randomized set boosters.
  • New format: Brawl.
  • New condition is:draft for draft-matters cards including conspiracies.
  • Fixed custom cards being included in Pauper.
  • New condition is:historic which finds artifacts, legendary cards, and Sagas.
  • Magic Villains is now properly categorized as a core set.
  • Discord card preview now shows a list of printings.
  • New Preconstructed Decks page.
  • New deck: condition, which allows searching for cards included in specific preconstructed decks, e.g. deck:"Feline Ferocity" for cards in the Commander 2017 Cats deck, or deck:"Amonkhet / Gideon" for cards in the Gideon Planeswalker Deck in Amonkhet.
  • The card page now lists all preconstructed decks which include the card printing.
  • New Sealed page with booster pack generator feature. Many but not all sets supported.
  • The bot's card database is automatically reloaded when the website restarts. %reload command no longer necessary!
  • The b: condition (block) now supports official set codes, e.g. b:MRD for Mirrodin block.

April 2018

March 2018

  • New number: condition to search for a specific collector number. Also supports regular expressions with number:/re/, and the following operators: <, <=, =, >=, and >.
  • Color conditions now accept numbers, e.g. c>=3 for cards with 3 or more colors.
  • New bot commands for playing Momir Basic via Discord: %momir (official cards only), %cmomir (cards from custom sets only), and %fmomir (“fusion”, i.e. both official and custom cards). Use with the desired converted mana cost to make the bot return a random creature card of that CMC, e.g. %momir 7 to get a official creature card with CMC 7.
  • Most conditions now allow spaces surrounding the operator, e.g. t: Dragon. This should make the search engine more mobile-friendly.

February 2018

  • Color conditions now support full color words such as c=black.
  • The sort: query option now supports multiple sort keys and reverse sorting. For example, sort:-rarity,ci shows most common results first (sort:rarity normally shows least common results first) and within each rarity group sorts results by color identity.
  • The sort:rand query option no longer reshuffles results when the “next page” link is clicked.
  • The bot has a new %rand command, which picks one card at random from the given query.
  • New any: condition, which searches most card parts at the same time, e.g. any:green.
  • New foreign: condition to search for the card name in any language other than English, e.g. foreign:"Abrupter Verfall".
  • Custom ability words such as virtuoso are now displayed in italics.
  • Language conditions now support wildcards (*). For example, kr:* finds any card that has been printed in Korean.
  • New condition is:errata which finds card printings whose Oracle text or type line does not match their printed text or type line.

January 2018

  • Support for Unstable cards with multiple variants added.
  • New condition is:unique for cards which have never been reprinted.
  • Urza, Academy Headmaster's random abilities added as reminder text.
  • New custom set: Hollows of Lordran.
  • The bot now reacts with a ✅ emoji when the %reload command finishes successfully.

December 2017

  • New conditions border:none and is:borderless, both of which show borderless cards.
  • Lore Seeker Discord bot project started. The bot responds to any message that starts with a mention, reads the rest of the message as a search query, and replies with a link to the results. If there is exactly one result, it also embeds card details.
  • Custom Commander definition updated: A deck no longer has to be completely custom, only the commander and 15 additional nonland cards need to be custom.
  • New condition is:augment for Unstable augment cards.

November 2017

  • New custom set: Jannada.
  • New custom format: Custom Pauper.
  • Cards that haven't been released yet are no longer shown by default. The time travel feature can be used to circumvent this.
  • The top of the rules page now lists the rules which have been patched.
  • New conditions frame:modern for the card frame used from 8th Edition until Vintage Masters, and frame:m15 for the frame used starting with Magic 2015. frame:new still finds both.
  • Time travel now accepts official set codes, such as time:MRD.
  • Name-related conditions have been unified so name:/re/ is now an alias for n:/re/, and n=word and name:word are now aliases for name=word.

October 2017

  • Ability words such as fateful hour are now displayed in italics. Custom ability words such as virtuoso are not yet supported.

September 2017

  • The format page now shows a history of banlist changes, with links to the original announcements where available.
  • Rarity conditions now support abbreviated rarities: B or L (basic land), C (common), U (uncommon), R (rare), M (mythic rare), and S (special).
  • Loyalty costs are now displayed using the proper symbols.
  • New query options sort:number to sort results by set name, then collector number, sort:color to sort results by color (starting with colorless, then WUBRG, then allied pairs, then enemy pairs, and so on), sort:ci to sort results by color identity, and sort:rarity to show rarest cards first.
  • New query option view:text to display card Oracle text, including name, type line, etc. but without card images.

August 2017

  • The big mana symbols on basic lands are now considered watermarks and can be found with conditions like w:Green.
  • Magic: Villains has been renamed to Magic Villains.
  • Land cards with basic land types now show reminder text for their intrinsic mana abilities.
  • New conditions for rarity comparison such as r>=uncommon for cards which have been printed at uncommon or higher. Full list of supported operators: <, <=, =, >=, and >. The rarities in order are basic, common, uncommon, rare, mythic, and special.
  • Many conditions are no longer case sensitive.
  • New condition st:standard finds both core and expansion sets.
  • New condition * finds all cards, useful e.g. as related:* which finds all cards related to other cards.
  • Regular expression search can now be used for the name and artist credit fields using the n:/re/ and a:/re/ conditions, respectively, where re should be replaced with the regular expression.
  • New conditions for alphabetical name comparison such as name>"Selesnya Guildgate". Full list of supported operators: <, <=, =, >=, and >.
  • The set page now displays the set's release date.

July 2017

  • Card legalities are now color-coded and include links to the format pages.
  • mana={10} no longer shows cards that only cost {1}.
  • New resolution-independent mana symbols based on andrewgioia/Mana.
  • Multiple abilities on a card are now more clearly separated by paragraph breaks instead of line breaks.
  • Starting loyalty on Nissa, Steward of Elements fixed.
  • New custom set: Magic: Villains.

June 2017

May 2017

  • New format: MTGO Commander.
  • New query options view:full to display the full card page for each result, and view:images to display only card images of the results.
  • The Comprehensive Rules page now includes rules patches for the custom sets.
  • The card printing's rarity and collector number is now shown on the card page.
  • Custom set Imago removed since it was removed from Custom Eternal due to various issues.
  • New conditions for color expressions such as c>RG for cards which are red, green, and at least one other color, or ci<=RWB for cards which can be played in a mardu commander deck. Full list of supported operators: <, <=, =, >=, and >.
  • Many conditions are no longer case sensitive.

April 2017

  • New custom set: Tesla.
  • A card's “related” cards (cards which refer to or are referred to by the card by name) are now searchable using the related: condition prefix. For example, related:t:artifact shows all cards “related” to artifacts.

March 2017

  • New condition is:reprint shows only printings which are not the original printing of that card.
  • The card printing's release date is now shown on the card page.

February 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment