COMPUTER SYSTEM FOR CREATING AND PLAYING LOCATION AWARE GAMES

-

Computer system for creating and playing location aware games. The creation process allows for authoring of custom location aware games, training aids, tours and scavenger hunts using a mobile computing device and map. The resulting game can be played using a mobile computing device and location receiver (e.g. GPS receiver).

Skip to: Description  ·  Claims  · Patent History  ·  Patent History
Description
BACKGROUND OF THE INVENTION—FIELD OF INVENTION

The present invention relates to systems, processes and methods that use GPS and small computing devices to create utility or entertainment value.

BACKGROUND OF THE INVENTION—PRIOR ART

The availability of small computing devices using increasingly accurate location receivers is boosting the popularity of location aware systems. In the context of this invention, a system becomes location aware obtaining coordinates from a location receiver. Global Positioning System (GPS) receivers, Differential GPS (DGPS) receivers and some wireless networks provide these systems with location coordinates. Small computing devices include personal digital assistants (PDA), Pocket PC's, Smart Phones and some pagers.

A category of location aware systems help users find their way relying on GPS, maps and navigation software. For such navigation systems, a user enters an address and is guided to that destination. Being location aware, the system can show the user in the context of a map: current location, where to go and past movements.

Navigation systems are sometimes coupled with databases of known municipal sites, landmarks and places of commerce. Said databases allow users to find places of interest near their location. Conversely, places of interest are also used as destinations.

Navigation systems provide useful directions from point A to point B and illustrate known places of interest. However, using these systems, one cannot personalize the journey. That is, using these systems, one cannot personally annotate the map with location specific ad-hoc virtual effects that get triggered as one uses the map. In the context of this invention, location specific ad-hoc virtual effects are location specific because they are tied to an actual location and corresponding point on a map. The effects are ad hoc because they are created at the discretion of the annotator or author of the personalized map. The effects are virtual because they are real only in the context of the personalized map. Finally, they are effects because their existence triggers a desired result. For example, a personalized map author may want to create a specialized map giving directions to his house. The specialized map could include video display or audio narration effects that are triggered when passing by places of interest. The places of interest may be trivial to the general public but have meaning to specific audiences. For example, a grandfather, giving his grandchildren directions to his house, might want to point out his first girlfriend's house or the tree that he hit while learning how to drive. The effects for these personal places of interest could include a picture of the girlfriend or wrecked car and an audio narration of the place and picture's significance.

U.S. Pat. No. 5,364,093 to Huston and U.S. Pat. No. 6,525,690 to Rudow introduce location aware systems used to enhance a game of golf. Like navigation systems, these systems show users in the context of a map, in this case a golf course. A unique and helpful aspect of these golf systems is the definition of zones and their use driving the player's display. Zones are geographic areas defined by bounds. The areas surrounding a golf tee or areas surrounding a putting green are zones. To define a zone, one needs to know the horizontal borders (latitude) and the vertical borders (longitude). Once entering a zone, the application triggers helpful hints within the context of the player's location. For example, entering a tee zone triggers the system to display a picture of the hole, distance to hazards and strategies for playing.

Like the navigation systems, the golf systems do not allow individuals to create personalized location aware experiences. For example, a Friday afternoon golfing league might want to annotate a golf course with entertaining challenges that change each week. A possible challenge for a certain outing could have the golfers watch a video of a famous golfer getting out of a treacherous sand trap. The challenge would be to imitate the shot and try to better the famous golfer's result. This virtual effect, the video and instructions, would be triggered as the golfers entered a zone marking the bounds around the trap area. That is, the challenge would be triggered as they approached the trap.

US Patent Application 20050049022 to Mullen introduces the creation of location aware games given a location. This application is limited in that the game makes no consideration for parks or streets within the game area. The PACS in PACMAN referenced in the application should follow a street or path within a park. This can only be done if the game creator is allowed to personally annotate the Gameboard.

U.S. Pat. No. 6,691,032 to Irish introduces a process and method for creating and executing user-definable events triggered through location data describing zones of influence. Using the invention, one could create an annotated golf course and annotated maps as previously described. However, Irish's invention does not allow for the easy creation of these games.

Irish's invention requires a game creation sub process before the game loop is executed. The creation sub process is named “Define Global Cartridge Settings” and includes the following steps and sub steps allowing for the detailed specification of game personalization:

  • Define zones of influence
  • Define items
  • Define events
  • Define non-player characters
  • Compile cartridge

Within these steps, users define attributes, conditions and events allowing flexibility in Irish's invention. This flexibility also adds to the complexity involved in creating a personalized experience. Within the patent, Irish's example application is written in a third generation programming language to allow the user to express the conditional logic and events required to create the experience. Within the “Define Global Cartridge Settings” process, this source code is compiled into a cartridge before it can be executed. It is the principle object of this invention to disclose a computer system that hides this complexity making it easier to create and play personalized location aware experiences.

BACKGROUND OF THE INVENTION—OBJECT AND ADVANTAGES

