MLchartDataset catalogue

Patent · US9592443B2 · B2 · US

Data store for a modular assembly system

(11) Publication number
US9592443B2
(21) Application number
14/205,077
(22) Filing date
2014-03-11
(30) Priority date
2014-03-11
(43) Publication date
2017-03-14
(45) Date of grant
2017-03-14
(51) IPC
A63F 13/235; A63F 13/73; H04L 29/08; A63F 13/245; A63F 9/24; H04L 29/06; H04W 12/06
(52) CPC
  • G06F Electric digital data processing: 13/102
  • A63F Card, board, or roulette games; indoor games using small moving playing bodies; video games; games not otherwise provided for: 13/235, 13/245, 13/58, 13/73
  • A63H Toys, e.g. tops, dolls, hoops or building blocks: 2200/00
  • H04L Transmission of digital information, e.g. telegraphic communication: 63/08, 67/1097, 67/125, 67/131, 67/38
  • H04W Wireless communication networks: 12/06, 12/069
(73) Assignee
Microsoft Technology Licensing LLC
(72) Inventors
Nicolas Villar; Haiyan Zhang; James William Scott; Greg Saul; Alexandra Keeley Bunting; Lee Jason Schuneman; Philip Robert Harrison
(54) Title
Data store for a modular assembly system
(57) Abstract

A data store for a modular assembly system is described. The data store comprises a number of records, each record relating to a physical module in the modular assembly system and comprising a module ID, an owner ID for the module and one or more properties fields. The properties field(s) define any property of the module and different records may define different properties. At least one of the fields in each data record (e.g. the module ID or owner ID) is verified by an authentication service. A user assembles two or more modules into a coherent physical whole object to act as a user input device to an interactive software experience. The data store communicates with the interactive software experience and causes a change in behavior of the interactive software experience in response to a check of the data records for each of the modules in the object.

Full text
View on Google Patents

