Language selection

Search

Patent 2687251 Summary

Third-party information liability

Some of the information on this Web page has been provided by external sources. The Government of Canada is not responsible for the accuracy, reliability or currency of the information supplied by external sources. Users wishing to rely upon this information should consult directly with the source of the information. Content provided by external sources is not subject to official languages, privacy and accessibility requirements.

Claims and Abstract availability

Any discrepancies in the text and image of the Claims and Abstract are due to differing posting times. Text of the Claims and Abstract are posted:

  • At the time the application is open to public inspection;
  • At the time of issue of the patent (grant).
(12) Patent Application: (11) CA 2687251
(54) English Title: LIVE GAME LOBBY
(54) French Title: SALLE DE JEU EN DIRECT
Status: Deemed Abandoned and Beyond the Period of Reinstatement - Pending Response to Notice of Disregarded Communication
Bibliographic Data
(51) International Patent Classification (IPC):
(72) Inventors :
  • BACKER, GEORG ALEXANDER (United States of America)
  • HAM, RICHARD ALLEN (United States of America)
(73) Owners :
  • MICROSOFT CORPORATION
(71) Applicants :
  • MICROSOFT CORPORATION (United States of America)
(74) Agent: SMART & BIGGAR LP
(74) Associate agent:
(45) Issued:
(86) PCT Filing Date: 2008-06-12
(87) Open to Public Inspection: 2008-12-24
Availability of licence: N/A
Dedicated to the Public: N/A
(25) Language of filing: English

Patent Cooperation Treaty (PCT): Yes
(86) PCT Filing Number: PCT/US2008/066652
(87) International Publication Number: US2008066652
(85) National Entry: 2009-11-18

(30) Application Priority Data:
Application No. Country/Territory Date
11/766,466 (United States of America) 2007-06-21

Abstracts

English Abstract

A three-dimensional rendering of a game space for a first instance of a game is displayed. The first instance of the game requests position information of avatars in game spaces of other instances of the game. Position information and a player identification for an avatar in another instance of the game is received. A position object is generated based on the position information and player identification, the position object being unable to interact with other objects in the first instance of the game. A graphical representation of the position object is displayed in the three-dimensional rendering of the game space of the first instance of the game, the graphical representation of the position object being positioned in the three-dimensional rendering of the game space based on the received position information.


French Abstract

L'invention concerne un rendu tridimensionnel d'un espace de jeu pour une première instance d'un jeu qui est affiché. La première instance de jeu demande des informations de position d'avatars dans des espaces de jeu d'autres instances du jeu. Des informations de position et une identification de joueur pour un avatar dans une autre instance du jeu sont reçues. Un objet de position est généré sur la base des informations de position et de l'identification de joueur, l'objet de position ne pouvant pas interagir avec d'autres objets dans la première instance du jeu. Une représentation graphique de l'objet de position est affichée dans le rendu tridimensionnel de l'espace de jeu de la première instance du jeu, la représentation graphique de l'objet de position étant positionnée dans le rendu tridimensionnel de l'espace de jeu sur la base des informations de position reçues.

Claims

Note: Claims are shown in the official language in which they were submitted.


WHAT IS CLAIMED IS:
1. A method comprising:
initiating (402) game play in a first instance
(314) of a game for a first player;
receiving (416) position information indicating the
position of an avatar associated with a second
player in a second instance (322) of the game,
the first instance and the second instance
being separate such that the avatar associated
with the second player cannot affect objects
in the first instance of the game;
creating (418) a virtual avatar for the second
player in the first instance of the game, the
virtual avatar such that the virtual avatar
cannot affect objects in the first instance of
the game; and
rendering (420) a graphical representation of the
virtual avatar in a three-dimensional space in
the first instance of the game at a position
that is based on the position information for
the avatar associated with the second player
in the second instance of the game.
2. The method of claim 1 further comprising:
receiving (502) an indication from the first player
that the second player is to be invited to
play in the first instance of the game;
receiving (504) an indication that the second
player has accepted the invitation; and
updating (512) game state information for the first
instance of the game to include the avatar for
the second player.
22

3. The method of claim 2 wherein updating the game
state information comprises updating the game state
information with the properties of the avatar for the second
player in the second instance of the game.
4. The method of claim 3 further comprising providing
(510) game state information for the first instance of the
game to synchronize the game state of the second instance of
the game to the game state of the first instance of the game
and to thereby allow the avatar for the second player to
interact with objects in the first instance of the game.
5. The method of claim 1 further comprising providing
(404) position information for an avatar associated with the
first player in the first instance of the game to allow a
graphical representation of the first player to appear in the
second instance of the game, the graphical representation
such that it cannot affect objects in the second instance of
the game.
6. The method of claim 1 wherein the graphical
representation of the virtual avatar comprises a picture of
the second player that is different from the avatar
associated with the second player.
7. The method of claim 1 further comprising:
receiving (522) an indication from the first player
that they would like to join the second
instance of the game;
receiving (524) an indication that the second
player will allow the first player to join the
second instance of the game;
saving (526) game state information for the first
instance of the game; and
23

loading (530) game state information to reflect the
game state of the second instance of the game
with the avatar associated with the first
player positioned in the second instance of
the game.
8. A computer-readable medium having computer-
executable instructions for performing steps comprising:
receiving (404) position information for a first
avatar in a first instance of a game being
played on a first machine, the first avatar
associated with a first player;
receiving (408) position information for a second
avatar in a second instance of the game being
played on a second machine, the second avatar
associated with a second player, the first
instance and the second instance being
separate such that the second avatar cannot
interact with objects in the first instance;
providing (416) the position information for the
first avatar to the second machine; and
receiving (520, 540) an indication that the first
avatar has been added to a game state of the
second instance of the game and a game state
of the first instance of the game has been
synchronized to the game state of the second
instance of the game.
9. The computer-readable medium of claim 8 wherein
providing the position information for the first avatar
comprises determining (412) that the first player is in a
playgroup for the second player.
24