Another approach to the same problem addressed in Irish's invention is to split game creation and playing into three sub processes. FIG. 1 illustrates three sub processes comprising this invention. The first two sub processes allow for game creation. The first sub process, Develop Toolset (1a), involves the creation and compilation of a computer system that contains the complexity of a location independent, functionally specific game type. In this step, Virtual Effects are defined with behavior traits and without location. To implement the Develop Toolset computer system, a programming language is required to express the complexity of conditional logic and events.

The second sub process, Author Gameboard (1b), uses the resulting Toolset and a map to create and annotate a location specific instance of the game. Within the context of this invention, the output of the second process is called a Gameboard. To author a Gameboard the Toolset's pre defined Virtual Effects are selected and placed on the Gameboard. If needed, the Virtual Effect's attributes are changed. The Author Gameboard step is unique and easier than Irish's game creation process. Within this invention, for this sub process, user-definable events and conditional logic are not defined.

Because of its simplicity, the Toolset can be used en mass: Gameboards are easily authored and interpreted. That is, once one golf course Toolset is created, an unlimited number of golf courses could be personalized with the Toolset's pre defined Virtual Effects. Toolsets can also be created capturing the logic of a game, training aid, tour or scavenger hunt.

SUMMARY

The present invention allows for the annotation and interpretation of Virtual Effects on a map. Applied in the intent of the invention's primary embodiment, the invention facilitates a simple creation of custom location aware games, training aids, tours and scavenger hunts using a mobile computing device and map. The interpretation process allows the same to be played or experienced using a mobile computing device and location receiver (e.g. GPS receiver).

This invention allows for the implementation of a new type of game: one where players experience a virtual reality interacting with Virtual Effects within their own neighborhoods. Compared to traditional computer games, these games will promote imagination and active rather than sedentary entertainment ultimately promoting more healthy lifestyles.

Glossary:

Definition List 1 Term Definition Gameboard A virtual playfield corresponding to an actual playfield. The Gameboard has a map and geographical boundaries corresponding to the actual playfield. The Gameboard also contains one or more Virtual Effects. Gameboard Part of a Toolset allowing a user to author and edit a game Editor consisting of a Gameboard and associated Virtual Effects. Gameboard Part of a Toolset allowing a user to play a user defined Interpreter game consisting of a previously defined Gameboard and Virtual Effects. Instantiation Programming term for allocating memory on computing device for object used within computing system or method. Sidewalk A child's game and example application of this invention. Squirrel © Toolset A computer system containing a Gameboard Editor and Gameboard Interpreter. Toolset A software developer creating an application of this Creator invention. Toolset User An individual who either authors or interprets a Gameboard. Virtual An effect having appearance, size, audio and interaction Effect rules that is virtual because it is real only in the context of a Gameboard.

DRAWINGS

FIG. 1—Toolset Creation and Use

FIG. 2.1 —Toolset Class Diagram

FIG. 2.2—Virtual Effect Sub Types Class Diagram

FIG. 3—Gameboard XML Document

FIG. 4—Virtual Effect Default Images

FIG. 5—Create Toolset Process

FIG. 6—Toolset User Processes

FIG. 7—Author Gameboard Process

FIG. 8—Initialize Gameboard Process

FIG. 9—Acquire External Map Process

FIG. 10—Multiple Map Image Example

FIG. 11—Add and Edit Virtual Effect Process

FIG. 12—Gameboard Control During Author Gameboard Process

FIG. 13—Set Virtual Effect Attributes

FIG. 14—Flow of the Gameboard Interpreter

FIG. 15—Gameboard Control during Interpret Gameboard Process

FIG. 16—Play Game Process

FIG. 17—Toolset, GPS receiver, GPS receiver interface, mapping interface, Internet and network interface contained in a small computing device

FIG. 18—Additional Embodiment with Multiple Players

DETAILED DESCRIPTION

This invention defines a computer system for annotating and interpreting predefined, location specific Virtual Effects onto a map. The annotation process allows for the simple creation and editing of custom location aware games, training aids, tours and scavenger hunts using a mobile computing device and map. The interpretation process allows same to be played or experienced using a mobile computing device and location receiver (e.g. GPS receiver).

FIG. 1 illustrates this invention's high level process. In the first sub process (1a) a Toolset consisting of a Gameboard Editor, Gameboard Interpreter, Gameboard Control, Game, Virtual Effects and other supporting constructs is created and compiled. The second sub process (1b), Author Gameboard, uses the Gameboard Editor of the Toolset to create and annotate a virtual Gameboard. Once created, the Gameboard can be saved and played repeatedly using the Gameboard Interpreter (1c). In the context of this invention, the toolset is created by a Toolset Creator. The Toolset Creator is typically one or many software developers. The next two steps are executed by Toolset Users. Toolset Users are application users who are not required to have programming skills. There are two types of Toolset Users: a Gameboard Author who creates the Gameboard and a Gameboard Player who plays the resulting game. During the Interpret Gameboard step, the Game becomes location aware using a location receiver to obtain coordinates of the Gameboard Player. The Gameboard Player's coordinates are used by the Gameboard Interpreter to place the Player into the virtual Gameboard and allow interaction with Virtual Effects.

