Dynamic problem solving for games

A system that facilitates enhancing a game, game play or playability of a game may include an experience component, a game component and an alteration component. The experience component can collect a portion of data related to a game in which the portion of data indicates at least one of a tip or a tactic for the game. The game component can dynamically incorporate the portion of data into the game during game play to enhance playability of such game for a user with assistance provided by at least one of the tip or the tactic. The alteration component may alter the game during game play.

BACKGROUND

The evolution of computers and networking technologies from high-cost, low performance data processing systems to low cost, high-performance communication, problem solving, and entertainment systems has provided a cost-effective and time saving means to lessen the burden of performing every day tasks such as correspondence, bill paying, shopping, budgeting information and gathering, etc. For example, a computing system interfaced to the Internet, by way of wire or wireless technology, can provide a user with a channel for nearly instantaneous access to a wealth of information from a repository of web sites and servers located around the world. Such a system, as well, allows a user to not only gather information, but also to provide information to disparate sources. As such, online data storing and management has become increasingly popular.

Furthermore, computer-related gaming has risen dramatically in interest and popularity. This may be due in large part to the accessibility or availability of games. For example, the online computer gaming business has skyrocketed to a multi-billion dollar industry, with no end in sight, thereby providing a form of leisure activity for millions of users while also providing a boom to companies involved in such an industry. Generally, many different types of games can be downloaded or played on just about any type of computing device regardless of size. As a result of increasing demands and consumer expectations, game developers are constantly trying to produce more creative gaming systems/devices that present higher quality graphics, more realistic character appearance and movements, and/or different types of challenge scenarios or obstacles for the user.

The gaming industry has followed technological advances and have quickly adapted to online access and/or online playability. For instance, games typically involve virtual world interaction between players, wherein the user/player purchases the client version of the game which thereafter can provide access to Internet servers supporting multiplayer mode gaming with other Internet users. In another example, games can be mixed physical world-virtual world (or physical-virtual) gaming. Such gaming can be a nascent social technology in which participants play a mobile game in physical space that is tied in some way to a virtual world component. Regardless of game type, gaming console, gaming system, gaming format, etc., users/players typically come across hurdles and/or difficulties within the game that can be frustrating to overcome. Although games aim to challenge consumers (e.g., players, users, etc.), such challenges can be frustrating if too difficult for users/players with lower skill levels. Developing a game with a skill level applicable to a high number of consumers can be complex and costly especially without compromising the desired level of difficulty.

SUMMARY

The following presents a simplified summary of the innovation in order to provide a basic understanding of some aspects described herein. This summary is not an extensive overview of the claimed subject matter. It is intended to neither identify key or critical elements of the claimed subject matter nor delineate the scope of the subject innovation. Its sole purpose is to present some concepts of the claimed subject matter in a simplified form as a prelude to the more detailed description that is presented later.

The subject innovation relates to systems and/or methods that facilitate incorporating a portion of data into a game during game play to enhance playability. A game component can provide potential solutions to gaming problems and situations. In particular, an experience component can collect data related to suggestions, tips, tactics, corporate hints, etc. which relate to a particular problem/puzzle/hurdle within a game. Moreover, the game component can incorporate data based upon a user's expertise and/or skill level. Generally, the experience component can collect and/or identify data from a network, wherein such data can relate to useful information for a game. The game component can dynamically incorporate such collected data into the game during game play to enhance playability.

In accordance with an aspect of the subject innovation, an alteration component can be employed to allow for collaborative and dynamic alterations to a game and its potential outcomes based at least in part upon the data collected. For example, a collective group can suggest an alternative ending to a game upon completion. Thus, games can evolve based upon the collective desires or aspirations of a group. In another aspect, the game component can utilize a real time component that can incorporate real time events into a game play for a game. By leveraging a network, the experience component can collect real time data events such as news stories, weather, political news, etc. and incorporate such information into the game. For instance, if weather for a user is sunny, the weather data in the game can be enhanced to become sunny.