10. The computer-readable medium of claim 9 wherein
determining that the first player is in a playgroup for the
second player comprises determining at least one fact from a
group of facts comprising: that the first player is in the
second player's friends list; that the first machine is
within a geographic threshold of the second machine; that the
first player and the second player are of comparable skill
levels, and that the first player and the second player
engage in the same type of in-game activities.
11. The computer-readable medium of claim 10 further
comprising receiving attributes of the first avatar and
attributes of the second avatar.
12. A computer-readable medium having computer-
executable instructions for performing steps comprising:
displaying (402) a three-dimensional rendering of a
game space for a first instance of a game;
requesting (410) position information of avatars in
game spaces of other instances of the game;
receiving (416) position information and a player
identification for an avatar in another
instance of the game, the player
identification identifying a second player;
generating (418) a position object based on the
position information and player
identification, the position object being
unable to interact with other objects in the
first instance of the game; and
displaying (420) a graphical representation of the
position object in the three-dimensional
rendering of the game space of the first
instance of the game, the graphical
representation of the position object being

positioned in the three-dimensional rendering
of the game space based on the received
position information.
13. The computer-readable medium of claim 12 wherein
rendering (420) a graphical representation of the position
object comprises rendering the graphical representation even
though a graphical representation of another object (1004) is
rendered in at least part of the same space as the graphical
representation of the position object (1000).
14. The computer-readable medium of claim 12 further
comprising allowing (500) a player to select the graphical
representation of the position object in the three-
dimensional rendering of the game space in the first instance
of the game.
15. The computer-readable medium of claim 14 further
comprising upon selection of the graphical representation of
the position object displaying (500) a selection menu that
includes a selectable command (800, 1200) to send an
invitation to the second player to play in a game state
defined for the first instance of the game.
16. The computer-readable medium of claim 15 wherein
displaying a selection menu further comprises displaying a
selectable command (802, 1202) to send a request to the
second player for the player to join a game state defined for
the other instance of the game.
17. The computer-readable medium of claim 15 further
comprising receiving (502) an indication that the player has
selected the command to send an invitation to the second
player to play in the game state defined for the first
26

instance of the game, receiving (504) an indication that the
second player has accepted the invitation, and sending (510)
game state information describing the game state defined for
the first instance of the game to a remote device to allow
the second player to play in the game state defined for the
first instance of the game.
18. The computer-readable medium of claim 17 further
comprising receiving (512) data describing properties of the
avatar in the other instance of the game, using the data to
generate the avatar in the first instance of the game, and
displaying (514) a graphical representation of the avatar in
the three-dimensional rendering of the game space of the
first instance of the game.
19. The computer-readable medium of claim 18 wherein
the graphical representation of the avatar is different from
the graphical representation of the position object.
20. The computer-readable medium of claim 16 further
comprising receiving (522) an indication that the player has
selected the command to send a request to the second player
for the player to join the other instance of the game,
receiving (524) an indication that the second player has
accepted the request, saving (526) the game state of the
first instance of the game, receiving (530) game state
information describing the game state of the other instance
of the game, and sending (532) properties of an avatar
associated with the player.
27

Description

Note: Descriptions are shown in the official language in which they were submitted.


CA 02687251 2009-11-18
WO 2008/157206 PCT/US2008/066652
LIVE GAME LOBBY
BACKGROUND
[0001] Many available video games provide two formats of
game play: solo game play, and multi-player game play. In
solo game play, a single player plays within a single
instance of a game world on a single gaming machine such as a
gaming console or a personal computer. In multi-player
gaming, the gaming machine is networked with other gaming
machines to allow multiple players to play within the same
instance of the gaming world so that each of the players can
interact with the same objects in the gaming world and so
that the gaming world appears the same to each player.
[0002] There are several different types of multi-player
gaming available. In massive multi-player online games,
thousands of players share the same instance of a game world
that is being played on a server. New players are added to
the instance of the game world by logging into the server.
This creates open access to the instance of the game world
and allows players to interact with every player logged into
the server.
[0003] In massive open online play, players log into a
server in the same manner as they would in a massive multi-
player online game. However, instead of placing all players
in the same instance of the game, the server creates multiple
parallel instances of the game. For each instance, the
server automatically identifies a small group of players that
are to be assigned to that instance. For example, the server
may identify eight players that are playing within a single
instance. In most cases, the groups are formed based on the
position of the players' avatars in the game world. An
1

CA 02687251 2009-11-18
WO 2008/157206 PCT/US2008/066652
avatar is the representation of the player in the game and
can take the form of a character or an object, such as a car.
If an avatar moves too far away from the other avatars in the
game world, the server will transfer the avatar to another
group, and thus to another instance of the game. This
transfer happens automatically without any input from the
players.
[0004] In a third type of multi-player game, a player acts
as a host and sends invitations to other players to join in
an instance of the game. To send such invitations, the
player typically interrupts a game they are currently playing
to access a list of friends or available players and to
initiate a command that sends the invitation to each of the
players.
[0005] The discussion above is merely provided for general
background information and is not intended to be used as an
aid in determining the scope of the claimed subject matter.
SUMMARY
[0006] A three-dimensional rendering of a game space
for a first instance of a game is displayed. The first
instance of the game requests position information of avatars
in game spaces of other instances of the game. Position
information and a player identification for an avatar in
another instance of the game is received. A position object
is generated based on the position information and player
identification, the position object being unable to interact
with other objects in the first instance of the game. A
graphical representation of the position object is displayed
in the three-dimensional rendering of the game space of the
first instance of the game, the graphical representation of
the position object being positioned in the three-dimensional
rendering of the game space based on the received position
information.
2

