U.S. Pat. No. 7,713,116
INVENTORY MANAGEMENT OF VIRTUAL ITEMS IN COMPUTER GAMES
AssigneeMicrosoft Corporation
Issue DateJune 30, 2003
U.S. Patent No. 7,713,116: Inventory management of virtual items in computer games
Summary:
The ‘116 patent provides an inventory management system to manage the display of inventory items during a computer game. In many games, a player’s inventory is vital to his success or failure in a game. The method described here allows a player to have a limited number of items he has collected to be displayed and be easily accessible. The method also allows the player to categorize his inventory as he wants. The player also has the ability to use pre-set inventory categorizations (by the developer) if he would rather use those.
Abstract:
Within a game, a filter is applied to a game inventory based on an attribute of each one of a plurality of virtual items. The filter can be player defined, game developer defined, system programmer defined, or a combination thereof. In certain versions, the virtual items that satisfy the query provided by the filter are displayed to the player. The player can thereupon access any one of the virtual items that are represented by the icons that satisfy the filtering query. In one version, the attributes of the virtual items can be changed using the filtering game inventory system.
Illustrative Claim:
1. A method comprising: operating, on a computing device comprising an electronic display, a computer game inventory management system to manage display of a game inventory of a plurality of virtual objects acquired during computer game play on the computing device as a function of computer-executable instructions that configure a processor to perform operations comprising: indicating to a game player, on the electronic display during computer game play, the plurality of computer generated virtual objects in a graphical scene describer of a game display, the graphical scene describer used to illustrate a computer generated representation of a player character that is interacting with one or more characters within a virtual world in the computer game play, the player character controlled by the game player, wherein the plurality of virtual objects are configured in the computer game play: to be obtained as possessions by the computer generated representation of the player character; and to comprise one or more attributes; collecting, in the graphical scene describer of the game display, the plurality of virtual objects using the computer generated representation of the player character; indicating, on the game display, at least a portion of the collected plurality of virtual objects as being possessed with the computer generated representation of the player character; displaying, on the game display, an inventory management describer in addition to the graphical scene describer of the game display, the inventory management describer comprising: one or more filter icons that represent one or more filters; and an inventory display that is used to display the filtered plurality of virtual objects; receiving, in the computer game play, an input via an input device from the game player, the input used to activate a filter of the one or more filters, the activation comprising selecting, in the inventory management describer, a filter icon that represents the filter; filtering, upon receiving the input from the game play to activate the filter, the collected plurality of virtual objects based on their respective attributes that are assigned during the computer game play, the filtering comprising filtering the collected plurality of virtual objects that match the filter that is activated by the game player; and displaying, upon activation of the filter, a filtered portion of the collected plurality of virtual objects in the inventory display, wherein each of the filtered portion of the plurality of virtual objects in the inventory display includes at least an attribute that matches the filter, and wherein display of the filtered portion of the plurality of virtual objects based on the filter activated by the game player facilitates the game player to determine which of the plurality of virtual objects to be disposed of or used in the computer game play as the computer generated representation of the player character interacts with the one or more characters in the virtual world in the graphical scene describer of the game display.
Illustrative Figure
Abstract
Within a game, a filter is applied to a game inventory based on an attribute of each one of a plurality of virtual items. The filter can be player defined, game developer defined, system programmer defined, or a combination thereof. In certain versions, the virtual items that satisfy the query provided by the filter are displayed to the player. The player can thereupon access any one of the virtual items that are represented by the icons that satisfy the filtering query. In one version, the attributes of the virtual items can be changed using the filtering game inventory system.
Description
DETAILED DESCRIPTION In many PC and console games, particularly so-called role playing games (RPGs) and Massive Multiplayer Online Role Playing Games (MMORPGs), players may possess a large number of virtual items of property that they maintain in a virtual inventory in a manner such that the virtual items can be accessed. The players can carry, access, defend themselves with, fight other characters with, sell, barter, or otherwise use these virtual items. Illustrative examples of RPGs and MMORPGs include, but are not limited to, Asheron's Call (produced by Microsoft) and Everquest. Experienced players/users of many games often collect many virtual items during each game. As such, some of these virtual items are quite valuable and some virtual items have sold for thousands of dollars. Examples of virtual items include, but are not limited to, valuables (money, valuable metals or gems, etc.), weapons, spell components, defense components, and armor. The inventory may be arranged into a smaller set that can be stored in one or more filters that appear to the player as “packs” or “bags”. The inventory maintains virtual items for retrieval as set forth in the filter. In this disclosure, the term “player” applies to both the human who is playing the game and his/her computer generated representation within the game, unless otherwise indicated. This disclosure provides a mechanism by which players can quickly and easily access their virtual items within a game by using appropriate filters. FIG. 1shows one embodiment of a game system100. The game system100includes a plurality of game units104, a network106, and at least one game server108. Each game unit104is computer-based, and communicates with data via the network106to the game server108as is generally known with computer systems and computer game systems. The game unit104may include, for example, a game console, a hand-held electronic or computer device, ...
DETAILED DESCRIPTION
In many PC and console games, particularly so-called role playing games (RPGs) and Massive Multiplayer Online Role Playing Games (MMORPGs), players may possess a large number of virtual items of property that they maintain in a virtual inventory in a manner such that the virtual items can be accessed. The players can carry, access, defend themselves with, fight other characters with, sell, barter, or otherwise use these virtual items. Illustrative examples of RPGs and MMORPGs include, but are not limited to, Asheron's Call (produced by Microsoft) and Everquest.
Experienced players/users of many games often collect many virtual items during each game. As such, some of these virtual items are quite valuable and some virtual items have sold for thousands of dollars. Examples of virtual items include, but are not limited to, valuables (money, valuable metals or gems, etc.), weapons, spell components, defense components, and armor.
The inventory may be arranged into a smaller set that can be stored in one or more filters that appear to the player as “packs” or “bags”. The inventory maintains virtual items for retrieval as set forth in the filter. In this disclosure, the term “player” applies to both the human who is playing the game and his/her computer generated representation within the game, unless otherwise indicated. This disclosure provides a mechanism by which players can quickly and easily access their virtual items within a game by using appropriate filters.
FIG. 1shows one embodiment of a game system100. The game system100includes a plurality of game units104, a network106, and at least one game server108. Each game unit104is computer-based, and communicates with data via the network106to the game server108as is generally known with computer systems and computer game systems. The game unit104may include, for example, a game console, a hand-held electronic or computer device, a personal computer, etc.
The network106can include, for example, the Internet, corporate intranets, Local Area Networks (LAN), Wide Area Networks (WAN), wired network portions, wireless network portions, and any other known desired network configuration. In effect, any known networked or stand-alone computer configuration (be it game-based, non-game based, or mixed) that is used to provide a game system100is within the intended scope of the present disclosure.
The game server108can include a single computer configured as a personal computer, a mainframe, a laptop, or a server computer. Alternatively, a large number of computers can be interconnected (for example to form a “server farm”). All of the computers, servers, etc. that are providing the game appear to the players to operate in a similar manner as a single powerful computer. A group of game servers108at such a server farm may be devoted to a single game, or alternatively any server may be shared to provide the computing resources for a smaller game. The game server108handles the processing and data manipulation associated with complex games in which a large number of game units104are typically in communication with the game server(s)108at any given time. Within the game being played by the game system, such characters412as monsters (as shown inFIG. 4), villains, vendors, etc. that are part of the game may interact with the players that are participating in the game. The computer-generated players embodying the human players may enter and leave the game being played on the game system100as the human player signs on and signs off of their game units104.
Each game unit104receives input from each player, and presents output to be displayed to each player. It is envisioned that the output could include digital pictures, video, audio, etc. As shown inFIG. 1, each game unit104includes a game display110and player input111. The game display can at least partially contain the inventory management portion112. For example, the aspects of the inventory management portion that relate to displaying, maintaining, and accessing the items are within the game display. Other portions of the inventory management portion may not be contained within the game display. The player input111includes, for example, handheld controllers, mice, keyboards, joysticks, menus, and other known computer input devices by which the human player may input their commands into the game system100. The commands are transmitted within the game system100in the form of data.
In such RPGs, the game sever108makes many of the decisions relating to the game system100. Using this configuration, different game characters and different game players can interact in the same game. Therefore, multiple players can view and interact with other players within the same game that are each providing input from different game units104. In larger game systems, hundreds or thousands of players can be playing the game simultaneously. In many versions, the game server108performs most of the processing associated with the game system100(i.e., the actions and decisions associated with the game are primarily performed at the game server108).
The inventory management portion112includes a list or directory of virtual items113in a game over which a player has control. These virtual items113may be on the player's person, in his/her bags or packages (which may be considered as containers for items of virtual property), in/on a vehicle/mount/animal that the virtual player has maintained on behalf of the player (in a house, apartment, safety deposit system).
The virtual items113are organized in an inventory by a plurality of filters with each filter being configured as a virtual “bag” that is contained in the inventory management portion112and in which a player stores their virtual items. The filters are each configured as queries. The results of a search using these filters are displayed to the player whenever the inventory management portion112of the game display110is updated. Certain players may find current inventory systems to be confusing and/or take too much time to access. These aspects can take away from the human player's enjoyment of the game.
FIG. 2shows another embodiment of computer-based game system100. TheFIG. 2embodiment of computer-based game system is similar to the embodiment described relative toFIG. 1, excepting that inFIG. 2, the inventory management portion112(including one or more virtual items113) is at least partially transferred to the game server108from the game unit104(where it is located in the embodiment shown inFIG. 1).
It is envisioned that in another embodiment, the inventory management portion112can be shared between the game server108and the game unit104. As evidenced fromFIGS. 1 and 2, the inventory management portion112can be located in any location that can be accessed by a player. It is envisioned that the computer-based game system can be provided in a stand-alone environment (not shown, but well understood). As such, the inventory management portion112can also be maintained on a stand-alone computer.
There are a number of terms that are provided in this disclosure that are now described. For the purpose of this disclosure, a game is considered as a computer or console game to be played on a computer environment as described relative toFIG. 5. Many applicable games include Role Playing Games (RPGs) or Massively Multiplayer Online Role Playing Games (MMORPGs). Applicable games also include stand-alone games in which a player is playing a game on a stand-alone computer. As such, the game within the scope of the present disclosure may be played on virtually any computer system or configuration. Within this disclosure, the inventory management portion112permits accessing and use of virtual items113within the computer/console by a player of that game. In this disclosure, the term “player” is inclusive of the computer-generated incarnation of a human player that controls or manipulates the game in addition to the human player.
FIG. 3shows one generalized embodiment of an inventory management portion112, certain versions of which are shown inFIGS. 1 and 2. The inventory management portion112includes a game inventory portion304, a filter306, and a presentation to player portion308. The game inventory portion304displays the games in an ordered manner (as desired by the player) in response to received player input. It is envisioned that the game inventory portion304can be located at the game server108and/or the game unit104as shown respectively inFIGS. 1 and 2.
Each filter306filters the virtual items according to certain limitations provided by a query such as provided in database technology such as Structured Query Language (SQL). The inventory management portion112uses a suitable user interface (UI) as set forth by the player, a game developer, or a third party in a manner that can be monitored/accessed by the player and/or the game system. The filters306are displayed to the player using the inventory management portion112.
A filter306can be selected by the player to select and display icons422(as shown inFIG. 4) representing the virtual items within that filter. The presentation to the player portion308is envisioned to be integrated into the game unit104in such a manner that the virtual items of the inventory can be seen by the player.
An inventoried virtual item icon422includes one or more single virtual items113, or a number of identical virtual items113, that are each in the player's possession. A player can possess a potentially large number of virtual items113(tens, hundred, or even thousands depending on the game and the player). These virtual items113can include such varied computer-generated components as pieces of armor, weapons, valuables, books, clothing, spell-casting components, potions, etc. These virtual items113may typically be obtained during the game from other players through virtual trade, virtual conquest, virtually stealing the bounty from killed or defeated (computer-controlled and generated) monsters, villain, or other game characters412. The inventory management portion112that is based on filters provides a display of certain virtual items113in an arrangement as selected by the human player.
The virtual items113of personal property can be crafted from other items or raw materials, or obtained from Non-Player-Characters (NPCs) e.g. shopkeepers or monsters412. The virtual items113of personal property may also be sold to NPCs or players, converted to other items or raw materials, sold/traded with other players, abandoned, used, maintained and/or accessed within the rules of the game. As such, actions that a player can take with virtual items113are meant to roughly model actual actions that a human could take with real objects.
A virtual item113is considered as having an attribute (or a property) within the game. Each virtual item113will typically have a number of attributes such as its value, weight, size. Virtual items can be filtered according to their attributes type. Some attributes may be universal to all items (everything has some value even if it is assigned a null value). Other attributes are unique to specific classes of virtual items113e.g. “maximum damage” may be an attribute which all weapons share.
Each virtual item113has a particular set of attributes or types so a computer running the game can compare or categorize those with similar attributes. Displayed virtual items113can then be grouped by how the players wish to access those virtual items113. Examples of types of virtual items113include, but are not limited to: numeric types, Boolean types, enumeration, and text.
The numeric type of a virtual item113describes a quantifiable attribute of the virtual item (such as the number or the weight of a particular virtual item). The Boolean type of a virtual item113may include but is not limited to a flag or tag (such as a virtual item “should be sold” or “is a healing item”) that determines an attribute of the virtual item.
Flag types may be viewed as looking for a yes or no answer pertaining to an attribute of the virtual item, and are therefore relatively easy to code. Examples of flags describe, for example, whether the player should sell that virtual item.
The enumeration type of a virtual item113includes, e.g., the type of virtual item, or a material that a virtual item113is formed from. Enumeration types typically include a finite list, such as gold, silver, wood, cloth, clay, etc. The text (string) type of virtual items113may be used to provide an inscription to be displayed on the actual displayed virtual item.
The filter306may be viewed as a determiner to which the virtual item's properties within that filter will conform. The filter306will also probably have a name and perhaps a symbolic representation. Filters306may be structured as query statements such as is known in Structured Query Language (SQL). However, the player may also use a user interface (UI) to create or modify a filter instead of the SQL coding. As such, the UI can be provided using one or more slides, menus, or checkboxes (not shown, but well known with UIs) to simplify the creation or modification of the filter. Examples of filters306include, but are not limited to, such queries as virtual items113that are to be sold and/or bartered, virtual items that are weapons against air monsters, virtual items that are weapons against sea monsters, virtual items that are made of silver or other materials, etc.
The embodiment of filters306can be accessed using a filter icon416as described relative toFIG. 4. It is emphasized that any embodiment of a user interface device that can be used in the inventory management portion112to allow the player to access virtual items using the filter306is within the intended scope of the present disclosure. For example, such user interface devices as (but not limited to) radio buttons, drop-down menus, check boxes, and other types of icons may be used to access virtual items using a plurality of filters306within the inventory management portion112.
As the inventory management portion112searches it and considers the attributes of different ones of the virtual items113. Each virtual item113can be assigned designations based on its name, its symbol, and its criteria. For example, a sword virtual item may be provided the name “sword weapon”, have a symbol of a sword, and have a criteria of “Item Type”=“Weapon”. A virtual item113may have a name “Sell at store”, a symbol of one or more dollar bills or coins, and criteria of: a) “Value”>100, and b) “Don't sell”=false.
One aspect of the present disclosure permits viewing the entire inventory of virtual items113as organized by their attributes/properties by using applicable filters306. The filters306can be represented in any desired manner, but organize the virtual items113by using a suitable query such as from a player or game programmer. For example, the filters306can be provided by series of packages, bags, buttons, menus, icons, or any other known User Interface (UI) mechanism. The virtual items113can be manipulated or ordered using representations of the filters306. Such filters306may be considered as providing a user-defined user interface (UI) based on the criteria set forth by each player/user defined filter306.
A player can design their own filter(s)306based on the desired attributes. The filters appear as inventory “packs” or “bags”. The use of such filters306makes it easier for a player to maintain the virtual items in a desired order based on their attributes. Filters306can be defined by anyone (the game system, the player, and even a third party) and can include any attribute. For example, attributes for weapons are maximum damage, minimum damage, weight (the player has to have certain strength to perform certain tasks as indicated by the weight value), material, skill modifier, skill requirement, race requirements (have to be an Ogre). A player can make decisions on the virtual items113based on the attributes of the filter306(e.g., decide where to keep a virtual item, whether to keep a virtual item).
The query statement (that may be input using a UI) that defines each filter306can be changed/modified to change the attribute of the filter306. For example, a player-defined filter306can be changed by player modification from “a virtual item that is a valuable which is made from gold” to “a virtual item that is a valuables which is made from copper”. A large variety of such potential player modifications would be known to those skilled in user interfaces, all of which are within the intended scope of the present disclosure.
FIG. 4shows an exemplary version of a game display110such as may include the inventory management portion112as described in this disclosure. The game display110additionally includes the inventory management portion112, an orientation portion404, a graphical scene describer portion402, and a communication portion408. The orientation portion404illustrates where the player is within the virtual world, and may further include a compass414, a map, or the like.
The graphical scene describer402illustrates the virtual player410interacting within their virtual world in which they may encounter other players and/or characters. The communication portion408illustrates text of the communications occurring between the player, other players, characters412such as monsters, and the virtual world. The communication person includes labeled portion428and a text portion430. The labeled portion describes which player/character is stating a line. The text portion430includes an outline text of the pertinent communications occurring within the virtual world.
It is to be understood that the embodiment of the game display110as shown inFIG. 4includes a separate inventory management portion112, orientation portion404, graphical scene describer portion402, and communication portion408. Certain ones of these portions112,404,402, and/or408may be combined/merged using techniques that are well understood to allow the player to observe a considerable amount of information in any desired configuration as desired by the player(s). In addition, certain of the portions112,404,402, and/or408may be reduced or eliminated as desired while remaining within the intended scope of the present disclosure.
An example of a filter306relates to “items the player intends to sell”. To display the items that that seller intends to sell, the player can click on the icon representing that filter306. A list of the virtual items113in the inventory management portion112correspond to a query, such as those virtual items113in which an “I intend to sell” flag is set. If the player decides he/she doesn't want to sell a particular item after all, the player can deselect the item in a manner that removes the flag. For instance, the virtual item icon422can be dragged out of the selected inventoried package display418being displayed and dropped in some neutral area or into an inconsistent inventory filter icon416. The game uses this action by the human player as an indication to clear the flag for that item so the item no longer matches the filter306indicated by the selected inventoried package display418or inventory filter icon416.
Instead of displaying each tool, certain embodiments of the inventory management portion112run the filter306over the entire inventory, and only display those items that match the filter query. The filtering process (corresponding to the filter query) may be performed within the inventory management portion112using a graphical representation. Use of certain versions of the inventory management portion112that includes filters306will behave differently. Each filter may act to classify important aspects of the virtual items that are contained within that filter.
Each filter may include a distinct text description. For example, the selected inventoried package display418as shown inFIG. 4includes a label425stating “items to sell”. Alternate exemplary labels425may state weapons against air monsters, weapons against sea monsters, items made of gold, etc.
The filtering techniques provided by certain embodiments of game systems100described herein can use such filters306(as indicated by the inventory filter icon416) to organize virtual item icons422. Certain virtual items113are therefore arranged in particular ones of the respective filters306according to their attributes. Since virtual items113have multiple attributes, it is possible that a single virtual item can be maintained in, and accessible from, a plurality of inventory filter icon416simultaneously. For example, a gold spear virtual item113may be maintained in or accessed using one inventory filter icon416that filters gold items, and may simultaneously be maintained in and accessed from another inventory filter icon416that filters weapons.
In prior-art inventory systems that do not use filters and filtering techniques, if a player does not recall which pack a particular item is located within, then the player has to search through all of his packs to determine where a particular virtual item is maintained. It is common in such prior-art systems to accidentally sell or destroy desirable virtual items. To consider which virtual item to sell from the large inventory of virtual items (perhaps tens or thousands in certain instances), the player has to search through each pack and consider whether to sell each item individually.
The embodiment of inventory management portion112as described relative toFIG. 4that include filters as described in this disclosure, can organize by filtering, accessing, and displaying virtual items113. The filter306criteria for each filter can be player/user-defined, game developer defined, third party, or a combination. The human player therefore can filter each virtual item icons422representing a virtual item113based on its attributes, and sell only those virtual items113that have attributes that correspond to what the player intends to sell. As such, the possibility of inadvertent selling of desired virtual items113is greatly reduced.
The virtual items113may be filtered within the inventory management portion112to sell, remove, keep, or perform some other action. Such selling or trading can be done within the game such as with another virtual player or outside of the game such as over the Internet or other network to another human player. The attributes of the virtual items113in the prior-art inventory systems may not be readily apparent to either the seller of the buyer.
One aspect of the disclosure is that any virtual item icon422representing a virtual item113could appear in one or many packs. For example, a game developer, a system programmer, and/or a player may construct a filter306for “virtual items113made from gold”. A game developer, a system programmer, and/or a player could construct a filter306for “virtual items113that are weapons”. A virtual item icon422representing the golden spear would satisfy the results of both filters306, and therefore would appear in both filters306. Each virtual item113has only one group of attributes. The virtual item icons422each representing a virtual item113are categorized based on attributes. Certain attributes may or may not be attached to specific items.
With another list of virtual item icons422representing virtual items113displayed (e.g. “all items” or “items worth over $100), a virtual item113is selected which the player decides to sell. The virtual item icon422representing the virtual item113is dragged and dropped onto an inventory filter306representing those virtual items that the player intends to sell. This has the result (in the game program) of setting the “virtual items113the player intend to sell” flag for that particular virtual item. Note that the virtual item113still shows up in the original list since it is still over $100 value or one of “all virtual items113”.
Table 1 provides one exemplary version of a virtual item attribute list that lists the various attributes, and their types, that may be used for filtering the virtual items.
AttributesTypesCategoryEnumerationMinimum damageNumericMaximum DamageNumericAttribute WeightNumericAttribute ValueNumericAttribute MaterialEnumerationSkill Modifier RequirementFlagShould Player SellFlag
One embodiment of a filter306that can be used to inventory virtual items113is shown in Table 2. The filter306may be used in conjunction with the inventory filter icon416as shown inFIG. 4. The filter306shown in Table 2 may be considered as a query. In other words, each virtual item113that has a value greater than $100, and which the flag “should the player sell this?” is indicated as false will appear displayed as a virtual item icon422in the selected inventoried package display418of the particular inventory filter icon416that corresponds to the query provided in Table 2. Such displayed virtual item icons422indicate those virtual items113that have satisfied the corresponding query as input in a suitable UI by a player or game programmer. For player-defined filter306queries, the values as indicted in Table 2 can be altered by the player. For game-specified filter306queries, the values as indicated in Table 2 cannot be altered by the player.
TABLE 2New Filter Queried Attributes and Selected ValuesAttributeValueValue>$100Should Player Sell?False
FIG. 5illustrates an example of a suitable computer environment or network500that includes a user interface which can provide a game system100to a number of players, the game system including an inventory management portion112. Similar resources may use the computer environment and the processes as described herein.
The computer environment500illustrated inFIG. 5is a general computer environment, which can be used to implement the filtering techniques using the inventory management portion112as described herein. The computer environment500is only one example of a computer environment and is not intended to suggest any limitation as to the scope of use or functionality of the computer and network architectures. Neither should the computer environment500be interpreted as having any dependency or requirement relating to any one or combination of components illustrated in the exemplary computer environment500.
The computer environment500includes a general-purpose computing device in the form of a computer502. The computer502can be, for example, one or more of a stand alone computer, a networked computer, a mainframe computer, a PDA, a telephone, a microcomputer or microprocessor, or any other computer device that uses a processor in combination with a memory. The components of the computer502can include, but are not limited to, one or more processors or processing units504(optionally including a cryptographic processor or co-processor), a system memory506, and a system bus508that couples various system components including the processor504and the system memory506. The computer environment500can include wired portions and wireless portions.
The system bus508represents one or more of any of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, and a processor or local bus using any of a variety of bus architectures. By way of example, such architectures can include an Industry Standard Architecture (ISA) bus, a Micro Channel Architecture (MCA) bus, an Enhanced ISA (EISA) bus, a Video Electronics Standards Association (VESA) local bus, and a Peripheral Component Interconnects (PCI) bus also known as a Mezzanine bus.
The computer502can include a variety of computer readable media. Such media can be any available media that is accessible by the computer502and includes both volatile and non-volatile media, and removable and non-removable media.
The system memory506includes the computer readable media in the form of non-volatile memory such as read only memory (ROM)512, and/or volatile memory such as random access memory (RAM)510. A basic input/output system (BIOS)514, containing the basic routines that help to transfer information between elements within the computer502, such as during start-up, is maintained in the ROM512. The RAM510can contain data and/or program modules that are immediately accessible to, and/or presently operated on, by the processing unit504.
The computer502may also include other removable/non-removable, volatile/non-volatile computer storage media. By way of example,FIG. 5illustrates a hard disk drive515for reading from and writing to a non-removable, non-volatile magnetic media (not shown), a magnetic disk drive518for reading from and writing to a removable, non-volatile magnetic disk520(e.g., a “floppy disk”), and an optical disk drive522for reading from and/or writing to a removable, non-volatile optical disk524such as a CD-ROM, DVD-ROM, or other optical media. The hard disk drive515, magnetic disk drive518, and optical disk drive522are each connected to the system bus508by one or more data media interfaces527. Alternatively, the hard disk drive515, magnetic disk drive518, and optical disk drive522can be connected to the system bus508by one or more interfaces (not shown).
The disk drives and their associated computer-readable media provide non-volatile storage of computer readable instructions, control node data structures, program modules, and other data for the computer502. Although the example illustrates a hard disk within the hard disk drive515, a removable magnetic disk520, and a non-volatile optical disk524, it is to be appreciated that other types of the computer readable media which can maintain for accessing data that is accessible by a computer, such as magnetic cassettes or other magnetic storage devices, flash memory cards, CD-ROM, digital versatile disks (DVD) or other optical storage, random access memories (RAM), read only memories (ROM), electrically erasable programmable read-only memory (EEPROM), and the like, can also be utilized to implement the exemplary computer environment500.
Any number of program modules can be stored on the hard disk contained in the hard disk drive515, magnetic disk520, non-volatile optical disk524, ROM512, and/or RAM510, including by way of example, the OS526, one or more application programs528, other program modules530, and program data532. Each OS526, one or more application programs528, other program modules530, and program data532(or some combination thereof) may implement all or part of the resident components that support the distributed file system.
A player can enter commands and information into the computer502via input devices such as a keyboard534and a pointing device536(e.g., a “mouse”). Other input devices538(not shown specifically) may include a microphone, joystick, game pad, satellite dish, serial port, scanner, and/or the like. These and other input devices are connected to the processing unit504via input/output interfaces540that are coupled to the system bus508, but may be connected by other interface and bus structures, such as a parallel port, game port, or a universal serial bus (USB).
A monitor, flat panel display, or other type of computer display570can also be connected to the system bus508via an interface, such as a video adapter544. In addition to the computer display570, other output peripheral devices can include components such as speakers (not shown) and a printer546which can be connected to the computer502via the input/output interfaces540.
The computer502can operate in a networked environment using logical connections to one or more remote computers, such as a remote computer device548. By way of example, the remote computer device548can be a personal computer, portable computer, a server, a router, a network computer, a peer device or other common network node, game console, and the like. The remote computer device548is illustrated as a portable computer that can include many or all of the elements and features described herein relative to the computer502.
Logical connections between the computer502and the remote computer device548are depicted as a local area network (LAN)550and a general wide area network (WAN)552. Such networking environments are commonplace in offices, enterprise-wide computer networks, intranets, and the Internet.
When implemented in a LAN networking environment, the computer502is connected to a local network550via a network interface or adapter554. When implemented in a WAN networking environment, the computer502can includes a modem556or other means for establishing communications over the wide network552. The modem556, which can be internal or external to the computer502, can be connected to the system bus508via the input/output interfaces540or other appropriate mechanisms. It is to be appreciated that the illustrated network connections are exemplary and that other means of establishing communication link(s) between the computers502and548can be employed.
In a networked environment, such as that illustrated with the computer environment500, program modules depicted relative to the computer502, or portions thereof, may be stored in a remote memory storage device. By way of example, remote application programs558reside on a memory device of the remote computer548. For purposes of illustration, application programs and other executable program components such as the operating system are illustrated herein as discrete Web blocks, although it is recognized that such programs and components reside at various times in different storage components of the computer502, and are executed by the data processor(s) of the computer502. It will be appreciated that the network connections shown and described are exemplary and other means of establishing a communications link between the computers may be used.
Various modules and techniques may be described herein in the general context of the computer-executable instructions, such as program modules, executed by one or more computers or other devices. Generally, program modules include routines, programs, control objects, components, control node data structures, etc. that perform particular tasks or implement particular abstract data types. Often, the functionality of the program modules may be combined or distributed as desired in various embodiments.
An implementation of these modules and techniques may be stored on or transmitted across some form of the computer readable media. Computer readable media can be any available media that can be accessed by a computer. By way of example, and not limitation, computer readable media may comprise “computer storage media” and “communications media.”
“Computer storage media” includes volatile and non-volatile, removable and non-removable media implemented in any process or technology for storage of information such as computer readable instructions, control node data structures, program modules, or other data. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by a computer.
The term “communication media” includes, but is not limited to, computer readable instructions, control node data structures, program modules, or other data in a modulated data signal, such as carrier wave or other transport mechanism. Communication media also includes any information delivery media. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared, and other wireless media. Combinations of any of the above are also included within the scope of computer readable media.
One illustrative version of a game inventory process600is described relative toFIG. 6. 600such as performed by the game system as shown inFIGS. 1,2, and/or3. The game inventory process600includes602that establishes the inventory management portion112as described relative toFIGS. 1,2,3, and4. The inventory management portion may be included in the game server108and/or the game unit104.
The game inventory process600continues to604in which the player, a game developer, a system manager, or a third party defines the filter(s)306within the inventory management portion. In606, the player selects a particular filter306to apply to the virtual items. In608, the inventory management portion applies the selected filter306against the virtual items. In610of the game inventory process600, those virtual items that satisfy the selected filter306(selected in606), are displayed to the player.
Although the systems and methods have been described in language specific to structural features and/or methodological steps, it is to be understood that the invention defined in the appended claims is not necessarily limited to the specific features or steps described. Rather, the specific features and steps are disclosed as preferred forms of implementing the claimed invention.
Claims
- A method comprising: operating, on a computing device comprising an electronic display, a computer game inventory management system to manage display of a game inventory of a plurality of virtual objects acquired during computer game play on the computing device as a function of computer-executable instructions that configure a processor to perform operations comprising: indicating to a game player, on the electronic display during computer game play, the plurality of computer generated virtual objects in a graphical scene describer of a game display, the graphical scene describer used to illustrate a computer generated representation of a player character that is interacting with one or more characters within a virtual world in the computer game play, the player character controlled by the game player, wherein the plurality of virtual objects are configured in the computer game play: to be obtained as possessions by the computer generated representation of the player character;and to comprise one or more attributes;collecting, in the graphical scene describer of the game display, the plurality of virtual objects using the computer generated representation of the player character;indicating, on the game display, at least a portion of the collected plurality of virtual objects as being possessed with the computer generated representation of the player character;displaying, on the game display, an inventory management describer in addition to the graphical scene describer of the game display, the inventory management describer comprising: one or more filter icons that represent one or more filters;and an inventory display that is used to display the filtered plurality of virtual objects;receiving, in the computer game play, an input via an input device from the game player, the input used to activate a filter of the one or more filters, the activation comprising selecting, in the inventory management describer, a filter icon that represents the filter;filtering, upon receiving the input from the game play to activate the filter, the collected plurality of virtual objects based on their respective attributes that are assigned during the computer game play, the filtering comprising filtering the collected plurality of virtual objects that match the filter that is activated by the game player;and displaying, upon activation of the filter, a filtered portion of the collected plurality of virtual objects in the inventory display, wherein each of the filtered portion of the plurality of virtual objects in the inventory display includes at least an attribute that matches the filter, and wherein display of the filtered portion of the plurality of virtual objects based on the filter activated by the game player facilitates the game player to determine which of the plurality of virtual objects to be disposed of or used in the computer game play as the computer generated representation of the player character interacts with the one or more characters in the virtual world in the graphical scene describer of the game display.
- The method of claim 1 , further comprising: indicating, in the graphical scene describer of the game display, other computer generated representations as the one or more characters in the game;and displaying the computer generated representation of the player character and the other computer generated representations as animated characters.
- The method of claim 1 , further comprising: constructing a first filter and a second filter from the one or more filters, wherein the first filter filters the plurality of virtual objects based on a flag type attribute and the second filter filters the plurality of virtual objects based on an enumeration type attribute;and filtering with the first filter and the second filter the plurality of virtual objects based on their attributes.
- The method of claim 3 , wherein construction of the first filter is performed by the game player and construction of the second filter is performed by a game developer.
- The method of claim 4 , further comprising selecting, by the game player, either the first filter or the second filter to obtain the plurality of virtual objects based on their attributes that are assigned during the computer game play.
- The method of claim 3 , wherein each of the one or more filters is used to select the plurality of virtual objects that have associated attributes that match different predetermined attributes associated with the respective filter.
- The method of claim 3 , wherein the filtering is executed with one of the one or more filters, and wherein a portion of the one or more filters includes one or more queries that are defined by the game player, and another portion of the one or more filters includes queries that are defined by the game developer.
- The method of claim 7 , wherein only a portion of the plurality of virtual objects that satisfy a query that corresponds to the filter is selected by the filter.
- The method of claim 8 , wherein the query includes a structured query language (SQL) query.
- The method of claim 3 , further comprising: enabling the first filter to filter a first virtual object;and altering the attribute of the first virtual object to enable the second filter to filter the virtual object and to disable the first filter from filtering the first virtual object.
- The method of claim 1 , further comprising selecting a virtual item icon within the inventory display to display the virtual object that corresponds to the virtual item icon.
- The method of claim 1 , wherein the filter is displayed as a component of a user interface.
- The method of claim 1 , wherein a mouse is used to select the filter.
- The method of claim 1 , wherein a joystick is used to select the filter.
- The method of claim 1 , wherein a computer display button is used to select the filter.
- The method of claim 1 , wherein a computer display menu is used to select the filter.
- The method of claim 1 , wherein the filter is represented by a name.
- The method of claim 1 , wherein the filter is represented by a symbol.
- The method of claim 1 , wherein the collected plurality of virtual objects are indicated as being possessed using a virtual bag that is displayed on the game display.
- The method as recited in claim 1 further comprising indicating on the game display that during play of the game the computer representation of the player character uses one of the filtered obtained plurality of virtual objects.
- The method as recited in claim 1 further comprising exchanging one of the filtered virtual objects between the player character and the one or more other characters for value.
- The method as recited in claim 1 wherein the plurality of virtual objects are obtained as possessions by the computer generated representation of the player character from other computer generated representations of the other one or more characters.
- The method as recited in claim 1 wherein the filtering comprises querying the attributes that are selected from a group of queries comprising: determining that the virtual objects are to be sold and/or bartered, determining that the virtual objects are weapons against monsters, and determining that the virtual objects are constructed of a particular material.
- An electronic device including a game display comprising: virtual item icons used to indicate a plurality of virtual objects collected by a computer generated representation of a player character during play of a computer game, the player character controlled by a game player, the collected plurality of virtual objects configured to be obtained as possessions by the player character, and at least a portion of the plurality of virtual objects comprising attributes that are assigned during play of the computer game;a graphical scene describer used to illustrate a computer generated representation of the player character that is interacting with one or more characters within a virtual world in the play of the computer game;and an inventory management describer comprising: an inventory filter icon used to represent a filter, wherein the filter is activated to filter the collected plurality of virtual objects that match the filter when the inventory filter icon is selected by the game player;and a filter result display used to display, in response to activation of the filter, one or more filtered virtual item icons, each of the one or more filtered virtual item icons used to display the filtered plurality of virtual objects that include the attributes that are assigned during play of the computer game and match the filter that is represented by the inventory filter icon;wherein display of the at least one of the filtered plurality of collected virtual objects in response to the filter facilitates the game player to determine which of the plurality of collected virtual objects to be disposed of or used in the play of the computer game as the computer generated representation of the player character interacts with the one or more characters in the virtual world in the graphical scene describer of the game display.
- The electronic device of claim 24 , wherein dragging, with an input device, one of the virtual item icons that is associated with one of the virtual objects to a different inventory filter icon in the inventory management describer alters the attributes of the one of the virtual objects such that the altered attributes of the one of the virtual objects match a different filter that is represented by the different inventory filter icon.
- The electronic device of claim 24 , wherein the game player defines the inventory filter icon.
- The electronic device of claim 24 , wherein a game developer defines the inventory filter icon.
- The electronic device of claim 24 , wherein the computer game is operative to search the plurality of virtual objects for the computer game, and the game display displays only one or more virtual objects that satisfy search criteria as set forth by the attributes that are filtered based on queries that are associated with the inventory filter icon.
- The electronic device of claim 24 , wherein the game player provides attributes and selects a portion of the plurality of virtual objects based on the criteria that use a user interface.
- The electronic device of claim 24 , wherein the computer game highlights the attributes of certain desirable virtual objects to the player character in the graphical scene describer.
- The electronic device of 24 , wherein the electronic device is a game server operative to couple with a plurality of game computers running the computer game.
- The electronic device of claim 24 , wherein the virtual objects are obtained as possessions by displaying that the computer representations of the player character captures the virtual objects from computer representations of other characters during the play of the computer game.
- The electronic device of claim 24 , wherein the electronic device searches the plurality of virtual objects for attributes that are assigned during play of the computer game and that satisfy a predetermined search criteria, and wherein the electronic device displays only a portion of virtual objects that satisfy search criteria as set forth by the attributes that are filtered as a result of selection of the inventory filter icon.
- A computer readable medium storing computer executable instructions which, when executed by a processor, configure the processor to perform actions comprising: indicating to a game player, on the electronic display during computer game play, the plurality of computer generated virtual objects in a graphical scene describer of a game display, the graphical scene describer used to illustrate a computer generated representation of a player character that is interacting with one or more characters within a virtual world in the computer game play, the player character controlled by the game player, wherein the plurality of virtual objects are configured in the computer game play: to be obtained as possessions by the computer generated representation of the player character;and to comprise one or more attributes;collecting, in the graphical scene describer of the game display, the plurality of virtual objects using the computer generated representation of the player character;indicating, on the game display, at least a portion of the collected plurality of virtual objects as being possessed with the computer generated representation of the player character;displaying, on the game display, an inventory management describer in addition to the graphical scene describer of the game display, the inventory management describer comprising: one or more filter icons that represent one or more filters;and an inventory display that is used to display the filtered plurality of virtual objects;receiving, in the computer game play, an input via an input device from the game player, the input used to activate a filter of the one or more filters, the activation comprising selecting, in the inventory management describer, a filter icon that represents the filter;filtering, upon receiving the input from the game play to activate the filter, the collected plurality of virtual objects based on their respective attributes that are assigned during the computer game play, the filtering comprising filtering the collected plurality of virtual objects that match the filter that is activated by the game player;and displaying, upon activation of the filter, a filtered portion of the collected plurality of virtual objects in the inventory display, wherein each of the filtered portion of the plurality of virtual objects in the inventory display includes at least an attribute that matches the filter, and wherein display of the filtered portion of the plurality of virtual objects based on the filter activated by the game player facilitates the game player to determine which of the plurality of virtual objects to be disposed of or used in the computer game play as the computer generated representation of the player character interacts with the one or more characters in the virtual world in the graphical scene describer of the game display.
- The computer readable medium comprising computer executable instructions of claim 34 , wherein the actions further comprise constructing the filter via a user interface.
- The computer readable medium comprising computer executable instructions of claim 34 , wherein the game player defines the filter.
- The computer readable medium comprising computer executable instructions of claim 34 , wherein a game developer of the game defines the filter.
- The computer readable medium comprising computer executable instructions of claim 34 , wherein a portion of the plurality of filters is defined by the game player, and another portion of the plurality of filters is defined by a game developer, and wherein the game player selects which of the plurality of filters are to be applied to the inventory.
Disclaimer: Data collected from the USPTO and may be malformed, incomplete, and/or otherwise inaccurate.