In accordance with still another aspect of the claimed innovation, a reward component can implement performance-based incentives. Such incentives can be based upon performance, participation for contribution, peer review, creation, participation within a network to collect useful information for a game, etc. In another aspect, a generator can gather content selected from various games to reassemble and create new games based on the aggregated data. In other aspects of the claimed subject matter, methods are provided that facilitate employing a dynamic and interactive experience with a game by leveraging a network.

DETAILED DESCRIPTION

Furthermore, the claimed subject matter may be implemented as a method, apparatus, or article of manufacture using standard programming and/or engineering techniques to produce software, firmware, hardware, or any combination thereof to control a computer to implement the disclosed subject matter. The term “article of manufacture” as used herein is intended to encompass a computer program accessible from any computer-readable device, carrier, or media. For example, computer readable media can include but are not limited to magnetic storage devices (e.g., hard disk, floppy disk, magnetic strips . . . ), optical disks (e.g., compact disk (CD), digital versatile disk (DVD) . . . ), smart cards, and flash memory devices (e.g., card, stick, key drive . . . ). Additionally it should be appreciated that a carrier wave can be employed to carry computer-readable electronic data such as those used in transmitting and receiving electronic mail or in accessing a network such as the Internet or a local area network (LAN). Of course, those skilled in the art will recognize many modifications may be made to this configuration without departing from the scope or spirit of the claimed subject matter. Moreover, the word “exemplary” is used herein to mean serving as an example, instance, or illustration. Any aspect or design described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other aspects or designs.

Now turning to the figures,FIG. 1illustrates a system100that facilitates incorporating a portion of data into a game during game play to enhance playability. The system100can include a game component102that can dynamically incorporate data into a game during game play in order to enhance user interaction, experience, and overall playability. Moreover, an experience component104can receive a portion of data related to a game, wherein such portion of data can be associated with a tip, a past experience/situation, a tactic, a suggestion, a nuance, a technique, a solution, an adjustment, and/or any other portion of data that can be useful for a user interacting with a game. The game component102can utilize the portion of data gathered by the experience component104in order to incorporate such portion of data into game play in real time. In other words, the game component102can enhance playability of a game based upon offering advice and/or assistance during game play in real time so as to ensure a user and/or player does not become frustrated or discouraged. Although conventional games provide in-game tips/suggestions, such information is coded into the game prior to discovery of more useful techniques, secrets, hints, tactics, etc. that turn up from user/player practice.

It is to be appreciated that the experience component104can identify any suitable data that can assist in game play or playability for a game. For example, the experience component104can collect data related to game A from user B in which user B located a secret at a particular point in the game. During game play, the system100can inform user C of such secret at such particular point in the game in real time. Thus, although the information from user B (e.g., the secret, hint, tip, etc.) can be collected by the experience component104at a previous moment in time, the information related to the secret can be dynamically incorporated into the game for user C to assist in locating such secret. In other words, the system100can identify a situation related to an instant in a game, in which the game component102can dynamically provide a portion of data related to such instant (gathered by the experience component104) to a user/player during such situation in the game. It is to be appreciated and understood that the game component102can employ various security techniques in order to verify the validity and/or accuracy of such data collected by the experience component104.

The system100can be implemented with a plurality of games independent of format, platform, console, vendor, maker, etc. In general, the system100can dynamically incorporate such data into any suitable game, gaming system, gaming device, and the like, in which such game, console, system, etc. includes connectivity to a network (discussed below) to receive a portion of data. For example, it is to be appreciated and understood that the game can be at least one of a computer game, a video game, a personal computer game, a role-playing game, a virtual world game, a game associated with a genre (e.g., first person game, an action game, a racing game, a fighting game, a strategy game, a puzzle game, a board game, a card game, a sport game, etc.), a hand held game, a game related to a hand held device, and/or any suitable game with Internet capabilities to receive a portion of data collected by the experience component104. Generally, a game can be any interactive experience such as, but is not limited to, a competitive activity involving at least one of skill, chance, or endurance on the part of one or more individuals who play according to a set of rules, usually for their own amusement or for that of spectators.