CA 02687251 2009-11-18
WO 2008/157206 PCT/US2008/066652
[0007] This Summary is provided to introduce a selection
of concepts in a simplified form that are further described
below in the Detailed Description. This Summary is not
intended to identify key features or essential features of
the claimed subject matter, nor is it intended to be used as
an aid in determining the scope of the claimed subject
matter. The claimed subject matter is not limited to
implementations that solve any or all disadvantages noted in
the background.
BRIEF DESCRIPTION OF THE DRAWINGS
[0008] FIG. 1 is a perspective view of a gaming console.
[0009] FIG. 2 is a block diagram of components of a gaming
console.
[0010] FIG. 3 is a block diagram of network connections
between servers and gaming machines.
[0011] FIG. 4 is a flow diagram for providing positional
objects in separate instances of games.
[0012] FIG. 5 is a flow diagram of a method of initiating
a multi-player game.
[0013] FIG. 6 is a screen shot showing a displayed
positional object.
[0014] FIG. 7 is a screen shot showing a highlighted
positional object.
[0015] FIG. 8 is a screen shot showing an invite menu.
[0016] FIG. 9 is a screen shot showing an avatar brought
into an instance of a game.
[0017] FIG. 10 is a screen shot of an avatar displayed
within a displayed structure of an instance of a game.
[0018] FIG. 11 is a screen shot of the positional object
of FIG. 10 highlighted.
[0019] FIG. 12 is a screen shot of an invitation.
[0020] FIG. 13 is a screen shot after a player has been
moved to another instance of a game.
3

CA 02687251 2009-11-18
WO 2008/157206 PCT/US2008/066652
[0021] FIG. 14 is a block diagram of network connections
during a multi-player game.
DETAILED DESCRIPTION
[0022] FIGURE 1 shows an exemplary gaming and media system
100. The following discussion of this Figure is intended to
provide a brief, general description of a suitable
environment in which certain methods may be implemented.
[0023] As shown in FIGURE 1, gaming and media system 100
includes a game and media console (hereinafter "console")
102. Console 102 is configured to accommodate one or more
wireless controllers, as represented by controllers 104(1)
and 104(2). A command button 135 on console 102 is used
create a new wireless connection between on of the
controllers and the console 102. Console 102 is equipped
with an internal hard disk drive (not shown) and a media
drive 106 that supports various forms of portable storage
media, as represented by optical storage disc 108. Examples
of suitable portable storage media include DVD, CD-ROM, game
discs, and so forth. Console 102 also includes two memory
unit card receptacles 125(1) and 125(2), for receiving
removable flash-type memory units 140.
[0024] Console 102 also includes an optical port 130 for
communicating wirelessly with one or more devices and two USB
(Universal Serial Bus) ports 110(1) and 110(2) to support a
wired connection for additional controllers, or other
peripherals. In some implementations, the number and
arrangement of additional ports may be modified. A power
button 112 and an eject button 114 are also positioned on the
front face of game console 102. Power button 112 is selected
to apply power to the game console, and can also provide
access to other features and controls, and eject button 114
alternately opens and closes the tray of a portable media
drive 106 to enable insertion and extraction of a storage
disc 108.
4

CA 02687251 2009-11-18
WO 2008/157206 PCT/US2008/066652
[0025] Console 102 connects to a television or other
display (not shown) via A/V interfacing cables 120. In one
implementation, console 102 is equipped with a dedicated A/V
port (not shown) configured for content-secured digital
communication using A/V cables 120 (e.g., A/V cables suitable
for coupling to a High Definition Multimedia Interface "HDMI"
port on a high definition monitor 150 or other display
device). A power cable 122 provides power to the game
console. Console 102 may be further configured with
broadband capabilities, as represented by a cable or modem
connector 124 to facilitate access to a network, such as the
Internet.
[0026] Each controller 104 is coupled to console 102 via a
wired or wireless interface. In the illustrated
implementation, the controllers are USB-compatible and are
coupled to console 102 via a wireless or USB port 110.
Console 102 may be equipped with any of a wide variety of
user interaction mechanisms. In an example illustrated in
FIGURE 1, each controller 104 is equipped with two
thumbsticks 132(1) and 132(2), a D-pad 134, buttons 136, User
Guide button 137 and two triggers 138. By pressing and
holding User Guide button 137, a user is able to power-up or
power-down console 102. By pressing and releasing User Guide
button 137, a user is able to cause a User Guide Heads Up
Display (HUD) user interface to appear over the current
graphics displayed on monitor 150. The controllers described
above are merely representative, and other known gaming
controllers may be substituted for, or added to, those shown
in FIGURE 1.
[0027] Controllers 104 each provide a socket for a plug of
a headset 160. Audio data is sent through the controller to
a speaker 162 in headset 160 to allow sound to be played for
a specific player wearing headset 160. Headset 162 also
includes a microphone 164 that detects speech from the player

