System and method for uniquely identifying physical trading cards and incorporating trading card game items in a video game

Information

  • Patent Grant
  • 10668367
  • Patent Number
    10,668,367
  • Date Filed
    Wednesday, October 14, 2015
    9 years ago
  • Date Issued
    Tuesday, June 2, 2020
    4 years ago
Abstract
A system and method for uniquely identifying physical trading cards and/or incorporating trading card game items in a video game is provided. In certain implementations, a unique code that identifies a trading card may be obtained. A graphical representation of the unique code may be generated based on a graphical coding scheme. The graphical representation of the unique code may comprise at least a part of: (1) a depiction of a game item that is usable in the video game; or (2) a border of the trading card. Content associated with the depiction of the game item may be obtained. The trading card may be generated based on the content associated with the depiction of the game item and the graphical representation of the unique code such that the generated trading card depicts the game item and the graphical representation of the unique code.
Description
FIELD OF THE INVENTION

The invention relates generally to video games, and more particularly to a system and method for uniquely identifying physical trading cards, and for incorporating game items from identified trading cards in a video game.


BACKGROUND OF THE INVENTION

Various video games exist wherein game features and functionality are “unlocked” (or otherwise accessed) via visible codes obtained from physical trading cards distributed for use with the video game.


For example, trading cards may depict a game item (e.g., a character, accessory, etc.) along with an access code (e.g., a serial number or other code) that a user must input in order to activate the game item for use and enjoyment during gameplay. In some instances, the access code may comprise a string of numbers and/or letters that have to be manually entered by the user. Other games, by contrast, encode access codes or other identifiers in bar codes (including QR codes, etc.) that must be scanned in order to extract the code and activate the game item. In either instance, the presence of numbers/letters and/or bar codes on the surface of a trading card may diminish the aesthetic appearance of the trading card.


Further, in conventional trading card printing processes, access codes and identifiers are generally imprinted separately from the trading card's art or content, and thus require a multi-stage printing process. These and other drawbacks exist.


SUMMARY OF THE INVENTION

The invention addressing these and other drawbacks relates to a system and method for uniquely identifying physical trading cards, and for incorporating game items from identified trading cards in a video game.


According to an aspect of the invention, one or more physical trading cards may be created for use with any type of video game. Each trading card may depict at least one game item that may be “unlocked,” activated, or otherwise made available for use by a player during gameplay. Non-limiting examples of game items may include, without limitation, virtual trading cards (i.e., virtual representations of a trading card used within a video game), video game characters, in-game accessories for use by a character (e.g., weapons, spells, portions, vehicles, etc.), special powers (e.g., invisibility, a flying ability, characteristic/ability upgrades, etc.) available to a character in the game, or other game items.


In an implementation, graphical representations of unique codes that identify trading cards may be generated, and utilized to generate the trading cards such that the graphical representations of the unique codes are included as aspects of the trading cards.


For example, a graphical representation of a unique code that identifies a trading card may comprise one or more of:


(1) a border of the trading card (or portions thereof) that is to be depicted on the trading card;


(2) background items to be depicted on the trading card (e.g., scenery items or other items depicted in the background of the trading card);


(3) a video game character (or aspects thereof) that is to be depicted on the trading card;


(4) an in-game accessory (or aspects thereof) that is to be depicted on the trading card;


(5) a power (or aspects thereof) that is to be depicted on the trading card;


(6) a watermark embedded into the trading card; or


(7) other aspects of the trading card.


According to an aspect of the invention, a plurality of versions of trading cards may exist. Each trading card version may, for example, correspond to one or more of a different set of unique codes for identifying trading cards, a different graphic coding scheme for generating graphical representations of the unique codes, a different graphic coding scheme for generating graphical representations of error detection codes associated with the unique codes, a different version icon, a different template, etc.


Accordingly, in one implementation, versioning information associated with one or more trading cards may be obtained, and the trading cards may be generated based on the versioning information. The versioning information may indicate a version to which a trading card corresponds. Additionally, or alternatively, the versioning information may indicate one or more of a set of unique codes that are to be used to identify trading cards of a particular version, a graphical coding scheme that is to be used for generating graphical representations of the unique codes, a graphical coding scheme that is to be used for generating graphical representations of error detection codes associated with the unique codes, one or more version icons that are to be depicted on the trading cards, a template for the trading cards (e.g., a template that indicates locations at which to place various items on the trading cards, formatting for the trading cards, etc.), or other information.


As an example, one or more version icons that correspond to a version associated with a trading card may be obtained, and the trading card may be generated such that the trading card comprises the obtained version icons (e.g., by obtaining a template comprising the version icons and generating the trading card using a template).


According to an aspect of the invention, one or more portions of a trading card that is to be printed may be provided to a printing system (e.g., a printing service, a printing server, a printer, etc.). Upon receipt of the trading card portions, the printing system may print the trading card to produce a physical copy of the trading card.


In an implementation, information relating to a first portion of the trading card (that is a portion unique to the trading card with respect to a set of trading cards) may be provided to a printing system at a first time, and information relating to a second portion of the trading card (that is a portion common to the set of trading cards) may be provided to the printing system at a second time. Information relating to one or more other portions of the trading card (e.g., another portion that is unique to the trading card, another portion that is common to the set of trading cards, etc.) may also be provided to the printing system at one or more other times. The printing system may then use the information relating to a particular portion of the trading card to determine the contents of that portion of the trading card.


In another implementation, information relating to one or more portions of one or more other trading cards of the set of trading cards may be provided to the printing system, where each of the portions of the other trading cards are respectively unique to one of the other trading cards. Because information relating to one or more common portions (e.g., that are common to the set of trading cards such as the second portion of the trading card) have already been provided to the printing system, these common portions (or related information thereof) need not necessarily be provided again to the printing system (e.g., if the common portions remain stored at the printing system and can be identified for printing the set of trading cards). In this regard, printing delays associated with sending portions of trading cards (common to all trading cards) to a printing system may be mitigated. Additionally, or alternatively, the bandwidth utilization and memory consumption of a printer or printer server associated with sending portions of trading cards to the printing system may be reduced.


According to an aspect of the invention, one or more input streams (e.g., comprising images, videos, etc.) may be scanned for trading card candidates and/or control item candidates thereof (e.g., version icon candidates or other control items), and, upon detection of a trading card candidate and/or its control item candidates, the trading card candidate and/or its control item candidates may be processed to determine whether the trading card candidate is a valid trading card. Upon identifying a valid trading card, the trading card may be utilized to activate one or more benefits associated with the trading in a game.


In an implementation, one or more input streams may be received from a user device, and processed to detect one or more trading card candidates (e.g., items within the input streams that could potentially be valid trading cards).


In an implementation, upon detecting a trading card candidate, one or more control item candidates on the trading card candidate may be detected. Based on the control item candidates, a determination of whether and/or how further processing of the trading card candidate is to be performed may be effectuated. As an example, the relative location(s) of control items on trading cards may be known. As such, the known relative locations on the trading card candidate may be targeted to detect the control item candidates. The detected control item candidates may be compared against one or more known control items associated with one or more sets of trading cards to determine whether the trading card candidate corresponds to one of the sets of trading cards. If it is determined that the trading card candidates corresponds to a set of trading cards, the trading card candidate may then be further processed to determine whether the trading card candidate is a valid one of the trading cards of the set of trading cards (and, if so, which one of the trading cards) (e.g., by checking to see if the trading card candidate comprises a graphical representation of a valid unique code).


In an implementation, one or more version icons depicted on a trading card may be utilized to validate the trading card. As an example, a version icon may correspond to a version identifier associated with a version of trading cards, where a set of trading cards belonging to the same version is associated with a set of unique codes that are to be used for identifying the trading cards of the set of trading cards. As such, upon detecting the version icon of the trading card, the version icon may be utilized to determine the corresponding version identifier. The version identifier may then be utilized to determine the set of unique codes against which a unique code of the trading card (e.g., that is graphically represented on the trading card) may be queried or compared. Upon detecting the graphical representation of the unique code of the trading card, the graphical representation of the unique code may be processed based on a graphic coding scheme (e.g., a graphic decoding scheme that corresponds to the version of the trading card) to obtain the unique code. Once obtained, a determination of whether the unique code of the trading card is one of the valid unique codes (e.g., one of the unique codes in a set of unique codes that corresponds to the version of the trading card) may be effectuated. If the obtained unique code is one of the valid unique codes, an indication that the trading card is valid may be provided.


Although implementations of the invention are described herein with reference to trading cards, it should be appreciated that other objects may be used in place of trading cards in other implementations. For example, other objects that may be used in place of trading cards may include, without limitation, figurines (e.g., action figures or other figurines), figurine accessories, real-world items that correspond to game items, or other objects. As an example, a graphical representation of a unique code for identifying a figurine or figurine accessory may be generated, and used to print all or a portion of the figurine or figurine accessory (e.g., via a 3D printing system) such that the printed figurine or figurine accessory comprises the graphical representation of the unique code.


As a further example, the figurine or figurine accessory may correspond to a game item (e.g., a corresponding character or character accessory in a game), and a user may “unlock,” activate, or otherwise access the game item so that it is available for use by the user during gameplay in the game. In one use case, for instance, a scanner, or other input device associated with a user device may be used to capture an input scene comprising the figurine or figurine accessory (or other objects).


These and other objects, features, and characteristics of the system and/or method disclosed herein, as well as the methods of operation and functions of the related elements of structure and the combination of parts and economies of manufacture, will become more apparent upon consideration of the following description and the appended claims with reference to the accompanying drawings, all of which form a part of this specification, wherein like reference numerals designate corresponding parts in the various figures. It is to be expressly understood, however, that the drawings are for the purpose of illustration and description only and are not intended as a definition of the limits of the invention. As used in the specification and in the claims, the singular form of “a”, “an”, and “the” include plural referents unless the context clearly dictates otherwise. In addition, as used in the specification and the claims, the term “or” means “and/or” unless the context clearly dictates otherwise.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 illustrates an exemplary system for uniquely identifying physical trading cards, and for incorporating game items from identified trading cards in a video game, according to an implementation of the invention.



FIG. 2 is an exemplary illustration of a trading card, and of regions of the trading card, according to an implementation of the invention.



FIG. 3 is an exemplary illustration of a border that includes graphical representations of a unique code of a trading card, an error detection code associated with the unique code, or other aspects of the trading card, according to an implementation of the invention.



FIG. 4 is an exemplary illustration of a game item (e.g., a character) depicted on a trading card, according to an implementation of the invention.



FIGS. 5A-5B are exemplary illustrations of aspects of a character (depicted on a trading card) that include graphical representations of a unique code of a trading card, an error detection code associated with the unique code, or other aspects of the trading card, according to various implementations of the invention.



FIGS. 6A-6C are exemplary illustrations of different versions of trading cards, according to various implementations of the invention.



FIG. 7 is an exemplary illustration of a trading card that depicts a border-based graphical representation of a unique code of the trading card, according to an implementation of the invention.



FIG. 8 is an exemplary illustration of a flowchart of a method of creating and printing physical trading cards, according to an implementation of the invention.



FIG. 9 is an exemplary illustration of a flowchart of a method of identifying and validating trading cards, according to an implementation of the invention.





DETAILED DESCRIPTION OF THE INVENTION

The invention described herein relates to a system and method for uniquely identifying physical trading cards, and for incorporating game items from identified trading cards in a video game.


Exemplary System Architecture



FIG. 1 illustrates an exemplary system 100 for uniquely identifying physical trading cards, and for incorporating game items from identified trading cards in a video game, according to an implementation of the invention.


As shown, system 100 may comprise a card management system 102, a game system 104, one or more user devices 106, one or more trading cards 108, a card management database 110, or other components.


Card Management System 102