FIG. 2illustrates a system200that facilitates collecting game related data from a network to optimize game play for a user. The system200can include the game component102that can employ a portion of data collected by the experience component104into a game at a particular instant during game play, wherein the portion of data provides assistance for such particular instant in the game. In other words, the game component102can enhance game play for a game by dynamically incorporating helpful portions of data triggered by specific moments and/or instants during game play. By enabling such dynamic problem solving, game difficulty can be increased without complaints and/or worries of deterring and annoying consumers (e.g., users, players, etc.).

For instance, the game component102can dynamically communicate a tip for a particular level or scene in a game. Such tip can be gathered by the experience component104. Furthermore, the system200can provide portions of data that correspond to a skill level of a user/player. Thus, a more experienced user/player can receive a more advanced portion of data (e.g., a tip, a past experience/situation, a tactic, a suggestion, a nuance, a technique, a solution, an adjustment, a portion of data that can be useful for a user interacting with a game, etc.), whereas a less experienced user/player can receive a more novice portion of data or advice. It is to be appreciated that the game component102can identify a user/player skill level and identify a corresponding portion of data that suits such skill set in order to optimize help or assistance.

The experience component104can gather and/or collect portions of data from a network202. The network202can be any suitable data network that can communicate a portion of data related to a game. For instance, the network202can be, but is not limited to being, the Internet, a web site, a forum, an email, a web service, a voice over Internet protocol (VoIP) communication, an instant message, a text message, a cellular communication, a voicemail, a computer, a machine, a laptop, a user, a community of users, a portable digital assistant (PDA), a hand held, etc. For instance, the network202can be a community of users that provide information and data related to a plurality of games in which the experience component104can pool relevant portions of data that can be utilized to assist users/players during game play. It is to be appreciated that the experience component104can include numerous filters and/or security techniques in order to validate the network202, users within the network202, and data associated with the network202.

The system200can further include a data store204that can store any suitable data related to the game component102, the experience component104, the network202, etc. For example, the data store204can include, but not limited to including, data related to a game, a tip related to a game, a tactic for a game, a solution for a game, a hint for a game, a suggestion for a game, an alteration to a game, an adjustment to a game, an additional feature to a game, a past experience for a game, a portion of real time data, a portion of data collected from the network202, data related to a game from a user, data for a game from a corporation, data for a game from a vendor, data for a game from a third-party, data associated with a maker of a game, any suitable data related to a game to offer assistance or improvement, etc.

It is to be appreciated that the data store204can be, for example, either volatile memory or nonvolatile memory, or can include both volatile and nonvolatile memory. By way of illustration, and not limitation, nonvolatile memory can include read only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory can include random access memory (RAM), which acts as external cache memory. By way of illustration and not limitation, RAM is available in many forms such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), Synchlink DRAM (SLDRAM), Rambus direct RAM (RDRAM), direct Rambus dynamic RAM (DRDRAM), and Rambus dynamic RAM (RDRAM). The data store204of the subject systems and methods is intended to comprise, without being limited to, these and any other suitable types of memory. In addition, it is to be appreciated that the data store204can be a server, a database, a hard drive, a pen drive, an external hard drive, a portable hard drive, and the like.

The system200can further include a tolerance component206that employs a trigger that initiates dynamic incorporation of the portion of data (e.g., a tip, a past experience/situation, a tactic, a suggestion, a nuance, a technique, a solution, an adjustment, a portion of data that can be useful for a user interacting with a game, etc.). The tolerance component206can utilize a trigger based upon, for instance, a duration related to a particular instant (e.g., a time period a user/player is unable to pass/succeed at a point in a game), a skill level related to a player/user, a duration associated with total game play (e.g., a total time a player/user has played the game), rating of the portion of data (e.g., high ranking suggests more users/players desire such portion of data), a difficulty level related to a point in the game (e.g., more apt to provide assistance/suggestions at a harder point in the game), and/or any other suitable characteristic related to the user, game, skill level, or portion of data.

