Legal claims defining the scope of protection, as filed with the USPTO.
1. A computer-implemented method of generating a random map at a computing system having a processor and memory, comprising the steps of the computing system performing the following: the computing system defining a plurality of elements to be distributed across a plurality of tiles on a map to be generated; the computing system assigning a plurality of weight values to said plurality of elements; the computing system using a random value function to generate a value for each of said plurality of tiles; the computing system comparing said generated value with one or more of said assigned weight values to select one of said elements for one of said tiles; and the computing system adding said selected element, comprising a first object, to said one of said tiles in the map by at least performing the following: defining one or more placement constraints for a first object to be placed on a the map, said constraints identifying an object type, and indicating a distance value to be used in placing said first object if another object of said identified object type is already placed on said map; proposing a location on said map for said first object; determining whether said proposed location satisfies said one or more constraints; and if said proposed location does not satisfy said constraints, then finding a second location on said map for said first object, wherein said second location is found based on said proposed location.
2. The method of claim 1 , wherein said elements comprise terrain textures.
3. The method of claim 1 , wherein said elements comprise object models.
4. The method of claim 3 , further comprising steps of: assigning a weight value to the absence of an object model; and determining that a second one of said tiles will have no object model based on comparing a value generated for said second one of said tiles with said weight value assigned to the absence of said object model.
5. The method of claim 3 , further comprising the step of rotating said selected object model when adding said selected object model to said one of said tiles, and rotating said selected object model by a different amount when adding said object model to another tile.
6. The method of claim 1 , further comprising the steps of: receiving a user identification of at least one parameter for the generation of said map; and accessing a mix file containing corresponding parameters for said random value function.
7. The method of claim 6 , wherein said mix file also includes the random value function.
8. The method of claim 7 , wherein said random value function comprises a Perlin noise function.
9. The method of claim 1 , wherein said elements comprise terrain textures, and further comprising the step of: further using said generated value and a weighted list of object models to determine whether an object model should be placed in said one of said tiles.
10. The method of claim 1 , further comprising the step of adding a river to said map as a spline.
11. The method of claim 1 , further comprising the step of adding a cliff to said map using a plurality of selectable, rotatable, cliff meshes.
12. The method of claim 11 , further comprising the step of adjusting vertex elevations of said cliff meshes based on elevations of neighboring tiles to said added cliff.
13. The method of claim 1 , further comprising the step of adding noise elevation to said map using a second random value function.
14. The method of claim 1 , further comprising the steps of: determining a number of objects to be placed on said map based on a number of players; defining separate player areas of said map for each player; and distributing said objects into said areas.
15. The method of claim 1 , wherein if said second location also fails to satisfy said constraints, and a predetermined number of additional failed proposed locations are identified, then skipping placement of said first object on said map.
16. The method of claim 1 , further comprising the steps of: defining one or more placement constraints for a second object to be placed on said map, said constraints identifying an object type for said second object, and indicating a distance value to be used in placing said second object if another object of said identified object type for said second object is already placed on said map; proposing a location on said map for said second object; determining whether said proposed location satisfies said one or more constraints; and if said proposed location does not satisfy said constraints, then identifying a priority of said second object, and if said second object is of a priority higher than a predetermined threshold priority, relaxing said one or more placement constraints for said second object.
17. One or more computer-readable storage media, storing the following: a script file defining a plurality of elements to be distributed across a plurality of tiles on a map to be generated, wherein said file identifies a plurality of weight values to said plurality of elements, and wherein said media also stores computer-executable instructions for performing the method recited in claim 1 .
18. The one or more media of claim 17 , wherein said elements include terrain textures and objects.
19. The one or more media of claim 17 , further including computer-executable instructions for relaxing a placement restriction in response to a predetermined number of failed attempts at placing an object using an original placement restriction.
20. The one or more media of claim 17 , further including computer-executable instructions for randomly placing a river on said map using a spline, and for aligning river textures for said river with said spline.
21. The method of claim 1 , wherein each of the plurality of elements is assigned a different weight.
Unknown
September 15, 2009
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.