To aid the reader of this patent application, nouns representing new concepts within this invention are capitalized. For example, Gameboard Editor, Gameboard and Virtual Effect are capitalized. A map image is used within this invention but it is not a new concept and not capitalized.

The process and method defined in this invention allows for many different Toolsets or types of games. An example Toolset, Sidewalk Squirrel© from Sneaker Entertainment©, is used throughout this patent application to demonstrate the invention. To play Sidewalk Squirrel©, the Gameboard Author annotates a Gameboard with predefined Virtual Effects representing acorns, bones, dogs and other items. The Gameboard Player using a GPS device is represented within the game as a squirrel. Playing Sidewalk Squirrel©, the Gameboard Player (the squirrel) collects the Gameboard's acorns and bones for points while avoiding or eliminating attacking dogs.

The detailed description section of this patent documents this invention from three perspectives: Toolset, Author Gameboard and Interpret Gameboard. The Toolset section defines the constructs used within the invention while the Author and Interpret Gameboard sections introduce the processes that use the constructs. Other Embodiments is presented as the final section.

DETAILED DESCRIPTION—TOOLSET

FIG. 2.1 illustrates a simplified implementation of the Toolset represented as a class diagram. The legend to FIG. 2.1 (FIG. 2.1 Legend) defines the three sections of the class description: Class Name, Attributes and Methods. Within the Toolset, the Gameboard Editor (2.1a) and Gameboard Interpreter (2.1g) are responsible for the Author Gameboard and Interpret Gameboard processes respectively. To launch these processes, the Gameboard Editor has methods (2.1c) to create a new Gameboard, open an existing Gameboard and save a Gameboard. The Gameboard Interpreter has a similar open Gameboard method. The Gameboard Interpreter also has methods for playing, pausing and stopping the game (2.1i). Both of these constructs have references to (2.1b, 2.1h) and rely on the Gameboard Control (2.1d) to visually represent the Gameboard (2.1m) itself. As such, the Gameboard Control has a reference (2.1e) to the Gameboard and methods to paint the Gameboard image and to zoom and scroll (2.1f). A collection of Virtual Effects (2.1s) is managed by the Gameboard. Similar to the Gameboard Control's function, Virtual Effect Controls (2.1j) represent the physical properties of Virtual Effects. Like the Gameboard Control, Virtual Effect Controls have references to their respective Virtual Effects (2.1k) and a method to paint the image (2.1l). Within the Paint Gameboard method (2.1f) of the Gameboard Control, after the map image is presented on the physical device display, each of the referenced Virtual Effect Controls (2.1e) is required to do the same.

Different hardware platforms require different implementations to drive respective hardware components. In the art, to keep a separation between platform independent components and platform specific components, functionality is sometimes split into two classes. Within FIG. 2.1, Gameboard Control (2.1d) and Virtual Effect Control (2.1j) represent platform specific implementations of the Gameboard and Virtual Effect respectively. As such, these classes are optional. Platform specific instructions within the Gameboard and Virtual Effect could be implemented in the Gameboard and Virtual Effect classes.

In detail, a Gameboard (2.1m) consists of (2.1n) an address, a game area center location represented as longitude and latitude, north-east and south-west bounding coordinates represented as longitude and latitude, a game area size represented as a length and width, a default scale representing a ratio of real world measurements to that of a map image, a collection of Virtual Effects (2.1s) and a collection of Gameboard Maps (2.1p) each with a map image and scale (2.1q).

In detail, a Virtual Effect (2.1s) consists of a list of images, a list of audio files a size represented as a length and width, a location (2.1t) and four methods defining the Virtual Effect's behavior: movement, interaction, appearance and audio (2.1u). To create different effects for different games, the four methods are overridden within Virtual Effect subtypes (2.2d, 2.2g, 2.2j). For example, the audio trait of the dog (2.2g) Virtual Effect is repetitive barking. The prize Virtual Effect (2.2d) is silent until it is acquired where it “dings”. Since both the prize and dog are sub classes of Virtual Effect, they are treated exactly the same by the Author Gameboard and Interpret Gameboard processes. In the art, this technique is called polymorphism. Polymorphism allows the Author Gameboard and Interpret Gameboard processes to work regardless of the detailed behavior traits of the Virtual Effects which in turn allows the creation of many Toolsets or game types under this invention's process and method. It is the responsibility of the Game Creator to ensure that all Virtual Effect subclasses (2.2a) implement all necessary methods so that the game can be edited and interpreted.

Within Sidewalk Squirrel©, the dog Virtual Effect attacks the Player (the squirrel). To characterize the dog's movement, the Virtual Effect images capture different positions of a running dog. Within the movement method, the dog's speed attribute (2.2f) is used to calculate the Virtual Effect's next location. Over time, using speed and a rotating image, the dog's movement behavior is represented.