CA 02687251 2009-11-18
WO 2008/157206 PCT/US2008/066652
and conveys an electrical signal to the controller
representative of the speech. Controller 104 then transmits
a digital signal representative of the speech to console 102.
Audio signals may also be provided to a speaker in monitor
150 or to separate speakers connected to console 102.
[0028] In one implementation (not shown), a memory unit
(MU) 140 may also be inserted into one of controllers 104(1)
and 104(2) to provide additional and portable storage.
Portable MUs enable users to store game parameters and entire
games for use when playing on other consoles. In this
implementation, each console is configured to accommodate two
MUs 140, although more or less than two MUs may also be
employed.
[0029] Gaming and media system 100 is generally configured
for playing games stored on a memory medium, as well as for
downloading and playing games, and reproducing pre-recorded
music and videos, from both electronic and hard media
sources. With the different storage offerings, titles can be
played from the hard disk drive, from optical disk media
(e.g., 108), from an online source, from a peripheral storage
device connected to USB connections 110 or from MU 140.
[0030] FIGURE 2 is a functional block diagram of gaming
and media system 100 and shows functional components of
gaming and media system 100 in more detail. Console 102 has
a central processing unit (CPU) 200, and a memory controller
202 that facilitates processor access to various types of
memory, including a flash Read Only Memory (ROM) 204, a
Random Access Memory (RAM) 206, a hard disk drive 208, and
media drive 106. In one implementation, CPU 200 includes a
level 1 cache 210, and a level 2 cache 212 to temporarily
store data and hence reduce the number of memory access
cycles made to the hard drive, thereby improving processing
speed and throughput.
6

CA 02687251 2009-11-18
WO 2008/157206 PCT/US2008/066652
[0031] CPU 200, memory controller 202, and various memory
devices are interconnected via one or more buses (not shown).
The details of the bus that is used in this implementation
are not particularly relevant to understanding the subject
matter of interest being discussed herein. However, it will
be understood that such a bus might include one or more of
serial and parallel buses, a memory bus, a peripheral bus,
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.
[0032] In one implementation, CPU 200, memory controller
202, ROM 204, and RAM 206 are integrated onto a common module
214. In this implementation, ROM 204 is configured as a
flash ROM that is connected to memory controller 202 via a
Peripheral Component Interconnect (PCI) bus and a ROM bus
(neither of which are shown) . RAM 206 is configured as
multiple Double Data Rate Synchronous Dynamic RAM (DDR SDRAM)
modules that are independently controlled by memory
controller 202 via separate buses (not shown) Hard disk
drive 208 and media drive 106 are shown connected to the
memory controller via the PCI bus and an AT Attachment (ATA)
bus 216. However, in other implementations, dedicated data
bus structures of different types can also be applied in the
alternative.
[0033] In some embodiments, ROM 204 contains an operating
system kernel that controls the basic operations of the
console and that exposes a collection of Application
Programming Interfaces that can be called by games and other
applications to perform certain functions and to obtain
certain data.
7

CA 02687251 2009-11-18
WO 2008/157206 PCT/US2008/066652
[0034] A three-dimensional graphics processing unit 220
and a video encoder 222 form a video processing pipeline for
high speed and high resolution (e.g., High Definition)
graphics processing. Data are carried from graphics
processing unit 220 to video encoder 222 via a digital video
bus (not shown). An audio processing unit 224 and an audio
codec (coder/decoder) 226 form a corresponding audio
processing pipeline for multi-channel audio processing of
various digital audio formats. Audio data are carried
between audio processing unit 224 and audio codec 226 via a
communication link (not shown). The video and audio
processing pipelines output data to an A/V (audio/video) port
228 for transmission to a television or other display
containing one or more speakers. Some audio data formed by
audio processing unit 224 and audio codec 226 is also
directed to one or more headsets through controllers 104. In
the illustrated implementation, video and audio processing
components 220-228 are mounted on module 214.
[0035] FIGURE 2 shows module 214 including a USB host
controller 230 and a network interface 232. USB host
controller 230 is shown in communication with CPU 200 and
memory controller 202 via a bus (e.g., PCI bus) and serves as
host for peripheral controllers 104(1)-104(4). Network
interface 232 provides access to a network (e.g., Internet,
home network, etc.) and may be any of a wide variety of
various wire or wireless interface components including an
Ethernet card, a modem, a Bluetooth module, a cable modem,
and the like.
[0036] In the implementation depicted in FIGURE 2, console
102 includes a controller support subassembly 240, for
supporting up to four controllers 104 (1) -104 (4) . The
controller support subassembly 240 includes any hardware and
software components needed to support wired and wireless
operation with an external control device, such as for
8

CA 02687251 2009-11-18
WO 2008/157206 PCT/US2008/066652
example, a media and game controller. A front panel I/0
subassembly 242 supports the multiple functionalities of
power button 112, the eject button 114, as well as any LEDs
(light emitting diodes) or other indicators exposed on the
outer surface of console 102. Subassemblies 240 and 242 are
in communication with module 214 via one or more cable
assemblies 244. In other implementations, console 102 can
include additional controller subassemblies. The illustrated
implementation also shows an optical I/0 interface 235 that
is configured to send and receive signals that can be
communicated to module 214.
[0037] MUs 140(1) and 140(2) are illustrated as being
connectable to MU ports "A" 130(1) and "B" 130(2)
respectively. Additional MUs (e.g., MUs 140(3)-140(4)) are
illustrated as being connectable to controller 104(1), i.e.,
two MUs for each controller. Each MU 140 offers additional
storage on which games, game parameters, and other data may
be stored. In some implementations, the other data can
include any of a digital game component, an executable gaming
application, an instruction set for expanding a gaming
application, and a media file. When inserted into console
102 or a controller, MU 140 can be accessed by memory
controller 202.
[0038] Headset 160 is shown connected to controller
104(3). Each controller 104 may be connected to a separate
headset 160.
[0039] A system power supply module 250 provides power to
the components of gaming system 100. A fan 252 cools the
circuitry within console 102.
[0040] Under some embodiments, an application 260
comprising machine instructions is stored on hard disk drive
208. Application 260 provides a collection of user
interfaces that are associated with console 102 instead of
with an individual game. The user interfaces allow the user
9