Card management system 102 may comprise one or more servers that include one or more of a card code generation subsystem 122, a graphic coding subsystem 124, a card creation subsystem 126, a card validation subsystem 128, a card printing subsystem 130, an image extraction subsystem 132, or other components.


Game System 104


Game system 104 may comprise one or more servers that include one or more of a game space subsystem 142, a virtual card collection subsystem 144, a user management subsystem 146, or other components.


In one implementation, game system 104 may comprise a proprietary gameplay network system, such as, without limitation, Microsoft's Xbox LIVE®, Sony's PlayStation Network®, gameplay networks provided by Apple, Google, and Amazon, and/or another type of gameplay network system. In this implementation, a given game system 104 may be associated with a particular type of gaming console. Other types of game systems 104 using other types of gameplay networks may be used as well.


User Devices 106a-106n


User device 106 may comprise any type of mobile terminal, fixed terminal, or other device. As an example, user device 106 may comprise a gaming console, a handheld gaming device, a personal computer (e.g., a desktop computer, a laptop computer, etc.), a smartphone, a tablet computing device, and/or other device that can be used to interact with an instance of a video game. Users may, for instance, utilize one or more user devices 106 to interact with card management system 102, game system 104, or other components of system 100.


User device 106 may additionally include a camera, a scanner, or other input device that may be used to capture an input scene (e.g., one or more trading cards or other items). User device 106 may further include a virtual reality or augmented reality device that may be used to capture an input scene and further augment the input scene with computer-generator sensory input.


Trading Cards 108a-108n


According to an aspect of the invention, trading card 108 may comprise a physical card (e.g., made out of paperboard, thick paper, plastic, metal, or other materials) that corresponds to one or more game items. Non-limiting examples of game items include, for instance, virtual trading cards (e.g., virtual representations of a trading card used within a video game), video game characters, in-game accessories for use by a character (e.g., weapons, spells, portions, vehicles, etc.), special powers (e.g., invisibility, a flying ability, characteristic/ability upgrades, etc.) available to a character in the game, or other game items. Other types of trading cards may be used as well.


It should be noted that, although implementations described herein are with respect to trading cards, it is understood that (to the extent possible) other objects may be used in place of trading cards in other implementations. Non-limiting examples of other objects that may be used in place of trading cards include, for instance, figurines (e.g., action figures or other figurines), figurine accessories, real-world items that correspond to game items, or other objects.


Card Management Database 110


According to an aspect of the invention, card management database 110 may be, include, or interface to, for example, one or more of an Oracle™ relational database sold commercially by Oracle Corporation. Other databases, such as Informix™, DB2 (Database 2), NoSQL databases including Hadoop™ or Cassandra™, or other data storage, including file-based, or query formats, platforms, or resources such as OLAP (On Line Analytical Processing), SQL (Structured Query Language), a SAN (storage area network), Microsoft Access™, or others may also be used, incorporated, or accessed. Card management database 110 may comprise one or more such databases that reside in one or more physical devices and in one or more physical locations. The database may store a plurality of types of data and/or files and associated data or file descriptions, administrative information, or any other data.


General System Configuration


It should be noted that while one or more operations are described herein as being performed by components of card management system 102 or game system 104, those operations may, in some implementations, be performed by components of user device 106.


In some implementations, the various computers and subsystems illustrated in FIG. 1 may comprise one or more computing devices that are programmed to perform the functions described herein. The computing devices may include one or more electronic storages (e.g., card management database 110 or other electric storages), one or more physical processors programmed with one or more computer program instructions, and/or other components. The computing devices may include communication lines, or ports to enable the exchange of information with a network or other computing platforms. The computing devices may include a plurality of hardware, software, and/or firmware components operating together to provide the functionality attributed herein to the servers. For example, the computing devices may be implemented by a cloud of computing platforms operating together as the computing devices.


The electronic storages may comprise non-transitory storage media that electronically stores information. The electronic storage media of the electronic storages may include one or both of system storage that is provided integrally (e.g., substantially non-removable) with the servers, or removable storage that is removably connectable to the servers via, for example, a port (e.g., a USB port, a firewire port, etc.) or a drive (e.g., a disk drive, etc.). The electronic storages may include one or more of optically readable storage media (e.g., optical disks, etc.), magnetically readable storage media (e.g., magnetic tape, magnetic hard drive, floppy drive, etc.), electrical charge-based storage media (e.g., EEPROM, RAM, etc.), solid-state storage media (e.g., flash drive, etc.), and/or other electronically readable storage media. The electronic storages may include one or more virtual storage resources (e.g., cloud storage, a virtual private network, and/or other virtual storage resources). The electronic storage may store software algorithms, information determined by the processors, information received from the servers, information received from client computing platforms, or other information that enables the servers to function as described herein.


The processors may be programmed to provide information processing capabilities in the servers. As such, the processors may include one or more of a digital processor, an analog processor, a digital circuit designed to process information, an analog circuit designed to process information, a state machine, and/or other mechanisms for electronically processing information. In some implementations, the processors may include a plurality of processing units. These processing units may be physically located within the same device, or the processors may represent processing functionality of a plurality of devices operating in coordination. The processors may be programmed to execute computer program instructions to perform functions described herein of subsystems 122-132, 142-146, or other subsystems. The processors may be programmed to execute computer program instructions by software; hardware; firmware; some combination of software, hardware, or firmware; and/or other mechanisms for configuring processing capabilities on the processors.


It should be appreciated that the description of the functionality provided by the different subsystems 122-132 or 142-146 described herein is for illustrative purposes, and is not intended to be limiting, as any of subsystems 122-132 or 142-146 may provide more or less functionality than is described. For example, one or more of subsystems 122-132 or 142-146 may be eliminated, and some or all of its functionality may be provided by other ones of subsystems 122-132 or 142-146. As another example, additional subsystems may be programmed to perform some or all of the functionality attributed herein to one of subsystems 122-132 or 142-146.


The foregoing system architecture is exemplary only and should not be viewed as limiting. Other system configurations may be used as well, as would be appreciated by those having skill in the art. Attention will now be turned to a more detailed description of various implementations of the invention. It should be noted that features described herein may be implemented separately or in combination with one another.


Card Creation


According to an aspect of the invention, one or more physical trading cards may be created for use with any type of video game (e.g., virtual trading card games, action-adventure games, racing games, first-person-shooter games, and the like). Each trading card may depict at least one game item that may be “unlocked,” activated, or otherwise made available for use by a player during gameplay.


As previously noted, examples of game items may include, without limitation, virtual trading cards (i.e., virtual representations of a trading card used within a video game), video game characters, in-game accessories for use by a character (e.g., weapons, spells, portions, vehicles, etc.), special powers (e.g., invisibility, a flying ability, characteristic/ability upgrades, etc.) available to a character in the game, or other game items.


Card Code Generation Subsystem 122


In an implementation, card code generation subsystem 122 may generate one or more unique codes for identifying one or more trading cards. A unique code may comprise a serial number, an alphanumeric code, a set of characters (e.g., numbers, letters, special characters, etc.), or other code or unique identifier.


In one implementation, each trading card may have its own unique code, even if it depicts the same game item as other trading cards. As an example, for a given fantasy game, even though a predetermined number of physical trading cards may be distributed depicting the same “wizard” character, each trading card will have its own unique code.


According to an aspect of the invention, card code generation subsystem 122 may utilize a random number generator (or other algorithm) to generate unique serial numbers for identifying individual trading cards. Each of the unique serial numbers may be randomly selected by the random number generator from numbers within one or more ranges (e.g., default number ranges, user-defined number ranges, etc.). In one use case, the range(s) of numbers (from which the unique serial numbers are randomly selected) may comprise a number space that is significantly greater than the number of unique serial numbers to be generated for identifying the trading cards (e.g., the number space utilized by the random number generated may be significantly greater than the predefined number of trading cards that are to be printed and/or distributed to consumers). In this regard, users cannot easily guess the unique serial numbers (or other unique codes) associated with the trading cards. While the foregoing example describes the use of a random number generator to generate unique serial numbers, any type of algorithm or numbering system may be used for the generation of unique serial numbers. Other techniques for preventing successful reverse engineering of the unique serial numbers are described elsewhere herein.


Graphic Coding Subsystem 124


Upon generation of one or more unique codes, graphic coding subsystem 124 may generate one or more graphic representations of the unique codes based on a graphic coding scheme (e.g., a graphic encoding scheme).


Card Creation Subsystem 126


Card creation subsystem 126 may utilize the graphical representations of the unique codes to generate the trading cards associated with the unique codes. The trading cards may be generated such that the graphical representations of the unique codes are included as aspects of the trading cards.


For example, a graphical representation of a unique code that identifies a trading card may comprise one or more of:


(1) a border of the trading card (or portions thereof) that is to be depicted on the trading card;


(2) background items to be depicted on the trading card (e.g., scenery items or other items depicted in the background of the trading card);


(3) a video game character (or aspects thereof) that is to be depicted on the trading card;


(4) an in-game accessory (or aspects thereof) that is to be depicted on the trading card;


(5) a power (or aspects thereof) that is to be depicted on the trading card;


(6) a watermark embedded into the trading card; or


(7) other aspects of the trading card.


In an implementation, card creation subsystem 126 may generate an error detection code (e.g., a cyclic redundancy check (CRC) code, a cryptographic hash, etc.) associated with a unique code of a trading card. Card creation subsystem 126 may then generate a graphic representation of the error detection code based on a graphic coding scheme (e.g., a graphical encoding scheme), and utilize the graphical representation of the error detection code to generate the trading card.


The trading card may be generated such that the graphical representation of the error detection code is included as an aspect of the trading card (e.g., along with the unique code of the trading card). A graphical representation of an error detection code associated with a unique code of a trading card may comprise one or more of:


(1) a border of the trading card (or portions thereof) that is to be depicted on the trading card;


(2) background items to be depicted on the trading card (e.g., scenery items or other items depicted in the background of the trading card);


(3) a video game character (or aspects thereof) that is to be depicted on the trading card;


(4) an in-game accessory (or aspects thereof) that is to be depicted on the trading card;


(5) a power (or aspects thereof) that is to be depicted on the trading card;


(6) a watermark embedded into the trading card; or


(7) other aspects of the trading card.


As an example, with respect to FIG. 2, a physical trading card 200 may comprise region 202, and regions 204a-204d. Each of regions 202 and 204a-204d may comprise images, text, tactile imprints (e.g., braille transcription), or other aspects of trading card 200. Although regions 202 and 204a-204d are illustrated herein as separate regions, one of skill in the art will appreciate that the regions (or boundaries thereof) may, in some implementations, not be visually separate or distinct from one another (e.g., content in regions 204a-204d may be fully integrated with content in region 202).


In one use case, region 202 may comprise an image of a character of a video game, an in-game accessory for use by a character in the video game, a power available to a character in the video game, or other game item to which trading card 200 corresponds.


Additionally, or alternatively, region 202 may comprise text or tactile imprints that identify or describe a character of a video game, an in-game accessory for use by a character in the video game, a power available to a character in the video game, or other game item to which trading card 200 corresponds.


One or more of regions 204a-204d may comprise one or more portions of a border that surrounds all (or a portion) of region 202.


With reference to FIG. 3, one or more portions of border 302 depicted within region 204 may comprise a graphical representation of a unique code that identifies trading card 200, as well as a graphical representation of an error detection code generated based on the unique code. The unique code of trading card 200 and/or the error detection code may, for instance, be graphically represented by one or more graphical “on” bits 304 (e.g., a solid block or other graphically-represented bit) and graphical “off” bits 306 (e.g., an empty space, a notch, or other graphically-represented bit).