FIG. 3illustrates a system300that facilitates altering a portion of game play associated with a game utilizing data collected from a network. The system300can include the experience component104that can gather a portion of data related to a game from the network to enable the game component102to display such portions of data to a user/player during game play in real time. For instance, a user/player in a particular situation within a game can receive a portion of data related to such particular situation in any suitable form (e.g., text data, graphical data, visual data, audio data, etc.) via the system300, wherein such portion of data provides assistance and/or help to the user/player. Generally, the system300provides potential solutions to gaming problems and situations via the experience component104, in which the experience component104gathers data from the network202and stores/accesses such data via the data store204.

The game component102can utilize an alteration component302that can employ collaborative and dynamic alterations to a game and its potential outcome based at least in part upon the data collected. For example, a collective group can suggest an alternative ending for a game upon completion. Thus, games can evolve based upon the collective desires or aspirations of a user, group, and/or any entity providing information/data to the network202. In other words, the alteration component302can implement the game with a portion of data not originally associated with such game. The alteration component302can receive an alteration from any suitable source such as, but not limited to, the network202, the experience component104, the data store204, a user, a corporation, a vendor, a third-party service, evaluation of data collected by the experience component104, etc. In addition, the alteration can relate to any suitable portion of the game such as, but not limited to, a story line, a character, a rule, a setting, equipment, a control, a difficulty setting, an environment, offline play, game play, online play, network capabilities, a game mode, a portion of graphics, a portion of audio, a portion of video, a portion of user interaction, etc.

FIG. 4illustrates a system400that facilitates employing a dynamic and interactive experience with a game by leveraging a network. The system400can enhance conventional techniques associated with games by optimizing playability with dynamic tips, suggestions, alterations, nuances, advice, and the like. The system400can include the experience component104that can gather and/or collect a portion of data related to a specific instance in a game via the network202. The game component102can detect such specific instance in the game and consequently dynamically incorporate such portion of data into the game or game play. In particular, the game component102can retrieve such portions of data from the data store204, wherein the appropriate portions of data (e.g., appropriate in that such portions of data correlate to a point in the game) can be tagged and identified based upon game title, a point in the game, a scenario in the game, an instant in a story line for a game, and the like.

The system400can utilize reward component402that can supply an incentive to entice data contribution for a game. Thus, an entity (e.g., user, player, web site, web service, a third-party, a group, a company, a service, a forum, etc.) that contributes, donates, and/or provides portions of data to the network202can be rewarded or compensated by the reward component402. For instance, a user can email a tip (e.g., a portion of data related to a game) and upon validation or authentication of at least one of the user or the tip, a reward can be credited to the user or an account related to such user. The reward component402can utilize any suitable reward to compensate contribution. For example, the reward can be money, a micro reward, a ranking increase, a credit for online game play, a currency associated with a game, a currency associated with a gaming device/console, an increase in skill level for a game, gift certificate, a web service, a portion of data/information, a subscription (e.g., Internet service, magazine, web site, etc.), and/or any service or item that can be represented with monetary value.

The game component102can further utilize a real time component404that can incorporate a real time event into a game to enhance playability. In general, the real time component404can identify real time events and seamlessly integrate such real time events into the game. For example, the real time event can be a news event, a political event, weather, sounds, patterns, and the like. Take for instance, a sports video game, in which a user/player in Cleveland, Ohio is playing. While playing the game, the weather can go from sunny to rainy. Such real time event can be incorporated into the game in that the weather can change from sunny to rainy. Moreover, if a player in real life is injured; such injury can be replicated in the game by the real time component404. The real time component404can increase the involvement for users/players and a game with seamless incorporation of real time events.