Claims (20)

  1. A system comprising a storage device including a data store arranged to store a plurality of data records associated with physical hardware modules which can be assembled by a user to form a coherent physical whole object which acts as a user input device for an interactive software experience, each data record relating to a physical hardware module and comprising: an identifier for the module; and at least one field defining a property of the module; wherein at least one field in the data record is verified by an authentication service and wherein the data store is further arranged to communicate with the interactive software experience to cause a change in behavior of the interactive software experience in response to a check of a plurality of data records in the data store; and at least one of: each data record further comprising an identifier for an owner of the module and at least one of the identifier for the module and the identifier for the owner of the module being verified by the authentication service; at least one processor arranged to change an owner identifier in a data record stored in the data store from a first owner ID to a second owner ID in response to data received from a user corresponding to the first owner ID; or at least one processor arranged to transfer the at least one field defining a property of the module from a first data record comprising a first module ID and a first owner ID to a second data record comprising a second module ID in response to data received from a user corresponding to the first owner ID.
  2. The system according to claim 1, wherein the data store further comprises: an interface which provides centralized access to the data records for interactive software experiences and users.
  3. The system according to claim 1, wherein the data store is a distributed data store.
  4. The system according to claim 1, wherein the data store is a centralized data store.
  5. The system according to claim 1, wherein each data record further comprises an identifier for an owner of the module and at least one of the identifier for the module and the identifier for the owner of the module are verified by the authentication service.
  6. The system according to claim 1, wherein the property of the module comprises one or more of: GPS data, interoperability information, permissions data, statistics for the module, game data, state data, a reference to a secondary database and an identifier of a temporary owner of the module.
  7. A method comprising: storing, at a storage device, a plurality of data records in a data store, each data record relating to one of a plurality of physical hardware modules which can be assembled by a user to form a coherent physical whole object which acts as a user input device for an interactive software experience executing on one or more processors, each data record comprising: a module ID and at least one field defining a property of the module; providing information relating to one or more data records to an interactive software experience, the information causing a change in operation of the interactive software experience; and at least one of: each data record further comprising an identifier for an owner of the module and at least one of the module ID and the identifier for the owner of the module being verified by an authentication service; changing an owner identifier in a data record stored in the data store from a first owner ID to a second owner ID in response to data received from a user corresponding to the first owner ID; or transferring the at least one field defining a property of the module from a first data record comprising a first module ID and a first owner ID to a second data record comprising a second module ID in response to data received from a user corresponding to the first owner ID.
  8. The method according to claim 7, wherein providing information relating to one or more data records to an interactive software experience comprises: receiving a request from the interactive software experience identifying a plurality of modules connected together to form a coherent physical whole object; and providing at least a portion of a data record for each of the identified modules to the interactive software experience.
  9. The method according to claim 8, further comprising: authenticating the interactive software experience prior to providing the portions of the data records.
  10. The method according to claim 8, further comprising: receiving the at least a portion of a data record for each of the identified modules at the interactive software experience; analyzing the data received; and in response to the analysis, updating operation of the interactive software experience.
  11. The method according to claim 10, wherein updating operation of the interactive software experience comprises one or more of: enabling functionality within the interactive software experience; disabling functionality within the interactive software experience; and modifying functionality within the interactive software experience.
  12. The method according to claim 7, wherein providing information relating to one or more data records to an interactive software experience comprises: receiving a query from the interactive software experience identifying a plurality of modules connected together to form a coherent physical whole object; and analyzing the query and data records for each of the identified modules.
  13. The method according to claim 12, further comprising: in response to the analysis, updating a data record for one or more of the identified modules.
  14. The method according to claim 12, wherein a data record for an identified module comprises a property field comprising a reference to a secondary database, and wherein analyzing the query and data records for each of the identified modules comprises: accessing data stored in the secondary database.
  15. The method according to claim 12, wherein analyzing the query and data records for each of the identified modules comprises at least one of: checking the identified modules for duplicate module IDs; and checking validity of the module IDs of the identified modules; and checking information concerning the past uses of the same module IDs.
  16. The method according to claim 12, wherein analyzing the query and data records for each of the identified modules comprises: checking interoperability of the identified modules based on at least one of a property field in a data record for an identified module comprising interoperability information and owner identifiers in the data records for the identified modules; and providing a query result to the interactive software experience.
  17. The method according to claim 7, further comprising: changing an owner identifier in a data record stored in the data store from a first owner ID to a second owner ID in response to data received from a user corresponding to the first owner ID.
  18. The method according to claim 7, further comprising: transferring the at least one field defining a property of the module from a first data record comprising a first module ID and a first owner ID to a second data record comprising a second module ID in response to data received from a user corresponding to the first owner ID.
  19. A system comprising: a storage device including a data store arranged to store a plurality of data records, each data record relating to one of a plurality of physical hardware modules which can be assembled by a user to form a coherent physical whole object which acts as a user input device for an interactive software experience; wherein the data store is further arranged to communicate with the interactive software experience to cause a change in behavior of the interactive software experience in response to a check of a plurality of data records in the data store; and at least one of: at least one processor arranged to change an owner identifier in a data record stored in the data store from a first owner ID to a second owner ID in response to data received from a user corresponding to the first owner ID; at least one processor arranged to transfer at least one field defining a property of the module from a first data record comprising a first module ID and a first owner ID to a second data record comprising a second module ID in response to data received from a user corresponding to the first owner ID; or a centralized service arranged to provide centralized access to the data records for interactive software experiences and users, wherein at least one field in the data record is verified by an authentication service and wherein each data record comprises: an identifier for the module; an identifier for an owner of the module; and at least one field defining a property of the module.
  20. The system according to claim 19, further comprising the interactive software experience, wherein the interactive software experience comprises device-executable instructions which when executed by a processor cause the processor to communicate a set of module identifiers to the service, the set of module identifiers corresponding to modules connected together to form an object acting as a user input device to the interactive software experience.

Description

There are many ways that a user can interact with a computer game and typically a user controls the game via a keyboard and mouse, games controller (which may be handheld or detect body movement) or touch screen, dependent upon the platform on which the game is being played (e.g. computer, games console or handheld device). A number of games have also been developed in which gameplay is enabled (or unlocked) through the use of physical character toys which are placed on a custom base connected to a games console. By placing different toys on the custom base, different gameplay is enabled.