CA 02687251 2009-11-18
WO 2008/157206 PCT/US2008/066652
to select system settings for console 102, access media
attached to console 102, view information about games, and
utilize services provided by a server that is connected to
console 102 through a network connection. When console 102
is powered on, various portions of application 260 are loaded
into RAM 206, and/or caches 210 and 212, for execution on CPU
200. Although application 260 is shown as being stored on
hard disk drive 208, in alternative embodiments, application
260 is stored in ROM 204 with the operating system kernel.
[0041] Gaming system 100 may be operated as a standalone
system by simply connecting the system to monitor, a
television 150 (FIGURE 1), a video projector, or other
display device. In this standalone mode, gaming system 100
enables one or more players to play games, or enjoy digital
media, e.g., by watching movies, or listening to music.
However, with the integration of broadband connectivity made
available through network interface 232, gaming system 100
may further be operated as a participant in a larger network
gaming community allowing, among other things, multi-player
gaming.
[0042] The consoles described in FIGS. 1 and 2 are just
one example of gaming machines that can be used with various
embodiments described herein. Other gaming machines such as
personal computers may be used instead of the gaming console
of FIGS. 1 and 2.
[0043] FIG. 3 provides a block diagram of multiple gaming
machines 300, 302 and 304 connected through a network 306 to
an inter-player communication server 308 and a game-specific
avatar-tracking server 310.
[0044] Player A 312 is playing game instance A 314 on
gaming machine A 300. Game instance A 314 includes a game
state A 316 that describes the position and status of every
object and avatar in a three-dimensional gaming environment
of game instance A 314. Players can include human players

CA 02687251 2009-11-18
WO 2008/157206 PCT/US2008/066652
such as player A 312 and artificial intelligence robots (AI
bots) that control the movement of their avatar.
[0045] Player B 318 and player C 320 are playing
respective separate game instances 322 and 324 on respective
gaming machines 302 and 304. Game instance B 322 has game
state B 326 and game instance C 324 has game state C 328.
Game state A 316, game state B 326, and game state C 328 are
all different since game instance A 314, game instance B 322,
and game instance C 324 are separate instances of the game.
Note that game instance A 314, game instance B 322, and game
instance C 324 are all for the same game but are different
instances of that same game. As a result, the separate
instances may contain similar objects and environments but
the status of at least one object or avatar will be different
in any two of the game instances. Further, the avatar for
each player in a particular instance cannot affect objects in
other game instances. Thus, the avatar for player A in game
instance A 314 cannot affect objects in game instance B 322
or objects in game instance C 324. As described herein,
players A, B and C are said to be remote from each other
because they are using separate gaming machines. Those
skilled in the art will recognize that although the players
are said to be remote from each other, they may be located in
the same building or room as long as they are using a
separate gaming machine.
[0046] Inter-player communication server 308 provides a
set of communication services 340 that allow players to
communicate with each other through gaming machines 300, 302
and 304. In order to facilitate such communications, inter-
player communication server 308 includes user login services
342 that require the players to log into inter-player
communication server 308. During login, login services 342
obtain a gamer tag (a unique identifier associated with the
user) and a password from the user, as well as a console ID
11

CA 02687251 2009-11-18
WO 2008/157206 PCT/US2008/066652
that uniquely identifies the gaming machine that the user is
using and a network path to the gaming machine. The gamer
tag and password are authenticated by comparing them to
information stored in user records 344, which may be located
on the same server as user login services 312 or may be
distributed on a different server or a collection of
different servers. Once authenticated, user login services
342 stores the console ID and the network path in user
records 344 so that messages and downloadable content may be
sent to the gaming machines.
[0047] Game instance A 314, game instance B 322, and game
instance C 324 also login to game-specific avatar-tracking
server 310 using login services 350. Typically, these login
services do not require a password, but simply require the
gamer tag. Once the game instance has been logged into game-
specific avatar-tracking server, each game instance sends the
current position of the avatar for the player in the three-
dimensional gaming world of the game instance to avatar-
tracking server 310. In some embodiments, each game instance
may also send attributes of the player's avatar including
level, region, indoors, outdoors, health, weapons, and
awards. The player, avatar position, and attributes are
stored in a player and avatar position database 352 on
avatar-tracking server 310. As the player moves the avatar
within the three-dimensional game world of the game instance,
the game instance provides position and attribute updates to
an avatar update 354 in avatar-tracking server 310. Based on
this information, avatar update 354 updates player and avatar
position database 352 to reflect the new position and
attributes of the avatar.
[0048] Under the several embodiments described below, the
network structure of FIG. 3 is used to distribute information
about the position of avatars so that an instance of a game
knows the location of avatars in other instances of the game.
12