FIG. 5illustrates a system500that facilities assembling a second game utilizing suggestions, tips, collaborations, and the like from a network related to a first game. The system500can include the game component102that can seamlessly integrate a portion of data into a game during game play, wherein such portion of data can be collected by the experience component104via the network202. The network202can include various sources of data such as users, web sites, forums, corporations, services, and the like. With such a diverse and rich source of information and data related to games, the system500can provide various portions of data to a user/player in real time game play.

The system500can include a generator502that can utilize the portions of data collected by the experience component104to create a game. The generator502can identify portions of data and assemble such portions of data for a game concept. It is to be appreciated that any portion of data related to a game can be aggregated to generate a new game regardless of the source (e.g., a user, a web site, a service, an email, a computer, a company, etc.) or for which game the data relates. For example, numerous suggestions related to various games can be aggregated to create a new game or a variation of a game. This new game or variation of a game can be distributed via the network202or at a physical location. In one specific example, contributors of information to the network202can be compensated by the reward component (not shown but discussed inFIG. 4) with the new game or the variation of a game.

FIG. 6illustrates a system600that employs intelligence to facilitate incorporating dynamic controls for a gaming outcome and/or future iterations of the game. The system600can include the game component102and the experience component104. It is to be appreciated that the game component102and the experience component104can be substantially similar to respective components described in previous figures. The system600further includes an intelligent component602. The intelligent component602can be utilized by the game component102to facilitate incorporating collected data into a game in real time for enhanced playability. For example, the intelligent component602can infer suggested outcomes, future game iterations, hints, tactics, nuances, alternative endings, suggestions, popularity of suggestions, incentive preference, user preferences, user settings, collaboration contribution, etc., which can be dynamically incorporated into the game during game play.

The game component102can further utilize a presentation component604that provides various types of user interfaces to facilitate interaction between a user and any component coupled to the game component102. As depicted, the presentation component604is a separate entity that can be utilized with the game component102. However, it is to be appreciated that the presentation component604and/or similar view components can be incorporated into the game component102and/or a stand-alone unit. The presentation component604can provide one or more graphical user interfaces (GUIs), command line interfaces, and the like. For example, a GUI can be rendered that provides a user with a region or means to load, import, read, etc., data, and can include a region to present the results of such. These regions can comprise known text and/or graphic regions comprising dialogue boxes, static controls, drop-down-menus, list boxes, pop-up menus, as edit controls, combo boxes, radio buttons, check boxes, push buttons, and graphic boxes. In addition, utilities to facilitate the presentation such as vertical and/or horizontal scroll bars for navigation and toolbar buttons to determine whether a region will be viewable can be employed. For example, the user can interact with one or more of the components coupled and/or incorporated into the game component102.

The user can also interact with the regions to select and provide information via various devices such as a mouse, a roller ball, a keypad, a keyboard, a pen and/or voice activation, for example. Typically, a mechanism such as a push button or the enter key on the keyboard can be employed subsequent entering the information in order to initiate the search. However, it is to be appreciated that the claimed subject matter is not so limited. For example, merely highlighting a check box can initiate information conveyance. In another example, a command line interface can be employed. For example, the command line interface can prompt (e.g., via a text message on a display and an audio tone) the user for information via providing a text message. The user can then provide suitable information, such as alpha-numeric input corresponding to an option provided in the interface prompt or an answer to a question posed in the prompt. It is to be appreciated that the command line interface can be employed in connection with a GUI and/or API. In addition, the command line interface can be employed in connection with hardware (e.g., video cards) and/or displays (e.g., black and white, and EGA) with limited graphic support, and/or low bandwidth communication channels.