In one scenario, trading card 200 may comprise two 22-bit arrays of bits 304, 306 positioned vertically (e.g., one on each side of trading card 200), where each 22-bit array represents one half of the unique code of trading card 200. The unique code of trading card 200 may, for example, comprise the 44-bit binary code “10101100111011101101011010010110111011010001,” where the left (or first) vertical side array of bits 304, 306 represents the first 22 bits “1010110011101110110101,” and the right (or second) vertical side array of bits 304, 306 represents the second 22 bits “1010010110111011010001.”


In another scenario, the bits of the unique code of trading card 200 may be randomly distributed along one or more of the top, bottom, or side portions of border 302. The random distribution of the bits may be kept as a “secret” (e.g., stored in card management database 110), and subsequently used to determine the locations of the bits of the unique code to obtain the unique code. Other techniques for representing bits of a unique code on a trading card may of course be utilized.


In yet another scenario, trading card 200 may further comprise two 7-bit arrays of bits 304, 306 positioned horizontally (e.g., from left-to-right along the bottom of trading card 200), where each 7-bit array represents one half of the error detection code associated with the unique code. The error detection code may, for example, comprise the 14-bit binary code “10101011101101,” where the bottom-left (or first) array of bits 304, 306 represents the first 7 bits “1010101,” and the bottom-right (or second) array of bits 304, 306 represents the second 7 bits of “1101101.”


In a further scenario, bits of the error detection code (generated based on the unique code of trading card 200) may be randomly distributed along one or more of the top, bottom, or side portions of border 302. The random distribution of the bits may be kept as a “secret” (e.g., stored in card management database 110), and subsequently used to determine the locations of the bits of the error detection code to obtain the error detection code. Other techniques for representing bits of an error detection code on a trading card may of course be utilized.


The number of bits and bit arrays of both the unique code and the error detection code, along with the placement of each on trading card 200, may differ in various implementations. For example, with reference to FIG. 4, a game item in the form of video game character 404 is shown within region 202 of trading card 200. Character 404 may comprise a head, a body, two arms, two legs, etc. The head of character 404 may comprise two eyes (406a, 406b), and a mouth 408. With reference to FIGS. 5A-5B, the unique code of trading card 200 or the error detection code may be graphically represented by one or more “on” bits 502, 522 (e.g., a solid block or other graphically-represented bit) and “off” bits 504, 524 (e.g., an empty space, a notch, or other graphically-represented bit).


In one use case, eyes 406a and 406b may each comprise a 9-bit matrix of bits 502, 504 (e.g., that represent the pupils of eyes 406a and 406b), where each 9-bit matrix represents one half of the unique code of trading card 200 or the error detection code associated with the unique code.


In another use case, mouth 408 may comprise two 15-bit arrays of bits 522, 524 (e.g., that represent the teeth of mouth 408), where each 15-bit array represents one half of the unique code of trading card 200 or the error detection code associated with the unique code.


In yet another use case, bits of the unique code of trading card 200 or bits of the error detection code (generated based on the unique code of trading card 200) may be randomly distributed within one or more of the 9-bit matrices (e.g., where each 9-bit matrix represents a pupil of one of the eyes 406a or 406b) or the 15-bit arrays (e.g., where each 15-bit array represents a row of teeth of mouth 408). The random distribution of the bits may be kept as a “secret” (e.g., stored in card management database 110), and subsequently used to determine the locations of the bits of the unique code or the bits of the error detection code to obtain the unique code or the error detection code, respectively. Other techniques for representing bits of a unique code or an error detection code on a trading card may of course be utilized.


Versioning Information


According to an aspect of the invention, a plurality of versions of trading cards may exist. Each trading card version may, for example, correspond to one or more of a different set of unique codes for identifying trading cards, a different graphic coding scheme for generating graphical representations of the unique codes, a different graphic coding scheme for generating graphical representations of error detection codes associated with the unique codes, a different version icon, a different template, etc.


Accordingly, in one implementation, card creation subsystem 126 may obtain versioning information associated with one or more trading cards, and generate the trading cards based on the versioning information. The versioning information may indicate a version to which a trading card corresponds. Additionally, or alternatively, the versioning information may indicate one or more of a set of unique codes that are to be used to identify trading cards of a particular version, a graphical coding scheme that is to be used for generating graphical representations of the unique codes, a graphical coding scheme that is to be used for generating graphical representations of error detection codes associated with the unique codes, one or more version icons that are to be depicted on the trading cards, a template for the trading cards (e.g., a template that indicates locations at which to place various items on the trading cards, formatting for the trading cards, etc.), or other information.


Version Icons


As an example, based on an indication of a version of a trading card (e.g., a version identifier), card creation subsystem 126 may obtain one or more version icons that correspond to the indicated version. Card creation subsystem 126 may generate the trading card such that the trading card comprises the obtained version icons (e.g., by obtaining a template comprising the version icons and generating the trading card using a template).


As a further example, based on the indicated version, card creation subsystem 126 may determine one or more locations on the trading card at which to place the obtained version icons, a graphical representation of a unique code of the trading card, a graphical representation of an error detection code associated with the unique code, or other items.


In one scenario, with respect to FIG. 6A, trading card 600 may comprise regions 602, 604a-604d, and 606. Each of regions 602, 604a-604d, and 606 may comprise images, text, tactile imprints, or other aspects of trading card 600. Region 602 may comprise an image of a game item, such as a character of a game, an in-game accessory for use by a character in the game, a power available to a character in the game, or other game item to which trading card 600 corresponds. One or more of regions 604a-604d may comprise one or more portions of a border around all (or a portion of) region 602. Region 606 may comprise a version icon corresponding to a version of trading card 600.


The respective locations at which regions 602, 604a-604d, and 606 are placed on trading card 600 may be based on the version of trading card 600 (e.g., region 606 may be placed at the bottom of region 602 based on the version of trading card 600).


Additionally, or alternatively, the respective locations at which items (e.g., the version icon) are placed within regions 602, 604a-604, and 606 may be based on the version of trading card 600.


In another scenario, trading card 620 (FIG. 6B) may correspond to a different version than the version of trading card 600 (FIG. 6A). For example, each of regions 622, 624a-624d, and 626a-626d may comprise images, text, tactile imprints, or other aspects of trading card 600. Each of regions 626a-626d may comprise a version icon corresponding to the version of trading card 620, and the locations of regions 626a-626d may be based on the version of trading card 620. The number of regions comprising a version icon and the locations of such regions (e.g., regions 606 and 626a-626d) on the respective trading cards 600 and 620 may be different, for example, because trading cards 600 and 620 respectively correspond to different versions. Additionally, or alternatively, the version icon depicted on trading card 600 may be different than the version icons depicted on trading card 620 (e.g., based on the versions of the trading cards 600 and 620 being different).


In yet another scenario, with respect to FIG. 7, trading card 700 may comprise a border 702 having graphical “on” bits 704 (e.g., non-notched border portion), graphical “off” bits 706 (e.g., notched border portion), and a version icon 708. Trading card 700 may, for example, be generated based on a template corresponding to a particular trading card version. The corresponding template may comprise version icon 708 or other aspects corresponding to the trading card version (e.g., the template may place version icon 708 and other aspects at predetermined locations). As described elsewhere herein, the version icon may be utilized for validation of trading cards (e.g., to identify a set of unique codes with which to compare a detected unique code, to identify the orientation of a trading card, etc.) or other purposes.


In one implementation, two or more trading cards (e.g., associated with the same version of trading cards, or otherwise affiliated) may be designed to share a predetermined number of common regions or portions (also referred to as “keypoints”) to facilitate the detection and validation process (described in additional detail below). In one non-limiting example, with reference to FIG. 6C, a first trading card 650 may depict a first character, and a second trading card 660 may depict a second (different) character. Trading card 650 may comprise, for example, seven keypoints (651a, 651b, 651c, 651d, 651e, 651f, and 651g) that correspond identically and respectively, in both position and content, to seven keypoints (661a, 661b, 661c, 661d, 661e, 661f, and 661g) on trading card 660. Additional trading cards (not pictured) may likewise include the same seven keypoints, even though each trading card may depict a different character or other game item. A keypoint may comprise any type of content including, without limitation, a color, border, text, graphic, or any other aspect of a trading card. Further, the number of shared keypoints may vary in different implementations, along with their positions on the trading cards. In other words, the position, content, and number of shared keypoints on trading cards 650 and 660 in FIG. 6C are exemplary only, and should not be viewed as limiting.


Pre-Printing and/or Pre-Distribution Card Validation


According to an aspect of the invention, electronic copies of trading cards may be validated prior to printing and/or distributing the trading cards to mitigate the number of defective printed and/or distributed trading cards.


Card Validation Subsystem 128


In an implementation, upon generation of an electronic copy of a trading card, card validation subsystem 128 may validate the electronic copy of the trading card. During validation of the electronic copy of the trading card (e.g., a generated file comprising an image of the trading card), card validation subsystem 128 may detect one or more of a graphical representation of a unique code of the trading card, a graphical representation of an error detection code associated with the unique code, a version icon of the trading card, or other aspects of the trading card. Card validation subsystem 128 may then process the detected aspects of the trading card to determine whether the trading card is a valid trading card ready for printing and/or distribution.


If a trading card is determined to be invalid, card validation subsystem 128 may provide a notification for presentation to one or more users (e.g., administrators or other users) regarding the defect, store information regarding the defect in a log (e.g., in card management database 110), or perform other reporting or remedial measures.


In one use case, upon detecting the version icon of the trading card, validation subsystem 128 may determine a version identifier that corresponds to the version icon. The version identifier may be utilized to determine a set of unique codes against which a unique code of the trading card (e.g., that is graphically represented on the trading card) may be queried or compared. Additionally, or alternatively, the detected version icon may be utilized to determine an orientation of the trading card. For example, if the location of the version icon on the trading card is known, the detected location of the version icon relative to other aspects of the trading card may be utilized to determine the orientation of the trading card. The shape, color, or other aspect of the version icon may additionally or alternatively be utilized to determine the orientation of the trading card (e.g., triangular version icon 708 in FIG. 7 has a point directed toward the top center of trading card 700 and a single side that faces (and is parallel to) the bottom center of trading card 700). In other implementations, a versioning icon may have a color that matches a known portion of a trading card (e.g., a top edge of the trading card) to assist in determining the orientation of the trading card.


In a further use case, upon detecting the graphical representation of the unique code of the trading card, card validation subsystem 128 may process the graphical representation of the unique code based on a graphic coding scheme (e.g., a graphic decoding scheme that corresponds to the version of the trading card) to obtain the unique code. Once obtained, card validation subsystem 128 may determine whether the unique code of the trading card is one of the valid unique codes (e.g., one of the unique codes in a set of unique codes that corresponds to the version of the trading card). If the obtained unique code is one of the valid unique codes, card validation subsystem 128 may provide an indication that the trading card is valid (e.g., providing a notification to a user indicating that the trading card is valid, marking the trading card as valid and ready for printing and/or distribution, etc.).


Printing of Trading Cards


Card Printing Subsystem 130


According to an aspect of the invention, card printing subsystem 130 may facilitate printing of one or more trading cards. As an example, card printing subsystem 130 may provide one or more portions of a trading card that is to be printed to a printing system (e.g., a printing service, one or more print servers, a printer, etc.) that may be part of system 100 (not illustrated), or external to system 100. Upon receipt of the trading card portions, the printing system may print the trading card to produce a physical copy of the trading card.


In an implementation, card printing subsystem 130 may provide information relating to a first portion of a trading card to a printing system at a first time, where the first portion is unique to the trading card with respect to a set of trading cards. Card printing subsystem 130 may provide information relating to a second portion of the trading card to the printing system at a second time, where the second portion of the trading card is common to the set of trading cards. Information relating to one or more other portions of the trading card (e.g., another portion that is common to the set of trading cards, another portion that is unique to the trading card, etc.) may also be provided to the printing system at one or more other times. The printing system may then use the information relating to a particular portion of the trading card to determine the contents of that portion of the trading card.


