Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
PERMUTABLE KNOWLEDGE-BASED VIDEO GAME AND EDITOR THEREFOR
Document Type and Number:
WIPO Patent Application WO/2014/094110
Kind Code:
A1
Abstract:
Computer-readable storage medium storing computer-readable instructions which, when executed by a computing entity, cause the computing entity to carry out a method for video game customization. The method may comprise interacting with a user through a GUI to receive information regarding at least a set of game objects for a knowledge-based video game; interacting with the user through the GUI to receive information regarding at least a set of knowledge elements, the knowledge elements being acquirable items in the game; interacting with the user through the GUI to receive information regarding a reward mechanism that links accessibility of certain ones of the game objects to acquisition of certain ones of the knowledge elements; and converting data including the received information regarding the game objects, knowledge elements and reward mechanism into parameters of a computer-readable parameter set which, when merged with a game platform, provides a customized version of the video game.

Inventors:
VILLENEUVE MAXIME (CA)
MERCIER JEAN-FRANÇOIS (CA)
QUELLET MARTIN (CA)
LABERGE MARIE-FRANCE (CA)
OUELLET MICHEL (CA)
Application Number:
PCT/CA2013/000568
Publication Date:
June 26, 2014
Filing Date:
June 10, 2013
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
GENIA INC (CA)
International Classes:
A63F13/12
Domestic Patent References:
WO2011088557A22011-07-28
Foreign References:
US20100056273A12010-03-04
US20100298050A12010-11-25
CA2622910A12007-03-29
EP1669114A22006-06-14
US20040097287A12004-05-20
Attorney, Agent or Firm:
SMART & BIGGAR (Suite 3300Montréal, Québec H3B 4W5, CA)
Download PDF:
Claims:
CLAIMS:

1. A computer-readable storage medium storing computer-readable instructions which, when executed by a computing entity, cause the computing entity to carry out a method for video game customization, the method comprising:

interacting with a user through a graphical user interface (GUI) to receive information regarding at least a set of game objects for a knowledge-based video game;

interacting with the user through the GUI to receive information regarding at least a set of knowledge elements, the knowledge elements being acquirable items in the knowledge- based video game;

interacting with the user through the GUI to receive information regarding a reward mechanism that links accessibility of certain ones of the game objects to acquisition of certain ones of the knowledge elements;

converting data including the received information regarding the game objects, knowledge elements and reward mechanism into parameters of a computer-readable parameter set which, when merged with a computer-readable game platform, provides computer- readable instructions encoding a customized version of the knowledge-based video game.

2. The computer-readable storage medium defined in claim 1, the method further comprising: causing the computer-readable instructions encoding the customized version of the knowledge-based video game to be stored in a memory.

3. The computer-readable storage medium defined in claim 2, wherein prior to the converting, the method further comprises:

assessing feasibility of building a customized version of the video game based on the received information.

4. The computer-readable storage medium defined in claim 3, wherein the converting is performed only in case a result of the assessing is positive.

5. The computer-readable storage medium defined in claim 3, wherein, in case a result of the assessing is negative, the method further comprises:

modifying the received information; and re-assessing feasibility of building a customized version of the video game based on the modified information.

6. The computer-readable storage medium defined in claim 3, wherein, in case a result of the assessing is negative, the method further comprises:

requesting modified information from the user through the GUI; and

re-assessing feasibility of building a customized version of the video game based on the modified information and the received information that was not modified.

7. The computer-readable storage medium defined in claim 1 , wherein the received information regarding the set of knowledge elements includes knowledge element identifiers respectively associated with the knowledge elements and user-specified properties of the knowledge elements, the method further comprising:

accessing a knowledge database on a basis of the knowledge element identifiers to obtain predefined properties of the knowledge elements;

wherein the pre-defined properties of the knowledge elements form part of the data that is converted into the parameters.

8. The computer-readable storage medium defined in claim 7, wherein at least one of the user- specified properties of the knowledge elements and the pre-defined properties of the knowledge elements comprises at least one of a rarity, level, domain code and position in the game.

9. The computer-readable storage medium defined in claim 7, wherein the pre-defined properties of the knowledge elements include hierarchical links among groups of knowledge elements.

10. The computer-readable storage medium defined in claim 1, wherein the computing entity is reachable by the user over the Internet.

1 1. A method for video game customization, comprising:

interacting with a user through a graphical user interface (GUI) to receive information regarding at least a set of game objects for a knowledge-based video game;

interacting with the user through the GUI to receive information regarding at least a set of knowledge elements, the knowledge elements being acquirable items in the knowledge- based video game; interacting with the user through the GUI to receive information regarding a reward mechanism that links accessibility of certain ones of the game objects to acquisition of certain ones of the knowledge elements;

converting data including the received information regarding the game objects, knowledge elements and reward mechanism into parameters of a computer-readable parameter set; and

merging the parameter set with a computer-readable game platform to provide computer- readable instructions encoding a customized version of the knowledge-based video game.

12. The method defined in claim 1 1, further comprising:

causing the computer-readable instructions encoding the customized version of the knowledge-based video game to be stored in a memory.

13. The method defined in claim 12, further comprising, prior to the converting:

assessing feasibility of building a customized version of the video game based on the received information.

14. The method defined in claim 13, wherein the converting is performed only in case a result of the assessing is positive.

15. The method defined in claim 13, further comprising, in case a result of the assessing is negative:

modifying the received information; and

re-assessing feasibility of building a customized version of the video game based on the modified information.

16. The method defined in claim 13, further comprising, in case a result of the assessing is negative:

requesting modified information from the user through the GUI; and

re-assessing feasibility of building a customized version of the video game based on the modified information and the received information that was not modified.

17. The method defined in claim 1 1 , wherein the received information regarding the set of knowledge elements includes knowledge element identifiers respectively associated with the knowledge elements and user-specified properties of the knowledge elements, the method further comprising: accessing a knowledge database on a basis of the knowledge element identifiers to obtain predefined properties of the knowledge elements;

wherein the pre-defined properties of the knowledge elements form part of the data that is converted into the parameters.

18. The method defined in claim 17, wherein at least one of the user-specified properties of the knowledge elements and the pre-defined properties of the knowledge elements comprises at least one of a rarity, level, domain code and position in the game.

19. The method defined in claim 17, wherein the pre-defined properties of the knowledge elements include hierarchical links among groups of knowledge elements.

20. The method defined in claim 1 1, wherein the computing entity is reachable by the user over the Internet.

21. A server for video game customization, comprising hardware for implementing:

a GUI to interact with a user to receive information regarding (i) at least a set of game objects for a knowledge-based video game; (ii) at least a set of knowledge elements, the knowledge elements being acquirable items in the knowledge-based video game; and (iii) a reward mechanism that links accessibility of certain ones of the game objects to acquisition of certain ones of the knowledge elements;

a customization function to convert data including the received information regarding the game objects, knowledge elements and reward mechanism into parameters of a computer-readable parameter set that is adapted to merged with a computer-readable game platform to provide computer-readable instructions encoding a customized version of the knowledge-based video game.

22. The server defined in claim 21, wherein the GUI interacts with the user over the Internet.

23. The server defined in claim 21 , further comprising a memory into which are stored the computer-readable instructions encoding the customized version of the knowledge-based video game.

24. The server defined in claim 21 , wherein the hardware further implements:

a validation function for assessing feasibility of building a customized version of the video game based on the received information.

25. The server defined in claim 21 , wherein the received information regarding the set of knowledge elements includes knowledge element identifiers respectively associated with the knowledge elements and user-specified properties of the knowledge elements, the server further comprising:

a knowledge database accessed by the customization function on a basis of the knowledge element identifiers to obtain pre-defined properties of the knowledge elements;

wherein the pre-defined properties of the knowledge elements form part of the data that is converted into the parameters.

26. The server defined in claim 25, wherein at least one of the user-specified properties of the knowledge elements and the pre-defined properties of the knowledge elements comprises at least one of a rarity, level, domain code and position in the game.

27. The server defined in claim 25, wherein the pre-defined properties of the knowledge elements include hierarchical links among groups of knowledge elements.

28. A system, comprising:

a knowledge database comprising knowledge records, each knowledge record storing an identifier of a respective knowledge element and a pedagogical challenge associated with the respective knowledge element; and

a processing entity in communication with the knowledge database, the processing entity implementing a game editor, the game editor configured for:

implementing a GUI that enables a user to interact with the knowledge database to select a subset of the knowledge elements; and

converting information regarding the selected knowledge elements into parameters of a computer-readable parameter set which, when merged with a computer-readable game platform, provides computer-readable instructions encoding a video game in which the selected knowledge elements are acquirable by correctly answering the pedagogical challenges respectively associated therewith.

29. The system defined in claim 28, wherein certain knowledge records store links to other knowledge records.

30. The system defined in claim 29, wherein the links jointly define a hierarchy among the knowledge elements identified in the knowledge records.

31. The system defined in claim 28, wherein the knowledge records store pre-defined properties of the knowledge elements, wherein the game editor is configured for:

accessing the knowledge database on a basis of the knowledge element identifiers to obtain the pre-defined properties of the knowledge elements;

wherein the pre-defined properties of the knowledge elements form part of the information that is converted into the computer-readable parameter set.

32. The system defined in claim 31 , wherein the GUI is configured to receive user-specified properties of the knowledge elements, wherein the user-defined properties of the knowledge elements form part of the information that is converted into the computer-readable parameter set.

33. The system defined in claim 32, wherein at least one of the user-specified properties of the knowledge elements and the pre-defined properties of the knowledge elements comprises at least one of a rarity, level, domain code and position in the game.

34. A method for generating computer-readable instructions for a video game, comprising:

accessing a computer-readable game platform that encodes predefined parametrizable game rules for the video game;

accessing computer-readable parameters produced using a game editor;

merging the game platform with the parameters to generate computer-readable instructions which, in case of execution by a computing entity, cause the computing entity to carry out an interactive video game in accordance with the predefined game rules parametrized by said parameters;

storing the computer-readable instructions in a memory for execution by the computing entity.

35. The method defined in claim 34, wherein the parameters include parameters related to game objects and parameters related to knowledge elements, the knowledge elements being acquirable items of the video game.

36. The method defined in claim 35, wherein the parameters include a codification of a reward mechanism that links accessibility of certain ones of the game objects to acquisition of certain ones of the knowledge elements.

37. The method defined in claim 34, wherein the interactive video game method is a first version of the interactive video game method, the method further comprising: accessing computer-readable second parameters produced using the game editor;

merging the game platform with the second parameters to generate computer-readable second instructions which, in case of execution by a computing entity, cause the computing entity to carry out a second version of the interactive video game;

storing the computer-readable second instructions in a memory for execution by the computing entity.

38. A computer-readable storage medium storing computer-readable instructions which, when executed by a computing entity, cause the computing entity to carry out a method to create an interactive video game, the method comprising:

accessing a computer-readable game platform that encodes predefined parametrizable game rules for the video game;

