Computer story generation system and method using network of re-usable substories
First Claim
1. A method of generating a sequence of images representing a dynamically generated story line, comprising:
- establishing a set of characters;
defining a set of re-usable substories, a multiplicity of said substories representing an action by a subject comprising a selectable one of said characters where the action is performed with respect to at least one object comprising at least a selectable one of said characters;
for each said substory, establishing a set of possible reaction substories comprising a subset of said set of re-usable substories;
establishing a plan list for storing plans indicating ones of said substories to be performed;
storing in said plan list an initial set of plans, each of said stored plans representing a substory to be performed;
executing ones of said substories represented by said plans stored in said plan list;
establishing a physical position for each of said characters and updating said characters'"'"' physical positions during said executing step;
establishing a current time and advancing said current time during said executing step;
generating, in reaction to each said executed substory, additional plans to perform additional ones of said substories wherein said additional substories comprise selected ones of said set of possible reaction substories for said executed substory; and
storing said generated plans in said plan list;
said plan list at times storing a multiplicity of said generated plans;
said generating plans step including receiving, in reaction to at least a subset of said executed substories, input from an end user and selecting at least a subset of said additional substories in accordance with said end user input;
said plan generating step including assigning each generated plan an earliest execution time and a set of associated characters including a subject and an object, wherein said subject and object are each a specified one of said characters;
each stored plan in said plan list including said assigned earliest execution time, subject and object, such that at various times at least a subset of said plans in said plan list have respective earliest execution times that are later than said current time;
at least a subset of said generated plans comprising deferred plans, where each deferred plan'"'"'s execution is deferred because its earliest execution time is later than said current time and/or its associated characters are not physically proximate each other;
said executing step including selecting for execution one plan from those of said stored plans in said plan list whose associated earliest execution time is at least as early as said current time and that meet opportunity availability criteria, said opportunity availability criteria including a requirement that the characters associated with said one plan have physical positions that are proximate to one another;
wherein said generated plans are executed in a different order than those generated plans are added to said plan list by said generated plans storing step;
further includingstoring history data representing each specific substory that has been executed;
evaluating newsworthiness of said executed substories represented by said history data and selecting in accordance with predefined newsworthiness criteria a set of most newsworthy executed substories from the history data;
said set of reusable substories including at least one re-usable "gossip" substory having a subject, comprising a selectable one of said characters, who informs an object, comprising a different selectable one of said characters of one of said most newsworthy executed substories;
said substory executing step including executing said gossip substory so as to pass information about a first previously executed substory from a first one of said characters to a second one of said characters;
said plan generating step including generating a plan in reaction to execution of said gossip substory in which said second one of said characters is specified as the subject, and the planned substory is one of said set of possible reaction substories for said first previously executed substory.
0 Assignments
0 Petitions
Accused Products
Abstract
The storyline of a dynamically generated entertainment program, such as a video game, is generated using a matrix of reusable storyline fragments called substories. A set of characters that participate in the storyline is established and a set of reusable substories is defined. Each substory represents a "fragment of a story", usually involving an action by a subject, where the subject is one of the characters. Most substories can be reused multiple times with different ones of the characters being the subject and different ones of the characters being the direct object of the substory. Each substory has a set of possible reaction substories, which are a subset of the defined substories. A plan list stores plan data indicating ones of the substories to be performed at specified times. An initial "seed story" in the form of an initial set of substories is stored in the plan list. The substories stored in the plan list are executed at times corresponding to their respective specified times. For at least a subset of the executed substories, the end user of the system is either shown a video image representing the executed substory or is otherwise informed of the executed substory. In reaction to each executed substory, plans to perform additional ones of the substories are generated. The additional substories are ones of the set of possible reaction substories for each executed substory. Each plan to perform an additional substory is assigned a specified time and plan data representing the plan is stored in the plan list.
83 Citations
9 Claims
-
1. A method of generating a sequence of images representing a dynamically generated story line, comprising:
-
establishing a set of characters; defining a set of re-usable substories, a multiplicity of said substories representing an action by a subject comprising a selectable one of said characters where the action is performed with respect to at least one object comprising at least a selectable one of said characters;
for each said substory, establishing a set of possible reaction substories comprising a subset of said set of re-usable substories;establishing a plan list for storing plans indicating ones of said substories to be performed; storing in said plan list an initial set of plans, each of said stored plans representing a substory to be performed; executing ones of said substories represented by said plans stored in said plan list; establishing a physical position for each of said characters and updating said characters'"'"' physical positions during said executing step; establishing a current time and advancing said current time during said executing step; generating, in reaction to each said executed substory, additional plans to perform additional ones of said substories wherein said additional substories comprise selected ones of said set of possible reaction substories for said executed substory; and storing said generated plans in said plan list;
said plan list at times storing a multiplicity of said generated plans;said generating plans step including receiving, in reaction to at least a subset of said executed substories, input from an end user and selecting at least a subset of said additional substories in accordance with said end user input; said plan generating step including assigning each generated plan an earliest execution time and a set of associated characters including a subject and an object, wherein said subject and object are each a specified one of said characters; each stored plan in said plan list including said assigned earliest execution time, subject and object, such that at various times at least a subset of said plans in said plan list have respective earliest execution times that are later than said current time; at least a subset of said generated plans comprising deferred plans, where each deferred plan'"'"'s execution is deferred because its earliest execution time is later than said current time and/or its associated characters are not physically proximate each other; said executing step including selecting for execution one plan from those of said stored plans in said plan list whose associated earliest execution time is at least as early as said current time and that meet opportunity availability criteria, said opportunity availability criteria including a requirement that the characters associated with said one plan have physical positions that are proximate to one another; wherein said generated plans are executed in a different order than those generated plans are added to said plan list by said generated plans storing step; further including storing history data representing each specific substory that has been executed; evaluating newsworthiness of said executed substories represented by said history data and selecting in accordance with predefined newsworthiness criteria a set of most newsworthy executed substories from the history data; said set of reusable substories including at least one re-usable "gossip" substory having a subject, comprising a selectable one of said characters, who informs an object, comprising a different selectable one of said characters of one of said most newsworthy executed substories; said substory executing step including executing said gossip substory so as to pass information about a first previously executed substory from a first one of said characters to a second one of said characters; said plan generating step including generating a plan in reaction to execution of said gossip substory in which said second one of said characters is specified as the subject, and the planned substory is one of said set of possible reaction substories for said first previously executed substory.
-
-
2. A computer based system for generating a sequence of images representing a dynamically generated story line, comprising:
-
a computer memory that stores structures and executable procedures representing a set of characters and a set of re-usable substories;
a multiplicity of said substories representing an action by a subject comprising a selectable one of said characters where the action is performed with respect to at least one object comprising at least a selectable one of said characters;
for each said substory, establishing a set of possible reaction substories comprising a subset of said set of re-usable substories;a video display for displaying said sequence of images; a user input device; a central processing unit coupled to said computer memory for executing said procedures stored in said computer memory while utilizing said data structures;
coupled to said video display for generating said sequence images on said video display while executing said procedures stored in said computer memory; and
coupled to said user input device for receiving input from an end user;said data structures stored in said computer memory further including a plan list for storing plans indicating ones of said substories to be performed; said procedures stored in said computer memory and executed by said central processing unit including; substory execution procedures for executing ones of said substories represented by said plans stored in said plan list; said substory execution procedures establishing a current time and advancing said current time while said substories are executed;
said substory execution procedures establishing and updating a physical position for each of said characters;planning procedures for generating, in reaction to each said executed substory, additional plans to perform additional ones of said substories wherein said additional substories comprise selected ones of said set of possible reaction substories for said executed substory, and for storing said generated plans in said plan list;
said plan list at times storing a multiplicity of said generated plans; andsaid planning procedures including procedures for receiving, in reaction to at least a subset of said executed substories, input from an end user and selecting at least a subset of said additional substories in accordance with said end user input; wherein said planning procedures assign each generated plan an earliest execution time and a set of associated characters including a subject and an object, wherein said subject and object are each a specified one of said characters; each stored plan in said plan list including said assigned earliest execution time, subject and object, such that at various times at least a subset of said plans in said plan list have respective earliest execution times that are later than said current time; at least a subset of said generated plans comprising deferred plans, where each deferred plan'"'"'s execution is deferred because its earliest execution time is later than said current time and/or its associated characters are not physically proximate each other; said substory execution procedures including instructions for selecting for execution one plan from those of said stored plans in said plan list whose associated earliest execution time is at least as early as said current time and that meet opportunity availability criteria, said opportunity availability criteria including a requirement that the characters associated with said one plan have physical positions that are proximate to one another; and said generated plans are executed in a different order than those generated plans are added to said plan list by said planning procedures; said substory execution procedures including commands for storing history data representing each specific substory that has been executed; said planning procedures including commands for, when generating a plan in reaction to at least one of said substories, reviewing substories in said history data, generating a set of weight values for said set of possible reaction substories, wherein at least one of said weight values is based on the presence or absence of a specific corresponding substory in said history data, and generating a plan to perform the one of said possible reaction substories having a maximum or minimum weight value.
-
-
3. A computer based system for generating a sequence of images representing a dynamically generated story line, comprising:
-
a computer memory that stores structures and executable procedures representing a set of characters and a set of re-usable substories;
a multiplicity of said substories representing an action by a subject comprising a selectable one of said characters where the action is performed with respect to at least one object comprising at least a selectable one of said characters;
for each said substory, establishing a set of possible reaction substories comprising a subset of said set of re-usable substories;a video display for displaying said sequence of images; a user input device; a central processing unit coupled to said computer memory for executing said procedures stored in said computer memory while utilizing said data structures;
coupled to said video display for generating said sequence images on said video display while executing said procedures stored in said computer memory; and
coupled to said user input device for receiving input from an end user;said data structures stored in said computer memory further including a plan list for storing plans indicating ones of said substories to be performed; said procedures stored in said computer memory and executed by said central processing unit including; substory execution procedures for executing ones of said substories represented by said plans stored in said plan list; said substory execution procedures establishing a current time and advancing said current time while said substories are executed;
said substory execution procedures establishing and updating a physical position for each of said characters;planning procedures for generating, in reaction to each said executed substory, additional plans to perform additional ones of said substories wherein said additional substories comprise selected ones of said set of possible reaction substories for said executed substory, and for storing said generated plans in said plan list;
said plan list at times storing a multiplicity of said generated plans; andsaid planning procedures including procedures for receiving, in reaction to at least a subset of said executed substories, input from an end user and selecting at least a subset of said additional substories in accordance with said end user input; said planning procedures assign each generated plan an earliest execution time and a set of associated characters including a subject and an object, wherein said subject and object are each a specified one of said characters; each stored plan in said plan list including said assigned earliest execution time, subject and object, such that at various times at least a subset of said plans in said plan list have respective earliest execution times that are later than said current time; at least a subset of said generated plans comprising deferred plans, where each deferred plan'"'"'s execution is deferred because its earliest execution time is later than said current time and/or its associated characters are not physically proximate each other; said substory execution procedures including instructions for selecting for execution one plan from those of said stored plans in said plan list whose associated earliest execution time is at least as early as said current time and that meet opportunity availability criteria, said opportunity availability criteria including a requirement that the characters associated with said one plan have physical positions that are proximate to one another; and said generated plans are executed in a different order than those generated plans are added to said plan list by said planning procedures; said data structures stored in said computer memory further including history data representing each specific substory that has been executed; said substory execution procedures including commands for evaluating newsworthiness of said executed substories represented by said history data and selecting in accordance with predefined newsworthiness criteria a set of most newsworthy executed substories; said set of reusable substories including at least one re-usable "gossip" substory having a subject, comprising a selectable one of said characters, who informs an object, comprising a different selectable one of said characters of one of said most newsworthy executed substories; said substory execution procedures including commands for executing said gossip substory so as to pass information about a first previously executed substory from a first one of said characters to a second one of said characters; said planning procedures including a procedure for generating a plan in reaction to execution of said gossip substory in which said second one of said characters is specified as the subject, and the planned substory is one of said set of possible reaction substories for said first previously executed substory.
-
-
4. A method of generating a sequence of images representing a dynamically generated story line, comprising:
-
establishing a set of characters; defining a set of re-usable substories, a multiplicity of said substories representing an action by a subject comprising a selectable one of said characters where the action is performed with respect to at least one object comprising at least a selectable one of said characters;
for each said substory, establishing a set of possible reaction substories comprising a subset of said set of re-usable substories;establishing a plan list for storing plans indicating ones of said substories to be performed; storing in said plan list an initial set of plans, each of said stored plans representing a substory to be performed; executing ones of said substories represented by said plans stored in said plan list; establishing a current time and advancing said current time during said executing step; generating, in reaction to each said executed substory, additional plans to perform additional ones of said substories wherein said additional substories comprise selected ones of said set of possible reaction substories for said executed substory; and storing said generated plans in said plan list;
said plan list at times storing a multiplicity of said generated plans;said generating plans step including receiving, in reaction to at least a subset of said executed substories, input from an end user and selecting at least a subset of said additional substories in accordance with said end user input; storing history data representing at least a subset of said executed substories; and evaluating newsworthiness of said executed substories represented by said history data and selecting in accordance with predefined newsworthiness criteria a set of most newsworthy executed substories from the history data; said set of reusable substories including at least one re-usable "gossip" substory having a subject, comprising a selectable one of said characters, who informs an object, comprising a different selectable one of said characters of one of said most newsworthy executed substories; said substory executing step including executing said gossip substory so as to pass information about a first previously executed substory from a first one of said characters to a second one of said characters; said plan generating step including generating a plan in reaction to execution of said gossip substory in which said second one of said characters is specified as the subject, and the planned substory is one of said set of possible reaction substories for said first previously executed substory; and said newsworthiness evaluation step includes establishing a separate list of most newsworthy executed substories for each of at least plurality of said characters, wherein said predefined newsworthiness criteria takes into account whether each executed substory represented by said history data reflects positively or negatively upon the character associated with the list of most newsworthy executed substories to which said executed substory may be assigned. - View Dependent Claims (5)
-
-
6. A computer based system for generating a sequence of images representing dynamically generated story line, comprising:
-
a computer memory that stores structures and executable procedures representing a set of characters and a set of re-usable substories;
a multiplicity of said substories representing an action by a subject comprising a selectable one of said characters where the action is performed with respect to at least one object comprising at least a selectable one of said characters;
for each said substory, establishing a set of possible reaction substories comprising a subset of said set of re-usable substories;a video display for displaying said sequence of images; a user input device; a central processing unit coupled to said computer memory for executing said procedures stored in said computer memory while utilizing said data structures;
coupled to said video display for generating said sequence images on said video display while executing said procedures stored in said computer memory; and
coupled to said user input device for receiving input from an end user;said data structures stored in said computer memory further including a plan list for storing plans indicating ones of said substories to be performed; said procedures stored in said computer memory and executed by said central processing unit including; substory execution procedures for executing, in sequence, ones of said substories represented by said plans stored in said plan list; said substory execution procedures establishing a current time and advancing said current time while said substories are executed; planning procedures for generating, in reaction to each said executed substory, additional plans to perform additional ones of said substories wherein said additional substories comprise selected ones of said set of possible reaction substories for said executed substory, and for storing said generated plans in said plan list;
said plan list at times storing a multiplicity of said generated plans; andsaid planning procedures step including procedures for receiving, in reaction to at least a subset of said executed substories, input from an end user and selecting at least a subset of said additional substories in accordance with said end user input; wherein said data structures stored in said computer memory further including history data representing at least a subset of said executed substories; said substory execution procedures including commands for evaluating newsworthiness of said executed substories represented by said history data and selecting in accordance with predefined newsworthiness criteria a set of most newsworthy executed substories; said set of reusable substories including at least one re-usable "gossip" substory having a subject, comprising a selectable one of said characters, who informs an object, comprising a different selectable one of said characters of one of said most newsworthy executed substories; said substory execution procedures including commands for executing said gossip substory so as to pass information about a first previously executed substory from a first one of said characters to a second one of said characters; said planning procedures including a procedure for generating a plan in reaction to execution of said gossip substory in which said second one of said characters is specified as the subject, and the planned substory is one of said set of possible reaction substories for said first previously executed substory and said newsworthiness evaluation commands include commands for establishing a separate list of most newsworthy executed substories for each of at least plurality of said characters, wherein said predefined newsworthiness criteria takes into account whether each executed substory represented by said history data reflects positively or negatively upon the character associated with the list of most newsworthy executed substories to which said executed substory may be assigned. - View Dependent Claims (7)
-
-
8. A method of generating a sequence of images representing a dynamically generated story line, comprising:
-
establishing a set of characters; defining a set of re-usable substories, a multiplicity of said substories representing an action by a subject comprising a selectable one of said characters where the action is performed with respect to at least one object comprising at least a selectable one of said characters;
for each said substory, establishing a set of possible reaction substories comprising a subset of said set of re-usable substories;establishing a plan list for storing plans indicating ones of said substories to be performed; storing in said plan list an initial set of plans, each of said stored plans representing a substory to be performed; executing ones of said substories represented by said plans stored in said plan list; establishing a current time and advancing said current time during said executing step; generating, in reaction to each said executed substory, additional plans to perform additional ones of said substories wherein said additional substories comprise selected ones of said set of possible reaction substories for said executed substory; and storing said generated plans in said plan list;
said plan list at times storing a multiplicity of said generated plans;said generating plans step including receiving, in reaction to at least a subset of said executed substories, input from an end user and selecting at least a subset of said additional substories in accordance with said end user input; storing history data representing at least a subset of said executed substories; and evaluating newsworthiness of said executed substories represented by said history data and selecting in accordance with predefined newsworthiness criteria a set of most newsworthy executed substories from the history data; said set of reusable substories including at least one re-usable "gossip" substory having a subject, comprising a selectable one of said characters, who informs an object, comprising a different selectable one of said characters of one of said most newsworthy executed substories; said substory executing step including executing said gossip substory so as to pass information about a first previously executed substory from a first one of said characters to a second one of said characters; said plan generating step including generating a plan in reaction to execution of said gossip substory in which said second one of said characters is specified as the subject, and the planned substory is one of said set of possible reaction substories for said first previously executed substory; said history data storing step including storing at least one false event as an executed event and denoting each false event in the history data as a false event, each stored false event having an associated subject and object, each comprising one of said characters; said predefined newsworthiness criteria include criteria denoting said false events as having high newsworthiness; and said gossip substory executing step includes selecting an executed event from said gossip substory'"'"'s subject'"'"'s list of most newsworthy executed substories which meets predefined gossip selection criteria with respect to said gossip substory'"'"'s object; whereby said method includes passing information about said false events from one character to another.
-
-
9. A computer based system for generating a sequence of images representing a dynamically generated story line, comprising:
-
a computer memory that stores structures and executable procedures representing a set of characters and a set of re-usable substories;
a multiplicity of said substories representing an action by a subject comprising a selectable one of said characters where the action is performed with respect to at least one object comprising at least a selectable one of said characters;
for each said substory, establishing a set of possible reaction substories comprising a subset of said set of re-usable substories;a video display for displaying said sequence of images; a user input device; a central processing unit coupled to said computer memory for executing said procedures stored in said computer memory while utilizing said data structures;
coupled to said video display for generating said sequence images on said video display while executing said procedures stored in said computer memory; and
coupled to said user input device for receiving input from an end user;said data structures stored in said computer memory further including a plan list for storing plans indicating ones of said substories to be performed; said procedures stored in said computer memory and executed by said central processing unit including; substory execution procedures for executing, in sequence, ones of said substories represented by said plans stored in said plan list; said substory execution procedures establishing a current time and advancing said current time while said substories are executed; planning procedures for generating, in reaction to each said executed substory, additional plans to perform additional ones of said substories wherein said additional substories comprise selected ones of said set of possible reaction substories for said executed substory, and for storing said generated plans in said plan list;
said plan list at times storing a multiplicity of said generated plans; andsaid planning procedures step including procedures for receiving, in reaction to at least a subset of said executed substories, input from an end user and selecting at least a subset of said additional substories in accordance with said end user input; wherein said data structures stored in said computer memory further including history data representing at least a subset of said executed substories; said substory execution procedures including commands for evaluating newsworthiness of said executed substories represented by said history data and selecting in accordance with predefined newsworthiness criteria a set of most newsworthy executed substories; said set of reusable substories including at least one re-usable "gossip" substory having a subject, comprising a selectable one of said characters, who informs an object, comprising a different selectable one of said characters of one of said most newsworthy executed substories; said substory execution procedures including commands for executing said gossip substory so as to pass information about a first previously executed substory from a first one of said characters to a second one of said characters; said planning procedures including a procedure for generating a plan in reaction to execution of said gossip substory in which said second one of said characters is specified as the subject, and the planned substory is one of said set of possible reaction substories for said first previously executed substory; said stored history data includes data representing at least one false event as an executed event and denoting each false event in the history data as a false event, each stored false event having an associated subject and object, each comprising one of said characters; said predefined newsworthiness criteria include criteria denoting said false events as having high newsworthiness; and said gossip substory executing commands including commands for selecting an executed event from said gossip substory'"'"'s subject'"'"'s list of most newsworthy executed substories which meets predefined gossip selection criteria with respect to said gossip substory'"'"'s object; whereby said system includes commands for passing information about said false events from one character to another.
-
Specification