Similar to the dog's movement method, the audio method uses the list of audio files to represent an excited, barking dog. To make the barking realistic, the audio files are rotated at random. The effect is sporadic barking of different volumes and pitches similar to that of an attacking dog.

Virtual Effects also have a size and location used for intersection detection (2.1t). Within the Sidewalk Squirrel©, size is represented as a length and width of pixels corresponding to the size of the Virtual Effect's image. Virtual Effect location is represented in longitude and latitude. Described in prior art terms, each Virtual Effect represents location independent zones that have self contained conditional logic that trigger effects. Virtual Effects stay location independent until used in the Author Gameboard process where they are assigned actual locations.

FIG. 4 illustrates the appearance of 6 types of Virtual Effects used within Sidewalk Squirrel©: acorn (4a), bone (4b), finish line (4c), stop sign (4d), dog (4e) and squirrel (4f). Within FIG. 3, acorns, bones, the finish line and stop sign are prizes of different types (2.2b, 2.2c). The dog (2.2e) and player (2.2h) are named accordingly.

Within Sidewalk Squirrel©, the Virtual Effect types and behavior traits are as follows:

    • Acorn
      • Immobile
      • Intersection with Player awards points
      • Acorn appearance determined from Prize Type attribute (2.2c) and doesn't change
      • until intersection, then Acorn disappears
      • A “ding” sound is triggered by an intersection with Player
    • Bone
      • Immobile
      • Intersection gives Player Bone and awards points to Player
      • Bone appearance determined from Prize Type attribute (2.2c) and doesn't change until intersection, then Bone disappears
      • A “ding” sound is triggered by an intersection with Player
    • Dog
      • Moves towards Player at designated speed (2.2f)
      • Intersection removes one life from Squirrel unless Bone is given to dog prior to intersection. Loss of all lives ends game.
      • Running appearance simulated by changing stride images
      • Dog barks while chasing Player and gulps when receiving Bone
    • Stop sign
      • Immobile
      • Intersection with Player suspends game until Player leaves stop area
      • Stop sign appearance determined from Prize Type attribute (2.2c) and never changes
      • No audio
    • Finish line
      • Immobile
      • Intersection with Player awards point and ends game
      • Finish line appearance determined from Prize Type attribute (2.2c) and never changes
      • Intersection with Player triggers applause
    • Squirrel
      • Moves in accordance to coordinates taken from GPS device
      • Interactions defined within other Virtual Effects
      • Appearance changes when Dog nears and when Dog intersects
      • Dog intersection triggers “ouch” sound and subtracts from Lives attribute (2.2i).
      • Prize intersection adds to Score attribute (2.2i).

Gameboard (2.1m), Gameboard Map (2.1p) and Virtual Effect (2.1s) each have methods for saving XML and reading from XML (2.1o, 2.1r, 2.1u) allowing the Gameboard to be persisted, edited and interpreted when desired. XML is an acronym for extensible markup language and is frequently used in the art for persistence and process interaction. FIG. 3 represents a Gameboard XML document created by a Sidewalk Squirrel© Toolset. To create the document, the Gameboard's ToXML method (2.1o) is called from Gameboard Editor's Save Gameboard method (2.1c) which is called within the Author Gameboard process (7e). The Gameboard's ToXML method creates sections of XML (3a through 3e) corresponding to the attributes managed by the Gameboard (2.1n). The Gameboard's ToXML process then iterates through the Gameboard Maps and Virtual Effects calling their respective ToXML methods (2.1r, 2.1u) to create their corresponding XML sections (3f and 3g through 3j). The FromXML methods are similar to the ToXML methods except that the XML is read rather than written. The FromXML method within the Gameboard (2.1o) is called from the Initialize Gameboard process (8a) in both the Author Gameboard (7a) and Interpret Gameboard (14a) processes.

Following the same polymorphic technique as the behavior trait methods, Virtual Effect subtypes override their parent's persistence methods (2.2d, 2.2g, 2.2j) writing and reading different XML sections for each subtype (3g through 3j). This allows the dog XML segment (3i) to have a speed attribute corresponding to the speed attribute in the dog Virtual Effect subtype (2.2f).

As Virtual Effects define the Toolset's personality through their behavior methods, the Gameboard Control manages the Toolset's game level traits through specialized displays. Sidewalk Squirrel© is a simple game where points are won and lives are lost. To implement this behavior, the Gameboard Control manages a score board that displays score and remaining lives. Other embodiments may require different game level displays. For example, a scavenger hunt Toolset may require a display of elapsed time or time remaining in game.

During Gameboard Interpretation three additional constructs are used: a Game (2.1v), a timer and a location receiver. During interpretation, the timer is used to set the cadence of the game. The timer is also the mechanism used to start, stop and pause the game. During interpretation, the location receiver provides coordinates to the Toolset allowing the game to become location aware. The Game (2.1v) manages references to the timer and location receiver (2.1w). As such, the Game construct is optional. That is, the references can me managed within the Gameboard or Gameboard Interpreter.