accessing computer-readable parameters produced using a game editor;

merging the game platform with the parameters to generate computer-readable instructions which, in case of execution by a computing entity, cause the computing entity to carry out an interactive video game in accordance with the predefined game rules parametrized by said parameters;

storing the computer-readable instructions in a memory for execution by the computing entity.

39. The computer-readable storage medium defined in claim 38, wherein the parameters include parameters related to game objects and parameters related to knowledge elements, the knowledge elements being acquirable items of the video game.

40. The computer-readable storage medium defined in claim 39, wherein the parameters include a codification of a reward mechanism that links accessibility of certain ones of the game objects to acquisition of certain ones of the knowledge elements.

41. The computer-readable storage medium defined in claim 38, wherein the interactive video game method is a first version of the interactive video game method, the method further comprising:

accessing computer-readable second parameters produced using the game editor;

merging the game platform with the second parameters to generate computer-readable second instructions which, in case of execution by a computing entity, cause the computing entity to carry out a second version of the interactive video game; storing the computer-readable second instructions in a memory for execution by the computing entity.

42. A computer-readable storage medium storing a knowledge database, comprising:

knowledge records sharing a common data structure, the data structure including at least a first field that encodes an identifier of a respective knowledge element associated with the knowledge record and a second field that encodes a pedagogical challenge associated with the respective knowledge element;

wherein the first field and the second field of the data structure are in a format that is compatible with plural game editors used for creating plural knowledge-based video games in which knowledge elements are acquirable by correctly answering pedagogical challenges associated with those knowledge elements.

43. A computer-readable storage medium storing computer-readable instructions which, when executed by a computing entity, cause the computing entity to carry out a method that comprises:

storing in memory an indication of a registered player and a global set of knowledge elements for the player;

receiving an indication of acquisition by the player of at least one previously unacquired knowledge element during game play of an instance of a particular knowledge-based video game;

augmenting the global set of acquired knowledge elements for the player with the at least one previously unacquired knowledge element;

receiving an indication of acquisition by the player of at least one additional previously unacquired knowledge element during game play of at least one of (i) a different instance of the particular video game and (ii) an instance of a different video game that is not the particular video game; and

augmenting the global set of acquired knowledge elements for the player with the at least one additional previously unacquired knowledge element.

44. The computer-readable storage medium defined in claim 43, wherein the method further comprises:

receiving an identity of the game from which the at least one previously unacquired knowledge element was acquired; storing in the memory the identity of the game in association with an identity of the knowledge element.

45. The computer-readable storage medium defined in claim 44, wherein the method further comprises:

receiving a knowledge value associated with the at least one previously unacquired knowledge element;

storing in the memory an association between the knowledge value and the identity of the knowledge element.

46. The computer-readable storage medium defined in claim 43, the player being a first player, wherein the method further comprises:

identifying a registered second player having a global set of knowledge elements that at least partly complementary to the global set of knowledge elements for the first player;

issuing a suggestion for an alliance between the first player and the second player.

47. The computer-readable storage medium defined in claim 46, wherein the suggestion is issued to at least one of the first player and the second player.

48. The computer-readable storage medium defined in claim 46, wherein the suggestion is issued to both the first player and the second player.

49. The computer-readable storage medium defined in claim 43, wherein the method further comprises:

identifying a new game in which the previously acquired knowledge elements provide an initial advantage;

sending a message through a graphical user interface, the message suggesting the new game to the player.

50. A method, comprising:

storing in memory an indication of a registered player and a global set of knowledge elements for the player;

receiving an indication of acquisition by the player of at least one previously unacquired knowledge element during game play of an instance of a particular knowledge-based video game; augmenting the global set of acquired knowledge elements for the player with the at least one previously unacquired knowledge element;

receiving an indication of acquisition by the player of at least one additional previously unacquired knowledge element during game play of at least one of (i) a different instance of the particular video game and (ii) an instance of a different video game that is not the particular video game; and

augmenting the global set of acquired knowledge elements for the player with the at least one additional previously unacquired knowledge element.

51. The method defined in claim 50, further comprising:

receiving an identity of the game from which the at least one previously unacquired knowledge element was acquired;

storing in the memory the identity of the game in association with an identity of the knowledge element.

52. The method defined in claim 51, wherein the method further comprises:

receiving a knowledge value associated with the at least one previously unacquired knowledge element;

storing in the memory an association between the knowledge value and the identity of the knowledge element.

53. The method defined in claim 50, the player being a first player, further comprising:

identifying a registered second player having a global set of knowledge elements that at least partly complementary to the global set of knowledge elements for the first player;

issuing a suggestion for an alliance between the first player and the second player.

54. The method defined in claim 53, wherein the suggestion is issued to at least one of the first player and the second player.

55. The method defined in claim 54, wherein the suggestion is issued to both the first player and the second player.

56. The method defined in claim 50, further comprising:

identifying a new game in which the previously acquired knowledge elements provide an initial advantage; sending a message through a graphical user interface, the message suggesting the new game to the player.

57. A computer-readable storage medium storing computer-readable instructions which, when executed by a computing entity, cause the computing entity to carry out a method that comprises:

storing in memory an indication of a registered first player and a global set of knowledge elements for the first player, the global set of knowledge elements specifying knowledge elements that have been previously acquired by the first player as a result of game play of at least one video game;

storing in memory an indication of a registered second player and a global set of knowledge elements for the second player, the global set of knowledge elements specifying knowledge elements that have been previously acquired by the second player as a result of game play of at least one video game;

providing an interface enabling the first player to express a desire to acquire a particular knowledge element in the global set of knowledge elements for the second player;

augmenting the global set of knowledge elements for the first player with the particular knowledge element.

58. The computer-readable storage medium defined in claim 57, wherein the method further comprises transferring the particular knowledge element from the global set of knowledge elements for the second player to the global set of knowledge elements for the first player.

59. The computer-readable storage medium defined in claim 57, wherein, for a particular knowledge element in the global set of knowledge elements for a particular player, the global set of knowledge elements further stores an identity of the game as a result which the particular knowledge element was acquired.

60. The computer-readable storage medium defined in claim 57, wherein, for a particular knowledge element in the global set of knowledge elements for a particular player, the global set of knowledge elements further stores an indication of a value of the particular knowledge element.

61. The computer-readable storage medium defined in claim 60, wherein the value of the particular knowledge element is a function of a correctness of an answer provided by the particular player to at least one pedagogical challenge that was issued to the particular player in association with the particular knowledge element.

62. The computer-readable storage medium defined in claim 60, wherein the value of the particular knowledge element is a function of a level of difficulty of at least one pedagogical challenge that was issued to the particular player in association with the particular knowledge element.

63. The computer-readable storage medium defined in claim 60, wherein the value of the particular knowledge element is a function of a length of time taken by the particular player to answer at least one pedagogical challenge that was issued to the particular player in association with the particular knowledge element.

64. A method, comprising:

storing in memory an indication of a registered first player and a global set of knowledge elements for the first player, the global set of knowledge elements specifying knowledge elements that have been previously acquired by the first player as a result of game play of at least one video game;

storing in memory an indication of a registered second player and a global set of knowledge elements for the second player, the global set of knowledge elements specifying knowledge elements that have been previously acquired by the second player as a result of game play of at least one video game;

providing an interface enabling the first player to express a desire to acquire a particular knowledge element in the global set of knowledge elements for the second player;

augmenting the global set of knowledge elements for the first player with the particular knowledge element.

65. The method defined in claim 64, further comprising transferring the particular knowledge element from the global set of knowledge elements for the second player to the global set of knowledge elements for the first player.

66. The method defined in claim 64, wherein, for a particular knowledge element in the global set of knowledge elements for a particular player, the global set of knowledge elements further stores an identity of the game as a result which the particular knowledge element was acquired.

67. The method defined in claim 64, wherein, for a particular knowledge element in the global set of knowledge elements for a particular player, the global set of knowledge elements further stores an indication of a value of the particular knowledge element.

68. The method defined in claim 67, wherein the value of the particular knowledge element is a function of a correctness of an answer provided by the particular player to at least one pedagogical challenge that was issued to the particular player in association with the particular knowledge element.

69. The method defined in claim 67, wherein the value of the particular knowledge element is a function of a level of difficulty of at least one pedagogical challenge that was issued to the particular player in association with the particular knowledge element.

70. The method defined in claim 67, wherein the value of the particular knowledge element is a function of a length of time taken by the particular player to answer at least one pedagogical challenge that was issued to the particular player in association with the particular knowledge element.

71. A computer-readable storage medium storing computer-readable instructions which, when executed by a computing entity, cause the computing entity to carry out a game portal method that comprises:

storing in memory an indication of registered players and, for each player, a global set of knowledge elements, the global set of knowledge elements specifying knowledge elements that have been previously acquired by the player during game play of at least one video game;

processing requests for transactions of previously acquired knowledge elements among players.

72. The computer-readable storage medium defined in claim 71, wherein a request for a transaction comprises a request from a first player to purchase at least one knowledge element previously acquired by at least other player.

73. The computer-readable storage medium defined in claim 71 , wherein a request for a transaction comprises a request from a first player to sell at least one previously acquired knowledge element to at least one other player.

74. The computer-readable storage medium defined in claim 71 , wherein a request for a transaction comprises a request from a first player to exchange at least one previously acquired knowledge element for at least one other knowledge element previously acquired by at least one other player.

75. The computer-readable storage medium defined in claim 71 , wherein processing a request for a particular transaction involving a certain player comprises updating the global set of knowledge elements for the certain player.

76. The computer-readable storage medium defined in claim 75, wherein processing a request for a particular transaction involving a certain player comprises charging the player a monetary amount for the transaction.

77. The computer-readable storage medium defined in claim 76, wherein the monetary amount is paid to an entity executing the game portal method.

78. A server comprising:

a memory storing in memory an indication of registered players and, for each player, a global set of knowledge elements, the global set of knowledge elements for a particular player specifying knowledge elements that have been previously acquired by the particular player during game play of at least one video game, the global sets of knowledge elements for the totality of players specifying knowledge elements that have been previously acquired during game play of multiple instantiations of multiple different video games;

a processor for processing player requests for transactions of previously acquired knowledge elements and updating the global set of knowledge elements for the players involved in the transactions.

79. A game portal method that comprises:

storing in memory an indication of registered players and, for each player, a global set of knowledge elements, the global set of knowledge elements specifying knowledge elements that have been previously acquired by the player during game play of at least one video game;

processing requests for transactions of previously acquired knowledge elements among players.

80. The game portal method defined in claim 79, wherein a request for a transaction comprises a request from a first player to purchase at least one knowledge element previously acquired by at least other player.

81. The game portal method defined in claim 79, wherein a request for a transaction comprises a request from a first player to sell at least one previously acquired knowledge element to at least one other player.

82. The game portal method defined in claim 79, wherein a request for a transaction comprises a request from a first player to exchange at least one previously acquired knowledge element for at least one other knowledge element previously acquired by at least one other player.