FIG. 7illustrates a method700that facilitates incorporating a portion of data into a game during game play to enhance playability. At reference numeral702, a portion of data related to at least one of a tip, a tactic, a technique or a solution for a game can be identified. For example, it is to be appreciated and understood that the game can be at least one of a computer game, a video game, a personal computer game, a role-playing game, a virtual world game, a game associated with a genre (e.g., first person game, an action game, a racing game, a fighting game, a strategy game, a puzzle game, a board game, a card game, a sport game, etc.), a hand held game, a game related to a hand held device, and/or any suitable game with Internet capabilities to receive a portion of data. Generally, a game can be any interactive experience such as, but is not limited to, a competitive activity involving at least one of skill, chance, or endurance on the part of one or more individuals who play according to a set of rules, usually for their own amusement or for that of spectators.

At reference numeral704, the portion of data can be dynamically incorporated into the game during game play to enhance such game. For example, the portion of data can be seamlessly integrated during game play at a particular point in the game, wherein such portion of data can correspond to the particular point. In another example, a trigger to incorporate data can be set with pre-defined thresholds such as time duration, a point in a game, a skill-level, etc. Moreover, the portion of data integrated into the game during game play can correspond to a user's skill level. For example, a user with a high skill level for a game typically desires high level techniques, tactics, tips, or solutions. Conversely, a user with a low skill level for a game may not be capable of performing tips, tactics, techniques, or solutions unless they are low level.

FIG. 8illustrates a method800for employing a dynamic and interactive experience with a game by leveraging a network. At reference numeral802, a portion of data associated with a game can be received, wherein the data can be associated with a game technique, a suggestion, or an outcome. It is to be appreciated that any suitable technique, suggestion, or outcome related to a game can be received. For instance, the data can be received via a network, wherein the network can be the Internet, a web site, a forum, an email, a web service, a voice over Internet protocol (VoIP) communication, an instant message, a text message, a cellular communication, a voicemail, a computer, a machine, a laptop, a user, a community of users, a portable digital assistant (PDA), a hand held, etc.

At reference numeral804, the game can be dynamically altered during game play utilizing the portion of data. It is to be appreciated that the alteration from the portion of data can be any suitable change to a game or game play. For example, the alteration can relate to any suitable portion of the game such as, but not limited to, a story line, a character, a rule, a setting, equipment, a control, a difficulty setting, an environment, offline play, game play, online play, network capabilities, a game mode, a portion of graphics, a portion of audio, a portion of video, a portion of user interaction, etc.

At reference numeral806, a real time event can be seamlessly and dynamically incorporated into the game. In other words, a real time event associated with the real world can be replicated and integrated into a game during game play. For example, the real time event can be a news event, a political event, weather, sounds, patterns, and the like. At reference numeral808, a disparate game can be generated based upon a portion of the received data. It is to be appreciated that the disparate game can be a new game in comparison to the game in which information is received or a variation of a game. For example, suggestions or outcomes corresponding to game A and game B, wherein such information can be aggregated to create a new game C.

In order to provide additional context for implementing various aspects of the claimed subject matter,FIGS. 9-10and the following discussion is intended to provide a brief, general description of a suitable computing environment in which the various aspects of the subject innovation may be implemented. For example, a game component that facilitates enhancing a game with a tip or tactic in real time during game play, as described in the previous figures, can be implemented in such suitable computing environment. While the claimed subject matter has been described above in the general context of computer-executable instructions of a computer program that runs on a local computer and/or remote computer, those skilled in the art will recognize that the subject innovation also may be implemented in combination with other program modules. Generally, program modules include routines, programs, components, data structures, etc., that perform particular tasks and/or implement particular abstract data types.

Moreover, those skilled in the art will appreciate that the inventive methods may be practiced with other computer system configurations, including single-processor or multi-processor computer systems, minicomputers, mainframe computers, as well as personal computers, hand-held computing devices, microprocessor-based and/or programmable consumer electronics, and the like, each of which may operatively communicate with one or more associated devices. The illustrated aspects of the claimed subject matter may also be practiced in distributed computing environments where certain tasks are performed by remote processing devices that are linked through a communications network. However, some, if not all, aspects of the subject innovation may be practiced on stand-alone computers. In a distributed computing environment, program modules may be located in local and/or remote memory storage devices.