Similar to the Game, the Player Virtual Effect (2.2h) is only instantiated during Gameboard Interpretation. Within Sidewalk Squirrel©, the Player holds score and lives attributes (2.2i). Similar to other Virtual Effects, the Player has methods that define behavior traits (2.2j). However, since the Game and Player Virtual Effect are not part of the Gameboard itself, these objects are not required to be persisted or represented as XML. Other embodiments of the Toolset will change this implementation. For example, a multiple player Toolset requires an XML representation to communicate Game and Player attributes between Players.

For any implementation, this invention requires but does not include a process for handling events, interfacing with device drivers or managing time. Sidewalk Squirrel© uses Microsoft's© Compact Framework© to handle these tasks. The Acquire External Map and location receiver also require external processes which will be introduced in a later Detailed Description section.

FIG. 5 illustrates the Create Toolset process. In this process, Virtual Effects (5a) are created and the Gameboard Control (5b) is altered to represent the Toolset theme. With any embodiment, the Toolset, consisting of a Gameboard Editor, Gameboard Interpreter, Gameboard Control, Game, Virtual Effects and supporting external processes is compiled into an executable (5c) which can be distributed en mass (5d). The compiled Toolset executable will be used by the Gameboard Author for Gameboard Authoring and used by the Gameboard Player for Gameboard Interpretation.

DETAILED DESCRIPTION—AUTHOR GAMEBOARD

FIG. 6 illustrates the high level processes of a Toolset User. After the Toolset is Acquired (6a), the Toolset User can Author a Gameboard (6b). Because Toolsets are location independent, Gameboards can be authored anywhere a map is available. Once the Gameboard is authored it can be interpreted again and again (6c) (6d).

FIG. 7 illustrates the Author Gameboard process. Using the Gameboard Editor, a Gameboard is constructed new or initialized (7a). A map is then acquired externally (7b), and the Gameboard is annotated by adding Virtual Effects (7c) until the Gameboard Author is satisfied (7d). Once the Gameboard Author is satisfied, the Gameboard is saved for later use (7e).

FIG. 8 further breaks down the Initialize Gameboard process. After a Gameboard is read from XML (8a), the Gameboard Control is created (8b) and given the Gameboard Map with the largest scale (8c). The largest scale Gameboard Map is used to give the Gameboard Player a view of the entire game area. Each Virtual Effect is read (8d), instantiated (8e), images are sized for each Gameboard Map scale (8f) and added to the Gameboard (8g).

In all embodiments of the game, the Gameboard map represents where the game is to be played. For example, if a Gameboard Author wanted to play Sidewalk Squirrel© within his or her locale, the Gameboard Map would encompass the neighborhood. The annotation process as well as the individually specified map makes each game experience unique and customizable.

The example game, Sidewalk Squirrel© uses Microsoft's© MapPoint© to provide Gameboard Maps within the Acquire External Map method (7b). MapPoint© is available as a web service over the Internet. Besides map images, MapPoint© provides the northeast and southwest bounding coordinates. The coordinates are represented in latitude and longitude.

FIG. 9 illustrates the detailed process of Acquiring an External Map. The process starts by entering a location represented as an address (9a) and calling the external service (9b). If the address is found by the external service, a center point represented in latitude and longitude is returned (9c). To retrieve an actual map (9e), the center point is used in subsequent calls to the service with the Gameboard's default scale and desired map size (9d). To change the game area (9i), the map service is called again with altered scale or center point to respectively alter size or location (9j).

The intent of this patent's process and method is to author and interpret a location aware game. The game itself will be played or experienced through moving around outdoors in the game area represented within the Gameboard. Because internet access is not always available outdoors, the map service is not called during the Interpret Gameboard step. Maps are acquired upfront during the Author Gameboard step and managed within the Gameboard Map construct. Many Gameboard Maps can be associated to the Gameboard itself. To represent large game areas, the map service may be called multiple times using different scales (9g) (9h).

To make it easy to scroll and zoom when larger scales are represented, multiple maps are acquired and managed within the Gameboard having varying sizes and scale. For example, within FIG. 10 the default scale is 6770. Since the device display is 1.5 inches tall by 1.1 inches wide (10a), the default game area will be 1.5×6770 by 1.1×6770 or 846 by 621 feet. To double the size of the game area, the scale can be either doubled to 13440 keeping the display size constant or the size of the map can be doubled keeping the scale constant. To allow offline scrolling and zooming, both the maps are acquired. The resulting first map is 3 by 2.2 inches with a game area of 1692 by 1242 feet with the default scale of 6770 (10b). The second map is 1.5×1.1 inches representing the same game area and a doubled scale of 13540 (10c). To zoom in, the smaller scale map is used (10d), and to zoom out, the larger scale map is used (10e). When the map size is larger than the device display for the map larger than the display (10b), scrolling is used to view the game area by setting the map display offset (10f) to the horizontal and vertical scroll values (10g and 10h).