83. The game portal method defined in claim 79, wherein processing a request for a particular transaction involving a certain player comprises updating the global set of knowledge elements for the certain player.

84. The game portal method defined in claim 83, wherein processing a request for a particular transaction involving a certain player comprises charging the player a monetary amount for the transaction.

85. The game portal method defined in claim 84, wherein the monetary amount is paid to an entity executing the game portal method.

86. A video game system, comprising:

a memory storing computer readable instructions;

at least one processor in communication with the memory and executing the computer- readable instructions to carry out a video game process that comprises:

maintaining a virtual environment in which acquisition of knowledge elements requires expenditure of a resource;

receiving through a user interface an indication of a particular knowledge element during game play;

issuing a pedagogical challenge associated with the particular knowledge element;

recording acquisition of the knowledge element and replenishing the resource as a function of the player's response to the pedagogical challenge;

advancing a status of the player in the game based on remaining resource availability and previously acquired knowledge elements.

87. The video game system defined in claim 86, wherein the indication of the player's desire to acquire a knowledge element comprises an indication that the player has selected a graphical icon that represents the knowledge element on an image presented to the player.

88. The video game system defined in claim 86, wherein the indication of the player's desire to acquire a knowledge element comprises an indication that the player has accessed a game object to which the knowledge element is linked.

89. The video game system defined in claim 86, wherein the resource is a monetary resource.

90. The video game system defined in claim 86, wherein the resource is a non-monetary resource.

91. The video game system defined in claim 86, wherein the resource comprises credits that are accumulated as rewards during game play and/or through monetary purchases.

92. The video game system defined in claim 86, wherein the video game process further comprises receiving an identifier associated with the selected knowledge element and consulting a knowledge database on a basis of the identifier to obtain the pedagogical challenge associated with the selected knowledge element.

93. The video game system defined in claim 92, wherein the knowledge database is updated during execution of the video game process.

94. The video game system defined in claim 92, wherein consulting the knowledge database is stored in the memory.

95. The video game system defined in claim 92, wherein consulting the knowledge database comprises communicating a server hosting the knowledge database over the Internet.

96. The video game system defined in claim 86, wherein recording acquisition of the knowledge element comprises updating the player's account with an indication that the selected knowledge element has been acquired.

97. The video game system defined in claim 86, wherein the indication that the selected knowledge element has been acquired persists after termination of game play.

98. A video game method for execution by at least one processor in communication with a memory, comprising:

maintaining a virtual environment in which acquisition of knowledge elements requires expenditure of a resource;

receiving through a user interface an indication of a particular knowledge element during game play;

issuing a pedagogical challenge associated with the particular knowledge element; recording acquisition of the knowledge element and replenishing the resource as a function of the player's response to the pedagogical challenge;

advancing a status of the player in the game based on remaining resource availability and previously acquired knowledge elements.

99. The video game method defined in claim 98, wherein the indication of the player's desire to acquire a knowledge element comprises an indication that the player has selected a graphical icon that represents the knowledge element on an image presented to the player.

100. The video game system defined in claim 98, wherein the indication of the player's desire to acquire a knowledge element comprises an indication that the player has accessed a game object to which the knowledge element is linked.

101. The video game method defined in claim 98, wherein the resource is a monetary resource.

102. The video game method defined in claim 98, wherein the resource is a non-monetary resource.

103. The video game system defined in claim 98, wherein the resource comprises credits that are accumulated as rewards during game play and/or through monetary purchases.

104. The video game method defined in claim 98, further comprising receiving an identifier associated with the selected knowledge element and consulting a knowledge database on a basis of the identifier to obtain the pedagogical challenge associated with the selected knowledge element.

105. The video game method defined in claim 104, further comprising updating the knowledge database during game play.

106. The video game method defined in claim 105, wherein consulting the knowledge database comprises communicating a server hosting the knowledge database over the Internet.

107. The video game method defined in claim 98, wherein recording acquisition of the knowledge element comprises updating the player's account with an indication that the selected knowledge element has been acquired.

108. The video game method defined in claim 98, wherein the indication that the selected knowledge element has been acquired persists after termination of game play.

Description:
PERMUTABLE KNOWLEDGE-BASED VIDEO GAME AND EDITOR THEREFOR

CROSS-REFERENCE TO RELATED APPLICATION(S)

The present application claims the benefit under 35 USC § 119(e) of United States Provisional Patent Application Serial No. 61/739,971, filed December 20, 2012, hereby incorporated by reference herein.

TECHNICAL FIELD

The present invention relates generally to video games and to an editor for creating such games.

BACKGROUND

Video games fall into diverse categories. In one category of video game, players typically progress through a game by participating in quizzes, answering questions and the like. While this mode of play may provide a certain mix of learning and entertainment for the player, this appeal may not last very long. In particular, the player is likely to lose interest in the game if the underlying knowledge base becomes obsolete (i.e., the questions become stale or irrelevant) and/or if the novelty of the game play (i.e., the game style) wears off and is perceived as boring and repetitive. One solution is for the video game developer to issue a new version of the game containing new questions, quizzes and the like, or to publish an entirely new game with a different style and "feel". Both of these options require considerable effort on the part of the game developer. In particular, many thousands of man-hours can be spent coding a new game with new educational material. The cost factor attached to this exercise is often a disincentive to providing new releases of educational games.

Clearly, there exists a need in the industry develop entertaining video games that provide up-to-date learning opportunities. SUMMARY OF THE INVENTION

A first broad aspect of the present invention seeks to provide a computer-readable storage medium storing computer-readable instructions which, when executed by a computing entity, cause the computing entity to carry out a method for video game customization, the method comprising: interacting with a user through a graphical user interface (GUI) to receive information regarding at least a set of game objects for a knowledge-based video game; interacting with the user through the GUI to receive information regarding at least a set of knowledge elements, the knowledge elements being acquirable items in the knowledge-based video game; interacting with the user through the GUI to receive information regarding a reward mechanism that links accessibility of certain ones of the game objects to acquisition of certain ones of the knowledge elements; converting data including the received information regarding the game objects, knowledge elements and reward mechanism into parameters of a computer- readable parameter set which, when merged with a computer-readable game platform, provides computer-readable instructions encoding a customized version of the knowledge-based video game.

A second broad aspect of the present invention seeks to provide a method for video game customization, comprising: interacting with a user through a graphical user interface (GUI) to receive information regarding at least a set of game objects for a knowledge-based video game; interacting with the user through the GUI to receive information regarding at least a set of knowledge elements, the knowledge elements being acquirable items in the knowledge-based video game; interacting with the user through the GUI to receive information regarding a reward mechanism that links accessibility of certain ones of the game objects to acquisition of certain ones of the knowledge elements; converting data including the received information regarding the game objects, knowledge elements and reward mechanism into parameters of a computer- readable parameter set; and merging the parameter set with a computer-readable game platform to provide computer-readable instructions encoding a customized version of the knowledge-based video game.

A third broad aspect of the present invention seeks to provide a server for video game customization, comprising hardware for implementing: a GUI to interact with a user to receive information regarding (i) at least a set of game objects for a knowledge-based video game; (ii) at least a set of knowledge elements, the knowledge elements being acquirable items in the knowledge-based video game; and (iii) a reward mechanism that links accessibility of certain ones of the game objects to acquisition of certain ones of the knowledge elements; a customization function to convert data including the received information regarding the game objects, knowledge elements and reward mechanism into parameters of a computer-readable parameter set that is adapted to merged with a computer-readable game platform to provide computer-readable instructions encoding a customized version of the knowledge-based video game.

A fourth broad aspect of the present invention seeks to provide a system, comprising: a knowledge database comprising knowledge records, each knowledge record storing an identifier of a respective knowledge element and a pedagogical challenge associated with the respective knowledge element; and a processing entity in communication with the knowledge database, the processing entity implementing a game editor, the game editor configured for: implementing a GUI that enables a user to interact with the knowledge database to select a subset of the knowledge elements; and converting information regarding the selected knowledge elements into parameters of a computer-readable parameter set which, when merged with a computer-readable game platform, provides computer-readable instructions encoding a video game in which the selected knowledge elements are acquirable by correctly answering the pedagogical challenges respectively associated therewith.

A fifth broad aspect of the present invention seeks to provide a method for generating computer-readable instructions for a video game, comprising: accessing a computer-readable game platform that encodes predefined parametrizable game rules for the video game; accessing computer-readable parameters produced using a game editor; merging the game platform with the parameters to generate computer-readable instructions which, in case of execution by a computing entity, cause the computing entity to carry out an interactive video game in accordance with the predefined game rules parametrized by said parameters; storing the computer-readable instructions in a memory for execution by the computing entity.

A sixth broad aspect of the present invention seeks to provide a computer-readable storage medium storing computer-readable instructions which, when executed by a computing entity, cause the computing entity to carry out a method to create an interactive video game, the method comprising: accessing a computer-readable game platform that encodes predefined parametrizable game rules for the video game; accessing computer-readable parameters produced using a game editor; merging the game platform with the parameters to generate computer- readable instructions which, in case of execution by a computing entity, cause the computing entity to carry out an interactive video game in accordance with the predefined game rules parametrized by said parameters; storing the computer-readable instructions in a memory for execution by the computing entity.

A seventh broad aspect of the present invention seeks to provide a computer-readable storage medium storing a knowledge database, comprising: knowledge records sharing a common data structure, the data structure including at least a first field that encodes an identifier of a respective knowledge element associated with the knowledge record and a second field that encodes a pedagogical challenge associated with the respective knowledge element; wherein the first field and the second field of the data structure are in a format that is compatible with plural game editors used for creating plural knowledge-based video games in which knowledge elements are acquirable by correctly answering pedagogical challenges associated with those knowledge elements.

An eighth broad aspect of the present invention seeks to provide a computer-readable storage medium storing computer-readable instructions which, when executed by a computing entity, cause the computing entity to carry out a method that comprises: storing in memory an indication of a registered player and a global set of knowledge elements for the player; receiving an indication of acquisition by the player of at least one previously unacquired knowledge element during game play of an instance of a particular knowledge-based video game; augmenting the global set of acquired knowledge elements for the player with the at least one previously unacquired knowledge element; receiving an indication of acquisition by the player of at least one additional previously unacquired knowledge element during game play of at least one of (i) a different instance of the particular video game and (ii) an instance of a different video game that is not the particular video game; and augmenting the global set of acquired knowledge elements for the player with the at least one additional previously unacquired knowledge element.

A ninth broad aspect of the present invention seeks to provide a method, comprising: storing in memory an indication of a registered player and a global set of knowledge elements for the player; receiving an indication of acquisition by the player of at least one previously unacquired knowledge element during game play of an instance of a particular knowledge-based video game; augmenting the global set of acquired knowledge elements for the player with the at least one previously unacquired knowledge element; receiving an indication of acquisition by the player of at least one additional previously unacquired knowledge element during game play of at least one of (i) a different instance of the particular video game and (ii) an instance of a different video game that is not the particular video game; and augmenting the global set of acquired knowledge elements for the player with the at least one additional previously unacquired knowledge element.