In another implementation, card printing subsystem 130 may provide information relating to one or more portions of one or more other trading cards of the set of trading cards to the printing system, where each of the portions of the other trading cards are respectively unique to one of the other trading cards. Because information relating to one or more common portions (e.g., that are common to the set of trading cards such as the second portion of the trading card) have already been provided to the printing system, these common portions (or related information thereof) need not necessarily be provided again to the printing system (e.g., if the common portions remain stored at the printing system and can be identified for printing the set of trading cards). In this regard, printing and print processing delays associated with sending portions of trading cards (common to all trading cards) to a printing system may be mitigated. Additionally, or alternatively, the bandwidth utilization associated with sending portions of trading cards to the printing system may be reduced.


As an example, with respect to FIG. 2, region 202 of trading card 200 (and items depicted within region 202) may be common to a set of trading cards (e.g., all trading cards of the set may correspond to a character in a game that is depicted in region 202). Regions 204a-204d of trading card 200 (and items depicted within region 202) may be unique to trading card 200 such that other corresponding regions of other trading cards in the same set are different than regions 204a-204d of trading card 200.


Card printing subsystem 130 may transmit a first file (e.g., a PDF file, a PNG file, etc.) of an image that includes region 202 (and does not include one or more of regions 204a-204d) to a printing system, and transmit one or more additional files that includes one or more of regions 204a-204d (e.g., and do not include region 202) to the printing system.


Additionally, or alternatively, card printing subsystem 130 may transmit one or more printing instructions to the printing system for combining the transmitted files to generate a file comprising trading card 200 (e.g., a PDF file, a PNG file, or other file that comprises regions 202 and 204a-204d and other aspects of trading card 200). The printing system may print trading card 200 to produce a physical copy of trading card 200 (e.g., using the printing instructions, the file generated from a combination of the transmitted files, etc.).


Additionally, or alternatively, card printing subsystem 130 may transmit one or more layout instructions to the printing system that instruct the printing system to create the contents of a particular region. For example, card printing subsystem 130 may transmit layout instructions that cause the printing system to create a certain border image to be used in one or more of regions 204a-204d. In some embodiments, the card printing subsystem 130 may comprise a plurality of component images that can be pieced together to form the trading card's unique code in one or more regions 204a-204d. For example, component images may correspond to individual bits of the trading card's unique code, either in a disabled or enabled state. The printing system may use the component images to compose the unique code in one or more regions 204a-204d. In some embodiments, the printing system may be pre-programmed to process layout data into content for one or more regions.


As a further example, with respect to FIG. 2, card printing subsystem 130 may transmit one or more additional files that include regions of other trading cards (in the same set as trading card 200) that are unique to their respective trading cards to the printing system. The regions of the other trading cards that are included in the additional files may, for instance, correspond to regions 204a-204d of trading card 200 (e.g., the corresponding regions and regions 204a-204d may comprise respective borders that graphically represent unique codes of the trading cards, error detection codes of the trading cards, etc.). Because the first file of the image (that includes region 202) has already been transmitted to the printing system, and the image including region 202 is common to trading card 200 and the other trading cards in the set, card printing subsystem 130 need not necessarily transmit the regions of the other trading cards that correspond to region 202 to the printing system. In other words, the already-transmitted image that includes region 202 may be utilized to print the regions of the other trading cards that correspond to region 202 of trading card 200.


As another example, with respect to FIG. 7, an electronic copy of trading card 700 may comprise a combination of layers (e.g., background layer, mask layer, etc.), where one or more of those layers comprise aspects that are common to trading cards in the same set of trading cards as trading card 700 (e.g., same image of a character to which all the trading cards in the set correspond), and one or more other ones of the layers comprise aspects that are unique to trading card 700 (e.g., a graphical representation of a unique code of trading card 700, a graphical representation of an error detection code associated with the unique code, etc.).


Electronic copies of other trading cards in the same set of trading cards may comprise a combination of layers, where one or more of those layers comprise aspects that are common to trading card 700 (and one another), and one or more other ones of the layers comprise aspects that are unique to the respective trading cards. Card printing subsystem 130 may transmit one or more first layers comprising the common aspects to a printing system (e.g., for use in printing trading card 700 or other trading cards in the same set). Card printing subsystem 130 may transmit one or more second layers to the printing system, where each of the second layers comprise one or more aspects that are unique to a respective trading card (e.g., unique to trading card 700, unique to another trading card in the same set, etc.). Additionally, or alternatively, card printing subsystem 130 may transmit one or more printing instructions to the printing system for combining the layers (e.g., placing the layers over one another or using other techniques) to generate electronic copies of the trading cards for printing.


As yet another example, with respect to FIG. 7, card printing subsystem 130 may transmit one or more first layers of trading card 700 (that comprise aspects that are common to other trading cards in the same set of trading cards as trading card 700) to a printing system. To have the printing system print the trading cards in the set with graphical representations of unique codes of the trading cards or error detection codes associated with the unique codes, card printing subsystem 130 may transmit information identifying the unique codes or the error detection codes along with one or more printing instructions (for graphically representing the unique codes or the error detection codes on the trading cards) to the printing system. Additionally, or alternatively, the printing system may be pre-programmed with printing instructions for graphically representing the unique codes or the error detection codes on the trading cards. Upon receipt of the common layers, the unique codes, the error detection codes, or other aspects of the trading cards, the printing system may utilize the received items to print and produce physical copies of the trading cards.


Though the foregoing discussion regarding card printing subsystem 130 discusses providing information relating to various portions of one or more trading cards at varying times, one of ordinary skill will recognize that the information relating to the various portions (including, without limitation, information relating to images, instructions, layout, encodings, component images, layers, or any other discussed portions) may be provided in any sequence and arrangement of files, including at once in a single file.


According to an aspect of the invention, the order and/or arrangement in which trading cards are printed may be defined according to certain parameters. For example, trading cards that are intended to be packaged together may be printed consecutively. Similarly, trading cards that are meant to be distributed in a particular batch (e.g., those relating to a particular geography, version, release wave, or the like) can be arranged to be printed consecutively. Digitally arranging and ordering cards to be printed consecutively may, for example, avoid more complex mechanical arranging and ordering. Digitally arranging and ordering cards may also facilitate the tracking and verification of trading cards. Furthermore, digitally arranging and/or ordering trading cards may allow for non-random card groupings, which can be tuned based on customer feedback and player analytics.


Image Extraction


According to an aspect of the invention, a user (e.g., a game player) that has obtained one or more physical trading cards may desire to “unlock,” activate, or otherwise access a game item depicted on a trading card so that it is available for use by the player during gameplay of the video game. Accordingly, a camera, a scanner, or other input device associated with user device 106 may be used to capture an input scene comprising one or more trading cards or other items.


Image Extraction Subsystem 132


In an implementation, image extraction subsystem 132 may receive one or more input streams (e.g., comprising images, videos, etc.) from user device 106. Image extraction subsystem 132 may process the input streams to detect one or more trading card candidates (e.g., items within the input streams that could potentially be valid trading cards).