CA 02687251 2009-11-18
WO 2008/157206 PCT/US2008/066652
The game instance then uses this position information to
create a position object that can be rendered in the three-
dimensional graphical environment of the gaming instance.
For example, through these embodiments, player A is able to
see a graphical representation of the position of player B's
avatar in a position corresponding to the position of player
B's avatar in game instance B 322. The position objects
shown in a game instance are not able to interact with other
objects in the game instance. Instead, each position object
is a "ghost" object. Further, even though a player's avatar
may be represented by a position object in another game
instance, the player does not see the objects in that other
game instance. Instead, the player only sees the objects in
their own game instance. For example, if player B's avatar
is represented by a position object in game instance A 314,
player B would only see objects in game instance B 322 and
would not see the objects or game world of game instance A
314.
[0049] FIG. 4 provides a flow diagram of a method for
generating graphical representations of position objects
under one embodiment. In step 400, player A 312 and player B
318 login to inter-player communication server 308 using user
login services 342. At step 402, player A 312 begins solo
play of game instance A 314 on gaming machine A 300. Under
one embodiment, solo play takes place in a three-dimensional
graphical space that is rendered by game instance A 314. As
part of starting game instance A 314, game instance A 314
logs player A into game-specific avatar-tracking server 310
by providing the gamer tag of player A, the position of
player A's avatar in three-dimensional graphical space, and
attributes of player A's avatar at step 404. Under some
embodiments, game instance A 314 first checks a player-
selected setting to determine if the player wants to log into
avatar-tracking server 310. Under such embodiments, the
13

CA 02687251 2009-11-18
WO 2008/157206 PCT/US2008/066652
default setting can be that the game instance does not log
into the avatar-tracking server or that the game instance
always asks the player before attempting to log into the
avatar-tracking server. Under such embodiments, the player
may use menus in the game instance to change the values of
these settings.
[0050] At step 406, player B begins solo play of game
instance B 322 on gaming machine 302. Game instance B 322
logs player B 318 into game-specific avatar-tracking service
310 and provides an identifier for player B, the location of
player B's avatar in the three-dimensional gaming world of
game instance B 322, and attributes of player B's avatar at
step 408. Thus, after step 408, player and avatar position
database 352 includes player identification information for
player A 312 and player B 318, the position of the avatars in
their respective game instances 314 and 322, and attributes
of the avatars.
[0051] At step 410, game instance A 314 and game instance
B 322 each request a respective list of players in respective
playgroups for player A 312 and player B 314. The lists of
players in each respective playgroup represents players that
player A and player B may want to join in a multiplayer game.
[0052] At step 412, playgroup services 356 of game-
specific avatar-tracking server 310 determines the playgroups
for player A 312 and player B 318. A playgroup for a player
may be determined from such things as: players who are in a
player's friends list; players who are using gaming machines
that are in a same geographic location, such as a state or a
country; players who are of comparable skill levels; and
players who engage in the same types of ingame activities
such as fighting or exploring; attributes of the avatars; or
some combination of these things. Information about a
player's friends list, geographic location, and skill level,
can be obtained from user records 344 on inter-player
14

CA 02687251 2009-11-18
WO 2008/157206 PCT/US2008/066652
communication server 308 or under some embodiments from user
records 358 on game-specific avatar-tracking server 310.
Note that other criteria may be used to define a playgroup
for a player. In general, the definition of a playgroup is
such that if player B is in player A's playgroup, player A
will be in player B's playgroup. In the example of FIG. 4,
player A and player B are determined to be in the same
playgroup at step 412. In addition, playgroup services 356
may keep a list of players that it will not track, if
desired, and as such not include certain players in a
playgroup even though they meet the other requirements for
being part of the playgroup.
[0053] At step 416, the server sends player identification
information and avatar position information for player B to
game instance A 314 and sends player identification
information and avatar position information for player A 312
to game instance B 322.
[0054] At step 418, game instance A 314 creates a position
object, also referred to as a virtual avatar, for player B's
avatar and game instance B 322 creates a position object,
virtual avatar, for player A's avatar. The position objects
are unable to interact with other objects in their respective
game instances. Thus, the position object for player B's
avatar in game instance A 314, has no affect on other objects
in game instance A 314 as defined by game state A 316. In
addition, the creation of a position object in a game
instance does not provide access to the game instance for
another player. For example, the creation of a position
object for player B's avatar in game instance A 314 does not
provide player B 318 with access to game instance A 314. As
such, player B cannot see the objects defined by game state A
316 in game instance A 314. Instead, player B can only see
the objects defined in game instance B 322 by game state B
326.

CA 02687251 2009-11-18
WO 2008/157206 PCT/US2008/066652
[0055] At step 420, the game instances create graphical
representations of the position objects in their respective
three-dimensional graphical game world if the position
objects are located within the current view of the camera.
For example, game instance A 314 would create a graphical
representation of the position object for player B's avatar.
The graphical representation is placed in the three-
dimensional graphical space at a location specified by the
position of the avatar in the respective other game instance.
Thus, the graphical representation of the position object for
player B's avatar in game instance A 314 would be at a
position that corresponds to the position of player B's
avatar in game instance B 322.
[0056] FIG. 6 provides an example of a screen shot in
which a graphical representation 600 of a position object is
shown in a three-dimensional graphical environment 602. The
graphical representation of position object 600 includes a
player identifier 604 and an icon 606. In FIG. 6, the
graphical representation of the position object takes the
form of a two-dimensional icon. In other embodiments, the
graphical representation of the position object can include a
3D mesh that looks like the avatar of the other player, a
floating two-dimensional sprite that is a picture of the
other player that is different from the avatar of the other
player, a symbolic geometric shape with a color or size that
represents the other player's in-game prowess, or any other
desired graphical representation. In other embodiments, the
player identifier 604 may not be present in the graphical
representation, but may be accessed by selecting the
graphical representation of the position object.
[0057] FIG. 10 provides another example of a graphical
representation 1000 of a position object being displayed in a
three-dimensional graphical environment 1002. As shown in
FIG. 10, since position object 1000 cannot interact with
16