A tenth broad aspect of the present invention seeks to provide a computer-readable storage medium storing computer-readable instructions which, when executed by a computing entity, cause the computing entity to carry out a method that comprises: storing in memory an indication of a registered first player and a global set of knowledge elements for the first player, the global set of knowledge elements specifying knowledge elements that have been previously acquired by the first player as a result of game play of at least one video game; storing in memory an indication of a registered second player and a global set of knowledge elements for the second player, the global set of knowledge elements specifying knowledge elements that have been previously acquired by the second player as a result of game play of at least one video game; providing an interface enabling the first player to express a desire to acquire a particular knowledge element in the global set of knowledge elements for the second player; augmenting the global set of knowledge elements for the first player with the particular knowledge element.

An eleventh broad aspect of the present invention seeks to provide a method, comprising: storing in memory an indication of a registered first player and a global set of knowledge elements for the first player, the global set of knowledge elements specifying knowledge elements that have been previously acquired by the first player as a result of game play of at least one video game; storing in memory an indication of a registered second player and a global set of knowledge elements for the second player, the global set of knowledge elements specifying knowledge elements that have been previously acquired by the second player as a result of game play of at least one video game; providing an interface enabling the first player to express a desire to acquire a particular knowledge element in the global set of knowledge elements for the second player; augmenting the global set of knowledge elements for the first player with the particular knowledge element.

A twelfth broad aspect of the present invention seeks to provide a computer-readable storage medium storing computer-readable instructions which, when executed by a computing entity, cause the computing entity to carry out a game portal method that comprises: storing in memory an indication of registered players and, for each player, a global set of knowledge elements, the global set of knowledge elements specifying knowledge elements that have been previously acquired by the player during game play of at least one video game; processing requests for transactions of previously acquired knowledge elements among players. A thirteenth broad aspect of the present invention seeks to provide a server comprising: a memory storing in memory an indication of registered players and, for each player, a global set of knowledge elements, the global set of knowledge elements for a particular player specifying knowledge elements that have been previously acquired by the particular player during game play of at least one video game, the global sets of knowledge elements for the totality of players specifying knowledge elements that have been previously acquired during game play of multiple instantiations of multiple different video games; a processor for processing player requests for transactions of previously acquired knowledge elements and updating the global set of knowledge elements for the players involved in the transactions.

A fourteenth broad aspect of the present invention seeks to provide a game portal method that comprises: storing in memory an indication of registered players and, for each player, a global set of knowledge elements, the global set of knowledge elements specifying knowledge elements that have been previously acquired by the player during game play of at least one video game; processing requests for transactions of previously acquired knowledge elements among players.

A fifteenth broad aspect of the present invention seeks to provide a video game system, comprising: a memory storing computer readable instructions; at least one processor in communication with the memory and executing the computer-readable instructions to carry out a video game process that comprises: maintaining a virtual environment in which acquisition of knowledge elements requires expenditure of a resource; receiving through a user interface an indication of a particular knowledge element during game play;issuing a pedagogical challenge associated with the particular knowledge element; recording acquisition of the knowledge element and replenishing the resource as a function of the player's response to the pedagogical challenge; advancing a status of the player in the game based on remaining resource availability and previously acquired knowledge elements.

A sixteenth broad aspect of the present invention seeks to provide a video game method for execution by at least one processor in communication with a memory, comprising: maintaining a virtual environment in which acquisition of knowledge elements requires expenditure of a resource; receiving through a user interface an indication of a particular knowledge element during game play;issuing a pedagogical challenge associated with the particular knowledge element; recording acquisition of the knowledge element and replenishing the resource as a function of the player's response to the pedagogical challenge; advancing a status of the player in the game based on remaining resource availability and previously acquired knowledge elements.

These and other aspects and features of the present invention will now become apparent to those of ordinary skill in the art upon review of the following description of specific embodiments of the invention in conjunction with the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

In the accompanying drawings:

Fig. 1 is a block diagram showing an example infrastructure for supporting execution of a knowledge-based video game, in accordance with a non-limiting embodiment of the present invention;

Fig. 2 conceptually illustrates the merging of game platform code with a parameter set to result in video game code;

Fig. 3A is a signal flow diagram that shows various exchanges of information among the entities in Fig. 1 during game play, in accordance with a non-limiting embodiment of the present invention;

Fig. 3B is a flowchart corresponding to the signal flow diagram in Fig. 3A

Fig. 4 is a block diagram showing a computer with a memory in which is stored game editor code for instantiating a game editor for use by a game designer, in accordance with a non- limiting embodiment of the present invention;

Figs. 5A-5E show example GUI screenshots that provide the game designer with various choices of input;

Fig. 6 shows a non-limiting example embodiment of a manner in which a knowledge database may be structured;

Fig. 7 shows an example hierarchy that links knowledge records in the knowledge database;

Fig. 8 conceptually illustrates input from a game designer being used to define a knowledge element from a knowledge record, in accordance with a non-limiting embodiment of the present invention; and Fig. 9 shows a non-limiting example embodiment of a manner in which an account server dataset may be structured.

It is to be expressly understood that the description and drawings are only for the purpose of illustration of certain embodiments of the invention and are an aid for understanding. They are not intended to be a definition of the limits of the invention.

DETAILED DESCRIPTION

Embodiments of the present invention relate to the creation and instantiation of video games that may be played by one or multiple players, against each other either individually or in teams (alliances).

An example video game in accordance with embodiments of the present invention may have any graphical and interactive style, including those that are familiar to many video game enthusiasts, such as an exploration game, a racing game (car, boat, plane, etc.), a puzzle, a question-and-answer game, a problem-solving role-playing adventure game, a sports game, a shooting game and a world domination game, to name a few non-limiting possibilities.

The video game supports game play in a virtual world that may be two- or three- dimensional, for example. In some cases, the virtual world may mimic a real world construct, such as a famous landmark, the human body, a vehicle or a map of the world. In other cases, the virtual world may bear no resemblance to anything existing in the real world, such as in the case of a fictional land.

In certain non-limiting embodiments of the present invention, an example video game is a "knowledge-based" game. In a knowledge-based game as contemplated herein, a key construct is a "knowledge element". Multiple knowledge elements may relate to a common topic. Conversely, the same knowledge element may relate to multiple topics. Multiple topics may, themselves, relate to a common subject, whereas multiple subjects may relate to a common theme, and so on.