To present realistic Virtual Effect images, as the Gameboard is zoomed using different map images, different Virtual Effect images are used corresponding to the map scale. These images are sized during the Size Images for Map Scales step (8f) of the Initialize Gameboard process (FIG. 8).

FIG. 11 further breaks down the Virtual Effect add and edit process of Gameboard Authoring. If the Virtual Effect is new, the desired type will be selected (11a). If the Virtual Effect exists, it will be selected (11a). Within this sub process, a Virtual Effect's location is designated (11b) and attributes are set (11c). If the Virtual Effect is new it is added to the Gameboard. Designating the Virtual Effect's location is performed through selection of a point on the Gameboard's map image. The selected point, represented in pixels (x and y) within the device specific Gameboard Control, is then translated to a latitude and longitude location using the Gameboard's bounding Northeast (ne) and Southwest(sw) coordinates within the following algorithm:
Latitude=ne.latitude−y*absolutevalue((ne.latitude−sw.latitude)/displayheight)
Longitude=sw.longitude+x*absolutevalue((ne.longitude−sw.longitude)/displaywidth)

FIG. 12 shows the Gameboard Control during game editing. Five of the six Virtual Effect types are represented on top of the Gameboard Control (12a). Within Sidewalk Squirrel©, to add a Virtual Effect to the Gameboard, the Virtual Effect type is designated through a mouse click (12b). Clicking on the Gameboard Control (12c), the Virtual Effect's location is designated. The x and y coordinates of the screen are then translated to latitude and longitude coordinates using the above algorithm and held by the Virtual Effect itself. After the location is designated, the Virtual Effect's attributes are set. FIG. 13 illustrates a dialog where Sidewalk Squirrel's© dog attributes are set. Within this example, the Gameboard Author can designate the dog's speed (13a).

By restricting the Gameboard Author to simply designating the location and attribute values of the Virtual Effect, the Author Gameboard process is greatly simplified. Conversely, the Gameboard Author is restricted to the creativity of the Toolset Creator for types and behavior of Virtual Effects.

DETAILED DESCRIPTION—INTERPRET GAMEBOARD

FIG. 14 illustrates the Interpret Gameboard process. Using the Gameboard Interpreter, a Gameboard is initialized (14a), a game timer is instantiated (14b), a location receiver is initialized (14c), the Gameboard Player is instantiated (14d) and the game is played (14e). The Gameboard Player is the Virtual Effect subtype whose movement and location is driven by the location receiver's coordinates. The sample Toolset, Sidewalk Squirrel©, implemented a GPS device as the location receiver. Using the GPS device's coordinates, the Player Virtual Effect becomes a proxy within the game representing the actual Gameboard Player.

This invention uses but does not address GPS. The example game, Sidewalk Squirrel© utilizes StormSource Software's© GPS.NET© application to provide connectivity to GPS receivers. During a game, GPS.NET© coordinates and levels of confidence are read into the Game itself. In turn, the Game passes these coordinates to the Player Virtual Effect. FIG. 15 illustrates a Sidewalk Squirrel© Gameboard Control with Virtual Effects instantiated. The topmost Virtual Effect is the Player (the squirrel) (15a). In this example, the actual Gameboard Player (a human), is standing at the corner of Key Boulevard and North Danville Street in Arlington, Va.

FIG. 8 further breaks down the Initialize Gameboard process. This is the same process used during Gameboard Editing. After a Gameboard is instantiated, the Gameboard Control is created and given the Gameboard Map with the largest scale. The largest scale Gameboard Map is used to give the Gameboard Player a view of the entire game area. Virtual Effects are then read, instantiated and added to the Gameboard.

FIG. 16 further breaks down the Gameboard Interpreter's Play Game process. Within this process, Virtual Effects are continuously (16b 16g) evaluated for movement (16c), interaction (16d), appearance (16e), and audio (16f). To implement the cadence of Virtual Effect evaluation a device specific timer is used (16a). This process continues until a game over condition is reached and the timer is disabled (16h). While playing, the actual Gameboard Player represented by the Player Virtual Effect is placed on the Gameboard with the other Virtual Effects. Over time, the Player Virtual Effect interacts with the other Virtual Effects by entering their zones.

During Sidewalk Squirrel©, the Play Game processes Virtual Effects uniformly. However, since the Virtual Effects implement their behavior traits differently, the game has a unique personality. For example, the dog Virtual Effect barks while attacking the Gameboard Player Virtual Effect. While attacking, the dog's image changes over time to give it a running appearance. If the dog enters the Player's zone, the interaction removes one of the three lives granted to the Player. Loss of all three lives evokes a game over condition and the timer stops. Unlike the dog Virtual Effect, acorns and bones are prizes. If the Player enters a prize Virtual Effect zone, the prize disappears (is acquired) and points are awarded. Another Virtual Effect, the finish line, is also immobile. Entering the finish line's zone allows the Player to end game a winner with remaining lives and points.

