SYSTEMS AND METHODS FOR PEER-TO-PEER EXCHANGES OF NON-FUNGIBLE DIGITAL ASSETS
Systems and methods for facilitating peer-to-peer exchanges of digital assets that are usable within an online gaming platform are disclosed. Exemplary implementations may: execute an instance of a game; receive an inventory request for information regarding a first user inventory; access a blockchain to obtain asset information; transfer the asset information in response to the inventory request; receive a transfer request to transfer ownership of a first digital asset from a first user to a second user; transfer the ownership of the first digital asset as requested.
The present disclosure relates to systems and methods for peer-to-peer exchanges of digital assets that are usable within an online gaming platform.
BACKGROUNDOnline gaming platforms are known. Users of online gaming platforms exchanging digital in-game assets to other users through a centralized exchange server (such as the online gaming platform itself) is known. Blockchains are known to function as decentralized ledgers.
SUMMARYOne aspect of the present disclosure relates to a system configured for peer-to-peer exchanges of digital assets. In some implementations, the digital assets are not fungible. The system may comprise an online gaming platform, a decentralized ledger server, and/or other components. The online gaming platform may be configured to host one or more games. The online gaming platform may include one or more processors configured by machine-readable instructions. The online gaming platform may be configured to execute, within the online gaming platform, an instance of a game to facilitate presentation of the game to users. The online gaming platform may be configured to implement in-game actions in the instance of the game in response to action requests for the in-game actions by the users. The presentation of the game may be based on views of the game that are determined during execution of the game. The users may include a first user that interacts with the online gaming platform. The decentralized ledger server may be configured to implement a blockchain. The decentralized ledger server may include one or more processors configured by machine-readable instructions. The decentralized ledger server may be configured to record, on the blockchain, rights pertaining to digital assets. The recorded rights may reflect ownership of a first digital asset by the first user. The first digital asset may be not fungible. The first digital asset may be usable within the online gaming platform to perform an individual in-game action in the instance of the game. The first digital asset may represent a three-dimensional in-game user-controllable character that can interact with other virtual items within the online gaming platform. The decentralized ledger server may be configured to receive instructions to modify the recorded rights. The online gaming platform may be configured to receive, on behalf of the first user, an inventory request for information regarding a first user inventory. The first user inventory may be associated with the first user. The online gaming platform may be configured to access the blockchain to obtain asset information about one or more of the digital assets such that the recorded rights of the one or more digital assets reflect ownership by the first user. The one or more digital assets may include the first digital asset. The online gaming platform may be configured to transfer information based on the obtained asset information in response to the inventory request. The online gaming platform may be configured to receive, from a source external to both the online gaming platform and the decentralized ledger server, a transfer request to transfer the ownership of the first digital asset from the first user to a second user. The online gaming platform may be configured to generate a first set of instructions for the decentralized ledger server to accomplish the transfer as requested in the transfer request. The online gaming platform may be configured to transfer the first set of instructions to the decentralized ledger server. The decentralized ledger server may be configured to receive the first set of instructions from the online gaming platform. The decentralized ledger server may be configured to transfer, in accordance with the received first set of instructions, the ownership of the first digital asset from the first user to the second user, such that the recorded rights on the blockchain no longer reflect the ownership of the first digital asset by the first user.
Another aspect of the present disclosure relates to a method for facilitating peer-to-peer exchanges of digital assets, wherein rights pertaining to the digital assets are recorded on a blockchain implemented by a decentralized ledger server, wherein the rights reflect ownership. The method may include executing, within an online gaming platform, an instance of a game to facilitate presentation of the game to users, and implementing in-game actions in the instance of the game in response to action requests for the in-game actions by the users. The presentation of the game may be based on views of the game that are determined during execution of the game. The users may include a first user that interacts with the online gaming platform. The method may include receiving, on behalf of the first user, an inventory request for information regarding a first user inventory. The first user inventory may be associated with the first user. The method may include accessing the blockchain to obtain asset information about one or more of the digital assets such that the rights of the one or more digital assets reflect ownership by the first user. The one or more digital assets may include a first digital asset. The first digital asset may be not fungible and either may be usable within the online gaming platform to perform an individual in-game action in the instance of the game, or may represent a three-dimensional in-game user-controllable character that can interact with other virtual items within the online gaming platform, or both. The method may include transferring information based on the obtained asset information in response to the inventory request. The method may include receiving, from a source external to both the online gaming platform and the decentralized ledger server, a transfer request to transfer the ownership of the first digital asset from the first user to a second user. The method may include generating a first set of instructions for the decentralized ledger server to accomplish the transfer as requested in the transfer request. The method may include transferring the first set of instructions to the decentralized ledger server. The method may include receiving the first set of instructions from the online gaming platform. The method may include transferring, in accordance with the received first set of instructions, the ownership of the first digital asset from the first user to the second user, such that the rights as recorded on the blockchain no longer reflect the ownership of the first digital asset by the first user.
As used herein, any association (or relation, or reflection, or indication, or correspondency) involving servers, processors, client computing platforms, assets, requests, exchanges, offers, transactions, in-game actions, rights, benefits, ownership, users, metrics, metric values, scores, sets of instructions, operations, determinations, distributions, transfers, presentations, notifications, and/or another entity or object that interacts with any part of the system and/or plays a part in the operation of the system, may be a one-to-one association, a one-to-many association, a many-to-one association, and/or a many-to-many association or “N”-to-“M” association (note that “N” and “M” may be different numbers greater than 1).
As used herein, the term “obtain” (and derivatives thereof) may include active and/or passive retrieval, determination, derivation, transfer, upload, download, submission, and/or exchange of information, and/or any combination thereof. As used herein, the term “effectuate” (and derivatives thereof) may include active and/or passive causation of any effect, both local and remote. As used herein, the term “determine” (and derivatives thereof) may include measure, calculate, compute, estimate, approximate, generate, and/or otherwise derive, and/or any combination thereof.
These and other features, and characteristics of the present technology, as well as the methods of operation and functions of the related elements of structure and the combination of parts and economies of manufacture, will become more apparent upon consideration of the following description and the appended claims with reference to the accompanying drawings, all of which form a part of this specification, wherein like reference numerals designate corresponding parts in the various figures. It is to be expressly understood, however, that the drawings are for the purpose of illustration and description only and are not intended as a definition of the limits of the invention. As used in the specification and in the claims, the singular form of “a”, “an”, and “the” include plural referents unless the context clearly dictates otherwise.
By way of non-limiting example, digital assets may represent virtual items. In some implementations, virtual items may include one or more of weapons, toys, characters, abilities, skills, tools, pets, clothing, vehicles, game levels, missions, assignments, chapters, tasks, mini-games, restricted areas within a virtual space, restricted modes of gameplay, access rights within an online game, and/or other virtual items. In some implementations, virtual items may refer to any item or object within gaming platform 105 that a user may use, own, sell, trade, destroy, and/or otherwise effectuate a change of ownership of.
As used herein, a digital asset is fungible if it is functionally and/or physically indistinguishable from another digital asset. For example, a payment token such as a Bitcoin may be a fungible digital asset. A digital asset may be non-fungible if it is unique, or one-of-a-kind. For example, a specific individual Crypt® Kitty™ may be a non-fungible digital asset. A digital asset may be semi-fungible if there is a set of a limited number of similar but distinguishable digital assets. For example, a limited-edition Blank® ™ or another in-game character may be a semi-fungible digital asset. For example, one of a limited number of 2-dimensional or 3-dimensional in-game virtual items may be a semi-fungible digital asset. For example, a digital ticket to a show, concert, exhibition, and/or other event may be a semi-fungible digital asset. For example, a piece of art or jewelry (e.g., as a virtual item or as representing a physical item) may be a semi-fungible digital asset. As used herein, both non-fungible and semi-fungible digital assets are considered as “not fungible” digital assets. In some implementations, semi-fungible digital assets may share the same or similar data as other digital assets, but have at least a unique identifier, and/or other distinguishable asset-specific information.
In some implementations, digital assets may be usable within one or more games. Instances of the games may be executed within one or more online gaming platforms 105. As used herein, online gaming platform 105 may refer to either an individual game (e.g., an interactive online game), a type of gaming console, an ecosystem of a game or gaming console, and/or any combination thereof. Online gaming platform 105 may be operated, hosted, and/or owned by one or more stakeholders of online gaming platform 105. For example, in some implementations, a platform operator (and/or another stakeholder) may sell digital in-game assets (e.g., characters, weapons, resources, etc.) to users 123 of online gaming platform 105. This may be referred to as a primary market for digital in-game assets. However, such a sale is not a peer-to-peer exchange. As used herein, peer-to-peer exchanges refer to individual players auctioning, selling, purchasing, trading, bartering, and/or otherwise exchanging digital assets (directly) with other individual players. In other words, individual players may own individual virtual items, and exchange these items with other individual players by virtue of the systems and methods described in this disclosure. This may be referred to as a secondary market for digital in-game assets. As used herein, a peer-to-peer exchange may be referred to as decentralized if no centralized authority (such as, e.g., a platform operator, an online store, etc.) is required to complete the exchange between two individual players.
Due to an exchange, ownership of a digital asset transitions from an original owner to a new owner (even if, in some implementations, there may be one or more intermediary and/or temporary owners during the process of performing the exchange). In some implementations, a particular exchange of a particular digital asset may be reversible if at least one party to the particular exchange unilaterally opts to reverse and/or undo the particular exchange such that the particular digital asset is returned to the original owner. In some implementations, either the original owner of the particular digital asset or the new owner of the particular digital asset may unilaterally opt for a reversal of the particular exchange. In some implementations, only the new owner may unilaterally opt for a reversal of the particular exchange. In some implementations, reversibility of a particular exchange may be limited in one or more ways. For example, reversibility may be time-limited to a predetermined number of days from a predefined moment and/or action within the particular exchange. In some implementations, the predefined moment and/or action within the particular exchange may be the moment the new owner commits to the particular exchange (where commitment may be defined by the absence of reversibility or by an assumption that the particular exchange will not be reversed). In some implementations, the predefined moment and/or action within the particular exchange may be the moment the new owner can or does use the particular digital asset in any way. In some implementations, the predefined moment and/or action within the particular exchange may be the moment the original owner authorizes and/or commits to the particular exchange.
In some implementations, system 100 may include one or more of an external payment application server 115, one or more online gaming platforms 105, one or more decentralized ledger servers 111, one or more client computing platforms 104, one or more user interfaces 125, one or more servers 102, electronic storage 130, one or more external resources 138, and/or other components. Users 123 (also referred to as players) may include one or more of a first user, a second user, a third user, a fourth user, and/or other users.
Server(s) 102 may be configured to communicate with one or more client computing platforms 104 according to a client/server architecture and/or other architectures. Client computing platform(s) 104 may be configured to communicate with other client computing platforms via server(s) 102 and/or according to a peer-to-peer architecture and/or other architectures. Users 123 may access system 100 via user interfaces 125 and/or client computing platform(s) 104.
In some implementations, components of system 100 may be configured to communicate with one or more of online gaming platform(s) 105, decentralized ledger server(s) 111, external payment application server 115, client computing platform(s) 104, users 123, and/or other components. Users 123 may include players who play and/or otherwise interact on online gaming platform 105. In some implementations, online gaming platform 105 may include an online store or exchange that facilitates a primary market in digital assets.
Online gaming platforms 105 may include one or more of electronic storage 130, server(s) 102, processor(s) 132, machine-readable instructions 106, and/or other components. Server(s) 102 may be configured by machine-readable instructions 106. Machine-readable instructions 106 may include one or more instruction components. The instruction components may include computer program components. The instruction components may include one or more of a game component 108, an interaction component 110, an inventory component 112, an access component 114, a response component 116, a request component 118, a transfer component 120, an input component 122, an inventory request component 126, a transfer request component 128, a record component 134, an instruction component 136, and/or other components. The depiction in
In some implementations, external payment application server 115 may include one or more of electronic storage 130a, server(s) 102 (not depicted in
Electronic storage 130a may be similar to electronic storage 130 as described elsewhere in this disclosure, though included in online gaming platforms 105. Processor(s) 132a may be similar to processor(s) 132 as described elsewhere in this disclosure, though included in online gaming platforms 105. Machine-readable instructions 106a may be similar to machine-readable instructions 106 as described elsewhere in this disclosure, though included in online gaming platforms 105. In some implementations, machine-readable instructions 106a may include one or more instruction components, such as inventory request component 126, transfer request component 128, and/or other components.
In some implementations, decentralized ledger server(s) 111 may include one or more of a blockchain 111a, electronic storage 130b, server(s) 102 (not depicted in
Game component 108 may be configured to execute an instance of a game (e.g., an online game within online gaming platform 105) to facilitate presentation of the online game to users 123. In some implementations, game component 108 may be configured to implement in-game actions in the instance of the game, e.g., in response to action requests for the in-game actions by users 123. Users 123 may interact with online gaming platform 105. In some implementations, game component 108 may be arranged, organized, and/or otherwise included in online gaming platform 105. As used herein, the term “game” may refer to one or more games within gaming platform 105. The game may be provided via a virtual space, and may include a plurality of resource types and/or maps. An instance of the virtual space may be executed by one or more computer components to determine views of the virtual space. In some implementations, presentations of the game may be based on determined views. In some implementations, views may be communicated (e.g., by streaming, via object/position data, and/or other information) from server(s) 102 and/or other sources to client computing platforms 104 for presentation to users 123. The view determined and transmitted to a given client computing platform 104 may correspond to a location in the virtual space (e.g., 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. In some implementations, one or more view parameters may be selectable by a user.
The instance of the game may include a simulated space that is accessible by users 123 by clients (e.g., client computing platforms 104) 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 123, and/or include one or more objects positioned within the topography that are capable of locomotion and/or movement within the topography. In some implementations, the topography may be a 2-dimensional topography. In some implementations, the topography may be a 3-dimensional topography. The topography may include dimensions of the simulated space, and/or surface features of a surface or objects that are native to the simulated space. In some implementations, the topography may include a surface (e.g., a ground surface) that runs through at least a substantial section of the simulated space. In some implementations, the topography may describe a volume with one or more bodies positioned therein. The instance executed by the computer components may be synchronous, asynchronous, and/or semi-synchronous.
Within the instance of the game, users 123 may control characters, objects, simulated physical phenomena, and/or other elements within the virtual space to interact with the virtual space and/or each other. The user characters may include avatars. As used herein, the term “user character” may refer to an object or group of objects present in the virtual space, that correspond(s) to an individual user. A particular user character may be controlled by the particular user with which it is associated. Such user characters may be referred to as user-controlled characters. 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, etc.). In some implementations, user-controlled characters may be capable of locomotion and/or movement within the topography of the simulated space that is included in the instance of a game. User-controlled elements controlled by and/or associated with a given user may be created and/or customized by the given user. Individual users 123 may have an “inventory” of virtual goods and currency (e.g., resources of the plurality of resource types) that the individual user can use (e.g., by manipulation of a user character and/or other user-controlled elements) and/or other items, to perform in-game actions within the virtual space. In some implementations, user inventories may be managed using blockchain 111a. For example, ownership of individual virtual items included in an individual user inventory may be recorded on blockchain 111a. In some implementations, individual user inventories may correspond to individual smart contracts stored on blockchain 111a.
Interaction component 110 may be configured to facilitate interaction between users 123 within online gaming platform 105, and, in particular, within instances of the online games that are executed by game component 108. For example, interaction component 110 may facilitate interaction by a particular user with other users within an instance of a particular online game. For example, the interaction may include user-controlled in-game actions by a particular digital asset that are controlled by the particular user. In some implementations, the interaction may occur subsequent to temporarily transferring ownership of the particular digital asset from an original owner (e.g., to the particular user). Alternatively, and/or simultaneously, the interaction may occur prior to a determination whether to reverse a particular reversible exchange involving the particular digital asset. In some implementations, one or more particular types of interaction may be facilitated by interaction component 110. For example, interaction may be limited to certain types of in-game actions. In some implementations, interaction may be limited to a certain time or period, including but not limited to a waiting period as used and described elsewhere in this disclosure regarding time-limited reversibility of particular exchanges. In some implementations, interaction component 110 may be arranged, organized, and/or otherwise included in online gaming platform 105.
In some implementations, interaction component 110 may facilitate interaction by a particular user with other users within online gaming platform 105, through a particular digital asset that is being controlled by the particular user during a particular period, even though the particular user is not (yet) the non-temporary owner of the particular digital asset. For example, the particular period may start when the particular user commits to the exchange involving the particular digital asset, or when the particular user provides the benefit in exchange for the particular digital asset, and/or at another predefined moment during the exchange process. For example, the particular period may end at the moment a determination has been made regarding a reversal of the exchange involving the particular digital asset. In some implementations, one or more types of ownership rights are temporarily transferred to the particular user during the particular period. For example, one of the types of ownership rights may give the particular user the right to use the particular digital asset in certain limited ways. For example, usage may be limited to one or more types of in-game actions. For example, the allowed one or more types of in-game actions may exclude in-game actions that inflict damage to (or even destroy) the particular digital asset. In some implementations, upon a reversal of the exchange involving the particular digital asset, the temporarily transferred (types of) ownership rights may be modified and/or removed such that the particular user is no longer allowed and/or able to user the particular digital asset in the same way as compared to the particular period. In other words, in some implementations, the particular interaction as facilitated during the particular period may be disabled upon the reversal of the exchange.
Inventory component 112 may be configured to receive requests for information, including but not limited to (particular types of) inventory requests for information regarding particular digital assets and/or user-specific inventories. For example, a particular inventory request may request information regarding one or more digital assets in a particular user inventory of a particular user. In some implementations, an inventory request may pertain to an entire user inventory. In some implementations, a user may select to opt-in one or more digital assets from the user's inventory with regard to inventory requests. In some implementations, a user may select to opt-out one or more digital assets from the user's inventory with regard to inventory requests. In some implementations, inventory component 112 may receive a request from a user's client computing platform 104. In some implementations, inventory component 112 may receive a request on behalf of a user from online gaming platform 105. In some implementations, inventory component 112 may receive a request on behalf of a user from external payment application server 115.
Access component 114 may be configured to access decentralized ledger server 111 and/or blockchain 111a to obtain information. By way of non-limiting example, the obtained information may include asset information regarding digital assets. In some implementations, the digital assets may be recorded on blockchain 111a. In some implementations, rights pertaining to the digital assets may be recorded on blockchain 111a. In some implementations, recorded rights may reflect ownership of digital assets. For example, the digital assets may include a first digital asset, a second digital asset, and so forth. In some implementations, access component 114 may access decentralized ledger server 111 and/or blockchain 111a to analyze recorded information (e.g., rights, transactions, and so forth) to determine a particular user's inventory, a particular digital asset's owner(ship), and/or other information stored in blockchain 111a.
Response component 116 may be configured to transfer information in response to requests. For example, requests may include inventory requests as received by inventory component 112. Transferred information may include information obtained by access component 114. In some implementations, transferred information may include a reference and/or link to information obtained by access component 114. In some implementations, transferred information may be transferred to a user's client computing platform 104 (e.g., for sharing with other users and/or other client computing platforms 104). In some implementations, transferred information may be transferred to online gaming platform 105. In some implementations, transferred information may be transferred to external payment application server 115.
Request component 118 may be configured to receive requests for transfers of ownership. For example, request component 118 may receive a particular request for a transfer of ownership of a particular digital asset. Transfer requests may be to transfer the ownership from a first user to a second user. In some implementations, a particular transfer request may be to move a particular digital asset from a first blockchain to a second blockchain (e.g., a blockchain hosted by external payment application server 115 and/or stakeholders of external payment application server 115). In some implementations, a transfer request may be received from a source external to both online gaming platform 105 and decentralized ledger server 111. For example, request component 118 may receive a transfer request from a client computing platform 104 associated with a particular user. For example, request component 118 may receive a transfer request from external payment application server 115. In some implementations, other external sources may be envisioned. In some implementations, the users may reach an agreement regarding a particular exchange through a source external to both online gaming platform 105 and decentralized ledger server 111, such as, for example, through external payment application server 115. For example, one user may make an offer, and the other user may accept the offer (and, in some implementations, this communication may take place via external payment application server 115).
Transfer component 120 may be configured to generate sets of instructions. The sets of instructions may be for decentralized ledger server 111, e.g., to accomplish a transaction on blockchain 111a. In some implementations, transfer component 120 may generate a set of one or more instructions to accomplish a transfer (e.g., of ownership of a particular digital asset) as requested in a particular transfer request (e.g., as received by request component 118). In some implementations, response component 116 may be configured to transfer sets of information (as generated by transfer component 120) to decentralized ledger server 111 and/or blockchain 111a.
Instruction component 136 may be configured to receive (sets of) instructions to add, modify, and/or remove recorded rights in blockchain 111a. For example, instruction component 136 may receive one or more sets of instructions from response component 116, online gaming platform 105, and/or other components of system 100. Instruction component 136 may provide received sets of instructions to record component 134 for execution. In some implementations, instruction component 136 may be arranged, organized, and/or otherwise included in decentralized ledger server 111 and/or blockchain 111a.
Record component 134 may be configured to record rights pertaining to digital assets on blockchain 111a. In some implementations, record component 134 may record rights on a decentralized ledger implemented by decentralized ledger server 111. For example, the decentralized ledger may be blockchain 111a. The rights may include ownership rights, distribution rights, and/or other rights. For example, particular recorded rights may reflect ownership of a particular digital asset by a particular user. For example, the particular digital asset may be not fungible, and may represent a three-dimensional in-game user-controllable character that can interact with other virtual items within online gaming platform 105. Recorded rights may be asset-specific. For example, distribution rights for a particular digital asset may designate rights to certain distributions of benefits upon an exchange involving the particular digital asset. For example, the asset-specific distribution rights for a particular digital asset may include one or more of (i) a right owned by a different user to a part of the benefits upon an exchange, (ii) a right owned by one or more stakeholders of online gaming platform 105 to a part of the benefits upon an exchange, (iii) a right owned by one or more stakeholders of external payment application server 115 upon an exchange, and/or other distribution rights. These parts of a benefit may have different sizes, percentages, and/or conditions.
In some implementations, record component 134 may be configured to record rights in blockchain 111a. In some implementations, record component 134 may add, modify, and/or remove recorded rights. For example, in accordance with received instructions from instruction component 136, record component 134 may transfer ownership of a particular digital asset from a first owner to a second owner (e.g., from an original owner to a new owner) such that the recorded rights on blockchain 111a no longer reflect the ownership of the particular digital asset by the first user. In some implementations, in accordance with received instructions, record component 134 may transfer ownership of a particular digital asset temporarily, e.g., from a first owner to a temporary second owner. In some case, a temporary owner may be a holding account that is merely used until ownership is transferred to either the original owner or a new owner. As used herein, the term “temporary” (and derivatives thereof) refers to a transfer or to ownership that is either known to be changed and/or modified within a predetermined period, or expected to be changed and/or modified within a predetermined period. Conversely, a non-temporary transfer from a first owner to a second owner (due to a particular exchange) can conceivably be changed and/or reverted (back from the second owner to the first owner) due to a separate and new exchange that is independent of the first particular exchange. In some implementations, in accordance with received instructions, record component 134 may transfer ownership of a particular digital asset non-temporarily from a first owner to a second owner, e.g., when a particular exchange is not reversible or no longer reversible. In some implementations, record component 134 may be arranged, organized, and/or otherwise included in blockchain 111a.
In some implementations, record component 134 may be configured to obtain asset-specific rights (e.g., ownership rights, distribution rights, and/or other rights) for particular digital assets. In some implementations, record component 134 may be configured to access blockchain 111a to obtain the asset-specific rights (that are recorded on blockchain 111a, e.g., in one or more smart contracts).
Input component 122 may be configured to receive user input from users. In some implementations, user input may be received through user interfaces 125. In some implementations, user input may provide entry and/or selection of one or more digital assets to be included by inventory component 112. In some implementations, user input may provide entry and/or selection of one or more digital assets to be excluded by inventory component 112.
Inventory request component 126 may be configured to generate and/or transfer inventory requests, including but not limited to inventory requests that are transferred to and received by inventory component 112. In some implementations, inventory request component 126 may be included in external payment application server 115. In some implementations, operations by inventory request component 126 may be initiated by an external user account that is managed by external payment application server 115. For example, a particular user may transfer an inventory request regarding another user (based on the username of the other user, or some identifier that identifies the other user, or on physical proximity of the other user's client computing platform 104, and so forth), and, in response to such an inventory request, obtain asset information for at least part of the other user's inventory of digital assets.
Transfer request component 128 may be configured to generate and/or transfer (transfer) requests, including but not limited to transfer requests that are transferred to and received by request component 118. In some implementations, transfer request component 128 may be included in external payment application server 115. In some implementations, operations by transfer request component 128 may be initiated by an external user account that is managed by external payment application server 115.
By way of non-limiting example,
By way of non-limiting example,
In some implementations, blockchain 111a may be maintained by a distributed computing platform (not shown in
Blockchain 111a may implement a decentralized ledger that records rights pertaining to digital assets. For example, a blockchain is a type of ledger, as well as a type of decentralized database that records rights pertaining to digital assets. A given (digital) asset may be owned by a particular user. An asset may include anything of material value or usefulness that is owned by or on behalf of one or more users. In some implementations, a virtual item (that may be used within gaming platform 105 and/or may be useful within gaming platform 105) may be represented by a digital asset that is recorded on one or more blockchain 111a. In some implementations, a right pertaining to an object (e.g., a distribution right) may be an asset, the object being a physical or a virtual item. Multiple rights may form a set of rights or a bundle of rights that may be transferred and/or otherwise acted on and/or operated on together. For example, rights may include one or more of a right to use, a right to sell, a right to destroy, a right to certain types of distributions, and/or other rights. For example, in some implementations, rights pertaining to a virtual item (e.g., ownership) may be recorded on blockchain 111a.
In some implementations, tokens may be a type of asset. In some implementations, tokens may include one or more of security tokens, utility tokens, payment tokens, initial coin offering (ICO) tokens, virtual currency tokens, crypto tokens, ERC-20 tokens, EOS tokens, and/or other tokens. In some implementations, tokens not only represent value, but may have a specific use in a particular distributed computing platform, e.g., in the operation of blockchain 111a.
In some implementations, blockchain 111a may register transactions that modify ownership (and/or other rights) pertaining to digital assets. A smart contract may implement a (type of) digital asset. In some implementations, once a smart contract has been added to a blockchain, the smart contract may be referred to as published, posted, registered, and/or recorded. Elements of blockchain 111a may be grouped together in units that are referred to as blocks. For example, an individual block may include one or more assets and one or more transactions. For example, an individual block may be linked to one or more other individual blocks. Individual blocks may be linked or chained together to form a structure of blocks and/or a hierarchy of blocks, such as, e.g., a chain of blocks. An individual block may include one or more assets, one or more transactions, and/or other information. In some implementations, individual blocks in the structure of blocks may be linked together based on a hashing function that provides one-way encryption (see below). In some implementations, multiple transactions may be recorded in an individual block. In some implementations, addition of an individual block to the structure of blocks may require that at least a minimum number of nodes independently agree to append the individual block in accordance with a consensus mechanism.
In some implementations, blockchain 111a may be publicly accessible. In some implementations, blockchain 111a may be append-only. In some implementations, existing blocks of a distributed blockchain can substantially not be altered or deleted, unless multiple copies of the distributed blockchain are altered. This is unlikely to happen provided that multiple copies of the distributed blockchain are stored on different computing platforms, e.g., in different geographical locations. The distributed blockchain may be replicated on multiple computing platforms, preferably in multiple different geographical locations. Additionally, individual blocks may be linked together in a manner that prevents tampering, such as, e.g., using a hash chain and/or digital signatures. In particular, hash values may be generated using fixed-output-length one-way hashing functions that take variable-length input, and may be effectively impossible (or, at least, computationally infeasible) to reverse. As such, a hashing function may provide one-way encryption. By way of non-limiting example, the hashing function may be SHA-256, BLAKE2, SHAKE256, and/or another hashing function. Contents of individual blocks, transactions, and/or assets may be digitally signed in a manner that proves integrity and/or prevents tampering, e.g., by providing authentication.
By way of non-limiting example,
In block 1, one asset (labeled Ax) is assigned to user q (Uq), for example by associating an address of user q with asset Ax. Asset Ax may represent an individual digital asset of type “X”, which may be not fungible. Asset Ax may be created and/or issued by invoking one or more function calls to smart contract 41. Asset Ax may have associated metadata 52 (indicated by a capital “M”), which may include and/or link to different types of information, including but not limited to one or more of a name, identifier, description, an image 53, (in-game) details, certificate of authenticity, and/or other information, as depicted. For example, the certificate of authenticity may be a digital signature. Additionally, block 1 includes two transactions (indicated by a capital “T”): a first transaction from user i to user j, and a second transaction from user j to user k. Block 2 includes a first transaction from user j to user m, and a second transaction from user j to user n. In some implementations, based on the contents of the blocks, any user of blockchain 111b may determine the current assets of blockchain 111b, and the balances of any user. In some implementations, the balance of a particular user may be verified prior to adding a transaction that reduces that particular user's balance. For example, an individual user may not be allowed to transfer assets the individual user does not own.
By way of non-limiting example,
Referring to
Referring to
A given client computing platform 104 may include one or more processors configured to execute computer program components. The computer program components may be configured to enable an expert or user associated with the given client computing platform 104 to interface with system 100 and/or external resources 138, and/or provide other functionality attributed herein to client computing platform(s) 104. By way of non-limiting example, the given client computing platform 104 may include one or more of a desktop computer, a laptop computer, a handheld computer, a tablet computing platform, a NetBook, a Smartphone, a smart watch, a gaming console, and/or other computing platforms.
External resources 138 may include sources of information outside of system 100, external entities participating with system 100, and/or other resources. For example, in some implementations, external resources 138 may include an online financial platform through which users may access financial information and/or perform financial transactions. In some implementations, some or all of the functionality attributed herein to external resources 138 may be provided by resources included in system 100.
Server(s) 102 may include electronic storage 130, one or more processors 132, and/or other components. Server(s) 102 may include communication lines, or ports to enable the exchange of information with a network and/or other computing platforms. Illustration of server(s) 102 in
Electronic storage 130 may comprise non-transitory storage media that electronically stores information. The electronic storage media of electronic storage 130 may include one or both of system storage that is provided integrally (i.e., substantially non-removable) with server(s) 102 and/or removable storage that is removably connectable to server(s) 102 via, for example, a port (e.g., a USB port, a firewire port, etc.) or a drive (e.g., a disk drive, etc.). Electronic storage 130 may 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. Electronic storage 130 may include one or more virtual storage resources (e.g., cloud storage, a virtual private network, and/or other virtual storage resources). Electronic storage 130 may store software algorithms, information determined by processor(s) 132, information received from server(s) 102, information received from client computing platform(s) 104, and/or other information that enables server(s) 102 to function as described herein.
Processor(s) 132 may be configured to provide information processing capabilities in server(s) 102. As such, processor(s) 132 may 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 processor(s) 132 is shown in
It should be appreciated that although components 108, 110, 112, 114, 116, 118, 120, 122, 126, 128, 134, and/or 136 are illustrated in
In some implementations, method 200 may 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). The one or more processing devices may include one or more devices executing some or all of the operations of method 200 in 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 method 200.
At an operation 202, an instance of a game is executed, within an online gaming platform, to facilitate presentation of the game to users, and in-game actions are implemented in the instance of the game in response to action requests for the in-game actions by the users. The presentation of the game is based on views of the game that are determined during execution of the game. The users include a first user that interacts with the online gaming platform. In some embodiments, operation 202 is performed by a game component the same as or similar to game component 108 (shown in
At an operation 204, on behalf of the first user, an inventory request is received for information regarding a first user inventory. The first user inventory is associated with the first user. In some embodiments, operation 204 is performed by an inventory component the same as or similar to inventory component 112 (shown in
At an operation 206, the blockchain is accessed to obtain asset information about one or more of the digital assets such that the rights of the one or more digital assets reflect ownership by the first user. The one or more digital assets include a first digital asset. The first digital asset is not fungible, and either is usable within the online gaming platform to perform an individual in-game action in the instance of the game, or represents a three-dimensional in-game user-controllable character that can interact with other virtual items within the online gaming platform, or both. In some embodiments, operation 206 is performed by an access component the same as or similar to access component 114 (shown in
At an operation 208, information is transferred based on the obtained asset information in response to the inventory request. In some embodiments, operation 208 is performed by a response component the same as or similar to response component 116 (shown in
At an operation 210, a transfer request is received, from a source external to both the online gaming platform and the decentralized ledger server, to transfer the ownership of the first digital asset from the first user to a second user. In some embodiments, operation 210 is performed by a request component the same as or similar to request component 118 (shown in
At an operation 212, a first set of instructions is generated for the decentralized ledger server to accomplish the transfer as requested in the transfer request. In some embodiments, operation 212 is performed by a transfer component the same as or similar to transfer component 120 (shown in
At an operation 214, the first set of instructions is transferred to the decentralized ledger server. In some embodiments, operation 214 is performed by a response component the same as or similar to response component 116 (shown in
At an operation 216, the first set of instructions is received from the online gaming platform. In some embodiments, operation 216 is performed by an instruction component the same as or similar to instruction component 136 (shown in
At an operation 218, in accordance with the received first set of instructions, the ownership of the first digital asset is transferred from the first user to the second user, such that the rights as recorded on the blockchain no longer reflect the ownership of the first digital asset by the first user. In some embodiments, operation 218 is performed by a record component the same as or similar to record component 134 (shown in
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
1. A system configured for peer-to-peer exchanges of digital assets, wherein the digital assets are not fungible, the system comprising:
- an online gaming platform configured to host one or more games, wherein the online gaming platform includes one or more processors configured by machine-readable instructions to: execute, within the online gaming platform, an instance of a game to facilitate presentation of the game to users, and implement in-game actions in the instance of the game in response to action requests for the in-game actions by the users, wherein the presentation of the game is based on views of the game that are determined during execution of the game, wherein the users include a first user; and manage users accounts associated with the users, including a first user account associated with the first user, wherein the first user account includes a first user inventory; and
- a decentralized ledger server configured to implement a blockchain, wherein the decentralized ledger server includes one or more processors configured by machine-readable instructions to: record, on the blockchain, rights pertaining to the digital assets, wherein the recorded rights reflect ownership of a first digital asset by the first user; and receive instructions to modify the recorded rights;
- wherein the one or more processors included in the online gaming platform are further configured by machine-readable instructions to: receive, on behalf of the first user, an inventory request for information regarding the first user inventory, wherein the inventory request is received from an external payment application server that manages a first external user account associated with the first user, the external payment application server being configured to support exchanges involving fiat currency, and wherein the first user account is separate and different from the first external user account; access the blockchain to obtain asset information about one or more of the digital assets that are owned by the first user, wherein the one or more digital assets include the first digital asset; transfer, to the external payment application server, information based on the obtained asset information in response to the inventory request; receive, from the external payment application server, a transfer request to transfer the ownership of the first digital asset from the first user to a second user; and generate a first set of instructions for the decentralized ledger server to accomplish the transfer as requested in the transfer request;
- wherein the one or more processors included in the decentralized ledger server are further configured by the machine-readable instructions to: transfer, in accordance with the first set of instructions, the ownership of the first digital asset from the first user to the second user, such that the recorded rights on the blockchain no longer reflect the ownership of the first digital asset by the first user, wherein transferring the ownership of the first digital asset from the first user to the second user involves an exchange of consideration supported by the external payment application server.
2. The system of claim 1, wherein the one or more processors of the online gaming platform are configured such that the inventory request is received on behalf of the first user from a first client computing platform associated with the first user, and such that the information based on the obtained asset information is transferred to the first client computing platform in response to the inventory request.
3. The system of claim 1, wherein the first digital asset is not fungible and either:
- (i) is usable within the online gaming platform to perform an individual in-game action in the instance of the game, or
- (ii) represents a three-dimensional in-game user-controllable character that can interact with other virtual items within the online gaming platform, or
- (iii) both (i) and (ii).
4. The system of claim 1, wherein the one or more processors included in the online gaming platform are further configured by the machine-readable instructions to transfer the first set of instructions to the decentralized ledger server, and wherein the one or more processors included in the decentralized ledger server are further configured by the machine-readable instructions to receive the first set of instructions from the online gaming platform.
5. The system of claim 1, wherein the one or more processors of the online gaming platform are further configured to:
- receive user input from the first user, wherein the user input provides entry and/or selection of one or more digital assets to be excluded from the transferred information in response to the inventory request.
6. The system of claim 1, wherein the transferred information includes a three-dimensional visual representation of the three-dimensional in-game user-controllable character represented by the first digital asset.
7. The system of claim 1, wherein the asset information has been recorded on the blockchain.
8. The system of claim 1, wherein the recorded rights on the blockchain reflect the ownership of the first digital asset by the second user.
9. The system of claim 1, wherein execution of the received first set of instructions effectuates recording the ownership of the first digital asset by the second user on a second blockchain that is different from the blockchain.
10. The system of claim 1, wherein the one or more processors included in the decentralized ledger server are further configured by the machine-readable instructions to execute the first set of instructions.
11. A method for facilitating peer-to-peer exchanges of digital assets, wherein rights pertaining to the digital assets are recorded on a blockchain implemented by a decentralized ledger server, wherein the rights reflect ownership, the method comprising:
- executing, within an online gaming platform, an instance of a game to facilitate presentation of the game to users, and implementing in-game actions in the instance of the game in response to action requests for the in-game actions by the users, wherein the presentation of the game is based on views of the game that are determined during execution of the game, wherein the users include a first user;
- managing users accounts associated with the users, including a first user account associated with the first user, wherein the first user account includes a first user inventory;
- receiving, on behalf of the first user, an inventory request for information regarding the first user inventory, wherein the inventory request is received from an external payment application server that manages a first external user account associated with the first user, wherein the external payment application server supports exchanges involving fiat currency, and wherein the first user account is separate and different from the first external user account;
- accessing the blockchain to obtain asset information about one or more of the digital assets that are owned by the first user, wherein the one or more digital assets include a first digital asset;
- transferring, to the external payment application server, information based on the obtained asset information in response to the inventory request;
- receiving, from the external payment application server, a transfer request to transfer the ownership of the first digital asset from the first user to a second user;
- generating a first set of instructions for the decentralized ledger server to accomplish the transfer as requested in the transfer request; and
- transferring, in accordance with the first set of instructions, the ownership of the first digital asset from the first user to the second user, such that the rights as recorded on the blockchain no longer reflect the ownership of the first digital asset by the first user, wherein transferring the ownership of the first digital asset from the first user to the second user involves an exchange of consideration supported by the external payment application server.
12. The method of claim 11, wherein receiving the inventory request includes receiving from a first client computing platform associated with the first user, and wherein transferring the information based on the obtained asset information includes transferring to the first client computing platform.
13. The method of claim 11, wherein the first digital asset is not fungible and either:
- (i) is usable within the online gaming platform to perform an individual in-game action in the instance of the game, or
- (ii) represents a three-dimensional in-game user-controllable character that can interact with other virtual items within the online gaming platform, or
- (iii) both (i) and (ii).
14. The method of claim 11, further comprising:
- transferring the first set of instructions to the decentralized ledger server; and
- receiving the first set of instructions from the online gaming platform.
15. The method of claim 11, further comprising:
- receiving user input from the first user, wherein the user input provides entry and/or selection of one or more digital assets to be excluded from the transferred information in response to the inventory request.
16. The method of claim 11, wherein the transferred information includes a three-dimensional visual representation of the three-dimensional in-game user-controllable character represented by the first digital asset.
17. The method of claim 11, wherein the asset information has been recorded on the blockchain.
18. The method of claim 11, wherein the recorded rights on the blockchain reflect the ownership of the first digital asset by the second user.
19. The method of claim 11, wherein execution of the received first set of instructions effectuates recording the ownership of the first digital asset by the second user on a second blockchain that is different from the blockchain.
20. The method of claim 11, further comprising:
- executing the first set of instructions.
Type: Application
Filed: Aug 13, 2021
Publication Date: Jul 7, 2022
Inventor: Rudy Koch (Sammamish, WA)
Application Number: 17/402,257