An objective of the game may be to become the most "knowledgeable" player. Thus, game play involves the "acquisition" of knowledge elements, in addition to strategic considerations (e.g., decisions made by the player based on past experience, what other players are doing, time left, the player's interpretation of clues, etc.). Thus, generally speaking, acquisition of knowledge elements improves the player's advancement within the game. Also, once all (or a certain number of) knowledge elements related to a given topic have been acquired, the game provides the player with the ability to acquire a knowledge element for the given topic, and so on, until sufficient knowledge has been amassed to win the game.

As contemplated herein, a knowledge element may be conceptualized as an item that is obtainable / acquirable by a player through game play. In one non-limiting embodiment, a knowledge element may be represented by certain unique data, such as an identifier, possibly an icon, etc., possibly grouped together as a data structure having a pre-defined format, possibly stored in a memory. The memory may be any semiconductor, optical, magnetic, phase-change or other kind of device used to store data. One way for a player to acquire a given knowledge element may be by accumulating sufficient resources to "purchase" the knowledge element. Another way for a player to acquire a given knowledge element may be by achieving sufficient progress in relation to a game object, which then releases the knowledge element into the player's possession. Yet another way for a player to acquire a given knowledge element may be by demonstrating, in real time, a certain level of mastery of the topic to which the given knowledge element relates. This may be done by successfully overcoming one or more pedagogical challenges issued by the game. Examples of pedagogical challenges may include a variety of quizzes, questionnaires, tests, etc., with questions that may be closed, open, dichotomous, nominal-polytomous, ordinal-polytomous, continuous, etc. In addition, the acquisition of a knowledge element through answering pedagogical challenges may add more resources to the player's arsenal, which in turn enhances the player's opportunity to acquire further knowledge elements, and so on. In short, while it may be possible for a player to achieve a certain amount of progress in the game without answering any pedagogical challenges, a player who is knowledgeable might enhance the creation of positive feedback within the knowledge-based game, possibly leading to faster advancement towards a victory condition.

Through its interactive nature and pedagogical structure, a knowledge-based video game as contemplated herein may have applicability in a wide variety of fields, including education (individual courses or tutoring, at any age level) and corporate / institutional training. A knowledge-based game as contemplated herein could also be played by the general public wishing to acquire knowledge, or simply desirous of participating in an entertaining game, without necessarily seeking out the educational value that the game may bring.

Operation of Knowledge-Based Video Game Reference is now made to Fig. 1, which shows an example infrastructure for supporting execution of a knowledge-based video game, in accordance with a non-limiting embodiment of the present invention. The infrastructure includes a server system 100 connectable to a data network 130 such as the Internet. The server system 100 may include one or more computing resources, including a game server 1 10 and an account server 120. The game server 1 10 and the account server 120 may be embodied in the same hardware or they may be different servers that are connected via a communication link, including possibly over the Internet. In the following description, they are treated as separate servers merely in the interest of simplicity. Players play the video game by using player devices 150a-c to connect to the server system 100 over the data network 130. Examples of possible player devices 150a-c include mobile phones, smartphones, game consoles and computers, to name a few non-limiting possibilities.

The game server 1 10 interacts with players in the course of the game, while the account server 120 interacts with players outside the game environment. For example, the account server 120 is configured for logging a prospective player into a game portal, tracking the player's connectivity over the Internet, and responding to the player's commands to launch, join, exit or terminate an instance of a game, among several non-limiting functions. To this end, the account server 120 may host or have access to a database 121 that stores account information about various players and player devices 150a-c, such as identification data, financial data, location data, demographic data, connection data and the like.

For its part, the game server 1 10 is configured for executing instances of a knowledge- based video game in accordance with a non-limiting embodiment of the present invention. To this end, the game server 1 10 includes processing circuitry 1 1 1 for reading computer-readable instructions from a memory 1 12 and executing them. The instructions encode a knowledge-based video game having the properties being described herein. Thus, the instructions may be object code resulting from a software build, and may be referred to herein as "video game code" 1 13. Execution of the video game code 1 13 causes the game server 1 10 to implement video game processes including a main game process for each instantiation of a game and, for each player, a graphics process for that player. The main game process and the graphics process are briefly described.

The main game process may maintain a game state for as many players as are playing the game simultaneously. There is no particular limit on the number of players. Moreover, the number of players playing the game simultaneously may vary over time to include a greater or smaller number of players. The identity of the players may also change, so as to let some players drop off while others join in.

The main game process may carry out a variety of actions. One example of an action that might be carried out by the main game process includes modification of the game state based on input received from the players' devices 150a-c and also based on other game factors (such as time remaining, time elapsed, time of day and random events). The "game state" may refer to characteristics (e.g., the position, orientation, speed, appearance, energy, etc.) of various playing characters, non-playing characters and other elements of the virtual world. The input from a player's device (e.g., 150a, 150b or 150c) could include messages that are issued by the device based on detection and interpretation of physical player inputs provided to the device. Physical player inputs may take the form of pressing a controller button, striking a key, turning a wheel, waving a hand, reorienting the player's eyes, etc.

Another example of an action that might be carried out by the main game process as a function of circumstances in the game includes a triggering an interactive learning activity with a given player. During this learning activity, the player may be involved in additional interaction, and may be asked to answer a pedagogical challenge. To this end, the game server 1 10 may host or have access to a knowledge database 160, which stores a variety of pedagogical challenges associated with different knowledge elements, as well as an associated answer set. The knowledge database 160 may be connected directly to the game server 1 10 or it may be hosted by a server that is reachable via the data network 130.

Turning now to the graphics process, this process includes a loop that is executed on a per-player basis and renders a frame of video content corresponding to the elements of the virtual world as viewed from the perspective of each player. In an embodiment, the graphics process may utilize the resources of one or more graphics processing units (GPUs, not shown). Considering a particular player, the graphics process executes several times per second, resulting in the creation of a sequence of frames of media content (including video content and possibly audio content), which are sent to the particular player's device over the data network 130. At the device, the video content is transformed into a sequence of images perceptible by the particular player. With a sufficient number of images per second, players will perceive a smoothly moving image. In another embodiment, some of the rendering may be executed outside the game server 1 10, such as at a player's device 150a-c.

The game server 1 10 may also execute an audio generation process, but it is believed that a detailed description of its operation is not required in order for the person of skill in the art to gain an understanding of the principles of the present invention.

Parametrizable Nature of Video Game Code

In accordance with a non-limiting embodiment, and with reference now to Fig. 2, the video game code 1 13 is the result of merging computer-readable "game platform code" 210 with parameters in a computer-readable "parameter set" 220. The game platform code 210, which may be in the form of a binary executable file, is made up of computer-readable instructions that are specific to the video game at hand, but leave certain parameters undefined so that they may be customized for a particular version of the game. The game platform code 210 encodes certain game rules, including specifications regarding the virtual world, prevailing physical laws, etc. For its part, the parameter set 220 provides, in computer-readable form, customized information needed to transform the game platform code 210 into a functioning video game. As such, the knowledge-based game may be fully parametrized, allowing many different versions of the game to be created without changing the game platform code 210. In this sense, changes to the parameter set 220 results in different permutations of the knowledge-based video game. In an embodiment, the parameters in the parameter set 220 are encoded in a computer-readable format that is pre-determined to be acceptable for use by the game platform code 210. In a non-limiting example of implementation, the parameter set 220 may include a variety of types of parameters, each of which is now described. (i) CONSTANTS

Constants 221 may include parameters related to the overall structure and operation of the game, such as the overall game duration and the maximum number of players, to name a few non-limiting possibilities. The constants may be pre-defined and stored (e.g., as a file) in the memory 1 12, or they may be provided by a user during a customization phase via a game editor (as will be described later on).

(ii) GAME OBJECT DEFINITIONS

Game object definitions 222 may include parameters related to game objects (game elements) that are specific to the game at hand. For example, game object definitions 222 could include parameters that define the shape, size and other properties, both visible and invisible, that pertain to buildings, vehicles, equipment, non-playing characters, etc. In a non-limiting embodiment, these parameters may be entered through interaction with a graphical user interface provided as part of a game editor. Since game objects vary widely from one type of game to another, the range of possible game object definitions 222 will vary correspondingly. However, the format in which a particular type of game object is defined for a particular game may be fixed, so that variations in the game may be easily implemented by merely changing the game object definitions 222 (parameters) without changing the game platform code 210.

(Hi) KNOWLEDGE ELEMENT DEFINITIONS

Knowledge element definitions 223 may include parameters related to the aforementioned "knowledge elements". As described earlier, knowledge elements serve as an acquirable reward, leading to advancement in the game. By way of non-limiting example, each knowledge element relates to certain subject matter and might be represented by a data structure 240 stored in memory 1 12. The data structure 240 includes a plurality of fields. One example of a field in the data structure 240 that represents a particular knowledge element is a first field 242 that contains an identifier, which may be an alphanumeric expression conveying the subject matter related to the particular knowledge element. Non-limiting examples may include "Roman times", "fuel combustion engine", "leopards", "country music", "denim jeans", etc. In a non- limiting embodiment, these parameters may be entered through interaction with a graphical user interface provided by a game editor.

Each knowledge element may also be associated with a location within the virtual world. Some knowledge elements may be found at multiple locations in the virtual world, while certain locations within the virtual world may hold multiple knowledge elements. To this end, another example of a field in the data structure 240 that represents a particular knowledge element may be a second field 244 that includes one or several locations, or maps of possible locations.

The knowledge elements and their definitions vary widely from one type of game to another. However, for a particular game, the format in which a knowledge element is defined (i.e., the format of the data structure that represents the knowledge element) may be fixed. On the one hand, this allows variations in the game to be easily implemented without changing the game platform code 210. On the other hand, this allows knowledge elements to maintain their value/status (e.g., as having been "acquired") across multiple game variations.

(iv) REWARD MECHANISM

The parameters in the parameter set 220 also include a codification of the reward mechanism 224 that involves the aforementioned game objects and the aforementioned knowledge elements. That is to say, the video game may link the accessibility of certain game objects (buildings, vehicles, equipment, generic characters) with the acquisition of certain knowledge elements so as to define what is needed to advance in the game. This link may be an important part of the game progression, as it may define the manner in which rewards are gained.

For example, the video game may consider certain game objects to be associated with certain knowledge elements and/or other game objects. In one instance, the game object (such as a building) may be linked to a certain number of knowledge elements that are considered to be acquired after the building is considered (using the player's resources). The opposite scenario is also possible, in which certain knowledge elements may need to be acquired before the associated game object (e.g., building) may be considered to be constructed. Video Game Interaction With Player

The video game code 1 13 is the result of merging the game platform code 210 with the parameter set 220, which may be done by a game editor after editing or by the game server 1 10 during a loading phase prior to game play. The video game code 1 13 is then executed by the processing circuitry 1 1 1 in the game server 1 10. For the purposes of the following description, it is assumed that the knowledge-based video game is played by a single player via a single player device 150a. However, it will be appreciated that this is merely a simplification, and that in an actual implementation there may be more than one player participating in the video game. During execution of the video game, interaction with the player may take place as now described. Reference is now made to Fig. 3 A, which is a signal flow diagram that shows various exchanges of information among the entities in Fig. 1. A corresponding flowchart is shown in Fig. 3B. Specifically, a player 300 provides input to the player's device, say, device 150a (action 310), and the player's device 150a sends a corresponding message (action 320) to the game server 1 10. The game server 1 10 receives the message conveying input from the player 300. The main game process determines how to alter the game state as a result of this input from the player 300. in some cases, the player's input may indicate a selection of a knowledge element (e.g., by clicking on a screen position where the graphical representation of a knowledge element is located). In response, the main game process may initiate a query to the knowledge database 160 (action 330). The query includes an indication of the selected knowledge element, and requests a pedagogical challenge from the knowledge database 160. The query may also identify the player 300.

The knowledge database 160 responds with a pedagogical challenge (action 340), which is received by the main game process and then presented to the player 300 (action 345). The pedagogical challenge may be associated with a time limit, which may be supplied by the knowledge database (as a parameter returned with the challenge), or the time limit may be imposed by the main game process. In any event, if a response is received (within the allotted time limit, if applicable), the response (action 350) may be channeled back to the knowledge database 160 for validation (action 360). Validation may include the knowledge database effecting a comparison of the received answer to a stored answer that is considered to be correct. An assessment of correctness is provided back to the main game process (action 370). If there is a full (or partial) match, the knowledge database 160 may deem the answer to have been correct, and the correctness assessment may indicate to the main game process that the answer is correct. A correct answer may impact the game state in the main game process in a number of ways, depending on how the video game is programmed.

Firstly, the knowledge element may now be recorded as having been "acquired" by the player. For example, the main game process may maintain a list of knowledge element identifiers corresponding to the knowledge elements that have been acquired by the player and may now add the identifier of this newly acquired knowledge element to the list. Moreover, not only may the acquisition of the knowledge element be recorded for the purposes of in-game progress, but also the knowledge element may be added to a persistently maintained global set of acquired knowledge elements for the player, which may be stored in the account server database 121. Secondly, the main game process may increase the availability of certain resources at the disposal of the player, such as a "life", "power", "money", "credit" or a game-customized resource, for example. This increase in resources empowers the player to perform other tasks in the game. For example, the player may acquire another element through a "purchase" using the resources. Alternatively, the player may expend resources towards the construction of a game object that will ultimately release additional knowledge elements to the player. This may generate a positive feedback loop involving the knowledge elements and an underlying game resource, whereby more resources lead to more knowledge elements, which leads to more resources, and so on. As a result, the player's status in the game will be advanced, based on a combination of the remaining resources available and the previously acquired knowledge elements. Thirdly, the main game process may take further action further to acquisition of the knowledge element, depending on the relatedness of the newly acquired knowledge element to other knowledge elements that were previously acquired by the player 300. Specifically, the subject matter of several lower-level knowledge elements sharing a common root may be interrelated, with this inter-relationship being broadly defined by the subject matter of the higher-level knowledge element at the common root. When all related lower-level knowledge elements sharing a common root have been acquired, the player's progress may be further accelerated synergistically. This may enable new opportunities to acquire knowledge elements at higher levels, which may previously have been unavailable (or "locked").

Thus, if it turns out that all knowledge elements related to a higher-level knowledge element have now been acquired, this may add more resources to the player's arsenal/score/account. Alternatively or in addition, this may prompt the main game process to query the knowledge database 160 for a pedagogical challenge relating to the higher-level knowledge element. Again, the challenge received from the knowledge database 160 is presented to the player 300 and the response is treated similarly to that which has been described above.

For example, let the higher-level knowledge element be identified as "Roman times", and let the lower-level knowledge elements be identified as "philosophy", "aqueducts" and "Julius Caesar". The acquisition of each of the three lower-level knowledge elements provides advancement, while the acquisition of all three provides even greater advancement and, in addition, allows the player access to the higher-level knowledge element "Roman times", which itself may be acquired for further advancement, and so on. Thus, the nature of the knowledge elements, their distribution throughout the virtual world, as well as the inter-relationship in terms of relevance, are all factors that affect game play strategies and the game experience.

In a variant, the main game process provides an option to the player to "purchase" the correct answer to a pedagogical challenge by spending in-game (virtual) or actual monetary resources. Another possibility would be to allow the player to purchase a selected knowledge element and bypassing any associated pedagogical challenges. This would allow provide a solution for players to be able to continue playing the game even though they may lack of knowledge on a particular topic. In an example embodiment, virtual monetary resources could take the form of a source of credits which may be debited by the player during game play (e.g., when purchasing a challenge or a knowledge element), and may be credited by (e.g., credit card) purchases made outside the game environment and/or by in-game exploits, bonuses or accomplishments. Also, the account server 120 may include suitable circuitry or control logic for maintaining an automatic replenishment system that makes a credit card withdrawal (and converts the withdrawn amount into stored credits) when the amount of credits in the player's account drops below a certain level.

It should be appreciated that in some cases, the correctness of the player's response to a pedagogical challenge may be a matter of degree. As such, various possibilities exist for modifying the game state based on the degree of correctness of the answer received from the player. Thus, while one possibility is for there to be a pass/fail approach, where only a 100% correct answer will be considered acceptable, in another approach, the level of advancement is commensurate with the answer's degree of correctness (e.g., the number of correctly answered questions out of a total number of questions). In still other approaches, pedagogical challenges could be rated according to level of difficulty, and this level of difficulty of could be taken into consideration when determining a correctness score. The effect on the game state may also be dependent on a time factor, such as the amount of time taken to provide a response to the challenge.

As the game advances, and as more pedagogical challenges are overcome with success, it is envisaged that the remaining (as yet non-acquired) knowledge elements are increasingly higher-level knowledge elements and therefore that they may become increasingly difficult to master. Thus, strategies beyond merely responding to challenges may be appropriate. For example, ways to conserve resources may become important in order to build a reserve for future purchases. Also, depending on what is permitted by the game rules encoded by the game platform code 210, it may be possible to attack other players and fight them for their knowledge. In still other game instantiations, it may be possible to enter into alliances with other players when there is a mutually beneficial reason to do so. Overall, the player with the right balance of shrewd game play (strategy) and a high level of knowledge may advance faster towards a victory condition than a player who lacks either of these two qualities.

Game editor

As previously described with reference to Fig. 2, the video game code 1 13 is derived from merging the game platform code 210 with the parameter set 220. Specifically, the game platform code 210 is produced by a developer to have certain pre-defined game play characteristics, while other characteristics are left as parameters. Values for these parameters are provided by the parameter set 220. In order to create a desired parameter set 220, embodiments of the present invention provide a "game editor". The game editor may be used to create multiple versions / permutations of the video game code 1 13, with each version utilizing the same game platform code 210 and a different parameter set 220. This enhances the video game's replayability and entertainment / educational value.

The game editor may refer to an interactive process resulting from execution by a processor of certain computer-readable instructions. With reference to Fig. 4, the behavior of the game editor may be encoded as a program of computer-readable program instructions (game editor code 400) that are stored in a memory 440, and read and executed by a processor 41 1, all of which may reside on a computer 410.

The computer 410 may be accessed by a game designer 420. The computer 410 may be located anywhere that suits the designer 420, including online (accessible via the data network 130 such as the Internet). In one embodiment, the computer 410 has access to the aforementioned knowledge database 160 that will ultimately be queried by the game server 1 10 when it is running the finalized video game code 1 13. Alternatively, it may suffice to store or access a copy of the knowledge database 160 in the memory 440, as illustrated in Fig. 4 by the numeral 430.

As such, execution of the game editor code 400 (which may be a binary executable file, for example) causes the processor 41 1 to instantiate the game editor. It is expected that a person skilled in the art will be able to use the programming skills at his or her disposal in order to develop suitable game editor code 400 which, when executed by a processor, implements a game editor having the below described functionality, and therefore the techniques for actually creating the game editor code 400 from source code will not be described in detail. The game editor may implement a variety of functions.

For example, the game editor may implement a graphical user interface through which the game designer 420 may enter a variety of parameters, as will be described later on. This results in the creation of the parameter set 220 which, in one embodiment, may be stored in the memory 440. As such, the game editor may act as a bridge, binding agent or translator between the knowledge database 430 and the parameter set 220.

The game editor may also implement a function for merging the parameter set 220 with the game platform code 210 (which may also be stored in the memory 440) in order to create a customized version of the video game code 1 13. The video game code 1 13 is then transferred to the game server 1 10 where it is stored in the memory 1 12 and then executed for one or more players. In an alternative embodiment, the parameter set 220 produced using the game editor may be sent to the game server 1 10 where it is merged (see Fig. 2) with the game platform code 210 locally stored in the memory 1 12.

The game editor may also implement a customization function and a validation function.

The customization function implemented by the game editor may include providing the game designer 420 with the opportunity to set the parameters in the parameter set 220 that are used by the game platform code 210, namely constants 221, game object definitions 222, knowledge element definitions 223 and reward mechanism 224. To this end, the game editor may implement a graphical user interface (GUI 500), allowing the game designer 420 to make selections and provide other inputs. An example of the customization function of the game editor will now be described in the context of designing a specific example video game. Thus, for the purposes of illustration only, and without limitation of any kind, the knowledge-based video game being described will be an exploration game that involves knowledge elements distributed over a world map. A player builds a city, which requires the construction of buildings at multiple conceptual levels (or stages). The buildings are identified by their function (e.g., hospital, military base, parliament, etc.) and each building requires the expenditure of a certain amount of resources in order to be constructed. Construction of a building results in certain associated knowledge elements (and possibly other game objects) being acquired by / accessible to the player. In addition, certain other knowledge elements, positioned at various locations throughout the virtual world, are acquired using a different mechanism. Specifically, the locations of these knowledge elements are kept secret until they are "discovered" by the player. Discovery may be achieved through the use of "scouting units", such as land, sea and air vehicles. Once a knowledge element is discovered, the player uses the services of an "expert" (professional having some credible associated with that knowledge element) to access the knowledge element. At that stage, the knowledge element may be selected and a pedagogical challenge may be invoked as previously described (see actions 330 to 370 with reference to Figs. 3 A and 3B).

In the context of this specific example knowledge-based game, the following describes how the various types of parameters in the parameter set 220 could be defined using the game editor, with occasional reference to non-limiting GUI screenshots to bring to light the customization functionality.

(i) CONSTANTS

Fig. 5 A shows an example GUI screenshot 501 that provides the game designer 420 with choices in terms of setting certain example constants 51 1 , namely a game duration and a maximum number of players. An example subset of parameters that could encode example constants is shown below, by way of non-limiting illustrative embodiment: <constant>

<duration_day>30</duration_day>

<max_Player>2500</max_Player>

</constant>

It should be appreciated that the setting of constants by the game designer 420 is optional, as there maybe default settings that may already be suitable and need not be adjusted. As such, in some embodiments, the parameter set 220 may exclude constants or may include constants that are obtained other than from interaction with the game designer 420.

GAME OBJECT DEFINITIONS

Figs. 5B, 5C and 5D show example GUI screenshots 502, 503, 504 that provide the game designer 420 with choices in terms of setting the game object definitions for a plurality of example game objects, namely a building, a scouting unit and an expert.

In Fig. 5B, it is seen that a building identified as "PARLIAMENT" is defined. Among the various properties 522 of the building is that only a limited number of such buildings may be built in the city. Also, it has multiple instantiations, depending on the level of play (stage of advancement), as well as a cost, population, construction time and energy that varies according to level. An example subset of parameters that could encode example properties associated with the "PARLIAMENT'game object is shown below, by way of non-limiting illustrative embodiment: <definition>

<code>PARLIA ENT</code>

<displayOrder>5</displayOrder>

<automaticallyBuilt>false</automaticallyBuilt>

<environmentLimitations/>

<maxNbPerCity>K/maxNbPerCity>

<moveable>true</moveable>

<recyclable>true</recyclable>

<levelDefinitions>

<level>

<levelNo>K/levelNo>

<resourceCost>

<genium>500</genium>

<timeInSeconds>5</timeInSeconds>

<population>0</population>

<energy>0</energy>

</resourceCost>

</level>

<level>

<levelNo>2</levelNo>

<resourceCost>

<genium>2000</genium> <timeInSeconds>600</timeInSeconds>

<population>0</population>

<energy>0</energy>

</resourceCost>

</level>

<level>

<levelNo>3</levelNo>

<resourceCost>

<genium>9000</genium>

<timeInSeconds>5400</timeInSeconds>

<population>0</population>

<energy>0</energy>

</resourceCost>

</level>

<level>

<levelNo>4</levelNo>

<resourceCost>

<genium>18000</genium>

<timeInSeconds>25200</timeInSeconds>

<population>0</population>

<energy>0</energy>

</resourceCost>

</level>

<level>

<levelNo>5</levelNo>

<resourceCost>

<genium>60000</genium>

<timeInSeconds>37800</timeInSeconds>

<population>0</population>

<energy>0</energy>

</resourceCost>

</level>

</levelDefinitions>

</definition>

Turning now to Fig. 5C, it is seen that a scouting unit identified as "S LAND 1" is defined. A scouting unit might refer to a vehicle that may be used for exploration purposes to uncover knowledge elements distributed throughout the virtual world. Among the various properties 532 of a scouting unit is that it may have a deployment cost, a distance cost divider, a deployment speed and a radius. These are of course non-limiting examples for illustrative purpose only.

An example subset of parameters that encodes example properties associated with the "S LAND _1 " game object is shown below, by way of non-limiting illustrative embodiment:

<scoutingUnit>

<code>S_LAND_K/code>

<uilndex>l</uilndex>

<baseDeployementCost>

<energy>250</energy>

</baseDeployementCost> <distanceCostDivider>l</distanceCostDivider>

<deployementSpeed>4 </deployementSpeed>

<radius>125</radius>

</scoutingUnit>

Turning now to Fig. 5D, it is seen that an expert identified as "SEMIOLOGIST" is defined. An expert may refer to a profession having the relevant expertise to access a particular knowledge element, i.e., to give the player the right to demonstrate mastery of the subject matter associated with the knowledge element. Among the various properties 542 of an expert is that it may have a deployment cost, an energy consumption, a distance cost divider and a deployment speed. Again, these are of course non-limiting examples for illustrative purpose only.

An example subset of parameters that encodes example properties associated with the "SEMIOLOGIST" game object is shown below, by way of non-limiting illustrative embodiment:

<expertUnit>

<code>E_SEMIOLOGIST</code>

<uilndex>10</uilndex>

<baseDeployementCost>

<energy>750</energy>

</baseDeployementCost>

<distanceCostDivider>l</distanceCostDivider>

<deployeraentSpeed>3</deployementSpeed>

</expertUnit>

(Hi) KNOWLEDGE ELEMENT DEFINITIONS

In addition, the game editor allows the game designer to define the knowledge elements to be used in the game. The knowledge elements are crafted from the contents of the knowledge database 160, i.e., the knowledge database 160 includes all the information needed to produce the knowledge elements. Therefore, the game editor has access to the knowledge database 160 or a copy thereof. Before describing how the knowledge elements are defined, there will be provided an example of the contents of the knowledge database 160. Specifically, Fig. 6 shows a non-limiting example embodiment of the knowledge database 160, a copy of which may be stored as knowledge database 430. The knowledge database 160 stores a plurality of knowledge records 610. Some of the knowledge records 610 will be used in the game being designed using the game editor, while others may be used in other games. In a non-limiting embodiment, a knowledge record 610 may comprise a data structure with a plurality of fields. Amongst its fields, the knowledge record 610 may store various information, such as a knowledge element ID 61 1 a-c, a multimedia representation 612a-c, one or more datasheets 613a-c, an indication of relative complexity / difficulty 614a-c, etc. The knowledge element ID 61 1 a-c for a particular knowledge record may be a code or other identifier that is associated with the particular record's associated knowledge element and may be used across multiple games, so as to enable players to preserve "credit" for having acquired a particular knowledge element even outside the game environment.

The multimedia representation 61 la-c for a particular knowledge record may be an icon, image, sound, video, mnemonic, nickname or other representation of the associated knowledge element. The term "multimedia representation" is not intended to signify that the representation must itself include multiple mediatic forms, but rather than it may, for some knowledge records, be in the form of, say, an image, while for other knowledge records it may be in the for of, say, a nickname without an image. The datasheet 613a-c for a particular knowledge record may include one or more files, hyperlinks, web pages, images or other information elements that provide additional information regarding the associated knowledge element. To this end, the datasheet may provide additional educational material that can be displayed or emailed to the player when the associated knowledge element has been acquired. In other cases, the datasheet may be rendered available (e.g., displayed) at certain strategic points during the game before the associated knowledge element is acquired, so as to present the player with an opportunity to assimilate the corresponding educational material, and therefore prepare for an eventual pedagogical challenge that may be based, in part, on the content of the datasheet.

Each knowledge record 610 in the knowledge database 160 may further include a field for storing one or more pedagogical challenges 615a-c. As has been mentioned, the pedagogical challenges 615a-c may include a wide variety of quizzes and questionnaires, without any particular limitation.

Also, each of the knowledge records 610 could include a field for storing links 616a-c to related knowledge records, consistent with a "knowledge hierarchy". An example hierarchy is shown in Fig. 7. Within the hierarchy 700, multiple first-level 710 knowledge records may relate to a common second-level 720 knowledge record (for example, first-level knowledge records A, B, C and second-level knowledge record D). Conversely, the same first-level 710 knowledge record may relate to multiple second-level 720 knowledge records (for example, first-level knowledge record C and second-level knowledge records D and E). Multiple second-level 720 knowledge records may, themselves, relate to a common third-level 730 knowledge record, whereas multiple third-level 730 knowledge records may be related to a common fourth-level 740 knowledge record, and so on. One may consider the levels to be associated with generic pedagogical constructs such as sub-topic (1 st level 710), topic (2 nd level 720), subject (3 rd level 730) and theme (4 th level 740). However, this is merely a conceptualization and, while it may assist with game design, it is not a requirement. In one embodiment, the indication of relative difficulty/complexity 614a-c for a particular knowledge record may indicate a relative degree of difficulty or complexity pertaining to the associated knowledge element, as compared with other knowledge elements. In another embodiment, the indication of relative difficulty/complexity may be associated with each individual pedagogical challenge, which may facilitate selection of which pedagogical challenge to issue to the player when the player's level of advancement is known or estimated. This information may also be useful when attributing a value to the correct answer provided by the player, such value being storable in a game portal application for future reference. In other embodiments, there may be stored in the knowledge record 610 both a degree of difficulty related to the knowledge element and a separate degree of difficulty for each pedagogical challenge. With reference to Fig. 8, the game designer 420 uses the game editor (instantiated by the game editor code 400) to create knowledge elements from the knowledge records 610 in the knowledge database 160. To this end, the game editor may implement a GUI through which the game designer 420 selects a subset of the knowledge records 610 in the knowledge database 600. The knowledge element 810 derived from a particular knowledge record 610 may be represented by a data structure with a field that contains a knowledge element ID (denoted by 61 la in Fig. 8) as well as other fields that reflect (i) properties extracted from the corresponding knowledge record in the knowledge database 160 (denoted "X" in Fig. 8) and (ii) properties specified by the game designer 420 through the GUI (denoted "Z" in Fig. 8).

It will be noted that the knowledge element ID for a particular knowledge element is the same as the knowledge element ID for the knowledge record from which the particular knowledge element was derived. Therefore, the knowledge element ID pertaining to a given knowledge element (e.g., a knowledge element accessed during game play) to query the knowledge database 160 and obtain, in return, the pedagogical challenge from the appropriate knowledge record. The player's response to the challenge then determines potential "acquisition" of the knowledge element and advancement within the game.

The various properties that may pertain to a knowledge element 810 may include a rarity, level, domain code and position in the game. Some of these are carried over from the corresponding knowledge record 610 (i.e., denoted "X" in Fig. 8), while others may be input by the game designer 420 (denoted "Z" in Fig. 8). In the case of the position in the game, this may be defined by a specific location, a set of specific locations or a collision map, which may be a map of the virtual world outlining areas where positioning the knowledge element would be acceptable. In addition, the game editor allows the game designer to select game objects associated with the knowledge element.

Fig. 5E shows a GUI screen shot 505 that provides the game designer 420 with choices in terms of setting the knowledge element definitions for a knowledge element having the knowledge element ID "SKULLSYMBOL". An example subset of parameters 552 that could encode example properties associated with the "SKULLSYMBOL" knowledge element is shown below, by way of non-limiting illustrative embodiment:

<knowledgeDefinition>

<code>SKULLSYMBOL</code>

<type>KNOWLEDGE</type>

<rarity>COMMON</rarity>

<level>3</level>

<iconClass>Knowledge_SkullSymbol</iconClass>

<domainCode>COMMUNICATION</domainCode>

<experts>

<primaryExpert>E_ART_CRITIC</primaryExpert>

<secondaryExpert>E_SEMIOLOGIST</secondaryExpert> <tertiaryExpert>E_PHARMACOLOGIST</tertiaryExpert> ; </experts>

</knowledgeDefinition>

In addition, in the process of defining a knowledge element 810, the game editor may implement an internal self-check function to make sure that certain properties are within predetermined bounds, or that certain dependencies are observed. The self-check function may verify that, for example, a high degree of rarity corresponds to a relatively high level of advancement within the game. It is possible to provide many pre-determined rules that need to be observed (and are verified by the self-check function) before a knowledge element definition may be approved. Also, the game editor may implement a function that allows the game designer 420 to specify links among the knowledge elements to be used in the game. For example, this may comprise preserving the links that may already exist between the corresponding knowledge records, as defined by the knowledge hierarchy 700 maintained in the knowledge database 610. Alternatively, the game designer 420 may specify new linkages among knowledge elements. The links among the knowledge elements may be encoded in a variety of ways without departing from the scope of the invention. For example, the knowledge element at the root of several subtending knowledge elements may be referred to as a "series".

An example subset of parameters that encodes the links among the knowledge elements deemed to be members of the "ANCIENTNAVIGATION" series is shown below, by way of non- limiting illustrative embodiment.

<knowledgeSeriesDefinition>

<code>ANCIENTNAVIGATION SERIES</code>

<knowledgeDefinitionToUnlockCode>ANCIENTNAVIGATION< /knowledgeDefi nitionToUnl

ockCode>

<requiredKnowledgeDefinitions>

<definitionCode>MERCATOR</definitionCode>

<definitionCode>ARMILLARY</definitionCode>

<definitionCode>LIGHTHOUSE</definitionCode>

<definitionCode>CIREBON</definitionCode>

</requiredKnowledgeDefinitions>

</knowledgeSeriesDefinition>

It will be observed that the "ANCIENTNAVIGATION" series links knowledge elements defined as "MERCATOR", "ARMILLARY, "LIGHTHOUSE" and "CIREBON".

(iv) REWARD MECHANISM

In addition, the game editor may implement a function that allows the game designer 420 to set the relationships between game objects and knowledge elements. Consider the case where the reward for construction of a particular building is the unlocking of a certain set of knowledge elements (that are not necessarily related to one another) and other game objects. In the below example, a building having the identifier "DESIGN 1" may unlock the knowledge elements identified as "JEANS", "LITTLEBLACKDRESS" and "BIKINI", as well as an expert identified as a "DESIGNER". This is illustrated by the following pseudocode: <rewardDefinition autoClaimed=" false">

<code>DESIGN_K/code>

<unlockCondition limit="l">

<e ent>BUILDI G_CONSTRUCTION_COMPLETED</event>

<hook>building_DESIGN_l</hook>

</unlockCondition>

<unit rewardType="KNOWLEDGE">

<code>JEANS</code>

</unit>

<unit rewardType="KNOWLEDGE">

<code>LITTLEBLACKDRESS</code>

</unit>

<unit rewardType="KNOWLEDGE">

<code>BIKINK/code>

</unit>

<unit rewardType="EXPERT">

<code>E_DESIGNER</code>

</unit>

<modifier>

<attributeOwner>com. genia . oraclerun . player . OracleRunPlayer< /attributeOwner>

<attributeName>EnergyCost</attributeName>

<attributeExpression>*0.98</attributeExpression> <renderingOptions />

<globalImpact>true</globalImpact>

</modifier>

<modifier>

<attributeOwner>com. genia . oraclerun . player . OracleRunPlayer< /attributeOwner>

<attributeName>Population</attributeName>

<attributeExpression>+200</attributeExpression>

<renderingOptions />

<globalImpact>true</globalImpact>

</modifier>

</rewardDefinition>

In the above example, the knowledge elements identified as "JEANS", "LITTLEBLACKDRESS" and "BIKINI" will be considered to have been acquired by the player who constructs the building having the identifier "DESIGN_1". In addition, the player will gain access to a game object, which is an expert identified as a "DESIGNER".

Of course, it is also possible to implement a reverse reward mechanism, whereby a building required to be constructed in order to enable advancement in the game, may only be constructed if certain knowledge elements are mastered. The validation function of the game editor is now described. When the validation function of the game editor is invoked (e.g., using a graphical user interface), the game editor may run a feasibility test. This is a test to see whether it is possible to execute a viable instantiation of the video game, based on the parameters in the parameters set 220 and the game platform code 210. This may also be referred to as "balancing". Some of the verifications performed by the game editor during the feasibility test include verifying the appropriateness of the distribution of the game objects and knowledge elements in the virtual world, verifying whether there is balanced usage / frequency of the game objects and knowledge elements, and verifying whether there is a balance in terms of accessibility of hierarchically related knowledge elements. For example, it should not be the case that a player's progress at an early stage of the game requires acquisition of exceptionally difficult-to-acquire knowledge elements. The judging rules in order to determine the extent to which the ensuing game would be balanced may be supplied by a file in memory, for example, which takes into account the type of game and so on.

If, by performing the validation, the game editor determines that the game is balanced, the parameter set 220 may be merged with the game platform code 210 in order to yield the video game code 1 13 that will then represent a ready-to-play knowledge-based video game.

On the other hand, if the game is not balanced, adjustments to the game object definitions and/or the knowledge elements and/or the reward mechanism may be made. Such changes may be made based on user input (by allowing the game designer to make tweaks), or the game editor may itself fine tune the definitions, etc. in order to provide a new version of the parameter set 220, and the feasibility test may be re-run. This may be done several times until the game editor determines that its own self-adjusting mechanism is inadequate, in which case input from the game designer may be sought.

Flexibility

It will be appreciated that the game editor provides flexibility to the game design process. Specifically, when changing or adding content to the knowledge database 160, the game designer 420 does not need to change the game platform code 210. This saves on development time and debugging time, leading to a more cost effective output of games, not to mention within a much shorter delivery cycle than a conventional game. Moreover, the variability that may be achieved using the game editor allows for a wide range of possible designs, which in turn may significantly influence the gaming experience and strategy leading to a victory condition. Thus, the replayability value of the game is enhanced.

Moreover, due to the universal format used to access the knowledge records 610 in the knowledge database 160, the process of creating a new version of the game is simplified, since there are no changes required to the game platform code 210 or to the game editor code 400. This may allow the game to be kept current and/or adapted for different industries.

In addition, when designing a new game, only a new companion game editor needs to be developed. Although the game editor will be different, the new game editor may re-use portions of previously developed game editors that have already been designed to interface with the universal format of the knowledge records 610 in the knowledge database 160. As such, the development cycle for developing game editor code for the new game editor may be shortened. Thus, for example, much of the effort in designing the above-described exploration game may be recycled when developing a game editor for, say, a racing game utilizing the same knowledge database 160.

Persistence

According to another embodiment, the account server database 121 is used as a repository for accumulating player exploits, particularly knowledge elements that have been acquired as a result of game play. To this end, and with reference to Fig. 9, the account server database 121 comprises a memory, which may store a plurality of records 900 for corresponding players. In a non-limiting embodiment, the content stored in the records 900 of the account server database 121 may be administered and/or managed by a game portal application executed by the account server 120. Operation of the game portal application may be specified / defined by a set of computer-readable instructions stored in a memory of the account server 120, which are then executed by a processor of the account server 120. The game portal application may run in parallel with game processes for individual games, such that there may even be real-time communication between the game portal application and the game processes.

Each record 900 may include one or more fields that store account information, such as a player ID field 91 1 , a financial data field 912, a location field 913, a demographics field 914 and a data connection field 915, to name a few non-limiting possibilities. In addition, the record 900 for a particular player may store a global set of acquired knowledge elements 930 for that player. The global set of acquired knowledge elements 930 includes sub-record 950 for the various acquired knowledge elements in the set. The sub-record 950 for a particular knowledge element includes a knowledge element ID 935 (similar to the previously described knowledge element IDs 61 1 ) associated with the particular knowledge element.

It is observed that the knowledge elements are acquired in the game environment, i.e., during execution of the main game process, which is not necessarily accessible to the game portal application, and perhaps is not even running on the same machine as the game portal application. Therefore, it is contemplated that the main game process may communicate acquisition events to the game portal application, either upon occurrence or at regular intervals. This may be in the form of identifying a newly acquired knowledge element, the player who acquired it and the other information needed to populate a sub-record 950.

It is noted that the knowledge elements that are part of the global set of knowledge elements 930 for a particular player need not all be acquired during the same instantiation of the same knowledge-based video game. Instead, the knowledge element ID of a knowledge element that has been acquired is recorded and kept in the global set of knowledge elements 930 in a persistent manner even when the current instantiation of the game terminates, such that when the player plays another game, or another instantiation of a game that has already been played, the previously acquired knowledge element conserves its status of having been acquired by that player. Then, when an indication is received that a previously unacquired knowledge element has now been acquired, the global set of knowledge elements 930 for that player is augmented with a sub-record 950 for the newly acquired knowledge element ID. Acquisition of yet another previously unacquired knowledge element would similarly be used to augment the global set of knowledge elements 930 with a further sub-record 950, regardless of whether this new knowledge element was acquired during the same instantiation of the same game, during another instantiation of the same game or during an instantiation of a different game.

In this way, players may accumulate knowledge elements in association with their account rather than exclusively within the context of a single game. This persistence of knowledge elements (which survives individual game instantiations) may increase the value of an individual knowledge element, as it may now potentially be used to gain advancement in other game play situations than the one during which it was acquired. The collection of knowledge elements in the global set of knowledge elements 930 is thus decoupled from their acquisition, thus increasing the flexibility of what may be done with knowledge elements.

It will be appreciated that to allow knowledge elements to have universal value beyond the game in which they were acquired, a common knowledge element ID is used, that transcends the individual games in which the knowledge element are acquired. That is to say, a knowledge element that is acquired as a result of playing game 1 will have the same knowledge element ID as if it had been acquired during game 2. As a result, the sub-records 950 for various acquired knowledge elements may simply store the corresponding knowledge element IDs as a way of identifying that the knowledge elements have been acquired. These are the same as the knowledge elements IDs that have been described before as pertaining to the knowledge records 610 stored in the knowledge database 160.

The sub-record 950 for a given knowledge element may also store additional information. Specifically, the sub-record may include one or more fields pertaining to acquisition details, including a data field 941, a game field 942, a type field 943, to name a few non-limiting possibilities. The date field 941 may specify the date (and/or time) when the knowledge element was acquired. The game field 942 may specify game information (including title, version, and other data) relevant at the time that the knowledge element was acquired. The type field 943 may specify the manner in which the knowledge element was acquired, e.g., whether the knowledge element was (i) purchased, (ii) released/unlocked by construction or acquisition of a controlling game object, (iii) acquired by overcoming a pedagogical challenge, etc.

The sub-record 950 for a given knowledge element may also store a challenge history field 945. The challenge history field 945 may be used to record the pedagogical challenges that have been issued to the player, as well as the responses that were provided by the player and/or the level of correctness of the responses. In this way, when the player interacts with a new game process for another game, or for a new instantiation of the same game, it is possible for the game portal application to be consulted so as to determine which challenges have already been issued to the player and it is also possible to ascertain the nature of the answers given by the player. Moreover, the game portal application may track the success rate of the player and may analyze the information provided by the player to determine deficiencies in certain educational areas. Moreover, the time taken to answer certain challenges may also be recorded in the challenge history field 945. This time information may be integrated by the game portal application with other aspects (such as the level of difficulty of the challenges issued, etc.) to identify a player's strengths and weaknesses regarding certain areas of knowledge.

The sub-record 950 for a given knowledge element may also store a value field 944. The value field 944 may specify a value attributable to the knowledge element, which may be unitary or variable. As mentioned, the value attributable to the knowledge element may be variable. The added value (or "credit") attributable to acquisition of a given knowledge element may be computed by the game portal application based on a variety of factors, such as the number and/or difficulty of any pedagogical challenges that were surmounted by the player in acquiring the given knowledge element, its relative scarcity in the virtual world or overall, the time it took to acquire the given knowledge element, etc. In the case of a variable value, it may be possible to add to the value of the knowledge element by reacquiring it in a different game (or in another instantiation of the same game). Thus, the game portal application may allow the content of the value field 941 associated with an acquired knowledge element to be enhanced when that knowledge element is re-acquired by the same player in different contexts (e.g., different games). Moreover, it may also be possible to configure the game portal application so that it allows knowledge elements (or portions of their value) to be bought, sold, traded or otherwise transacted outside the game environment. In this way, an additional source of income may be generated for the operator of the game and/or for individual players. Stated differently, the exchange of knowledge elements transforms knowledge into a tradeable commodity with a value not only inside, but also outside of a single game or game world.

To this end, the game portal application may be configured so as to store in memory an indication of a variety of registered players and in addition, for each player, the global set of knowledge elements. It is recalled that the global set of knowledge elements may specify knowledge elements that have been previously acquired by the player during game play of at least one video game. Then, requests for transactions of previously acquired knowledge elements among players are processed. Specifically, a request for a transaction may include a request from a first player to (i) purchase at least one knowledge element previously acquired by at least other player; (ii) sell at least one previously acquired knowledge element to at least one other player; or (iii) exchange at least one previously acquired knowledge element for at least one other knowledge element previously acquired by at least one other player. If monetary payment is to be a mode of acquisition of a knowledge element, this may be achieved through an online payment mechanism, and is facilitated by the ready availability of financial information in the financial field 912 of individual records 900 in the account server database 121. Thus, a commission may be payable to the entity that implements the game portal. In addition, the game portal application may implement a suggestion engine. The behavior of the suggestion engine may be defined by computer-readable instructions stored in a memory of the account server 120. When implementing the suggestion engine, the account server 120 monitors the knowledge element holdings of various players (by consulting the account server database 121), determines patterns, correlations or gaps, and issues suggestions based on this information. For example, the suggestion engine may be attentive to the scenario in which a first player is found to possess an abundance of knowledge elements in a first category (such as history) and a second player is found to possess and abundance of knowledge elements in a second category (e.g., science). The suggestion engine may therefore determine that the two players, while somewhat knowledgeable, have combinable holdings such that the combined holdings of the first player and the second player would be significantly greater than the holdings of either player individually. To this end, the suggestion engine may suggest that the players form an alliance to combine their holdings.

In order to make the above suggestion known to the players, the suggestion engine may interface with the game server 1 10. For example, the main game process (implemented by the game server 110 in a non-limiting example) may be configured to occasionally poll the suggestion engine (implemented by the account server 120 in a non-limiting example) to obtain from the suggestion engine an indication of an alliance formation suggestion such as the one described above. Alternatively, the suggestion engine may push this information to the game server 1 10. In another embodiment, the suggestion engine may be configured to determine that a certain player has accumulated a sufficient number of knowledge elements, or has knowledge elements of a high enough value, to get a "head start" (initial advantage) in a particular game that the certain player has not yet actually played. The particular game may be identified to the player by sending a message through a graphical user interface, communication network (including data network 130), etc. Upon receipt of the message identifying the suggested game, the player may be encouraged to play the particular game, which may increase revenue opportunities for the game operator. Persons skilled in the art should appreciate that the above-discussed embodiments are to be considered illustrative and not restrictive. Also it should be appreciated that additional elements that may be needed for operation of certain embodiments of the present invention may not have been described or illustrated, as they are assumed to be within the purview of the person of ordinary skill in the art. Moreover, certain embodiments of the present invention may be free of, may lack and/or may function without any element that is not specifically disclosed herein.

Those skilled in the art will also appreciate that additional adaptations and modifications of the described embodiments may be made. The scope of the invention, therefore, is not to be limited by the above description of specific embodiments but rather is defined by the claims attached hereto.