DETAILED DESCRIPTION—OTHER EMBODIMENTS

The primary embodiment of this process and method can be implemented as a single player game. FIG. 17 illustrates how a compiled Toolset (17b) interacts with the operating system (17a) and device interfaces (17d, 17e, 17f) on a small computing device for a single player. The Toolset uses the mapping (17e) and network interface (17d) to retrieve external maps from the Internet (17g). GPS interfacing software (17f) is used to receive coordinates from an internal or external GPS device (17c).

Another embodiment of this invention allows communication between multiple players. This embodiment is illustrated in FIG. 18 and requires Gameboards and Virtual Effects to be synchronized across multiple executing Toolsets (18a, 18b) during Gameboard Interpretation. This alternative embodiment supports an expanded number of Toolsets and Game themes. For example, a Toolset Creator could enhance a game of hide and seek or sharks and minnows. In both these Toolset examples, players could receive hints to where other players are hiding.

This invention's process and method as defined use a square zone represented by horizontal and vertical bounds. Another embodiment could use any shape. For example, a zone could be represented as the area within a set of points or the area could be defined by an equation: x**2+2y**2.

Size used in this invention's example implementation (Sidewalk Squirrel©) is represented as pixels. In other embodiments, size could be represented in any unit of measure: feet, inches or meters. It is required though that size correlates to the actual size of the Virtual Effect image to give the Gameboard Player a realistic experience when interacting with the Virtual Effects within a game.

Visual display may not be required by some applications. For example, tours might completely rely on audio Virtual Effects.

Wizards may aid in the creation of Virtual Effects on a Gameboard. For example, following input from a Game Author, a Wizard could be instructed to place Virtual Effects on all street corners. Likewise, a Wizard could be used to generate dog Virtual Effects in Sidewalk Squirrel© during Gameboard annotation or interpretation.

An unlimited variety of Toolsets (Games and Virtual Effects) could be created as other embodiments of this invention. The complexity of trigger conditions and effects is left to the imagination of the Toolset Creator. To follow this invention's process and method, the Virtual Effect must implement methods capturing: movement, interaction, appearance and audio. Defining these traits and corresponding methods allows the Gameboard Editor and Gameboard Interpreter to process Virtual Effects generically. That is, a newly created Virtual Effect can be processed in the same manor as the defined dog or bone from Sidewalk Squirrel©. Following are a few other example Toolsets and their respective Virtual Effects:

    • Scavenger Hunt
    • Task—Represented as a “check” symbol. Instruct player to perform a location specific task or collect an item for points.
    • Question—Represented as a question mark. Ask player location specific question. For example, ask hot dog vender for his middle name.
    • Golf Course Guide
    • Tee—Represented as a green rectangle. Give course statistics and strategies.
    • Green—Represented as an oval. Provide green undulations and speed tips.
    • Walking Tour
    • Trivia—Provide location specific trivia. For example, “Your father kissed your mother for the first time at this very spot on Sep. 3, 1968”.
    • Overlook—Represented as an eye. Provide details of significance and historical pictures of overlook.
    • Monument—Represented as a column. Provide dates of construction and pictures of historical events

Whether in its primary or alternative embodiments, this invention allows for the implementation of new location aware game types for small computing devices using location receivers. The Toolsets created using this process and method will promote active rather than sedentary entertainment ultimately promoting more healthy lifestyles.

Claims

1. Computer system for creating and playing location aware games comprising:

computing device with display;
plurality of virtual effects having size and interaction rules;
a user interface to permit a user to select and view a gameboard based off of an inputted location and assign virtual effects to locations within the gameboard;
a storage means for storing said gameboard and said plurality of virtual effects;
a second user interface to permit a user to view said gameboard and said plurality of virtual effects while playing a game;
a controller to control the location of one or more virtual effects during game play based on input from at least one of the following: a computer mouse, a screen stylus and a location receiver;
a timing device used by the controller to establish cadence of play.

2. The computer system of claim 1 wherein said computing device further comprising audio delivery.

3. The computer system of claim 2 wherein said gameboard further comprising a center represented as longitude and latitude, bounding coordinates represented as longitude and latitude, a default scale representing a ratio of real world measurements to that of a map image and a plurality of map images each with corresponding scale.

4. The computer system of claim 3 wherein said virtual effect further comprising a real world location represented in longitude and latitude, a plurality of images, a plurality of audio files, movement rules, appearance selection rules and audio selection rules.

5. The computer system of claim 4 wherein said user interfaces permit a user to change scale of said gameboard by changing gameboard map image to that of desired scale and changing plurality of virtual effect images to that of desired scale.

6. The computer system of claim 5 wherein said user interfaces permit a user to change the offset of gameboard map relative to user view to give appearance of scrolling when map image is larger than computing device display.

7. Computer system for creating and playing location aware games comprising:

computing device with audio delivery;
plurality of virtual effects having size and interaction rules;
a user interface to permit a user to select and view a gameboard based off of an inputted location and assign virtual effects to locations within the gameboard;
a storage means for storing said gameboard and said plurality of virtual effects;
a controller to control the location of one or more virtual effects during game play based on input from a location receiver;
a timing device used by the controller to establish cadence of play.

8. The computer system of claim 7 wherein said gameboard further comprising a center represented as longitude and latitude, bounding coordinates represented as longitude and latitude, a default scale representing a ratio of real world measurements to that of a map image and a plurality of map images each with corresponding scale.

9. The computer system of claim 8 wherein said virtual effect further comprising a real world location represented in longitude and latitude, a plurality of audio files, movement rules and audio selection rules.

10. Method for creating, editing and playing location aware games comprising:

plurality of virtual effects having size and interaction rules;
a method for creating and editing a gameboard based off of an inputted location and assign virtual effects to locations within the gameboard;
a method for storing said gameboard and said plurality of virtual effects;
a method for playing user interface to permit a user to view said gameboard and said plurality of virtual effects while playing a game;
a controller to control the location of one or more virtual effects during game play based on input from at least one of the following: a computer mouse, a screen stylus and a location receiver;
a timing device used by the controller to establish cadence of play.

11. The method of claim 10 wherein said gameboard further comprising a center represented as longitude and latitude, bounding coordinates represented as longitude and latitude, a default scale representing a ratio of real world measurements to that of a map image and a plurality of map images each with corresponding scale.

12. The method of claim 11 wherein said virtual effect further comprising a real world location represented in longitude and latitude, a plurality of images, a plurality of audio files, movement rules, appearance selection rules and audio selection rules.

13. The method of claim 12 wherein said gameboard is initialized by reading a file containing XML representing gameboard, instantiating gameboard, reading XML representing said plurality of maps while instantiating each map and adding to gameboard, reading XML representing said plurality of virtual effects while instantiating each virtual effect and sizing each virtual effect image to match plurality of scales contained within each of the plurality of gameboard maps and adding said virtual effect to gameboard.

14. The method of claim 13 wherein the said method of creating and editing gameboard further comprising said initialize gameboard method, an acquire external map method, an add virtual effects method, an edit virtual effects method and a save gameboard method comprising representing said gameboard, said plurality of maps and said plurality of virtual effects as XML and writing XML to a file.

15. The method of claim 14 wherein said method of adding new virtual effect comprising selecting virtual effect type, designating virtual effect location on gameboard image and setting virtual effect attribute values and wherein said method of editing existing virtual effects comprising selecting existing virtual effect, designating new location on gameboard image and changing virtual effect attribute values.

16. The method of claim 15 wherein designating virtual effect location is performed through selection of point on the gameboard map control represented in pixels (x and y) and translating to longitude and latitude using the gameboard northeast(ne) and southwest(sw) bounding coordinates, device display height in pixels and device display width in pixels in the algorithm: Latitude=ne.latitude−y*absolute value ((ne.latitude−sw.latitude)/displayheight) Longitude=sw.longitude+x*absolute value ((ne.longitude−sw.longitude)/displaywidth)

16. The method of claim 12 wherein said virtual effects have subtypes that have unique attributes, an overriding movement method, an overriding intersection method, an overriding appearance method, a unique plurality of appearance images, an overriding audio method and unique plurality of audio files.

17. The method of claim 16 wherein said movement evaluation comprising calculating next position of said virtual effect depending on conditions as defined in overriding movement method as defined in virtual effect subtype.

18. The method of claim 17 wherein said intersection evaluation comprising an iteration through plurality of virtual effects and comparing bounding coordinates for overlapping points where intersection triggers events depending on conditions as defined in said intersection method as defined in virtual effect subtype.

19. The method of claim 18 wherein said appearance method comprising of designating said virtual effect image depending on conditions as defined in overriding appearance method as defined in virtual effect subtype.

20. The method of claim 19 wherein said audio method comprising of selecting audio file depending on conditions defined within overriding audio method as defined in virtual effect subtype where selected audio file is interpreted on device specific audio driver.

21. The method of claim 20 wherein said method of interpreting gameboard comprising said initialize gameboard method, instantiating said timer, connecting to location receiver, instantiating said player virtual effect and play game method.

22. The method of claim 21 wherein said play game method further comprising starting said timing device, continuously evaluating plurality of virtual effects using timing device to set evaluation cadence until game over condition is reached where evaluation consists of executing said virtual effect subtype overriding method for movement, executing said virtual effect subtype overriding method for interaction, executing said virtual effect subtype overriding method for appearance and executing said virtual effect subtype overriding method for audio.

Patent History
Publication number: 20070087828
Type: Application
Filed: Oct 14, 2005
Publication Date: Apr 19, 2007
Applicant: (Arlington, VA)
Inventor: Alexander Robertson (Arlington, VA)
Application Number: 11/163,329
Classifications
Current U.S. Class: 463/42.000; 463/7.000
International Classification: A63F 9/24 (20060101);