In one implementation, the one or more input streams may be sampled continuously, at a predetermined interval, or based on changes to a scene (e.g., additional samples may be acquired when the camera focus changes or improves, when a trading card is observed to be oriented at a new angle or otherwise moved, and/or when the camera's zoom levels are changed). The sampling data may then be used to detect one or more trading card candidates and/or unique codes with increased confidence. For example, only data (e.g., bits) present in a predetermined percentage of samples may be deemed as being correctly read (or imaged).


It should be noted that while one or more operations are described herein as being performed by components of card management system 102, those operations may, in some implementations, be performed by components of user device 106. For example, in some implementations, user device 106 may comprise an image extraction subsystem that is similar to, or the same as, image extraction subsystem 132.


According to an aspect of the invention, image extraction subsystem 132 may detect rectangles in the input streams by selecting shapes with appropriate interior angles and height-width ratios, perform perspective correction to obtain “flat” rectangles, or perform other operations to detect the trading card candidates. Additionally, or alternatively, image extraction subsystem 132 may detect predefined reference shapes (e.g., predefined icons, glyphs, symbols, etc.) to detect trading card candidates. For instance, one or more keypoints (such as those described above with reference to FIG. 6C) may be used to detect trading card candidates.


In an implementation, upon detecting a trading card candidate, image extraction subsystem 132 may detect one or more control item candidates on the trading card candidate. Based on the control item candidates, image extraction subsystem 132 may determine whether and/or how further processing of the trading card candidate is to be performed. As an example, the relative location(s) of control items on trading cards may be known (e.g., stored in card management database 110). As such, image extraction subsystem 132 may target the known relative locations on the trading card candidate to detect the control item candidates. The detected control item candidates may be compared against one or more known control items associated with one or more sets of trading cards to determine whether the trading card candidate corresponds to one of the sets of trading cards. If it is determined that the trading card candidates corresponds to a set of trading cards, the trading card candidate may then be further processed (e.g., by card validation subsystem 128) to determine whether the trading card candidate is a valid one of the trading cards of the set of trading cards (and, if so, which one of the trading cards) (e.g., by checking to see if the trading card candidate comprises a graphical representation of a valid unique code).


In one use case, one or more version icons (or other aspects of trading cards) may be used as control items (e.g., if the number of version icons against which version icon candidates are to be compared is “small”). If, for example, the relative location(s) of version icons on trading cards is known, image extraction subsystem 132 may target the known relative locations on a trading card candidate to detect one or more version icon candidates. A detected version icon candidate may be compared against one or more known version icons (that correspond to one or more versions of trading cards) to determine whether the version icon candidate is one of the known version icons. If the version icon candidate is determined to be a particular known version icon that corresponds to a version of trading cards, image extraction subsystem 132 may provide the trading card candidate for further processing to determine whether the trading card candidate is a valid one of the trading cards of the set of trading cards (e.g., by checking to see if the trading card candidate comprises a graphical representation of a valid unique code).


In a further use case, the version icon may be utilized to determine an orientation of the trading card candidate. For example, if the relative location of the version icon on trading cards is known, the detected location of the version icon relative to other aspects of the trading card candidate may be utilized to determine the orientation of the trading card candidate. The shape, color, or other aspect of the version icon may additionally or alternatively be utilized to determine the orientation of the trading card candidate (e.g., triangular version icon 708 has a point directed toward the top center of trading card 700 and a single side that faces the bottom center of trading card 700, a versioning icon may have a color that is closer to a top edge of the trading card and a color that is closer to a bottom edge of the trading card, etc.). The orientation of the trading card candidate may, for example, be utilized to reorient an image of the trading card candidate, and the reoriented image may be provided to card validation subsystem 128 for determining the validity of the trading card candidate.


In one implementation, image extraction subsystem 132 may comprise an troubleshooting mode for providing a user of image extraction subsystem 132 instructions on properly detecting one or more trading cards in a scene. In some embodiments, the troubleshooting mode may provide feedback (e.g., visual, audio, haptic, etc.) when portions of a trading card have been recognized or recognized to within a threshold certainty. In some embodiments, the troubleshooting mode may be presented to the user after a predefined number of failed attempts to recognize a trading card. Additionally or alternatively, the user may manually enable the troubleshooting mode.


Post-Printing and/or Post-Distribution Card Validation


In an implementation, card validation subsystem 128 may receive one or more trading cards (e.g., images of one or more trading card candidates from image extraction subsystem 132), and process the trading cards to determine whether the trading cards are valid and/or to identify the trading cards (e.g., by identifying their respective unique codes). As an example, upon receipt of a trading card, card validation subsystem 128 may detect one or more of a graphical representation of a unique code of the trading card, a graphical representation of an error detection code associated with the unique code, a version icon of the trading card, or other aspects of the trading card. Card validation subsystem 128 may then process the detected aspects of the trading card to determine whether the trading card is a valid trading card, and, if valid, to identify the trading card (e.g., by identifying its unique code).


In an implementation, one or more version icons depicted on a trading card may be utilized to validate the trading card. As an example, a version icon may correspond to a version identifier associated with a version of trading cards, where a set of trading cards belonging to the same version is associated with a set of unique codes that are to be used for identifying the trading cards of the set of trading cards. As such, upon detecting the version icon of the trading card, card validation subsystem 128 may utilize the version icon to determine the corresponding version identifier. Card validation subsystem 128 may then utilize the version identifier to determine the set of unique codes against which a unique code of the trading card (e.g., that is graphically represented on the trading card) may be queried or compared. Upon detecting the graphical representation of the unique code of the trading card, card validation subsystem 128 may process the graphical representation of the unique code based on a graphic coding scheme (e.g., a graphic decoding scheme that corresponds to the version of the trading card) to obtain the unique code. Once obtained, card validation subsystem 128 may determine whether the unique code of the trading card is one of the valid unique codes (e.g., one of the unique codes in a set of unique codes that corresponds to the version of the trading card). If the obtained unique code is one of the valid unique codes, card validation subsystem 128 may provide an indication that the trading card is valid.


As another example, a graphical coding scheme (e.g., a graphic encoding scheme, a graphic decoding scheme, etc.) may be associated with a version of trading cards (or a version identifier thereof). Upon detecting the version icon of the trading card, card validation subsystem 128 may utilize the version icon to determine the corresponding version identifier. Card validation subsystem 128 may then utilize the version identifier to determine the graphic coding scheme for decoding a graphical representation of a unique code of the trading card, and obtain the unique code based on the graphic coding scheme. Once obtained, card validation subsystem 128 may determine whether the unique code of the trading card is one of the valid unique codes (e.g., one of the unique codes in a set of unique codes that corresponds to the version of the trading card). If the obtained unique code is one of the valid unique codes, card validation subsystem 128 may provide an indication that the trading card is valid.


As indicated, in some implementations, multiple versions of trading cards may exist, and individual ones of the multiple versions may each have its own version icon(s) (or other version indicator) that represents the respective version of trading cards. In an implementation, each version of trading cards may be associated with a set of unique codes, where each of the unique codes of the same set is unique with respect to one another, but not necessarily unique with respect to other sets of unique codes. In this way, the use of multiple versions may allow for a large (if not unlimited) unique code space. In another implementation, each version of trading cards may be associated with a graphic coding algorithm (e.g., comprising a graphic coding scheme) for encoding codes (e.g., unique codes, error detection codes, etc.), decoding graphical representations of codes (e.g., unique codes, error detection codes, etc.), etc. As such, for example, the use of the version icon may allow for algorithmic improvements or other modifications to the encoding or decoding processes, backward compatibility for older versions of trading cards, or other benefits.


In an implementation, a unique code of a trading card may comprise one or more control bits (e.g., registration bits or other control bits). As an example, the control bits may be utilized for determining the locations of other bits of the unique code (e.g., the payload) that are represented on the trading card. In one use case, with respect to FIG. 3, trading card 200 may comprise two side 22-bit arrays of bits 304 and 306, where each 22-bit array represents one half of the unique code of trading card 200. The unique code of trading card 200 may, for example, comprise the 44-bit binary code “10101100111011101101011010010110111011010001,” where the left side array of bits 304 and 306 represents the first 22 bits “1010110011101110110101,” and the right side array of bits 304 and 306 represents the second 22 bits “1010010110111011010001.” The control bits may comprise the first and last bit of each 22-bit array (e.g., set as “1”), while the remaining bits constitute the payload. When graphically represented, for example, the predefined control bits may be utilized to form a grid (e.g., the top most and bottom most bits of the unique code represented on the left side array and right side array, respectively, may be utilized as the corner points of the grid). Based on the grid, card validation subsystem 128 may extract the graphical representation of the unique code from the trading card.


Of course, the foregoing arrangement of bits and the number of bits (e.g., that represent a unique code or a portion thereof) are merely exemplary. As an example, the bits of a unique code may be arranged in any fashion on the trading card, including in arrays on any number of sides of the trading card. The number of bits representing a unique code may be modified to accommodate a larger or smaller number space (e.g., on which the unique code may be based). In another embodiment, the unique code may, for example, comprise two 24-bit arrays, each array containing two control bits.


In an implementation, an error detection code represented on a trading card (e.g., a CRC code generated from a unique code of the trading card) may be utilized to detect or correct errors related to incorrect reading of a unique code represented on the trading card. As with the unique code, the size of the error detection code may vary and the bits representing the error detection code may be embedded anywhere in the trading card. For example, in some embodiments, a 10-bit error detection code may be embedded along a particular side of the trading card or be distributed at known locations within the unique code itself.


In-Game Content


In an implementation, once obtained, a unique code of a trading card may be utilized to activate one or more benefits associated with the trading card in a game. As an example, if a unique code of a physical trading card is obtained during a user's game session, virtual card collection subsystem 144 may obtain a virtual trading card corresponding to the physical trading card based on the unique code of the physical trading card, and add the corresponding virtual trading card to the user's virtual card collection in the game (e.g., by associating the corresponding virtual trading card with the user's identifier associated with the user's account). In one use case, after the corresponding virtual trading card is added to the user's virtual card collection, the user may utilize the virtual trading card to battle other users in the game, trade the virtual trading card with other users in the game for other in-game benefits (e.g., other virtual trading cards, virtual currency, or other benefits), etc. Game space subsystem 142 may, for example, provide a battle arena in which users may battle one another with their respective virtual trading cards, an in-game marketplace in which users may trade their respective virtual trading cards, etc.


As another example, a character in a game, an in-game accessory for use by a character in the game, a power available to a character in the game, or other game item may be associated with a physical trading card. When the unique code of the physical trading card is obtained, user management subsystem 146 may provide the associated game item to the user in the game based on the unique code of the trading card. In one scenario, user management subsystem 146 may activate and add the associated game item to the user's account so that the user can access the associated game item when the user is logged into his/her account (e.g., the game item may be associated with the user's identifier that corresponds to his/her account). When logged in, for example, the user may utilize the game item (e.g., a character) to battle other users in the game.


As another example, trading cards featuring characters or in-game items duplicative of characters or in-game items previously added to a user's account may be used to provide additional benefits to the user. For example, if a user had previously added a particular character to his/her account, presenting another trading card featuring the same character—but different unique code—to the system could provide additional benefits to the user such as increasing the level, powers, or items of the character.