The embodiments described below are not limited to implementations which solve any or all of the disadvantages of known gaming systems.

The following presents a simplified summary of the disclosure in order to provide a basic understanding to the reader. This summary is not an extensive overview of the disclosure and it does not identify key/critical elements or delineate the scope of the specification. Its sole purpose is to present a selection of concepts disclosed herein in a simplified form as a prelude to the more detailed description that is presented later.

A data store for a modular assembly system is described. The data store comprises a number of records, each record relating to a physical module in the modular assembly system and comprising a module ID, a properties field and in various examples, an owner ID for the module. The properties field(s) define any property of the module and different records may define different properties. At least one of the fields in each data record (e.g.

Citations (44)

  • US6773322B2
  • US6149490A
  • US7695338B2
  • US6290565B1
  • WO2001012285A1
  • US20130196770A1
  • US8475275B2
  • US6773344B1
  • WO2001069829A2
  • WO2001069799A2
  • US6682392B2
  • US7003588B1
  • US6575802B2
  • US6454624B1
  • US20050132290A1
  • US6954659B2
  • US8317566B2
  • US7154363B2
  • EP1883194A1
  • US7641476B2
  • US8087939B2
  • US20070097832A1
  • US20130288563A1
  • US20070198117A1
  • US8548819B2
  • US20100167623A1
  • US20080294763A1
  • US20090081923A1
  • WO2009037679A1
  • US20090197658A1
  • US8257157B2
  • US20090307592A1
  • US20090291764A1
  • US20110021109A1
  • US20120122059A1
  • EP2311539A2
  • US20120050198A1
  • US20130122753A1
  • US8079846B1
  • US20120286629A1
  • WO2012160055A1
  • US20130109272A1
  • US20130109267A1
  • US20130165223A1
Record as JSON
{
  "publication_number": "US9592443B2",
  "country": "US",
  "kind": "B2",
  "title": "Data store for a modular assembly system",
  "abstract": "A data store for a modular assembly system is described. The data store comprises a number of records, each record relating to a physical module in the modular assembly system and comprising a module ID, an owner ID for the module and one or more properties fields. The properties field(s) define any property of the module and different records may define different properties. At least one of the fields in each data record (e.g. the module ID or owner ID) is verified by an authentication service. A user assembles two or more modules into a coherent physical whole object to act as a user input device to an interactive software experience. The data store communicates with the interactive software experience and causes a change in behavior of the interactive software experience in response to a check of the data records for each of the modules in the object.",
  "claims": [
    "1. A system comprising a storage device including a data store arranged to store a plurality of data records associated with physical hardware modules which can be assembled by a user to form a coherent physical whole object which acts as a user input device for an interactive software experience, each data record relating to a physical hardware module and comprising: an identifier for the module; and at least one field defining a property of the module; wherein at least one field in the data record is verified by an authentication service and wherein the data store is further arranged to communicate with the interactive software experience to cause a change in behavior of the interactive software experience in response to a check of a plurality of data records in the data store; and at least one of: each data record further comprising an identifier for an owner of the module and at least one of the identifier for the module and the identifier for the owner of the module being verified by the authentication service; at least one processor arranged to change an owner identifier in a data record stored in the data store from a first owner ID to a second owner ID in response to data received from a user corresponding to the first owner ID; or at least one processor arranged to transfer the at least one field defining a property of the module from a first data record comprising a first module ID and a first owner ID to a second data record comprising a second module ID in response to data received from a user corresponding to the first owner ID.",
    "2. The system according to claim 1, wherein the data store further comprises: an interface which provides centralized access to the data records for interactive software experiences and users.",
    "3. The system according to claim 1, wherein the data store is a distributed data store.",
    "4. The system according to claim 1, wherein the data store is a centralized data store.",
    "5. The system according to claim 1, wherein each data record further comprises an identifier for an owner of the module and at least one of the identifier for the module and the identifier for the owner of the module are verified by the authentication service.",
    "6. The system according to claim 1, wherein the property of the module comprises one or more of: GPS data, interoperability information, permissions data, statistics for the module, game data, state data, a reference to a secondary database and an identifier of a temporary owner of the module.",
    "7. A method comprising: storing, at a storage device, a plurality of data records in a data store, each data record relating to one of a plurality of physical hardware modules which can be assembled by a user to form a coherent physical whole object which acts as a user input device for an interactive software experience executing on one or more processors, each data record comprising: a module ID and at least one field defining a property of the module; providing information relating to one or more data records to an interactive software experience, the information causing a change in operation of the interactive software experience; and at least one of: each data record further comprising an identifier for an owner of the module and at least one of the module ID and the identifier for the owner of the module being verified by an authentication service; changing an owner identifier in a data record stored in the data store from a first owner ID to a second owner ID in response to data received from a user corresponding to the first owner ID; or transferring the at least one field defining a property of the module from a first data record comprising a first module ID and a first owner ID to a second data record comprising a second module ID in response to data received from a user corresponding to the first owner ID.",
    "8. The method according to claim 7, wherein providing information relating to one or more data records to an interactive software experience comprises: receiving a request from the interactive software experience identifying a plurality of modules connected together to form a coherent physical whole object; and providing at least a portion of a data record for each of the identified modules to the interactive software experience.",
    "9. The method according to claim 8, further comprising: authenticating the interactive software experience prior to providing the portions of the data records.",
    "10. The method according to claim 8, further comprising: receiving the at least a portion of a data record for each of the identified modules at the interactive software experience; analyzing the data received; and in response to the analysis, updating operation of the interactive software experience.",
    "11. The method according to claim 10, wherein updating operation of the interactive software experience comprises one or more of: enabling functionality within the interactive software experience; disabling functionality within the interactive software experience; and modifying functionality within the interactive software experience.",
    "12. The method according to claim 7, wherein providing information relating to one or more data records to an interactive software experience comprises: receiving a query from the interactive software experience identifying a plurality of modules connected together to form a coherent physical whole object; and analyzing the query and data records for each of the identified modules.",
    "13. The method according to claim 12, further comprising: in response to the analysis, updating a data record for one or more of the identified modules.",
    "14. The method according to claim 12, wherein a data record for an identified module comprises a property field comprising a reference to a secondary database, and wherein analyzing the query and data records for each of the identified modules comprises: accessing data stored in the secondary database.",
    "15. The method according to claim 12, wherein analyzing the query and data records for each of the identified modules comprises at least one of: checking the identified modules for duplicate module IDs; and checking validity of the module IDs of the identified modules; and checking information concerning the past uses of the same module IDs.",
    "16. The method according to claim 12, wherein analyzing the query and data records for each of the identified modules comprises: checking interoperability of the identified modules based on at least one of a property field in a data record for an identified module comprising interoperability information and owner identifiers in the data records for the identified modules; and providing a query result to the interactive software experience.",
    "17. The method according to claim 7, further comprising: changing an owner identifier in a data record stored in the data store from a first owner ID to a second owner ID in response to data received from a user corresponding to the first owner ID.",
    "18. The method according to claim 7, further comprising: transferring the at least one field defining a property of the module from a first data record comprising a first module ID and a first owner ID to a second data record comprising a second module ID in response to data received from a user corresponding to the first owner ID.",
    "19. A system comprising: a storage device including a data store arranged to store a plurality of data records, each data record relating to one of a plurality of physical hardware modules which can be assembled by a user to form a coherent physical whole object which acts as a user input device for an interactive software experience; wherein the data store is further arranged to communicate with the interactive software experience to cause a change in behavior of the interactive software experience in response to a check of a plurality of data records in the data store; and at least one of: at least one processor arranged to change an owner identifier in a data record stored in the data store from a first owner ID to a second owner ID in response to data received from a user corresponding to the first owner ID; at least one processor arranged to transfer at least one field defining a property of the module from a first data record comprising a first module ID and a first owner ID to a second data record comprising a second module ID in response to data received from a user corresponding to the first owner ID; or a centralized service arranged to provide centralized access to the data records for interactive software experiences and users, wherein at least one field in the data record is verified by an authentication service and wherein each data record comprises: an identifier for the module; an identifier for an owner of the module; and at least one field defining a property of the module.",
    "20. The system according to claim 19, further comprising the interactive software experience, wherein the interactive software experience comprises device-executable instructions which when executed by a processor cause the processor to communicate a set of module identifiers to the service, the set of module identifiers corresponding to modules connected together to form an object acting as a user input device to the interactive software experience."
  ],
  "description_excerpt": "There are many ways that a user can interact with a computer game and typically a user controls the game via a keyboard and mouse, games controller (which may be handheld or detect body movement) or touch screen, dependent upon the platform on which the game is being played (e.g. computer, games console or handheld device). A number of games have also been developed in which gameplay is enabled (or unlocked) through the use of physical character toys which are placed on a custom base connected to a games console. By placing different toys on the custom base, different gameplay is enabled.\n\nThe embodiments described below are not limited to implementations which solve any or all of the disadvantages of known gaming systems.\n\nThe following presents a simplified summary of the disclosure in order to provide a basic understanding to the reader. This summary is not an extensive overview of the disclosure and it does not identify key/critical elements or delineate the scope of the specification. Its sole purpose is to present a selection of concepts disclosed herein in a simplified form as a prelude to the more detailed description that is presented later.\n\nA data store for a modular assembly system is described. The data store comprises a number of records, each record relating to a physical module in the modular assembly system and comprising a module ID, a properties field and in various examples, an owner ID for the module. The properties field(s) define any property of the module and different records may define different properties. At least one of the fields in each data record (e.g.",
  "cpc": [
    "G06F 13/102",
    "A63F 13/235",
    "A63F 13/245",
    "A63F 13/58",
    "A63F 13/73",
    "A63H 2200/00",
    "H04L 63/08",
    "H04L 67/1097",
    "H04L 67/125",
    "H04L 67/131",
    "H04L 67/38",
    "H04W 12/06",
    "H04W 12/069"
  ],
  "ipc": [
    "A63F 13/235",
    "A63F 13/73",
    "H04L 29/08",
    "A63F 13/245",
    "A63F 9/24",
    "H04L 29/06",
    "H04W 12/06"
  ],
  "assignees": [
    "Microsoft Technology Licensing LLC"
  ],
  "inventors": [
    "Nicolas Villar",
    "Haiyan Zhang",
    "James William Scott",
    "Greg Saul",
    "Alexandra Keeley Bunting",
    "Lee Jason Schuneman",
    "Philip Robert Harrison"
  ],
  "filing_date": "2014-03-11",
  "publication_date": "2017-03-14",
  "grant_date": "2017-03-14",
  "priority_date": "2014-03-11",
  "application_number": "US-201414205077-A",
  "family_id": "52829312",
  "cited_by_count": 6,
  "citations": [
    "US6773322B2",
    "US6149490A",
    "US7695338B2",
    "US6290565B1",
    "WO2001012285A1",
    "US20130196770A1",
    "US8475275B2",
    "US6773344B1",
    "WO2001069829A2",
    "WO2001069799A2",
    "US6682392B2",
    "US7003588B1",
    "US6575802B2",
    "US6454624B1",
    "US20050132290A1",
    "US6954659B2",
    "US8317566B2",
    "US7154363B2",
    "EP1883194A1",
    "US7641476B2",
    "US8087939B2",
    "US20070097832A1",
    "US20130288563A1",
    "US20070198117A1",
    "US8548819B2",
    "US20100167623A1",
    "US20080294763A1",
    "US20090081923A1",
    "WO2009037679A1",
    "US20090197658A1",
    "US8257157B2",
    "US20090307592A1",
    "US20090291764A1",
    "US20110021109A1",
    "US20120122059A1",
    "EP2311539A2",
    "US20120050198A1",
    "US20130122753A1",
    "US8079846B1",
    "US20120286629A1",
    "WO2012160055A1",
    "US20130109272A1",
    "US20130109267A1",
    "US20130165223A1"
  ]
}

Record 4,226 of 8,000 in Patents full text (MLC-0201). Request the full dataset.