CA 02687251 2009-11-18
WO 2008/157206 PCT/US2008/066652
objects in the game instance in which it is displayed, the
graphical representation 1000 of the position object can
appear intersected by stationary objects such as house object
1004 in FIG. 10. In other words, position object 1000 and
house object 1004 at least partially occupy the same space in
the three-dimensional graphical environment. This would
generally not be possible if position object 1000 were
treated like other objects in the game instance.
[0058] By displaying such position objects, embodiments
described herein allow a player of a current instance of a
game to see where other players are playing in their own
instance of the game without those other players affecting
the current instance of the game. Thus, the graphical
representation of the position object acts as a notification
to the current player that other players within their
playgroup are playing another instance of the same game and
their avatars are located close to the current player's
avatar. As discussed further below, this allows the players
to initiate communications with each other to begin a
multiplayer game session.
[0059] FIG. 5 provides a flow diagram of a method of using
a position object to initiate a multiplayer gaming session.
In the discussion of FIG. 5, reference is made to player A
and player B for illustration purposes.
[0060] In step 500 of FIG. 5, player A selects a position
object for the avatar of player B to activate an invite menu.
Under one embodiment, as shown in FIGS. 7 and 9, a player
selects a position object by moving toward the position
object so that the position object becomes highlighted. For
instance, in FIG. 7, position object 600 of FIG. 6 has become
highlighted and in FIG. 11, position object 1000 of FIG. 10
has become highlighted as indicated by highlighting circles
700 and 1100 respectively. Once the object is highlighted,
the user can press a button on the controller to activate the
17

CA 02687251 2009-11-18
WO 2008/157206 PCT/US2008/066652
invite menu,_ which is displayed on the screen as shown in
FIGS. 8 and 12. In FIG. 8, the invite menu includes two
selectable commands. The first command 800 allows the user
to invite the remote player to join the user in their current
game. Selectable command 802 allows the user to ask the
remote player if the user may join the remote player in their
remote game. Similar commands 1200 and 1202 are provided in
the menu of FIG. 12.
[0061] At step 502, player A selects the command to invite
the player B to join the player A's game state. In FIG. 8,
this would involve selecting command 800 and in FIG. 12, this
would involve selecting command 1200. At step 504, the
player B accepts the invitation and the acceptance is
received by game instance A 314. At step 506, the game state
for player B is saved by player B's game instance.
[0062] At step 508, player A's gaming machine 300 and
player B's gaming machine 302 begin peer-to-peer
communications. Under one embodiment, this is done using
inter-player communication server 308 to obtain the network
pathway between gaming machine A 300 and gaming machine B
302. Gaming machine A 300 and gaming machine B 302 then
negotiate a communication channel to allow peer-to-peer
communications between the two machines.
[0063] At step 510, game state A is sent to game instance
B 322 and at step 512, the properties of player B's avatar in
game state B are added to game state A in both game instance
A and game instance B. The properties of player B's avatar
include the position of the avatar, the appearance of the
avatar and the status of the avatar, which includes
information such as the health or condition of the avatar,
objects held by the avatar, and the experience level of the
avatar in game state B of game instance B. Before adding the
properties of player B's avatar, the position object for
player B's avatar is removed from game instance A so that in
18

CA 02687251 2009-11-18
WO 2008/157206 PCT/US2008/066652
essence player B's avatar replaces the position object for
player B's avatar. After steps 510 and 512, game instance A
and game instance B have been synchronized to game state A
and player B's avatar has been added to game state A in place
of the position object for player B's avatar.
[0064] During the replacement of the position object with
player B's avatar, a conflict check will be made to ensure
that player B's avatar can be placed in the same position in
game state A without interfering with an existing object in
game state A. If there is a position conflict, the position
of player B's avatar will be shifted to avoid any existing
objects in game state A and to place player B's avatar in a
"safe" position, such that player B's avatar will not be
immediately destroyed based on its positioning.
[0065] At step 516, game instance A removes the position
object for player B's avatar from the three-dimensional
graphical environment and instead displays player B's avatar.
An example of the removal of a position object and the
insertion of an avatar in its place is shown in FIG. 9 where
position object 600 of FIG. 6 has been removed and avatar 900
has been inserted in its place.
[0066] At step 518, game instance B displays a graphical
representation of the game space defined by game state A.
Thus, after steps 516 and 518, player A can see the avatar of
player B, and player B can see the game space of player A' s
game state. In addition, player B is able to interact with
the objects in player A's game state. Thus, player B had its
avatar added to player A's game. Changes made by player B's
avatar to objects in player A's game will now be reflected in
game state A.
[0067] After player B's avatar has been added to game
state A and game state A has been provided to game instance
B, an indication may be sent to game-specific avatar-tracking
server 310 that these events have occurred. Under one
19

CA 02687251 2009-11-18
WO 2008/157206 PCT/US2008/066652
embodiment, based on these events, game-specific avatar-
tracking server 310 discontinues tracking the avatars for
game instance A and game instance B to thereby limit the
number of players that may be added to game state A. In
other embodiments, game-specific avatar-tracking server 310
allows more than two players to play in the same game state
and will continue tracking the position of avatars in a game
state until a maximum number of avatars in a particular game
state is reached. When the maximum number of avatars is
reached, the players and their avatars are removed from
player and avatar position database 352 and game-specific
avatar-tracking server 310.
[0068] FIG. 14 shows an example of the state of the
network connections after step 520. As indicted in FIG. 14,
the connections between game instance 314 and server 310 and
game instance 320 and server 310 have been broken and a new
connection between game instance 314 and game instance 322
has been created. Note that game instance 324 continues to
be connected to game-specific avatar-tracking server 310.
[0069] Returning to FIG. 5, player A may alternatively
select the command to request insertion into game state B as
shown by step 522. If player B grants this request at step
524, an indication that player B has granted the request is
received by game instance 314 and game state A is saved at
step 526 by game instance 314. Player A's gaming machine and
player B's gaming machine then begin peer-to-peer
communications at step 528 in the same manner as discussed
above for step 508.
[0070] At step 530, game state B is sent to game instance
A and is loaded into game instance A. At step 532 the
properties of player A's avatar are added to game state B in
place of the position object for player A's avatar. At step
534, game instance B removes the position object for player

