The invention relates to providing dynamic content in video games. More specifically, the invention relates to storing dynamic content within devices intermediate to a dynamic content server and a video game processing device.
In order to mitigate the cost of producing increasingly sophisticated video game consoles, often video game consoles are designed with very advanced processing features but little extraneous or general-purpose hardware. One hardware device that is not common to all video game consoles is fast, efficient, large-scale perpetual read-write storage. Some game consoles such as the XBOX® include a hard disk drive for providing fast perpetual storage for saving games, for storing game related data, and for storing of programming information. Other game consoles such as the PlayStation II are absent a hard disk drive.
It is becoming desirable to support dynamic delivery of advertising content within video games. Dynamic advertising content allows an advertiser to compensate the producer of a video game for the privilege of promoting a product or service within the game when played. Dynamic advertisements are designed to be downloaded from a server via a wide area network, such as the Internet, and displayed during a video game session.
Unfortunately there are technical challenges associated with delivering dynamic advertising to video games during execution thereof. First, video game performance should not be impacted by advertising data delivery—a player should not wait for a scene to be rendered because advertising data is being received. Second, video game visuals should be adversely unaffected by the advertising content—it should appear complete and as if it belongs within the scene. Third, advertising content should not consume necessary processing or memory resources within the gaming system.
When a personal computer supports a video game session featuring dynamic advertising, a video game when executed requests advertising data from a server via the Internet. The advertising data is transmitted from the server via available bandwidth when the personal computer network port and processor are sufficiently available to receive the advertising data. Since the gamer does not wish to wait for advertising data to arrive, any advertising data received is stored on a hard disk drive until the game execution has a need for the advertising data. In this way, at some future time when a video game session is executed a same advertising data remains available. As such, the personal computer resources allow for preloading of advertising data to allow for high performance game execution without concern for bandwidth, advertising data size, or gaming system limitations. While personal computers are often used to play video games, it is more common to play video games using a video game console. As is well known in the art, consoles represent an inexpensive and consistent platform to support video games. Unfortunately, as noted above, many console systems do not support hard disc drives and, as a result, are not as well suited for providing dynamic advertising according to the above identified method.
As gaming with Internet enabled consoles becomes more popular there is increasing demand for providing a dynamic advertising solution that works with a console system that does not have a large non-volatile random access read-write memory. One option is to provide or sell a large non-volatile random access memory for use with the game consoles. This solution is flawed because of the additional cost of providing a flash memory card or a hard disk drive with the game to support advertising is unlikely to be acceptable to consumers and therefore would result in video game console sales generating a significant loss for their manufacturer. Unless there is a very large return on this loss, the resulting business model is unlikely to be acceptable. It would be advantageous to provide a method for supporting delivery of dynamic advertising content to video games in execution on Internet connected consoles that other than have large non-volatile random access memory storage.
In accordance with the invention there is provided a method of providing a proxy server comprising: executing on a computing device video game software having an opportunity to provide dynamic content; establishing a first data communications link between the computing device and a first server; providing a proxy server accessible to and remote from the computing device; establishing a second data communications link between a content server and the proxy server; transferring electronic data from the content server to the proxy server; establishing a third data communication link between the proxy server and the computing device; transferring the electronic data from the proxy server to the computing device; and, providing dynamic content in the video game in dependence upon the electronic data.
In accordance with another aspect of the invention there is provided a system comprising: a first server for providing dynamic content; a first computing device for executing a video game; and, a first proxy server for retrieving of content from the first server and for, at a later time, providing the content to the first computing device for use within the video game.
In accordance with another aspect of the invention there is provided a storage medium having data stored therein, the instruction data for when executed resulting in the steps of: receiving a request for dynamic content from a video game in execution on a computing device at a remote location; providing a proxy server accessible to and remote from the computing device; establishing a second data communications link between a content server and the proxy server; and, transferring electronic data from the content server to the proxy server, the content provided to the proxy server fro use in responding to the request for dynamic content, requested dynamic content provided from the proxy server.
The invention is now described with reference to the drawings in which:
Referring to
In use, the game console 101 executes instructions for resulting in a gaming session supporting advertising spots within the game. The advertising spots are suitable for impressing advertising content provided independent from the media in which the game software is provided. Herein, the game software is optionally referred to as an advertising enabled game. In order to provide advertising content dynamically, the advertising content is provided to the advertising enabled game via WAN 106.
Downloading of advertising data from an advertising server via a public network both is time consuming and occurs in a non-guaranteed and non-predictable fashion. Both the routing of data within the public network and the response time of the server and of other servers disposed between the game console and the advertising server is other than consistent. Thus, it is expected that when the game requests advertising data at a time immediately preceding a time when the advertisement is provided on the screen 103 then the appropriate advertising data is often unavailable to provide the advertising impression. Therefore, it is desirable to pre-store the advertising data within the game console for instant retrieval when needed. This is typically performed near video game start-up. When the game console 101 has access to a local hard disc drive then it is a simple matter to store the advertising data locally on the hard disc or a fast flash random access memory for present and future use. Unfortunately, without a large memory store and without changing video game designs, this is difficult absent a large persistent store.
According to the present invention, advertising data is pre-stored within the network accessible to the game console but more proximate the game console than the advertising server for retrieval therefrom such that downloads of the advertising data are more readily accessible, more reliably accessible and more predictable. This reduces demand on the advertising server 107 and increases reliability of advertising data delivery timing.
Referring to
In use, a gamer initiates a video game session on the computing device 201. The computing device 201 determines that there are advertising spots available. The computing device 201 then queries the advertising server 207 for advertising data. Since, the computing device 201 does not feature an available and sufficiently large non-volatile memory for storing advertising data, a proxy server is requested. Within the proxy server is allocated electronic memory for storing of advertising data. Thus, when the computing device requests advertising data associated with twenty advertisements, the data associated with the twenty advertisements is retrieved by the proxy server from the advertising server. Clearly, the copying of data to the proxy server occurs independent of the hardware of the computing device 201. Thus, data is optionally transferred to the proxy server when the computing device 201 is not in operation. Further, the proxy server optionally supports much higher bandwidth than the computing device 201 and, as such, copying of the advertising data often occurs quite rapidly. Here, the proxy server comprises a data storage device. The choice of the location of the proxy server is at least partially dependent upon bandwidth characteristics between the proxy server and the computing device 201 and available proxy servers. Preferably, the proxy server is disposed with as little intervening network infrastructure between the proxy server and the computing device 201 to ensure network communication performance therebetween. Alternatively, the proxy server is disposed with some level of guaranteed service between the proxy server and the computing device 201. This helps support efficient data transfer from the proxy server to the computing device 201. Additionally, since the data is available from the proxy server, downloading the advertising data to the computing device with a just in time (JIT) approach is supported. Alternatively, the advertising content is downloaded a little earlier in case of delays. Since the computing device 201 has all of the advertising data provided by the proxy server the downloading of the data is very much more efficient regardless of a location of the computing device 201.
For example, when a distributed server provider is the proxy server, the computing device 201 optionally determines an approximate data transfer rate for data transferred from the proxy server to the computing device 201. When the game executes, it communicates to the proxy server the advertising data it requires. The proxy server then awaits a further indication from the game that a particular advertising datum is required. This further indication is provided before the advertising datum is actually used by the game by an amount of time dependent upon the determined data transfer rate and an amount of data within the advertising datum. By adding some additional time it is possible to ensure complete advertising data delivery on time in a large majority of situations.
The above embodiment of the invention serves to mitigate the problems of providing dynamic advertising content to a computing device. In some cases it is insufficient to provide a high quality gaming experience due to bandwidth constraints between the computing device 201 and the proxy server. Thus, optionally an instruction is executed to determine a relative time for downloading the advertising data. If this relative length of time is above a known threshold then the computing device makes a request for the same data in a-format with higher compression. Alternatively, instead of compressing the advertising data, a request is made for alternative advertising textures that occupies less memory and therefore consumes less time to download. Further alternatively, both lower quality and higher compression are used together to result in even lower bandwidth requirements.
Referring to
Optionally, when insufficient resources are available to support transfer of advertising data to the computing device 301, a request is provided for the advertising data in a compressed form. Alternatively, the advertising data is requested for a lower resolution advertisement, thereby occupying less memory.
Since the ISP is coupled with the network through a high bandwidth connection, the ISP has access to the advertising content data with less delay and optionally comprises independent advertising management software for maintaining updated advertising content even when the video game is other than being played. Thus, game performance and proxy server performance are maintained with little impact to the ISP or the computing device 301.
Referring to
In use, a gaming session is initiated on the computing device 401. The gaming session supports dynamic advertising. The video game software in execution within the computing device 401 requests dynamic advertisements from the advertising server 407 via the router 409 and the public network 406. Due to insufficient memory resources of the computing device 401, a proxy server is used. In
Sometimes the personal computer 410 is not available while the computing device 401 is used. Often it is beneficial to combine the teachings of two or more proxy server embodiments. Thus, when the hard disc drive of the personal computer 410 is other than available advertising data is provided from a secondary proxy server that is optionally disposed within at least one of the ISP and the public network 406.
A network connection common to many video game console devices supports very high bandwidth relative to the bandwidth normally associated with home Internet connection. Further, the computing device optionally supports a separate network connection for coupling with a WAN and a network connection to connect the computing device to other computing devices.
Referring to
Though the above embodiments refer to a proxy server for supporting a single video game processor, optionally, a single proxy supports multiple video games and/or multiple video game processors. For example, when a server of an ISP acts as a proxy server, it optionally supports several video game processors simultaneously or concurrently. For example, when a first video game—GAME A—is initiated on a video game processor, it contacts an ad server and then tries to establish a proxy. The server on the ISP, already being set up to act as proxy, replies and the proxy server connection is formed. Since the server is already serving ads to GAME A, when a further ISP subscriber initiates GAME A on their video game processor, the ISP serves GAME A with a same proxy server. This limits bandwidth, storage and processor resources consumed in ad serving. For larger ISPs, optionally more than a single proxy is maintained to support a larger on-line enabled game community.
Of course, the proxy server for supporting multiple video game processors provides a level of efficiency. Its advertising content is typically more up to date as it is frequently updated.
Alternatively, the proxy updates ad content on its own during off-peak bandwidth hours. These are typically times when video game sessions are not being started in mass. For example, from 4 AM to 6 AM bandwidth consumption is often quite low. The proxy optionally updates all advertising content during this time period in order to reduce overhead for supporting in game advertising.
Alternatively, a plurality of computing devices communicates via an ad hoc wireless network. Using the ad hoc network, a computing device is able to obtain dynamic content from other computing devices within the ad hoc network that have garnered advertising content from outside the functional wireless range of the computing device.
Various embodiments of the invention make specific reference to a hard disc drive as a suitable non-volatile storage medium for supporting a proxy server that stores advertising data. A person of skill in the art will appreciate that a variety of other forms of non-volatile storage media, such as flash memory devices, are also suitable.
A person of skill in the art will appreciate that the invention is well suited to a variety of devices that support data communication and video games. For example, a cellular telephone that does not have a large non-volatile memory is suitable for use with various embodiments of the invention. Similarly, personal digital assistants (also referred to as PDAs) are similarly suitable. A person of skill in the art will appreciate that an advertising site would comprise at least an advertising server for storing and providing advertising data. Further optionally, a data communications connection between a computing device used to support a video game session and an advertising site is optionally established using a broker. Thus, one of skill in the art would likely refer to a game console supporting a gaming environment having advertising spots therein, in communication with an advertising server over an Internet connection, in which the data connection is supported by an advertising broker as a “broker mediated advertising gaming environment.”
Further, for large advertising assets comprising several advertisements—ads to be shown in succession, the use of a proxy allows the ad campaigns to be divided into separately delivered content to reduce overhead for the video game processor.
A use of compression is sometimes advantageous. In order to be advantageous, a processing cost of decompression is less than a cost of transferring and storing the data in uncompressed form. When compression is used, storage requirements on a proxy server or on the local system are reduced allowing for storage of more advertising content. Conversely, when advertising content is decompressed by the video game processor, availability is highly predictable. Thus storage of advertising content within a local cache in a compressed format for decompression nearer its use is advantageous for maintaining more advertising data in a smaller store. Advantageously, this also reduces a cost associated with storing advertising content for video games that are other than being played. Further advantageously, this reduces bandwidth for transmitting and receiving of the advertising content.
Optionally, advertising content is compressed and or expanded within the network. This occurs at the ad server, at the ad broker, at the proxy server, and/or at the video game processor. Further, different compression methods are useful for different stages of the communication path when desired.
In another embodiment of advertising content management, the advertising content is stored in compressed form and when a video game is initiated, the advertising content for that video game when current is decompressed. This gives rise to two significant advantages. Decompression occurs in an order for ensuring decompression of advertising content before it is needed within the video game and storage requirements for advertising content other than presently in use are reduced. Of course, network bandwidth is also saved when content is transmitted in a compressed form. Though this adds a level of complexity in managing a store of advertising content some of which compressed and some of which is not, it also adds a level of flexibility. For example, a video game processor analyses network delays and requests all advertising data in compressed form to save on data delivery time. Alternatively, when a proxy is local to a video game processor network, advertising content is requested decompressed to off load de-compression from the video game processor.
Numerous other embodiments of the invention will be apparent to one of skill in the art without departing from the spirit and the scope of the invention.
This application claims benefit from United States Provisional Application No. 60/636,546 filed on Dec. 17, 2004, the entire contents of which is incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
60636546 | Dec 2004 | US |