In an implementation, a trading card may be utilized to provide one or more augmented reality aspects (e.g., of a game). As an example, upon detecting a character in a game, an in-game accessory for use by a character in the game, a power available to a character in the game, or other game item that is depicted on a physical trading card, game space subsystem 142 may provide a virtual counterpart corresponding to the depicted game item for presentation to a user (e.g., on the user's device). In one use case, the virtual counterpart (and other game-related components such as in-game characters, objects, and user interface components such as energy meters, menus, score displays, etc.) may be overlaid over an input scene (e.g., a real-world image stream being captured by a user device). The user may also be enabled to interact with the virtual counterpart. For example, game space subsystem 142 may detect the user's actions in the image stream (e.g., a user may swipe at the virtual counterpart, “touch” the virtual counterpart, etc., within the viewpoint of a user device), and cause the virtual counterpart to “react” to the detected user action.


As previously noted, although implementations described herein are with respect to trading cards, it is understood that (to the extent possible) other objects may be used in place of trading cards in other implementations. Non-limiting examples of other objects that may be used in place of trading cards include, for instance, figurines (e.g., action figures or other figurines), figurine accessories, real-world items that correspond to game items, or other objects. As an example, a graphical representation of a unique code for identifying a figurine or figurine accessory may be generated, and used to print the figurine or figurine accessory (e.g., via a 3D printing system) such that the printed figurine or figurine accessory comprises the graphical representation of the unique code.


As a further example, the figurine or figurine accessory may correspond to a game item (e.g., a corresponding character or character accessory in a game), and a user may “unlock,” activate, or otherwise access the game item so that it is available for use by the user during gameplay in the game. In one use case, for instance, a scanner, or other input device associated with user device 106 may be used to capture an input scene comprising the figurine or figurine accessory (or other objects).


Exemplary Flowcharts



FIGS. 8 and 9 comprise exemplary illustrations of flowcharts of processing operations of methods that enable the various features and functionality of the system as described in detail above. The processing operations of each method presented below are intended to be illustrative and non-limiting. In some implementations, for example, the methods may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. Additionally, the order in which the processing operations of the methods are illustrated (and described below) is not intended to be limiting.


In some implementations, the methods may be implemented in one or more processing devices (e.g., a digital processor, an analog processor, a digital circuit designed to process information, an analog circuit designed to process information, a state machine, and/or other mechanisms for electronically processing information). The one or more processing devices may include one or more devices executing some or all of the operations of the methods in response to instructions stored electronically on an electronic storage medium. The one or more processing devices may include one or more devices configured through hardware, firmware, and/or software to be specifically designed for execution of one or more of the operations of the methods.



FIG. 8 is an exemplary illustration of a flowchart of a method of creating and printing physical trading cards, according to an implementation of the invention.


In an operation 802, one or more unique codes that identify one or more trading cards may be generated. Operation 802 may be performed by a card code generation subsystem that is the same as or similar to card code generation subsystem 122, in accordance with one or more implementations.


In an operation 804, one or more graphical representations of the unique codes may be generated. As an example, a graphic coding scheme (e.g., a graphic encoding scheme) may be selected based on a trading card version to which the trading cards correspond. The graphical representations of the unique codes may be generated based on the selected graphic coding scheme. Operation 804 may be performed by a graphic coding subsystem that is the same as or similar to graphic coding subsystem 124, in accordance with one or more implementations.


In an operation 806, one or more graphical representations of one or more error detection codes associated with the unique codes may be generated. As an example, a graphic coding scheme (e.g., a graphic encoding scheme) may be selected based on a trading card version to which the trading cards correspond. The graphical representations of the error detection codes may be generated based on the selected graphic coding scheme. Operation 806 may be performed by a graphic coding subsystem that is the same as or similar to graphic coding subsystem 124, in accordance with one or more implementations.


In an operation 808, the trading cards may be generated based on the graphical representations of the unique codes and the graphical representations of the error detection codes. Operation 808 may be performed by a card creation subsystem that is the same as or similar to card creation subsystem 126, in accordance with one or more implementations.


In an operation 810, a determination of whether one or more of the generated trading cards are valid trading cards may be effectuated. As an example, an electronic copy of a given trading card may be processed to obtain a graphical representation of a unique code of the trading card, and the graphical representation of the unique code may be processed to obtain the unique code. The obtained unique copy may be compared against a set of valid unique codes. If the obtained unique code matches one of the valid unique codes of the set, it may be determined that the trading card is a valid trading card. On the other hand, if the obtained unique code does not match any of the valid unique codes of the set, it may be determined that the trading card is not valid (e.g., and, thus, a defectively generated trading card). Operation 810 may be performed by a card validation subsystem that is the same as or similar to card validation subsystem 128, in accordance with one or more implementations. As an example, with respect to a given trading card, method 800 may proceed to an operation 812 responsive to a determination that the trading card is not valid. With respect to the trading card, method 800 may proceed to an operation 814 responsive to a determination that the trading card is valid.


In operation 812, a notification regarding invalidity determination of one or more trading cards may be provided. As an example, the notification may be provided to alert one or more users (e.g., an administrator or other user) with respect to a defect in generating one or more of the trading cards. Operation 812 may be performed by a card validation subsystem that is the same as or similar to card validation subsystem 128, in accordance with one or more implementations.


In operation 814, a portion of one of the trading cards that is common to the trading cards (e.g., a “common” portion) may be provided to a printing system (e.g., without providing other portions of other ones of the trading cards that corresponds to the “common” portion of the one trading card). As an example, only because the portion is common to all trading cards of the given set of trading cards, other portions of other ones of the trading cards that correspond to the “common” portion (of the one trading card) do not necessarily need to be provided to the printing system. Operation 814 may be performed by a card printing subsystem that is the same as or similar to card printing subsystem 130, in accordance with one or more implementations.


In an operation 816, portions of the trading cards that are respectively unique to individual ones of the trading cards may be provided to the printing system. Operation 816 may be performed by a card printing subsystem that is the same as or similar to card printing subsystem 130, in accordance with one or more implementations.



FIG. 9 is an exemplary illustration of a flowchart of a method of detecting and validating trading cards, according to an implementation of the invention.


In an operation 902, one or more input streams may be received. Operation 902 may be performed by an image extraction subsystem that is the same as or similar to image extraction subsystem 132, in accordance with one or more implementations.


In an operation 904, a trading card candidate may be detected based on the input streams. Operation 904 may be performed by an image extraction subsystem that is the same as or similar to image extraction subsystem 132, in accordance with one or more implementations.


In an operation 906, a version icon candidate on the trading card candidate may be detected. Operation 906 may be performed by an image extraction subsystem that is the same as or similar to image extraction subsystem 132, in accordance with one or more implementations.


In an operation 908, a determination of whether the version icon candidate matches a known version icon may be effectuated. Operation 908 may be performed by a card validation subsystem that is the same as or similar to card validation subsystem 128, in accordance with one or more implementations. As an example, method 900 may proceed to operation 902 responsive to a determination that the version icon candidate does not match a known version icon (e.g., the trading card candidate may not be a known trading card). Method 900 may proceed to an operation 910 responsive to a determination that the version icon candidate matches a known version icon (e.g., the trading card candidate may a known trading card).


In operation 910, a graphic coding scheme (for decoding a graphical representation of a unique code of the trading card (or the trading card candidate) may be obtained based on the matched version icon. Operation 910 may be performed by a card validation subsystem that is the same as or similar to card validation subsystem 128, in accordance with one or more implementations.


In an operation 912, the unique code of the trading may be obtained based on the graphic coding scheme. Operation 912 may be performed by a card validation subsystem that is the same as or similar to card validation subsystem 128, in accordance with one or more implementations.


In an operation 914, a set of unique codes (against which the obtained unique code of the trading card is to be validated) may be determined based on the matched version icon. Operation 914 may be performed by a card validation subsystem that is the same as or similar to card validation subsystem 128, in accordance with one or more implementations.


In an operation 916, a determination of whether the trading card is a valid trading card may be effectuated. As an example, the determination may be based on a comparison of the obtained unique code against the obtained set of unique codes (which are known to be valid unique codes). If the obtained unique code matches one of the known valid unique codes, it may be determined that the trading card is a valid trading card. On the other hand, if the obtained unique code does not match any of the known valid unique codes, it may be determined that the trading card is not a valid trading card. Operation 916 may be performed by a card validation subsystem that is the same as or similar to card validation subsystem 128, in accordance with one or more implementations. As an example, method 900 may proceed to an operation 918 responsive to a determination that the trading card is a valid trading card. Method 900 may proceed to an operation 920 responsive to a determination that the trading card is not a valid trading card.


In operation 918, the trading card may be added to a user's virtual collection of trading cards. As an example, a user may scan a physical copy of the trading card to add the trading card to the user's virtual trading card collection in a game (e.g., so that the virtual copy of the trading card may be utilized by the user in the game to carry out one or more objectives of the game). If the trading card is determined to be valid, the trading card may be added to the user's virtual trading card collection, and the virtual copy of the trading card may be activated for the user to use in the game. Operation 918 may be performed by a virtual card collection subsystem that is the same as or similar to virtual card collection subsystem 144, in accordance with one or more implementations.


In operation 920, error correction may be applied (e.g., to the unique code obtained from decoding a graphical representation thereof) to attempt to obtain a valid unique code. Operation 920 may be performed by a card validation subsystem that is the same as or similar to card validation subsystem 128, in accordance with one or more implementations.


In an operation 922, a determination of whether the trading card is a valid trading card may be effectuated. As an example, after error correction is applied, a unique code obtained from decoding a graphical representation thereof, the error-corrected unique code may be compared against a set of unique codes (which are known to be valid unique codes) to determine whether the error-corrected unique code matches one of the known valid unique codes. Operation 922 may be performed by a card validation subsystem that is the same as or similar to card validation subsystem 128, in accordance with one or more implementations. As an example, method 900 may proceed to an operation 918 responsive to a determination that the trading card is a valid trading card. Method 900 may proceed to an operation 924 responsive to a determination that the trading card is not a valid trading card.


In operation 924, a notification regarding a validation failure may be provided. As an example, when a user scans a physical copy of the trading card, and the processing of the scan results in an invalidity determination, a notification regarding the validation failure may be provided to the user. In some embodiments, a user may be “locked out” of the trading card detection and validation process after a certain number of validation failures within a certain period of time. For example, three validation failures within a ten-minute time period may cause a one-hour lockout. In some embodiments, the lockout period may progressively increase as validation failures accumulate. In some embodiments, repeated validation failures relating to a particular unique code may be handled differently from multiple validation failures relating to different unique codes. In particular, the latter scenario may indicate a brute force attempt at randomly guessing valid codes, while the former may be more indicative of a genuine detection error. Operation 924 may be performed by a card validation subsystem that is the same as or similar to card validation subsystem 128, in accordance with one or more implementations.


Other implementations, uses and advantages of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. For example, though certain embodiments above relate to a system and method for creating uniquely identifiable trading cards, one of skill in the art will appreciate that the disclosed techniques can also be applied to other physical objects. The specification should be considered exemplary only, and the scope of the invention is accordingly intended to be limited only by the following claims.

Claims
  • 1. A method of creating trading cards for use with a video game and integrating associated unique codes as part of the content of the trading cards, the method being implemented in a computer system having one or more physical processors programmed with computer program instructions which, when executed by the one or more physical processors, cause the computer system to perform the method, the method comprising: obtaining, by the computer system, a unique code that identifies a trading card;generating, by the computer system, based on a graphic coding scheme, a graphical representation of the unique code, wherein the graphical representation is a visually perceptible non-alphanumeric representation of the unique code and is part of a non-unique depiction of a game item that is usable in the video game and wherein the graphic coding scheme is configured to transform the unique code into the graphical representation of the unique code;generating, by the computer system and based on the graphic coding scheme, a graphical representation of an error code, wherein the graphic coding scheme is configured to transform the error code into the graphical representation of the error code;obtaining, by the computer system, content associated with the depiction of the game item;generating, by the computer system, the trading card based on the content associated with the depiction of the game item, the graphical representation of the error code, and the graphical representation of the unique code such that the generated trading card depicts the game item, the graphical representation of the error code, and the graphical representation of the unique code;using a card validation system to acquire and determine the unique code from the trading card and to acquire and determine the error code from the trading card; andusing the error code, by the card validation subsystem, to detect and/or correct an error relating to an incorrect determination of the unique code.
  • 2. The method of claim 1, wherein the game item comprises at least one of: (1) a character in the video game that is to be depicted on the trading card; (2) an in-game accessory for use in the video game that is to be depicted on the trading card; or (3) a power for use in the video game that is to be depicted on the trading card.
  • 3. The method of claim 1, wherein the graphical representation of the unique code comprises respective graphical representations of bits corresponding to the unique code.
  • 4. The method of claim 1, wherein the graphical representation of the unique code comprises at least one of: (1) an aspect of a character in the video game that is to be depicted on the trading card; (2) an aspect of an in-game accessory in the video game that is to be depicted on the trading card; or (3) an aspect of a power in the video game that is to be depicted on the trading card.
  • 5. The method of claim 1, further comprising: obtaining, by the computer system, versioning information associated with the trading card, wherein the versioning information identifies a trading card set version; andselecting, by the computer system, the graphic coding scheme based on the trading card set version;wherein the graphic coding scheme is used to generate the graphical representation of the unique code based on the selection of the graphic coding scheme.
  • 6. The method of claim 5, further comprising: obtaining, by the computer system, a version icon based on the trading card set version;wherein the trading card is generated based on the content associated with the depiction of the game item, the graphical representation of the unique code, and the version icon such that the generated trading card depicts the game item, the graphical representation of the unique code, and the version icon.
  • 7. The method of claim 5, further comprising: obtaining, by the computer system, based on the trading card set version, a template for generating the trading card;wherein the trading card is generated based on the content associated with the depiction of the game item, the graphical representation of the unique code, and the template such that the generated trading card depicts the game item and the graphical representation of the unique code in accordance with the template.
  • 8. The method of claim 1, wherein a set of trading cards comprises the trading card and one or more other trading cards, the method further comprising: providing, by the computer system, to a printing system, information related to a first portion of the generated trading card that is unique to the generated trading card with respect to the set of trading cards;providing, by the computer system, to the printing system, information related to a second portion of the generated trading card that is common to the set of trading cards;providing, by the computer system, to the printing system, an indication that the information related to the second portion of the generated trading card is to be used to respectively print a corresponding portion of the one or more other trading cards;providing, by the computer system, to the printing system, information related to one or more portions of the one or more other trading cards that are respectively unique to the one or more other trading cards with respect to the set of trading cards;wherein the generated trading card is printed based on the information related to the first portion of the generated trading card and the information related to the second portion of the generated trading card; andwherein the one or more other trading cards are printed based on the information related to the one or more other portions of the one or more other trading cards, the information related to the second portion of the generated trading card, and the indication that the information related to the second portion of the generated trading card is to be used to respectively print a corresponding portion of the one or more other trading cards.
  • 9. The method of claim 8, further comprising: obtaining, by the computer system, from the printing system, a request for information related to a trading card portion that is common to the set of trading cards;wherein the indication that the information related to the second portion of the generated trading card is to be used to respectively print a corresponding portion of the one or more other trading cards is provided by providing, by the computer system, the information related to the second portion of the generated trading card in response to the request for the information related to the common trading card portion.
  • 10. The method of claim 8, wherein providing the indication comprises providing one or more printing instructions indicating that the information related to the second portion of the generated trading card is to be used to respectively print a corresponding portion of the one or more other trading cards.
  • 11. A system for creating trading cards for use with a video game and integrating associated unique codes as part of the content of the trading cards, the system comprising: a computer system comprising one or more physical processors programmed with computer program instructions which, when executed by the one or more physical processors, causes the computer system to: obtain a unique code that identifies a trading card;generate, based on a graphic coding scheme, a graphical representation of the unique code, wherein the graphical representation is a visually perceptible non-alphanumeric representation of the unique code and is part of a non-unique depiction of a game item that is usable in the video game and wherein the graphic coding scheme is configured to transform the unique code into the graphical representation of the unique code;generate, based on the graphic coding scheme, a graphical representation of an error code, wherein the graphic coding scheme is configured to transform the error code into the graphical representation of the error code;obtain content associated with the depiction of the game item; andgenerate the trading card based on the content associated with the depiction of the game item, the graphical representation of the error code, and the graphical representation of the unique code such that the generated trading card depicts the game item, the graphical representation of the error code, and the graphical representation of the unique code; anda card validation system comprising one or more physical processors programmed with computer program instructions which, when executed by the one or more physical processors, causes the card validation system to: acquire and determine the unique code from the trading card and to acquire and determine the error code from the trading card; anduse the error code to detect and/or correct an error relating to an incorrect determination of the unique code.
  • 12. The system of claim 11, wherein the game item comprises at least one of: (1) a character in the video game that is to be depicted on the trading card; (2) an in-game accessory for use in the video game that is to be depicted on the trading card; or (3) a power for use in the video game that is to be depicted on the trading card.
  • 13. The system of claim 11, wherein the graphical representation of the unique code comprises respective graphical representations of bits corresponding to the unique code.
  • 14. The system of claim 11, wherein the graphical representation of the unique code comprises at least one of: (1) an aspect of a character in the video game that is to be depicted on the trading card; (2) an aspect of an in-game accessory in the video game that is to be depicted on the trading card; or (3) an aspect of a power in the video game that is to be depicted on the trading card.
  • 15. The system of claim 11, wherein the computer system is further caused to: obtain versioning information associated with the trading card, wherein the versioning information identifies a trading card set version; andselect the graphic coding scheme based on the trading card set version;wherein the graphic coding scheme is used to generate the graphical representation of the unique code based on the selection of the graphic coding scheme.
  • 16. The system of claim 15, wherein the computer system is further caused to: obtain a version icon based on the trading card set version;wherein the trading card is generated based on the content associated with the depiction of the game item, the graphical representation of the unique code, and the version icon such that the generated trading card depicts the game item, the graphical representation of the unique code, and the version icon.
  • 17. The system of claim 15, wherein the computer system is further caused to: obtain, based on the trading card set version, a template for generating the trading card;wherein the trading card is generated based on the content associated with the depiction of the game item, the graphical representation of the unique code, and the template such that the generated trading card depicts the game item and the graphical representation of the unique code in accordance with the template.
  • 18. The system of claim 11, wherein a set of trading cards comprises the trading card and one or more other trading cards, and wherein the computer system is further caused to: provide, to a printing system, information related to a first portion of the generated trading card that is unique to the generated trading card with respect to the set of trading cards;provide, to the printing system, information related to a second portion of the generated trading card that is common to the set of trading cards;provide, to the printing system, an indication that the information related to the second portion of the generated trading card is to be used to respectively print a corresponding portion of the one or more other trading cards;provide, to the printing system, information related to one or more portions of the one or more other trading cards that are respectively unique to the one or more other trading cards with respect to the set of trading cards;wherein the generated trading card is printed based on the information related to the first portion of the generated trading card and the information related to the second portion of the generated trading card; andwherein the one or more other trading cards are printed based on the information related to the one or more other portions of the one or more other trading cards, the information related to the second portion of the generated trading card, and the indication that the information related to the second portion of the generated trading card is to be used to respectively print a corresponding portion of the one or more other trading cards.
  • 19. The system of claim 18, wherein the computer system is further caused to: obtain, from the printing system, a request for information related to a trading card portion that is common to the set of trading cards;wherein the indication that the information related to the second portion of the generated trading card is to be used to respectively print a corresponding portion of the one or more other trading cards is provided by providing the information related to the second portion of the generated trading card in response to the request for the information related to the common trading card portion.
  • 20. The system of claim 18, wherein providing the indication comprises providing one or more printing instructions indicating that the information related to the second portion of the generated trading card is to be used to respectively print a corresponding portion of the one or more other trading cards.
  • 21. A computer program product for creating trading cards for use with a video game and integrating associated unique codes as part of the content of the trading cards, the computer program product comprising: one or more tangible, non-transitory computer-readable storage devices;a first plurality of program instructions, stored on at least one of the one or more tangible, non-transitory computer-readable tangible storage devices that, when executed, causes a computer to: generate, based on a graphic coding scheme, a graphical representation of the unique code, wherein the graphical representation is a visually perceptible non-alphanumeric representation of the unique code and is part of a non-unique depiction of a game item that is usable in the video game and wherein the graphic coding scheme is configured to transform the unique code into the graphical representation of the unique code;generate, based on the graphic coding scheme, a graphical representation of an error code, wherein the graphic coding scheme is configured to transform the error code into the graphical representation of the error code;obtain content associated with the depiction of the game item;generate the trading card based on the content associated with the depiction of the game item, the graphical representation of the error code, and the graphical representation of the unique code such that the generated trading card depicts the game item, the graphical representation of the error code, and the graphical representation of the unique code; anda second plurality of program instructions, stored on at least one of the one or more tangible, non-transitory computer-readable tangible storage devices that, when executed, causes a card validation system to: acquire and determine the unique code from the trading card and to acquire and determine the error code from the trading card; anduse the error code to detect and/or correct an error relating to an incorrect determination of the unique code.
CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority to U.S. Provisional Patent Application Ser. No. 62/175,904, filed Jun. 15, 2015, the content of which is hereby incorporated by reference herein in its entirety. This application is additionally related to the following, co-pending U.S. utility patent applications, filed on even date herewith: (1) U.S. patent application Ser. No. 14/883,154, and (2) U.S. patent application Ser. No. 14/883,171, each of which is hereby incorporated by reference herein in its entirety.

US Referenced Citations (329)
Number Name Date Kind
5530796 Wang Jun 1996 A
5561736 Moore Oct 1996 A
5563946 Cooper Oct 1996 A
5685775 Bakoglu Nov 1997 A
5706507 Schloss Jan 1998 A
5708764 Borrel Jan 1998 A
5736985 Lection Apr 1998 A
5737416 Cooper Apr 1998 A
5745678 Herzberg Apr 1998 A
5748731 Shepherd May 1998 A
5762552 Vuong Jun 1998 A
5768511 Galvin Jun 1998 A
5825877 Dan Oct 1998 A
5835692 Cragun Nov 1998 A
5878233 Schloss Mar 1999 A
5883628 Mullaly Mar 1999 A
5900879 Berry May 1999 A
5903266 Berstis May 1999 A
5903271 Bardon May 1999 A
5911045 Leyba Jun 1999 A
5920325 Morgan Jul 1999 A
5923324 Berry Jul 1999 A
5969724 Berry Oct 1999 A
5977979 Clough Nov 1999 A
5990888 Blades Nov 1999 A
6014145 Bardon Jan 2000 A
6025839 Schell Feb 2000 A
6059842 Dumarot May 2000 A
6069632 Mullaly May 2000 A
6081270 Berry Jun 2000 A
6081271 Bardon Jun 2000 A
6091410 Lection Jul 2000 A
6094196 Berry Jul 2000 A
6098056 Rusnak Aug 2000 A
6104406 Berry Aug 2000 A
6111581 Berry Aug 2000 A
6134588 Guenthner Oct 2000 A
6144381 Lection Nov 2000 A
6148328 Cuomo Nov 2000 A
6179713 James Jan 2001 B1
6185614 Cuomo Feb 2001 B1
6200216 Peppel Mar 2001 B1
6201881 Masuda Mar 2001 B1
6222551 Schneider Apr 2001 B1
6271842 Bardon Aug 2001 B1
6271843 Lection Aug 2001 B1
6282547 Hirsch Aug 2001 B1
6311206 Malkin Oct 2001 B1
6334141 Varma Dec 2001 B1
6336134 Varma Jan 2002 B1
6337700 Kinoe Jan 2002 B1
6353449 Gregg Mar 2002 B1
6356297 Cheng Mar 2002 B1
6411312 Sheppard Jun 2002 B1
6426757 Smith Jul 2002 B1
6445389 Bossen Sep 2002 B1
6452593 Challener Sep 2002 B1
6462760 Cox, Jr. Oct 2002 B1
6466550 Foster Oct 2002 B1
6469712 Hilpert, Jr. Oct 2002 B1
6473085 Brock Oct 2002 B1
6499053 Marquette Dec 2002 B1
6505208 Kanevsky Jan 2003 B1
6509925 Dermler Jan 2003 B1
6525731 Suits Feb 2003 B1
6546400 Aberson Apr 2003 B1
6549933 Barrett Apr 2003 B1
6567109 Todd May 2003 B1
6567813 Zhu May 2003 B1
6612501 Woll et al. Sep 2003 B1
6618751 Challenger Sep 2003 B1
RE38375 Herzberg Dec 2003 E
6657617 Paolini Dec 2003 B2
6657642 Bardon Dec 2003 B1
6684255 Martin Jan 2004 B1
6709336 Siegel Mar 2004 B2
6717600 Dutta Apr 2004 B2
6734884 Berry May 2004 B1
6765596 Lection Jul 2004 B2
6781607 Benham Aug 2004 B1
6819669 Rooney Nov 2004 B2
6832239 Kraft Dec 2004 B1
6836480 Basso Dec 2004 B2
6845389 Sen Jan 2005 B1
6886026 Hanson Apr 2005 B1
6948168 Kuprionas Sep 2005 B1
RE38865 Dumarot Nov 2005 E
6993596 Hinton Jan 2006 B2
7006616 Christofferson Feb 2006 B1
7028296 Irfan Apr 2006 B2
7062533 Brown Jun 2006 B2
7143409 Herrero Nov 2006 B2
7209137 Brokenshire Apr 2007 B2
7230616 Taubin Jun 2007 B2
7249123 Elder Jul 2007 B2
7263511 Bodin Aug 2007 B2
7287053 Bodin Oct 2007 B2
7305438 Christensen Dec 2007 B2
7308476 Mannaru Dec 2007 B2
7314407 Pearson Jan 2008 B1
7404149 Fox Jul 2008 B2
7426538 Bodin Sep 2008 B2
7427980 Partridge Sep 2008 B1
7428588 Berstis Sep 2008 B2
7429987 Leah Sep 2008 B2
7436407 Doi Oct 2008 B2
7439975 Hsu Oct 2008 B2
7443393 Shen Oct 2008 B2
7447996 Cox Nov 2008 B1
7467181 McGowan Dec 2008 B2
7475354 Guido Jan 2009 B2
7478127 Creamer Jan 2009 B2
7484012 Hinton Jan 2009 B2
7502759 Hannigan et al. Mar 2009 B2
7503007 Goodman Mar 2009 B2
7506264 Polan Mar 2009 B2
7515136 Kanevsky Apr 2009 B1
7525964 Astley Apr 2009 B2
7552177 Kessen Jun 2009 B2
7565650 Bhogal Jul 2009 B2
7571224 Childress Aug 2009 B2
7571389 Broussard Aug 2009 B2
7580888 Ur Aug 2009 B2
7596596 Chen Sep 2009 B2
7640587 Fox Dec 2009 B2
7667701 Leah Feb 2010 B2
7698656 Srivastava Apr 2010 B2
7702784 Berstis Apr 2010 B2
7714867 Doi May 2010 B2
7719532 Schardt May 2010 B2
7719535 Tadokoro May 2010 B2
7734691 Creamer Jun 2010 B2
7737969 Shen Jun 2010 B2
7743095 Goldberg Jun 2010 B2
7747679 Galvin Jun 2010 B2
7765478 Reed Jul 2010 B2
7768514 Pagan Aug 2010 B2
7773087 Fowler Aug 2010 B2
7774407 Daly Aug 2010 B2
7782318 Shearer Aug 2010 B2
7792263 D Amora Sep 2010 B2
7792801 Hamilton, II Sep 2010 B2
7796128 Radzikowski Sep 2010 B2
7808500 Shearer Oct 2010 B2
7814152 McGowan Oct 2010 B2
7827318 Hinton Nov 2010 B2
7843471 Doan Nov 2010 B2
7844663 Boutboul Nov 2010 B2
7847799 Taubin Dec 2010 B2
7856469 Chen Dec 2010 B2
7873485 Castelli Jan 2011 B2
7882222 Dolbier Feb 2011 B2
7882243 Ivory Feb 2011 B2
7884819 Kuesel Feb 2011 B2
7886045 Bates Feb 2011 B2
7890623 Bates Feb 2011 B2
7893936 Shearer Feb 2011 B2
7904829 Fox Mar 2011 B2
7921128 Hamilton, II Apr 2011 B2
7940265 Brown May 2011 B2
7945620 Bou-Ghannam May 2011 B2
7945802 Hamilton, II May 2011 B2
7970837 Lyle Jun 2011 B2
7970840 Cannon Jun 2011 B2
7985138 Acharya Jul 2011 B2
7990387 Hamilton, II Aug 2011 B2
7996164 Hamilton, II Aug 2011 B2
8001161 Finn Aug 2011 B2
8004518 Fowler Aug 2011 B2
8005025 Bodin Aug 2011 B2
8006182 Bates Aug 2011 B2
8013861 Hamilton, II Sep 2011 B2
8018453 Fowler Sep 2011 B2
8018462 Bhogal Sep 2011 B2
8019797 Hamilton, II Sep 2011 B2
8019858 Bauchot Sep 2011 B2
8022948 Garbow Sep 2011 B2
8022950 Brown Sep 2011 B2
8026913 Garbow Sep 2011 B2
8028021 Reisinger Sep 2011 B2
8028022 Brownholtz Sep 2011 B2
8037416 Bates Oct 2011 B2
8041614 Bhogal Oct 2011 B2
8046700 Bates Oct 2011 B2
8051462 Hamilton, II Nov 2011 B2
8055656 Cradick Nov 2011 B2
8056121 Hamilton, II Nov 2011 B2
8057307 Berstis Nov 2011 B2
8062130 Smith Nov 2011 B2
8063905 Brown Nov 2011 B2
8070601 Acharya Dec 2011 B2
8082245 Bates Dec 2011 B2
8085267 Brown Dec 2011 B2
8089481 Shearer Jan 2012 B2
8092288 Theis Jan 2012 B2
8095881 Reisinger Jan 2012 B2
8099338 Betzler Jan 2012 B2
8099668 Garbow Jan 2012 B2
8102334 Brown Jan 2012 B2
8103640 Lo Jan 2012 B2
8103959 Cannon Jan 2012 B2
8105165 Karstens Jan 2012 B2
8108774 Finn Jan 2012 B2
8113959 De Judicibus Feb 2012 B2
8117551 Cheng Feb 2012 B2
8125485 Brown Feb 2012 B2
8127235 Haggar Feb 2012 B2
8127236 Hamilton, II Feb 2012 B2
8128487 Hamilton, II Mar 2012 B2
8131740 Cradick Mar 2012 B2
8132235 Bussani Mar 2012 B2
8134560 Bates Mar 2012 B2
8139060 Brown Mar 2012 B2
8139780 Shearer Mar 2012 B2
8140340 Bhogal Mar 2012 B2
8140620 Creamer Mar 2012 B2
8140978 Betzler Mar 2012 B2
8140982 Hamilton, II Mar 2012 B2
8145676 Bhogal Mar 2012 B2
8145725 Dawson Mar 2012 B2
8149241 Do Apr 2012 B2
8151191 Nicol, II Apr 2012 B2
8156184 Kurata Apr 2012 B2
8165350 Fuhrmann Apr 2012 B2
8171407 Huang May 2012 B2
8171408 Dawson May 2012 B2
8171559 Hamilton, II May 2012 B2
8174541 Greene May 2012 B2
8176421 Dawson May 2012 B2
8176422 Bergman May 2012 B2
8184092 Cox May 2012 B2
8184116 Finn May 2012 B2
8185450 McVey May 2012 B2
8185829 Cannon May 2012 B2
8187067 Hamilton, II May 2012 B2
8199145 Hamilton, II Jun 2012 B2
8203561 Carter Jun 2012 B2
8214335 Hamilton, II Jul 2012 B2
8214433 Dawson Jul 2012 B2
8214750 Hamilton, II Jul 2012 B2
8214751 Dawson Jul 2012 B2
8217953 Comparan Jul 2012 B2
8219616 Dawson Jul 2012 B2
8230045 Kawachiya Jul 2012 B2
8230338 Dugan Jul 2012 B2
8233005 Finn Jul 2012 B2
8234234 Shearer Jul 2012 B2
8234579 Do Jul 2012 B2
8239775 Beverland Aug 2012 B2
8241131 Bhogal Aug 2012 B2
8245241 Hamilton, II Aug 2012 B2
8245283 Dawson Aug 2012 B2
8265253 D Amora Sep 2012 B2
8310497 Comparan Nov 2012 B2
8334871 Hamilton, II Dec 2012 B2
8360886 Karstens Jan 2013 B2
8364804 Childress Jan 2013 B2
8425326 Chudley Apr 2013 B2
8442946 Hamilton, II May 2013 B2
8506372 Chudley Aug 2013 B2
8509680 Atsmon Aug 2013 B2
8514249 Hamilton, II Aug 2013 B2
8554841 Kurata Oct 2013 B2
8607142 Bergman Dec 2013 B2
8607356 Hamilton, II Dec 2013 B2
8615471 Hannigan Dec 2013 B2
8624903 Hamilton, II Jan 2014 B2
8626836 Dawson Jan 2014 B2
8692835 Hamilton, II Apr 2014 B2
8721412 Chudley May 2014 B2
8827816 Bhogal Sep 2014 B2
8838640 Bates Sep 2014 B2
8849917 Dawson Sep 2014 B2
8911296 Chudley Dec 2014 B2
8992316 Smith Mar 2015 B2
9083654 Dawson Jul 2015 B2
9152914 Haggar Oct 2015 B2
9205328 Bansi Dec 2015 B2
9286731 Hamilton, II Mar 2016 B2
9299080 Dawson Mar 2016 B2
9364746 Chudley Jun 2016 B2
9525746 Bates Dec 2016 B2
9583109 Kurata Feb 2017 B2
9682324 Bansi Jun 2017 B2
9764244 Bansi Sep 2017 B2
9789406 Marr Oct 2017 B2
9808722 Kawachiya Nov 2017 B2
20020028710 Ishihara Mar 2002 A1
20040014514 Yacenda Jan 2004 A1
20040228291 Huslak Nov 2004 A1
20040246529 Pruden Dec 2004 A1
20050182693 Alivandi Aug 2005 A1
20060038833 Mallinson Feb 2006 A1
20060068860 Ueshima Mar 2006 A1
20060246970 Smith Nov 2006 A1
20070232399 Kathman Oct 2007 A1
20070233558 Jones Oct 2007 A1
20080102910 Peppel May 2008 A1
20080200226 Ichimura Aug 2008 A1
20080227512 Lang Sep 2008 A1
20080284101 Marx Nov 2008 A1
20080305874 Wilm Dec 2008 A1
20090011837 Marans Jan 2009 A1
20090051114 Robbers Feb 2009 A1
20090054124 Robbers Feb 2009 A1
20090113448 Smith Apr 2009 A1
20090215512 Gannon Aug 2009 A1
20100017890 Tucker Jan 2010 A1
20100029380 Rhoads Feb 2010 A1
20100062819 Hannigan Mar 2010 A1
20110014982 Hiraishi Jan 2011 A1
20110045893 Hiraro Feb 2011 A1
20110305367 Osako Dec 2011 A1
20120205436 Thomas Aug 2012 A1
20120244939 Braun Sep 2012 A1
20120252577 Webster Oct 2012 A1
20130073435 Yankovich Mar 2013 A1
20130207373 Lucas-Woodley Aug 2013 A1
20140100025 Ackley Apr 2014 A1
20140114630 Brave Apr 2014 A1
20140344725 Bates Nov 2014 A1
20150023602 Wnuk Jan 2015 A1
20150102098 Adams Apr 2015 A1
20150196832 Schroeder Jul 2015 A1
20150228148 Barnes Aug 2015 A1
20150348329 Carre Dec 2015 A1
20160191671 Dawson Jun 2016 A1
20160287998 Kawanabe Oct 2016 A1
20170361233 Stirling Dec 2017 A1
Foreign Referenced Citations (86)
Number Date Country
768367 Mar 2004 AU
2005215048 Oct 2011 AU
2143874 Jun 2000 CA
2292678 Jul 2005 CA
2552135 Jul 2013 CA
1334650 Feb 2002 CN
1202652 Oct 2002 CN
1141641 Mar 2004 CN
1494679 May 2004 CN
1219384 Sep 2005 CN
1307544 Mar 2007 CN
100407675 Jul 2008 CN
100423016 Oct 2008 CN
100557637 Nov 2009 CN
101001678 May 2010 CN
101436242 Dec 2010 CN
101801482 Dec 2014 CN
668583 Aug 1995 EP
0627728 Sep 2000 EP
0717337 Aug 2001 EP
1207694 May 2002 EP
0679977 Oct 2002 EP
0679978 Mar 2003 EP
0890924 Sep 2003 EP
1377902 Aug 2004 EP
0813132 Jan 2005 EP
1380133 Mar 2005 EP
1021021 Sep 2005 EP
0930584 Oct 2005 EP
0883087 Aug 2007 EP
1176828 Oct 2007 EP
2076888 Jul 2015 EP
2339938 Oct 2002 GB
2352154 Jul 2003 GB
3033956 Apr 2000 JP
3124916 Jan 2001 JP
3177221 Jun 2001 JP
2001204973 Jul 2001 JP
3199231 Aug 2001 JP
3210558 Sep 2001 JP
3275935 Feb 2002 JP
3361745 Jan 2003 JP
3368188 Jan 2003 JP
3470955 Sep 2003 JP
3503774 Dec 2003 JP
3575598 Jul 2004 JP
3579823 Jul 2004 JP
3579154 Oct 2004 JP
3701773 Oct 2005 JP
3777161 Mar 2006 JP
3914430 Feb 2007 JP
3942090 Apr 2007 JP
3962361 May 2007 JP
4009235 Sep 2007 JP
4225376 Dec 2008 JP
4653075 Dec 2010 JP
5063698 Aug 2012 JP
5159375 Mar 2013 JP
5352200 Nov 2013 JP
5734566 Jun 2015 JP
20020038229 May 2002 KR
20030039019 May 2003 KR
117864 Aug 2004 MY
55396 Dec 1998 SG
424213 Mar 2001 TW
527825 Apr 2003 TW
200836091 Sep 2008 TW
200937926 Sep 2009 TW
201002013 Jan 2010 TW
201009746 Mar 2010 TW
201024997 Jul 2010 TW
201028871 Aug 2010 TW
0203645 Jan 2002 WO
2002073457 Sep 2002 WO
20020087156 Oct 2002 WO
03049459 Jun 2003 WO
03058518 Jul 2003 WO
2004086212 Oct 2004 WO
2005079538 Sep 2005 WO
2007101785 Sep 2007 WO
2008037599 Apr 2008 WO
2008074627 Jun 2008 WO
2008095767 Aug 2008 WO
2009037257 Mar 2009 WO
2009104564 Aug 2009 WO
2010096738 Aug 2010 WO
Non-Patent Literature Citations (5)
Entry
Office Action dated Feb. 20, 2018 for U.S. Appl. No. 15/188,570; (pp. 1-8).
Supplementary European Search from the European Patent Office for EP05723458.5, dated Jul. 19, 2010.
International Search Report as Published as WO2005/079538 in corresponding international application No. PCT/US2005/005550. dated Jul. 5, 2006.
Notice of Allowance dated May 24, 2018 for U.S. Appl. No. 14/883,171 (pp. 1-7).
Office Action dated Jun. 5, 2018 for U.S. Appl. No. 14/883,154 (pp. 1-20).
Related Publications (1)
Number Date Country
20160361631 A1 Dec 2016 US
Provisional Applications (1)
Number Date Country
62175904 Jun 2015 US