CA 02687251 2009-11-18
WO 2008/157206 PCT/US2008/066652
A's avatar from the three-dimensional graphical environment
and displays player A's avatar in its place.
[0071] FIG. 13 provides an example of game instance A
displaying a graphical representation based on game state B
in step 536. In FIG. 13, the position of player A's avatar
is the same as in FIG. 10 such that street 1006, street 1008
and mailbox 1010 are shown in both views. However, in FIG.
13, house 1004 has been removed, tree 1300 has been added,
position object 1000 has been removed and player B's avatar
1302 has been added. Tree 1300 and player B's avatar 1302
are part of game state B. However, house 1004 was part of
game state A. As such, when game instance A switches to
displaying game state B, house 1004 disappears, and tree 1300
and avatar 1302 appear.
[0072] At step 540, an optional step of sending an
indication that player A's avatar has been added to game
state B and that game instance A has been synchronized to
game state B may be sent to game-specific avatar-tracking
server 310.
[0073] Using menu commands, the player that has been added
to a game instance may quit the game instance. When a player
elects to quit a game instance, attributes of the player's
avatar that have changed, such as reaching a new level or
reward, can be stored on the players gaming machine.
Alternatively, the player's avatar can be returned to the
game instance they were playing before being added to the
other player's game instance.
[0074] Although the subject matter has been described in
language specific to structural features and/or
methodological acts, it is to be understood that the subject
matter defined in the appended claims is not necessarily
limited to the specific features or acts described above.
Rather, the specific features and acts described above are
disclosed as example forms of implementing the claims.
21

Representative Drawing
A single figure which represents the drawing illustrating the invention.
Administrative Status

2024-08-01:As part of the Next Generation Patents (NGP) transition, the Canadian Patents Database (CPD) now contains a more detailed Event History, which replicates the Event Log of our new back-office solution.

Please note that "Inactive:" events refers to events no longer in use in our new back-office solution.

For a clearer understanding of the status of the application/patent presented on this page, the site Disclaimer , as well as the definitions for Patent , Event History , Maintenance Fee  and Payment History  should be consulted.

Event History

Description Date
Application Not Reinstated by Deadline 2014-06-12
Time Limit for Reversal Expired 2014-06-12
Inactive: Abandon-RFE+Late fee unpaid-Correspondence sent 2013-06-12
Deemed Abandoned - Failure to Respond to Maintenance Fee Notice 2013-06-12
Inactive: IPC expired 2012-01-01
Inactive: IPC removed 2011-12-31
Inactive: IPC expired 2011-01-01
Inactive: IPC removed 2010-12-31
Inactive: Cover page published 2010-01-20
Inactive: Notice - National entry - No RFE 2010-01-18
Inactive: First IPC assigned 2010-01-04
Application Received - PCT 2010-01-04
National Entry Requirements Determined Compliant 2009-11-18
Application Published (Open to Public Inspection) 2008-12-24

Abandonment History

Abandonment Date Reason Reinstatement Date
2013-06-12

Maintenance Fee

The last payment was received on 2012-05-10

Note : If the full payment has not been received on or before the date indicated, a further fee may be required which may be one of the following

  • the reinstatement fee;
  • the late payment fee; or
  • additional fee to reverse deemed expiry.

Patent fees are adjusted on the 1st of January every year. The amounts above are the current amounts if received by December 31 of the current year.
Please refer to the CIPO Patent Fees web page to see all current fee amounts.

Fee History

Fee Type Anniversary Year Due Date Paid Date
MF (application, 2nd anniv.) - standard 02 2010-06-14 2009-11-18
Basic national fee - standard 2009-11-18
MF (application, 3rd anniv.) - standard 03 2011-06-13 2011-05-06
MF (application, 4th anniv.) - standard 04 2012-06-12 2012-05-10
Owners on Record

Note: Records showing the ownership history in alphabetical order.

Current Owners on Record
MICROSOFT CORPORATION
Past Owners on Record
GEORG ALEXANDER BACKER
RICHARD ALLEN HAM
Past Owners that do not appear in the "Owners on Record" listing will appear in other documentation within the application.
Documents

To view selected files, please enter reCAPTCHA code :



To view images, click a link in the Document Description column. To download the documents, select one or more checkboxes in the first column and then click the "Download Selected in PDF format (Zip Archive)" or the "Download Selected as Single PDF" button.

List of published and non-published patent-specific documents on the CPD .

If you have any difficulty accessing content, you can call the Client Service Centre at 1-866-997-1936 or send them an e-mail at CIPO Client Service Centre.


Document
Description 
Date
(yyyy-mm-dd) 
Number of pages   Size of Image (KB) 
Description 2009-11-17 21 921
Drawings 2009-11-17 8 207
Representative drawing 2009-11-17 1 22
Claims 2009-11-17 6 204
Abstract 2009-11-17 2 76
Notice of National Entry 2010-01-17 1 205
Reminder - Request for Examination 2013-02-12 1 117
Courtesy - Abandonment Letter (Request for Examination) 2013-08-06 1 165
Courtesy - Abandonment Letter (Maintenance Fee) 2013-08-06 1 172
PCT 2009-11-17 3 94