FIG. 9is a schematic block diagram of a sample-computing environment900with which the claimed subject matter can interact. The system900includes one or more client(s)910. The client(s)910can be hardware and/or software (e.g., threads, processes, computing devices). The system900also includes one or more server(s)920. The server(s)920can be hardware and/or software (e.g., threads, processes, computing devices). The servers920can house threads to perform transformations by employing the subject innovation, for example.

One possible communication between a client910and a server920can be in the form of a data packet adapted to be transmitted between two or more computer processes. The system900includes a communication framework940that can be employed to facilitate communications between the client(s)910and the server(s)920. The client(s)910are operably connected to one or more client data store(s)950that can be employed to store information local to the client(s)910. Similarly, the server(s)920are operably connected to one or more server data store(s)930that can be employed to store information local to the servers920.

With reference toFIG. 10, an exemplary environment1000for implementing various aspects of the claimed subject matter includes a computer1012. The computer1012includes a processing unit1014, a system memory1016, and a system bus1018. The system bus1018couples system components including, but not limited to, the system memory1016to the processing unit1014. The processing unit1014can be any of various available processors. Dual microprocessors and other multiprocessor architectures also can be employed as the processing unit1014.

The system memory1016includes volatile memory1020and nonvolatile memory1022. The basic input/output system (BIOS), containing the basic routines to transfer information between elements within the computer1012, such as during start-up, is stored in nonvolatile memory1022. By way of illustration, and not limitation, nonvolatile memory1022can include read only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory1020includes random access memory (RAM), which acts as external cache memory. By way of illustration and not limitation, RAM is available in many forms such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), Synchlink DRAM (SLDRAM), Rambus direct RAM (RDRAM), direct Rambus dynamic RAM (DRDRAM), and Rambus dynamic RAM (RDRAM).

Computer1012can operate in a networked environment using logical connections to one or more remote computers, such as remote computer(s)1044. The remote computer(s)1044can be a personal computer, a server, a router, a network PC, a workstation, a microprocessor based appliance, a peer device or other common network node and the like, and typically includes many or all of the elements described relative to computer1012. For purposes of brevity, only a memory storage device1046is illustrated with remote computer(s)1044. Remote computer(s)1044is logically connected to computer1012through a network interface1048and then physically connected via communication connection1050. Network interface1048encompasses wire and/or wireless communication networks such as local-area networks (LAN) and wide-area networks (WAN). LAN technologies include Fiber Distributed Data Interface (FDDI), Copper Distributed Data Interface (CDDI), Ethernet, Token Ring and the like. WAN technologies include, but are not limited to, point-to-point links, circuit switching networks like Integrated Services Digital Networks (ISDN) and variations thereon, packet switching networks, and Digital Subscriber Lines (DSL).

Communication connection(s)1050refers to the hardware/software employed to connect the network interface1048to the bus1018. While communication connection1050is shown for illustrative clarity inside computer1012, it can also be external to computer1012. The hardware/software necessary for connection to the network interface1048includes, for exemplary purposes only, internal and external technologies such as, modems including regular telephone grade modems, cable modems and DSL modems, ISDN adapters, and Ethernet cards.

There are multiple ways of implementing the present innovation, e.g., an appropriate API, tool kit, driver code, operating system, control, standalone or downloadable software object, etc. which enables applications and services to use the advertising techniques of the invention. The claimed subject matter contemplates the use from the standpoint of an API (or other software object), as well as from a software or hardware object that operates according to the advertising techniques in accordance with the invention. Thus, various implementations of the innovation described herein may have aspects that are wholly in hardware, partly in hardware and partly in software, as well as in software.