U.S. Pat. No. 10,222,953
SYSTEMS AND METHODS FOR EDITING VIRTUAL CONTENT OF A VIRTUAL SPACE
AssigneeDisney Enterprises, Inc.
Issue DateApril 30, 2014
Illustrative Figure
Abstract
A system for editing virtual content of a virtual space. The system may include a host server comprising one or more physical processors configured to effectuate presentation of an editing interface on a client computing platform associated with an administrator user. The files may store property values for the properties of the virtual content of the virtual space. The property value for a property of virtual content may be determined based on a selection of a file that stores the property value. The editing interface may be configured to receive selection of a file from a group of files that stores different property values for the same property in order to implement the property value(s) of the selected file. The editing interface may be configured to present visual cues to the administrator related to the selection of files that store different property values for the properties of the virtual content.
Description
DETAILED DESCRIPTION FIG. 1illustrates a system10for editing virtual content of a virtual space. A virtual space may include an online game taking place in the virtual space. The virtual space may be hosted over a network28, such as the Internet, to facilitate participation by users38(e.g., players of the online game taking place in the virtual space) with the virtual space by executing an instance of the virtual space. Information may be transmitted over the Internet to client computing platforms36associated with the users38to facilitate presentation of the virtual space to the users38on the client computing platforms36. A host server12may include processor(s)14. The server12may include electronic storage26. The system10may include one or more administrator users40that are different from the users38. An administrator user40may be an administrator of the system10, the server12, and/or the virtual space. An administrator user40may be a user that is given (authenticated) access to files that store information that defines virtual content of the virtual space and/or is otherwise related to the execution of the virtual space. For example, electronic files stored in electronic storage26may define, for example, property values of properties of the virtual content of the virtual space. The files may be of a computer-readable format suitable to facilitate execution of the virtual space by the server12(e.g., processors14) to include the virtual content defined by the files. For example, the files may be RDF, XML, JSON, and/or other considerations of file formats suitable for the intended purposes described herein. Virtual content may include one or more virtual objects, an aspect of the virtual space (e.g., topography, topographical elements, upgrades, display skins, etc.), and/or other considerations of virtual content. A virtual object may include a virtual item and/or a virtual good, a character, group of characters, and/or other considerations of virtual objects. Virtual items and/or goods may include ...
DETAILED DESCRIPTION
FIG. 1illustrates a system10for editing virtual content of a virtual space. A virtual space may include an online game taking place in the virtual space. The virtual space may be hosted over a network28, such as the Internet, to facilitate participation by users38(e.g., players of the online game taking place in the virtual space) with the virtual space by executing an instance of the virtual space. Information may be transmitted over the Internet to client computing platforms36associated with the users38to facilitate presentation of the virtual space to the users38on the client computing platforms36. A host server12may include processor(s)14. The server12may include electronic storage26.
The system10may include one or more administrator users40that are different from the users38. An administrator user40may be an administrator of the system10, the server12, and/or the virtual space. An administrator user40may be a user that is given (authenticated) access to files that store information that defines virtual content of the virtual space and/or is otherwise related to the execution of the virtual space. For example, electronic files stored in electronic storage26may define, for example, property values of properties of the virtual content of the virtual space. The files may be of a computer-readable format suitable to facilitate execution of the virtual space by the server12(e.g., processors14) to include the virtual content defined by the files. For example, the files may be RDF, XML, JSON, and/or other considerations of file formats suitable for the intended purposes described herein.
Virtual content may include one or more virtual objects, an aspect of the virtual space (e.g., topography, topographical elements, upgrades, display skins, etc.), and/or other considerations of virtual content. A virtual object may include a virtual item and/or a virtual good, a character, group of characters, and/or other considerations of virtual objects. Virtual items and/or goods may include one or more of a virtual weapon, a tool, a food, a currency, a reward, a bonus, health, a potion, an enhancement, a mount, a power-up, a speed-up, virtual clothing (e.g., shirt, hat, pants, etc.), a vehicle, an anatomical feature of a character or game entity, a troop or troop type, a pet, a virtual resource, and/or other considerations of virtual items and/or goods. Virtual items and/or virtual goods may be usable within the virtual space and/or an online game that takes place in the virtual space.
Virtual content may be associated with one or more properties. Properties of virtual content may include, for example, a type (e.g., a character type vs. a weapon type), a name, a price, a visual aspect of the content (e.g., a color, a size, a shape, a design, a logo, and/or other considerations), and/or other considerations of properties of virtual content of the virtual space. Properties of the virtual content may be defined by property values stored by the files. A given file may store a property value for one or more properties of the virtual content that are associated with the file. For example, a file may store a property value for the color property of a virtual item that defines the color of the item as “green”, “red”, “blue”, and/or other consideration.
Administrator users40may access files to edit and/or otherwise access property values stored by the files. Editing the property values of the properties of virtual content may create different variations of the virtual content in the virtual space. In other words, variations of a particular piece of virtual content, such as a virtual object, may correspond to different implementations of the virtual object where a different property value for the same property is employed. Herein, the terms “edit” and/or “editing” may refer to one or more of creating, adding, and/or removing some of the information stored by the file in the electronic storage26, such as the property values for properties of the virtual content. Information included in the files and/or other electronic media stored in electronic storage26may be transmitted over a network30to client computing platforms36associated with the administrator users40to facilitate editing of information by the administrator users40on the client computing platforms36. Editing of information stored by the files and/or other electronic media may be facilitated by the presentation of an editing interface, such as the interface81shown inFIG. 9-16, described in more detail herein.
In some implementations, the network30may be a local area network that connects the client computing platforms36associated with the administrator users40with the electronic storage26(e.g., or server12), e.g., via wifi. In some implementations, network28and network30may be the same network (e.g., the Internet). In some implementations, the client computing platforms36associated with administrator users40may be in direct (e.g., hardwired) communication with the electronic storage26(and/or server12).
The client computing platforms36can include, for example, a cellular telephone, a smartphone, a laptop, a tablet computer, a desktop computer, a television set-top box, smart TV, a gaming console, and/or other device suitable for the intended purposes as described herein and/or other considerations
InFIG. 1, providing the virtual space may include hosting the virtual space over the network28, such as the Internet. The host server12may include one or more processors14configured to execute one or more computer components for implementing an instance of a virtual space and/or an online game taking place within the virtual space and to facilitate the participation of one or more users38in the virtual space and/or the online game.
Providing the editing interface may include hosting the editing interface over network30. The host server12may include one or more processors14configured to execute one or more computer components for implementing an instance of the editing interface to facilitate access to files stored in electronic storage26by the administrator users40for editing information stored therein.
The computer program components may include one or more of a space component16, a user component18, an administrator component20, a shop component22, an editing interface component24, and/or other components.
The space component16may be configured to implement an instance of the virtual space. The virtual space may be implemented to include one or more virtual objects and/or other virtual content. The virtual content may be defined by properties having property values. Property values for the properties of the one or more virtual objects that are implemented in the virtual space may be determined based on a selection of the files that store the property values. The instance of the virtual space may be executed by the computer components to determine state of the virtual space. The state may then be communicated (e.g., via streaming visual data, via object/position data, and/or other state information) from server12to client computing platforms36for presentation to users38. The state determined and transmitted to a given client computing platform36may correspond to a view for a user character (or other game entity) being controlled by a user38via input devices (e.g., a controller) at the given client computing platform36. The state determined and presented to a given client computing platform36may correspond to a location in the virtual space (e.g., location in the game). The view described by the state for the given client computing platform36may correspond, for example, to the location from which the view is taken, the location the view depicts, and/or other locations, a zoom ratio, a dimensionality of objects, a point-of-view, and/or view parameters of the view. One or more of the view parameters may be selectable by the users38.
An instance of the virtual space may comprise a simulated space that is accessible by users38via clients (e.g., client computing platforms36) that present the views of the virtual space to a user. The simulated space may have a topography, express ongoing real-time interaction by one or more users, and/or include one or more objects positioned within the topography that are capable of locomotion within the topography. In some instances, the topography may be a 2-dimensional topography. In other instances, the topography may be a 3-dimensional topography. The topography may include dimensions of the space, and/or surface features of a surface or objects that are “native” to the space. In some instances, the topography may describe a surface (e.g., a ground surface) that runs through at least a substantial portion of the space. In some instances, the topography may describe a volume with one or more bodies positioned therein (e.g., a simulation of gravity-deprived space with one or more celestial bodies positioned therein). An instance executed by the computer components may be synchronous, asynchronous, and/or semi-synchronous.
The above description of the manner in which state of the virtual space is determined by space component16is not intended to be limiting. The space component16may be configured to express the virtual space in a more limited, or richer, manner. For example, views determined for the virtual space representing the state of the instance of the virtual space may be selected from a limited set of graphics depicting an event in a given place within the virtual space. The views may include additional content (e.g., text, audio, pre-stored video content, and/or other content) that describes particulars of the current state of the place, beyond the relatively generic graphics. For example, a view may include a generic battle graphic with a textual description of the opponents to be confronted. Other expressions of individual places within the virtual space are contemplated.
Within the instance(s) of the virtual space executed by space component16, users38may control game entities, simulated physical phenomena (e.g., wind, rain, earthquakes, and/or other phenomena), and/or other elements within the virtual space to interact with the virtual space and/or each other. The game entities may include virtual characters such as avatars. As used herein, the term game entity may refer to an object (or group of objects) present in the virtual space that represents an individual user. The game entity may be controlled by the user38with which it is associated. The user controlled element(s) may move through and interact with the virtual space (e.g., non-user characters in the virtual space, other objects in the virtual space). The user controlled elements controlled by and/or associated with a given user38may be created and/or customized by the given user. The user may have an “inventory” of virtual items and/or currency that the user can use (e.g., by manipulation of a user character or other user controlled element, and/or other items) within the virtual space.
The users38may participate in the instance of the virtual space by controlling one or more of the available user controlled game entities in the virtual space. Control may be exercised through control inputs and/or commands input by the users through client computing platforms36. The users38may interact with each other through communications exchanged within the virtual space. Such communications may include one or more of textual chat, instant messages, private messages, voice communications, and/or other communications. Communications may be received and entered by the users38via their respective client computing platforms36. Communications may be routed to and from the appropriate users through server12(e.g., through space component16) and/or through communications which are external to the system10(e.g., text messaging services associated with the client computing platforms36).
The instance of the virtual space and/or the online game that takes place therein may be persistent. That is, the virtual space and/or the game may continue on whether or not individual players are currently logged in and/or participating in the game. A player that logs out of the virtual space and then logs back in some time later may find the virtual space has been changed through the interactions of other players with the virtual space during the time the player was logged out. These changes may include changes to the simulated physical space, changes in the player's inventory, changes in other player's inventories, changes experienced by non-player characters, changes to the virtual items available for use in the online game, and/or other changes.
InFIG. 1, the user component18may be configured to access and/or manage one or more user profiles and/or user information associated with users38of the system10. The one or more user profiles and/or user information may include information stored by server12, one or more of the client computing platforms36, and/or other storage locations. The user profiles may include, for example, information identifying users (e.g., a username or handle, a number, an identifier, and/or other identifying information) within the virtual space, security login information (e.g., a login code or password), virtual space account information, subscription information, virtual (or real) currency account information (e.g., related to currency held in credit for a user), virtual inventory information (e.g., virtual inventories associated with the users that include one or more virtual items available for the users in the virtual space), relationship information (e.g., information related to relationships between users in the virtual space), virtual space usage information (e.g., a log-in history indicating the frequency and/or amount of times the user logs-in to the user accounts), demographic information associated with users, interaction history among users in the virtual space, information stated by users, browsing history of users, a client computing platform identification associated with a user, a phone number associated with a user, and/or other information related to users.
The administrator component20may be configured to access and/or manage one or more user profiles and/or user information associated with the administrator users40of the system10. The one or more user profiles and/or user information of the administrator users40may include information stored by server12, one or more of the client computing platforms36, and/or other storage locations. The user profiles of administrator users40may include, for example, information identifying the administrator users (e.g., a username or handle, a number, an identifier, and/or other identifying information), security login information (e.g., a login code or password for challenge-response authentication), editing history information (e.g., information related to a given administrator user's access to files where changes were made), and/or other information related to administrator users40.
In some implementations, the files stored in the electronic storage may be a protected resource of the server12. The administrator component20may be configured to authenticate users as administrator users to allow access to the files stored in electronic storage26. Challenge-response authentication may be employed to authenticate users for access to the protected resource. In response to authentication, the administrator users may be presented an editing interface used for accessing and/or otherwise editing information stored in the files (e.g., facilitated by editing interface component24).
Electronic storage26may be configured to store electronic files that define virtual objects and/or other virtual content implemented in the virtual space. An individual file may be associated with one or more properties of one or more virtual objects and/or other virtual content. An individual file may store a single property value for each of the one or more properties associated with the file for each of the one or more virtual objects the file stores values for. In an execution of an instance of the virtual space including one or more virtual objects, the property values for the properties of the one or more virtual objects that are implemented in the virtual space may be determined based on a selection (by an administrator user40) of the files that stores property values. For example, when a file for a given virtual object is selected by an administrator user40, the property value(s) stored by the file will define the property values of the properties of the virtual object in the executed virtual space.
The editing interface described in more detail herein, may allow an administrator user40to easily change the property value for one or more properties of a virtual object. This type of “changing” of property values may allow the administrator user40to “test” different variations of the virtual objects having different property values for one or more properties of the virtual object in the executed virtual space. For example, testing of different property values of a property of a virtual object may allow an administrator user40to determine a variation of the virtual object which is best suited for all users, a specific user, and/or a group of users.
In some implementations, testing of this sort may be referred to as “A-B” testing (e.g., testing a user's response to variation ‘A’ of a virtual object compared to variation ‘B’ of the virtual object). Testing may be performed on a system wide basis (e.g., for all users38of system10), and/or on a specific user and/or user group basis.
In some implementations, files may be grouped into file groups. The file groups may include files that store different property values for one or more properties that are associated commonly between the files. As such, the property values for the commonly associated properties stored by the files can be used for this type of A-B testing. The follow descriptions of examples of files used to store property values of properties of virtual objects are provided for illustrative purposes only and are not intended to be limiting.
FIG. 2-FIG. 7depict visual representations of examples of files stored by electronic storage26(FIG. 1) that store a property value for each of one or more properties of one or more virtual objects associated with the file. InFIG. 2, a first object may be defined, at least in part, by a first file42(e.g., when the first file42is selected by an administrator user). The first object may be identified by a unique identifier (e.g., UID). For illustrative purposes, the first object may be a piece of virtual clothing, such as a shirt. The first object may have a first UID44that is “shirt_1”. The first file42may be associated with a first property46of the first object. The first property46may be, for example, color. The first file42may store a first value48for the first property46. The first value48may be, for example, that the first object is the color “blue”.
FIG. 3illustrates a visual representation of a second file50that may be used to define, at least in part the first object (e.g., when, for example, the second file50is selected by an administrator user). The second file50may identify the first object by the first UID44. The second file50may also be associated with the first property46of the first object. The second file may store a second value52for the first property46of the first object. The second value52may be different than the first value48stored in the first file42. The second value52may be, for example, that the first object is the color “green”.
FIG. 4depicts a visual representation of a third file54storing a property value for properties of more than one virtual object. The third file54may store property values for the first object and a second object. The first object may be identified by the first UID44. The second object may be identified by a second UID60(e.g., “shirt_2”). The properties associated with the third file54may include the first property46(e.g., a color), a second property54(e.g., a name), a third property56(e.g., a price), and a fourth property58(e.g., a logo). The third file54may store property values for each of the properties associated with the file, and for each of the virtual objects identified in the third file54. For example, the third file54may store a third value62for the first property46of the first object (and/or other property values for other properties of the first object and second object). The third value62may be different than the first value48and second value52stored in the first file42and second file50, respectively. For example the third value62may define the color of the first object as “white”.
In some implementations, the third file54may represent a file used to store initial or “baseline” values for properties of the first object and the second object. In other words, the property values stored in the third file54(or other “baseline” type file) may be what are initially selected to define property values for one or more properties of the first object and the second object in an otherwise unedited execution of the virtual space.
In some implementations,FIG. 2andFIG. 3may represent files included in a file group that includes files that store different property values for one or more properties that are associated commonly between the files. The first file42and the second file50included in a file group may be used for A-B testing different property values for the property that is associated commonly between the files, e.g., the first property46. For example, if the first object is to be sold in a virtual shop of the virtual space, an administrator may want to see if the users of the virtual space prefer the first object as blue as opposed white, green as opposed to white, and/or green as opposed to blue (and/or other test colors). The system10described herein may facilitate a streamline and efficient manner in which an administrator user40can easily switch the property values for one or more properties of one or more virtual objects for such testing, for example via the editing interface described in more detail herein. For example, when a property value of a property is changed from a baseline and/or an other previous selection of a value, the newly selected property value may be considered as to “override” the previous selection of the property value. An “override” may be visually reflected by a visual indication on the editing interface. This together with other aspects of the disclosure may provide an editing interface that provides administrators an efficient and organized A-B testing environment.
FIG. 5depicts a visual representation of a fourth file64that stores property values for each of the first property46, second property54, and third property56of a third object identified by a third UID66, e.g., “shirt_3”. The fourth file64may represent a file that stores the “baseline” values for the first property46, second property54, and third property56of the third virtual object.
FIG. 6depicts a visual representation of a fifth file68that stores a fourth property value72(e.g., $38) for the third property56(e.g., a price) of the third object. The fifth file68may store a fifth property value74(e.g., “Orchestra”) for the fourth property58(e.g., a logo) of the third object.
FIG. 7depicts a visual representation of a sixth file76that stores a sixth property value78(e.g., $29) for the third property56(e.g., a price) of the third object. The sixth file76may store a seventh property value80(e.g., “choir”) for the fourth property58(e.g., a logo) of the third object.
In some implementations, the files ofFIG. 6andFIG. 7may be files included in a file group. The file group may include files that store different property values (72,74,78,80) for one or more properties (56,58) that are associated commonly between the files. The fifth file68and the sixth file76may be are used for A-B testing the property value for the commonly associated one or more properties, in this case, the third property56and the fourth property58. For example, the fifth file68and the sixth file76may be used for A-B testing the property value for the third property56and the fourth property58compared to the baseline values of the third property56and the fourth property58(e.g., the values stored in the fourth file64ofFIG. 5).
FIG. 8depicts a visual representation of a first collection of files79(e.g., files layered atop on another) that define property values for one or more properties of one or more virtual objects that may be implemented simultaneously in the virtual space. For example, the first collection of files79may include the third file54(FIG. 4) and the fourth file64(FIG. 5) that may represent the “baseline” selection of property values for the first object, second object, and third object, wherein the first object, second object, and third object comprise at least some of the virtual content of the virtual space. As will be brought out in the following description of the editing interface81below, the system10herein may facilitate A-B testing property values of one or more properties of the first object, second object, and/or third object (and/or more or less virtual objects and/or other content).
Returning toFIG. 1, the shop component22may be configured to present offers to sell instances of virtual objects to users in a virtual shop. The virtual shop may be a simulated environment within the virtual space which is accessible by users and presents the views of the virtual shop to the users. Users may access the virtual shop through one of a variety of ways. Users may access the virtual shop through the manipulation of one or more entities associated with the user within the virtual space using control inputs and/or commands input by the users through client computing platforms36, and/or other way of access.
Manipulation of an entity, such as a character, may include moving the one or more entities through the virtual space using control inputs and/or commands input by the users through client computing platforms36, to move the one or more entities to the simulated environment designating the location of the virtual shop within the virtual space.
Users38may use control inputs and/or commands not associated with the one or more entities to access the virtual shop. Control inputs and/or commands may automatically present the instance of the virtual shop on the clients computing platforms36(e.g., user selects a virtual shop button to automatically be taken to the virtual shop).
The instance of the virtual shop may be presented to users through a shop interface. The shop interface may be configured to present the offers to sell virtual objects to users38. The shop interface may be configured to receive entry and/or selection of individual offers by the users to effectuate acceptance and/or purchase of the offers at a virtual (or real) currency purchase price.
The simulated environment of the virtual shop may have topography. The virtual shop may express ongoing real-time interaction by one or more users (e.g., may have limited stock of virtual items for sale which can be purchased by one or more users within the virtual space which can be depleted), and/or include one or more objects (e.g., one or more virtual items, a virtual teller, and/or other objects) positioned within the topography that may be capable of locomotion within the topography. The virtual shop may display the virtual objects, and/or the one or more sets of virtual content available for purchase by the users. Users may view the virtual objects (e.g., individual virtual items and/or sets of virtual items) available for purchase. The display of the virtual objects may be in accordance with a current selection of one or more files that store property values of the properties that define the virtual objects. A change in the property value of a property of a virtual object based on an administrator selection of a file that stores the property value may be reflected in the view and/or description of the virtual objects in the virtual shop. Users may purchase the virtual items using virtual (or real) currency. Transactions may take place with the virtual teller, through various other actions of the user within the instance of the virtual shop, and/or other offer/transaction mechanisms.
InFIG. 1, the editing interface component24may be configured to effectuate presentation, on client computing platforms36associated with the administrator users40, of an editing interface for selecting files stored by electronic storage26.
FIG. 9illustrates an implementation of the editing interface81used for selecting files for editing virtual content of a virtual space. Editing interface81may be used, for example, to select files in order to change property values of properties of virtual objects included in the virtual space for A-B testing, and/or for other purposes. For illustrative purposes, the editing interface81shown inFIG. 9-16depicts one or more editing procedures for changing the property values related to the first object, second object, and third object. However, it is to be understood that the descriptions provided herein may be carried out for more or less object, and/or for other types of virtual content (e.g., topographical elements of the topography of the virtual space).
In some implementations the editing interface81may be configure to present one or more of: an identification of the one or more virtual objects that are implemented in the virtual space and are the current subject of editing, the one or more of the properties of the one or more virtual objects, and each property value associated with each of the one or more properties according to selected files (e.g., the first collection of files79defining baseline values and/or other previously selected files). For example, inFIG. 9, the user interface81may be configured to present an identification of the first object (e.g., first UID44) and/or other objects, the first property46and/or other properties, and the third value62for the first property46. The third value62may be determined based on selection of the third file54that stores the third value62, and by virtue of the third file54being included in the first collection of files79that define baseline values for the first object, second object, and third object which are the current subjects of editing.
The editing interface81may be configured to include one or more layers that correspond to file groups. The file groups may include files that store different property values for one or more properties that are associated commonly between the files as described previously. A given layer may be selectable by an administrator user to make selections of the different files included in the file group that corresponds to the layer.
In some implementations, the editing interface81may be configured to include one or more selection interface elements82a-dthat correspond to the different layers. The interface elements82a-dmay be configured to receive user entry and/or selection of the layer such that a selected layer is made “active”. The current depiction of the editing interface81includes four layers, e.g., Layer 1, Layer 2, Layer 3, and Layer 4, having interface elements82a-dassociated with each to facilitate selection thereof. However, it is to be understood that other implementations may include an editing interface having more or less layers than currently depicted.
In some implementations, the editing interface81may be configured to include one or more toggle interface elements84a-d. Interface elements84a-dmay be configured to receive user entry and/or selection for toggling through the files included in the file group that corresponds to the selected layer for making the desired selection.
In the current implementation, Layer 1 (herein “first layer”) may correspond to a first file group including the first file42(FIG. 2), the second file50(FIG. 3) and/or other files. Layer 2 (herein “second layer”) may correspond to a second file group including the third file54(FIG. 4) and/or other files. However, for illustrative purposes, the second layer will be considered as only including the third file54. Layer 3 (herein “third layer) may correspond to a third file group including the fourth file64(FIG. 5) and/or other files. However, for illustrative purposes, the third layer will be considered as only including the fourth file64. Layer 4 (herein “fourth layer”) may correspond to a fourth file group including the fifth file68(FIG. 6), the sixth file76(FIG. 7), and/or other files.
In some implementations, the editing interface81may be configured to include one or more “pages” tabs86. The tabs86may be user selectable to allow the user to change between different windows (e.g., pages) of the editing interface81that are related to different collections of files (e.g., related to other content), different users or groups of users, and/or other considerations.
InFIG. 9, the user interface may be configured such that the first layer is selectable by the user to select either the first file42(FIG. 2) or the second file50(FIG. 3) for changing the property value of the first property46of the first object (e.g., and override any previous selections of a property value, if applicable). The user may select the first layer via entry and/or selection of the selection interface element82aassociated with the first layer (e.g., shown in the figure as being visually associated with Layer 1 due their adjacency). In some implementations, the editing interface81may be configured such that the portion of the display that presents the property value (e.g., the third value62) of the first property46of the first object is visually highlighted in response to user selection of the first layer showing that the layer is now “active” (e.g., and since that is the commonly associated property for the files included in the file group of the first layer).
As shown in the figure, the portion of the display that is showing the third value62may be visually highlighted insofar that the other property values for the other properties of the first object, second object, and third object are visually dimmed (e.g., darkened). However, visually highlighting the appropriate portion of the display may be accomplished by other techniques. The visual highlighting may aid an administrator user to keep track of the various layers and changes, which may occur during subsequent editing procedures, described below.
As shown inFIG. 10, the editing interface81may be configured to receive user selection of the first file for overriding the third value62with the first value48. User selection may be facilitated through selection of the toggle interface element84aassociated with the first layer. In some implementations, when a selection of file is made that overrides a previous property value, a visual indicator may be displayed. For example, responsive to a selection of the first file to override the third value62with the first value48, the portion of the editing interface81displaying the newly selected value may include a visual indicator. The visual indicator may include, for example, hatch lines as shown, with the new value (e.g., the first value48) laid over the hatch lines. This may aid the administrator user to remember and/or otherwise track that a current selection of a file (e.g., the first file) has overridden a previously selected value (e.g., the third value62). As such,FIG. 10shows a visual representation of a second collection of files83that includes the third file54(FIG. 4) the fourth file64(FIG. 5), and the first file42(FIG. 2), wherein the property value for the first property46for the first object has been overridden by the value stored in the first file42.
As shown inFIG. 11the editing interface81may be configured to receive user selection of the second file50(FIG. 3) for overriding the third value62with the second value52. User selection may be facilitated through an additional selection of the toggle interface element84aassociated with the first layer. Again, the visual indicator of the second value52laid over hatched lines may be presented based on a selection of the second file50(FIG. 3). The editing interface81may be configured such that the user can toggle through other files included in the first file group (if any). The editing interface81may be configured such that the user can toggle essentially “out” of the first file group (e.g., such that no files included in the first file group are selected), wherein the property value for the first property46of the first object may return to an original selection (e.g., the third value62). As such,FIG. 11shows a visual representation of a third collection of files85that includes the third file54(FIG. 4) the fourth file64(FIG. 5), and the second file50(FIG. 3), wherein the property value for the first property46for the first object has been overridden by the value stored in the second file50.
FIG. 12depicts the editing interface81showing user selection of the second layer. Again, the second layer may correspond to a second file group including the third file54(FIG. 4). The property values stored in the third file54may be visually highlighted (e.g., currently shown by all other elements being visually dimmed). In some implementations, by virtue of a selection of a file that overrides a property value of another file (e.g., the selection of the second file such that the value “green” overrides the value “white” that was stored by the third file54), a different visual indicator may be presented when a layer is selected that corresponds to a file in which a value was overridden. As shown, the original value of “white” has been overridden by the value of “green” due to a selection of the second file (e.g., shown inFIG. 11), such that the portion of the display that includes the overridden value, is shown with the new value displayed underneath hatch lines. Other techniques to visually indicate this may be employed. For example, a visual indicator that indicates that a current selection of a file is overriding a value associated with a previous selection of a file (e.g.,FIGS. 10 and 11with the value laid over hatch lines) may be different than a visual indicator that indicates that a value stored in a current file has been overridden by a previous selection of a file storing a different value (e.g.,FIG. 12with the value under hatch lines).
InFIG. 12, due the second layer corresponding to the second file group that only includes the third file54(in accordance with the current illustrative example), the toggle interface element84bassociated with the second layer may be unusable and/or otherwise unselectable (e.g., since there are no other files included in the second file group to toggle through).
FIG. 13shows an implementation of the editing interface81depicting user selection of the third layer. As shown the property values stored in the fourth file64included in the third file group are visually highlighted in response to a selection of the third layer. Due to the third layer corresponding to a third file group that only includes the fourth file64(FIG. 5), the toggle interface element84cassociated with the third layer may be unusable and/or otherwise unselectable. However the visual highlighting may still aid the administrator for organizational purposes.
FIG. 14-16depict implementations of the editing interface81showing an example of A-B testing wherein files may be selected that are associated with multiple properties such that multiple property A-B testing may be performed.
InFIG. 14, the fourth layer may be selected. The fourth layer may correspond to the fourth file group including the fifth file68(FIG. 6) and the sixth file76(FIG. 7). The fifth file68and the sixth file76may be included in the fourth file group due to the commonality of properties associated with the files. For example, it can be easily determined that the fifth file68and the sixth file76are commonly associated by the third property56and the fourth property58of the third object. As such, the selection of the fourth layer may result in the property value of the third property56and the property value of the fourth property58of the third object being visually highlighted, as shown in the figure. Absent a selection of the fifth file68or the sixth file76(e.g., via toggle interface element84d), the baseline property value for the third property56and fourth property58may be maintained as the current selection.
The editing interface81may be configured to receive user selection of the fifth file68(FIG. 15) or the sixth file76(FIG. 16). InFIG. 15, the selection of the fifth file68may be reflected by the property value of the third property56being overridden by the fourth value72, and the property value of the fourth property58be selected as the fifth value74(e.g., since a baseline value for the fourth property58of the third object was not defined by the fourth file64). A visual indicator of the fourth value72overriding a previous value may be provided. A visual indicator of the fifth value74being the first selection of a value for the fourth property58may or may not be provided. As such,FIG. 15shows a visual representation of a fourth collection of files87that includes the third file54(FIG. 4), the fourth file64(FIG. 5), the second file50(FIG. 3) wherein the property value for the first property46for the first object has been overridden by the value stored in the second file50, and the fifth file68(FIG. 6), wherein the property values for the third property56and the fourth property58of the third object have been overridden by the values stored in the fifth file68.
InFIG. 16, the selection of the sixth file76may be reflected by the property value of the third property56being overridden by the sixth value78, and the property value of the fourth property58be selected as the seventh value80. A visual indicator of the sixth value78overriding a previous value may be provided. A visual indicator of the seventh value80being the first selection of a value for the fourth property58may or may not be provided. As such,FIG. 16shows a visual representation of a fourth collection of files87that includes the third file54(FIG. 4), the fourth file64(FIG. 5), the second file50(FIG. 3) wherein the property value for the first property46for the first object has been overridden by the value stored in the second file50, and the sixth file76(FIG. 7), wherein the property values for the third property56and the fourth property58of the third object have been overridden by the values stored in the sixth file76.
Returning toFIG. 1, the server12, client computing platforms36, and/or external resources32,34may be operatively linked via one or more electronic communication links. For example, such electronic communication links may be established, at least in part, via a network such as the Internet and/or other networks. It will be appreciated that this is not intended to be limiting, and that the scope of this disclosure includes implementations in which servers12, client computing platforms36, and/or external resources32,34may be operatively linked via some other communication media.
The external resources32,34may include sources of information, hosts and/or providers of virtual spaces outside of system10, external entities participating with system10, and/or other resources. In some implementations, some or all of the functionality attributed herein to external resources32and34may be provided by resources included in system10.
The server12may include electronic storage26, one or more processors14, and/or other components. The server12may include communication lines, or ports to enable the exchange of information with a network and/or other computing platforms. Illustration of server12inFIG. 1is not intended to be limiting. The server12may include a plurality of hardware, software, and/or firmware components operating together to provide the functionality attributed herein to server12. For example, server12may be implemented by a cloud of computing platforms operating together as server12.
Electronic storage26may comprise electronic storage media that electronically stores information. The electronic storage media of electronic storage26may include one or both of system storage that is provided integrally (i.e., substantially non-removable) with server12and/or removable storage that is removably connectable to server12via, for example, a port or a drive. A port may include a USB port, a firewire port, and/or other port. A drive may include a disk drive and/or other drive. Electronic storage26may include one or more of optically readable storage media (e.g., optical disks, etc.), magnetically readable storage media (e.g., magnetic tape, magnetic hard drive, floppy drive, etc.), electrical charge-based storage media (e.g., EEPROM, RAM, etc.), solid-state storage media (e.g., flash drive, etc.), and/or other electronically readable storage media. The electronic storage26may include one or more virtual storage resources (e.g., cloud storage, a virtual private network, and/or other virtual storage resources). Electronic storage26may store files, software algorithms, information determined by processor14, information received from server12, information received from client computing platforms36, and/or other information that enables server12to function as described herein.
Processor(s)14is configured to provide information processing capabilities in server12. As such, processor14may include one or more of a digital processor, an analog processor, a digital circuit designed to process information, an analog circuit designed to process information, a state machine, and/or other mechanisms for electronically processing information. Although processor14is shown inFIG. 1as a single entity, this is for illustrative purposes only. In some implementations, processor14may include one or more processing units. These processing units may be physically located within the same device, or processor14may represent processing functionality of a plurality of devices operating in coordination. The processor14may be configured to execute components16,18,20,22,24. Processor14may be configured to execute components16,18,20,22,24by software; hardware; firmware; some combination of software, hardware, and/or firmware; and/or other mechanisms for configuring processing capabilities on processor14.
It should be appreciated that although components16,18,20,22,24are illustrated inFIG. 1as being co-located within a single processing unit, in implementations in which processor14includes multiple processing units, one or more of components16,18,20,22,24may be located remotely from the other components. The description of the functionality provided by the different components16,18,20,22,24described above is for illustrative purposes, and is not intended to be limiting, as any of components16,18,20,22,24may provide more or less functionality than is described. For example, one or more of components16,18,20,22,24may be eliminated, and some or all of its functionality may be provided by other ones of components16,18,20,22,24and/or other components. As another example, processor14may be configured to execute one or more additional components that may perform some or all of the functionality attributed below to one of components16,18,20,22,24.
FIG. 17illustrates a method100of editing virtual content of a virtual space. The operations of method100presented below are intended to be illustrative. In some implementations, method100may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. Additionally, the order in which the operations of method100are illustrated inFIG. 17and described below are not intended to be limiting.
In some implementations, method100may be implemented in one or more processing devices (e.g., a digital processor, an analog processor, a digital circuit designed to process information, an analog circuit designed to process information, a state machine, and/or other mechanisms for electronically processing information), and/or one or more other components. The one or more processing devices may include one or more devices executing some or all of the operations of method100in response to instructions stored electronically on an electronic storage medium. The one or more processing devices may include one or more devices configured through hardware, firmware, and/or software to be specifically designed for execution of one or more of the operations of method100.
Referring now to method100inFIG. 17, at an operation102, files that define virtual objects implemented in the virtual space may be stored. The files may be stored in electronic storage. An individual file may be associated with one or more properties of one or more virtual objects. An individual file may store a property value for each of the one or more properties associated with the file. For example, a first object may be defined, at least in part, by a first file or a second file. The first file may be associated with a first property of the first object. The first file may store a first value for the first property. The second file may be associated with the first property of the first object. The second file may store a second value for the first property. In some implementations, operation102may be performed using electronic storage the same as or similar to electronic storage26(shown inFIG. 1and described herein).
At an operation104, an instance of the virtual space may be executed. The virtual space may be implemented to include one or more virtual objects. The property values for the properties of the one or more virtual objects that are implemented in the virtual space may be determined based on a selection of files that store the property values. The one or more virtual objects implemented in the virtual space may include the first object. In some implementations, operation104may be performed by a space component same or similar to space component16(shown inFIG. 1and described herein).
At an operation106, an editing interface may be presented on a client computing platform associated with an administrator of the virtual space. The editing interface may be configured to receive user selection of files that store a property value for each property associated with the file. In some implementations, operation106may be performed by an editing interface component the same or similar to editing interface component24(shown inFIG. 1and described herein).
Although the present technology has been described in detail for the purpose of illustration based on what is currently considered to be the most practical and preferred implementations, it is to be understood that such detail is solely for that purpose and that the technology is not limited to the disclosed implementations, but, on the contrary, is intended to cover modifications and equivalent arrangements that are within the spirit and scope of the appended claims. For example, it is to be understood that the present technology contemplates that, to the extent possible, one or more features of any implementation can be combined with one or more features of any other implementation.
Claims
- A system for editing virtual content of a virtual space, the system comprising: non-transitory electronic storage configured to store electronic files, individual ones of the electronic files defining one or more instances of one or more virtual objects implemented in one or more instances of the virtual space, an individual file being associated with one or more virtual object properties, the individual file storing individual property values for individual ones of the one or more virtual object properties associated with the individual file, such that: the electronic files include a first file and a second file concurrently stored in the non-transitory electronic storage, the first file being associated with a first property, the first file storing a first value for the first property, the second file being associated with the first property, the second file storing a second value for the first property;a first instance of a first virtual object in a first instance of the virtual space is defined, at least in part, by the first file or the second file based on implementation of either the first file or the second file;and implementing the first file during execution of the first instance of the virtual space causes the first instance of the first virtual object to be perceived in a first manner in the first instance of the virtual space, and implementing the second file during the execution of the first instance of the virtual space causes the first instance of the first virtual object to be perceived in a second manner in the first instance of the virtual space, the second manner being different from the first manner;and one or more physical processors configured by machine-readable instructions to: execute the first instance of the virtual space, wherein executing the first instance of the virtual space includes implementing either the first file or the second file, the first instance of the virtual space being implemented to facilitate participation by a player in the first instance of the virtual space via a computing platform associated with the player, wherein the property value for the first property of the first instance of the first virtual object in the executed first instance of the virtual space is determined based on the selection of either the first file or the second file;effectuate presentation of an editing interface configured to facilitate selection of files by administrators of the virtual space, the editing interface including: one or more layers that correspond to file groups, a given file group including a set of files that store different property values for one or more virtual object properties that are associated commonly between individual files in the set of files, wherein a given layer corresponding to the given file group is selectable by an administrator to facilitate making further selections of individual files within the set of files included in the given file group;and wherein the editing interface includes a first layer corresponding to a first file group, the first file group including the first file and the second file, wherein the first layer is selectable by the administrator to facilitate making a further selection of the first file or the second file to define the property value of the first property of the first instance of the first virtual object by either the first value or the second value;and track player behavior within the virtual space and associate changes in player behavior with changes in property values of virtual object properties, the associations guiding future selections of individual property values among multiple property values available for individual virtual object properties of one or more other virtual objects, the future selections being made for one or more other players of the virtual space to elicit one or more behaviors from the one or more other players in the virtual space, such that responsive to tracking the player's behavior and determining a first behavioral change when the property value of the first property of the first instance of the first virtual object is changed from the first value to the second value, the first behavioral change is associated with the change in the property value of the first property, the association guiding a first future selection of an individual property value from among a first set of property values for a second property of a second virtual object, the first future selection being made for a second player participating in a second instance of the virtual space to elicit one or more behaviors from the second player.
- The system of claim 1 , wherein the one or more physical processors are further configured by machine-readable instructions such that the editing interface is further configured to present one or more of: an identification of one or more instances of one or more virtual objects that are implemented in a given instance of the virtual space;one or more of the virtual object properties of the instances of the one or more virtual objects;or property values associated with individual ones of one or more virtual object properties according to selected files;and wherein the editing interface is further configured to present one or more of an identification of the first instance of the first virtual object in the first instance of the virtual space, the first property, or a third value for the first property for the first instance of the first virtual object, the third value being presented based on a selection of a third file that stores the third value for the first property.
- The system of claim 2 , wherein the one or more physical processors are further configured by machine-readable instructions such that the editing interface is further configured to receive selection by the administrator of the first file for overriding the third value with the first value to effectuate a change in the first property of the first instance of the first virtual object in the first instance of the virtual space.
- The system of claim 3 , wherein the one or more physical processors are configured by machine-readable instructions such that the editing interface is further configured such that the selection by the administrator of the first file is visually indicated on the editing interface.
- The system of claim 2 , wherein the one or more physical processors are further configured by machine-readable instructions such that the editing interface is further configured to receive selection by the administrator of the second file for overriding the third value with the second value to effectuate a change in the first property of the first instance of the first virtual object in the first instance of the virtual space.
- The system of claim 2 , wherein the one or more physical processors are further configured by machine-readable instructions such that the editing interface is further configured such that a portion of the editing interface that displays property values for virtual object properties that are commonly associated with files included in a file group are visually highlighted in response to a selection of a layer that corresponds to the file group.
- A method of editing virtual content of a virtual space, the method being implemented in a computer system including one or more physical processors and non-transitory electronic storage storing machine-readable instructions, the method comprising: storing electronic files that define one or more instances of one or more virtual objects implemented in one or more instances of the virtual space, an individual file being associated with one or more virtual object properties, the individual file storing individual property values for individual ones of the one or more virtual object properties associated with the individual file, such that;the electronic files include a first file and a second file which are concurrently stored, the first file being associated with a first property, the first file storing a first value for the first property, the second file being associated with the first property, the second file storing a second value for the first property;a first instance of a first virtual object in a first instance of the virtual space is defined, at least in part, by the first file or the second file based on implementation of either the first file or the second file;and implementing the first file during execution of the first instance of the virtual space causes the first instance of the first virtual object to be perceived in a first manner in the first instance of the virtual space, and implementing the second file during the execution of the first instance of the virtual space causes the first instance of the first virtual object be perceived in a second manner in the first instance of the virtual space, the second manner being different from the first manner;executing the first instance of the virtual space, wherein executing the first instance of the virtual space includes implementing either the first file or the second file, the first instance of the virtual space being implemented to facilitate participation by a player in the first instance of the virtual space via a computing platform associated with the player, wherein the property value for the first property of the first instance of the first virtual object in the executed first instance of the virtual space is determined based on the selection of either the first file or the second file;effectuating presentation of an editing interface configured to facilitate selection of files by administrators of the virtual space, the editing interface including: one or more layers that correspond to file groups, a given file group including a set of files that store different property values for one or more virtual object properties that are associated commonly between individual files in the set of files, wherein a given layer corresponding to the given file group is selectable by an administrator to facilitate making further selections of the different files within the set of files;and wherein the editing interface includes a first layer corresponding to a first file group, the first file group including the first file and the second file, wherein the first layer is selectable by the administrator to facilitate making a further selection of the first file or the second file to define the property value of the first property of the first instance of the first virtual object by either the first value or the second value;and tracking player behavior within the virtual space and associating changes in player behavior with changes in property values of virtual object properties, the associations guiding future selections of individual property values among multiple property values available for individual virtual object properties of one or more other virtual objects, the future selections being made for one or more other players of the virtual space to elicit one or more behaviors from the one or more other players in the virtual space, including, responsive to tracking the player's behavior and determining a first behavioral change when the property value of the first property of the first instance of the first virtual object is changed from the first value to the second value, associating the first behavioral change with the change in the property value of the first property, the association guiding a first future selection of an individual property value from among a first set of property values for a second property of a second virtual object, the first future selection being made for a second player participating in a second instance of the virtual space to elicit one or more behaviors from the second player.
- The method of claim 7 , wherein the editing interface is further configured to present one or more of: an identification of one or more instances of one or more virtual objects that are implemented in a given instance of the virtual space;one or more of the virtual object properties of the instance of the one or more virtual objects;or property values associated with individual ones of one or more virtual object properties according to selected files;such that the editing interface is further configured to present an identification of the first instance of the first virtual object in the first instance of the virtual space, the first property, and a third value for the first property, the third value determined based on a selection of a third file that stores the third value for the first property.
- The method of claim 8 , wherein the editing interface is further configured to receive selection by the administrator of the first file for overriding the third value with the first value to effectuate a change in the first property of the first instance of the first virtual object in the first instance of the virtual space.
- The method of claim 9 , wherein the editing interface is further configured such that the selection by the administrator of the first file is visually indicated on the editing interface.
- The method of claim 7 , wherein the editing interface is further configured to receive selection by the administrator of the second file for overriding the third value with the second value to effectuate a change in the first property of the first instance of the first virtual object in the first instance of the virtual space.
- The method of claim 7 , wherein the editing interface is further configured such that a portion of the editing interface that displays property values for virtual objects properties that are commonly associated with files of a file group are visually highlighted in response to a selection of a layer that corresponds to the file group.
- The system of claim 1 , wherein the editing interface is further configured such that selection by the administrator of the first file or the second file is further configured to define the value of the first property for one or more other instances of the first virtual object in one or more other instances of the virtual space, the other instances of the virtual space being associated with other players.
- The system of claim 13 , wherein the one or more other instances of the first virtual object includes a second instance of the first virtual object, the second instance of the first virtual object being implemented in another instance of the virtual space.
- The system of claim 1 , wherein tracking player behavior comprises tracking player purchases of virtual objects through a virtual shop, and wherein eliciting one or more behaviors comprises eliciting purchases of virtual objects through the virtual shop.
- The system of claim 15 , wherein the one or more physical processors are further configured by machine-readable instructions to: present offers to sell instances of virtual objects to players in the virtual shop, such that a first offer to sell the first instance of first virtual object is presented to the player based on the first property being defined by the first value, and a second offer to sell the first instance of the first virtual object is presented to the player based on the first property being defined by the second value;and wherein the first behavioral change is determined based on whether the player executes the first offer or the second offer.
- The method of claim 7 , wherein the editing interface is further configured such that selection by the administrator of the first file or the second file is further configured to define the value of the first property for one or more other instances of the first virtual object in one or more other instances of the virtual space, the other instances of the virtual space being associated with other players.
- The method of claim 13 , wherein the one or more other instances of the first virtual object includes a second instance of the first virtual object, the second instance of the first virtual object being implemented in another instance of the virtual space.
- The method of claim 7 , wherein tracking player behavior comprises tracking player purchases of virtual objects through a virtual shop, and wherein eliciting one or more behaviors comprises eliciting purchases of virtual objects through the virtual shop.
- The method of claim 19 , further comprising: presenting offers to sell instances of virtual objects to players in the virtual shop, including presenting a first offer to sell the first instance of first virtual object to the player based on the first property being defined by the first value, and presenting a second offer to sell the first instance of the first virtual object the player based on the first property being defined by the second value;and wherein the first behavioral change is determined based on whether the player executes the first offer or the second offer.
- The system of claim 1 , wherein the first file is one of an RDF, XML, or JSON file, and the second file is one of an RDF, XML, or JSON file.
- The method of claim 7 , wherein the first file is one of an RDF, XML, or JSON file, and the second file is one of an RDF, XML, or JSON file.
Disclaimer: Data collected from the USPTO and may be malformed, incomplete, and/or otherwise inaccurate.