# Lotus Core Whitepaper ![logo](https://s3.amazonaws.com/misc-1607/lotus-logo.png) ### Decentralized platform for distribution, ownership and funding of digital games through Smart Contracts ### Live Version ~Last~ ~revision:~ ~March~ ~2018~ [[PDF version]](https://lotuscore.io/docs/whitepaper.pdf) [[ホワイトペーパー version]](https://hackmd.io/s/r1WQMJOKf) [[FR version]](https://hackmd.io/s/rJREIJCuf) [[RU version]](https://hackmd.io/s/Bk17jO-FM) [[ES version]](https://hackmd.io/s/B1DF9l0uG) [[العربية version]](https://www.dropbox.com/s/3h2pliuvnihcs6h/Lotus%20Core%20Whitepaper-Arabic.docx?dl=0) [[FIL version]](https://hackmd.io/s/r12LseRuf) [[IT version]](https://hackmd.io/s/Byua2eCdM) [[한국어 version]](https://hackmd.io/s/S1csag0dG) [[Українська version]](https://hackmd.io/s/BJhrClCOz) [[VI version]](https://hackmd.io/s/H10FAgAuG) [[NLD version]](https://hackmd.io/s/HJ0yyZA_f) *__NOTE__: This whitepaper is a work in progress and it might change without warning in the near future.* # Glossary Some terms will be used in many parts of this document. Here we define and clarify their meaning to avoid misunderstandings. **Ethereum:** A decentralized platform that runs smart contracts, which are applications that run exactly as programmed without any possibility of downtime, censorship, fraud or third party interference. **Blockchain:** It's an open, distributed ledger that can record transactions between two parties efficiently and in a verifiable and permanent way. The continuously growing list of records called _blocks_ are linked and secured using cryptography. **The Ethereum blockchain:** It is a Blockchain, with a Turing complete scripting language that enables the processing of Smart Contracts on the Blockchain. When we mention "Blockchain" in this whitepaper, we are referring to the Ethereum blockchain specifically. **Digital game:** An electronic game "boxed" digitally that can be downloaded from the Internet. It involves interaction with a user interface to generate visual feedback on a video device such as a TV screen or computer monitor. **Cartridge:** A representation of a digital game in the (Ethereum) Blockchain that guarantees unicity and signed by the game developer to give an assurance of authenticity. **Lotus Token (LTS):** It's a standard Ethereum ERC20 token. It is a sub-currency used to trade and fund games. **LIP:** the Lotus Investment Program. # The Problem Sharing a game with a friend or a family member was as simple as handing over a game cartridge. This rare phenomenon for digital games is still very common on other type of video games media (e.g. game consoles). Sadly, this familiar feature is not possible in most digital games for PC. The existing distribution platforms for digital games are a good opportunity for game developers to make a profit from their hard work. But those platforms take away a great piece of the developers' revenue for themselves (typically 30%). How can small dev teams grow in a good pace if they are being held back by 30% in profits wherever they publish their games at? Moreover, some indie game developers constantly struggle to finance their projects, which is a barrier for their creations to come to fruition. Although crowdfunding platforms like Kickstarter or Indiegogo have help a few teams, they don't allow to fund a game project without bureocratic requirements, they don't release funds quickly and lack transparent automated rules without third party interference. Besides, they don't focus on gaming projects alone so contributors have many divergent interests. # The Solution: The Lotus Protocol Lotus Core is a decentralized platform for players, developers and investors built on top of Ethereum. In Lotus Core, players will be able to trade games with friends, developers will earn 100% of the revenue derived from selling their digital games, and also receive funding from crowdfunding campaigns within the platform. ## A new way to register and distribute digital games When a game is purchased or loaned in the Lotus Store, the Lotus Protocol creates a digital game through a Smart Contract with a digital signature and records it in the blockchain, which allows the software developer to guarantee the authenticity of each copy of software and giving players access to their game even when the user is offline. This way, Lotus Core seizes the opportunities inside a new market of digital games traded securely within the blockchain to represent the ownership of property. ## Ownership of software The Lotus Protocol allows players to have a direct relation with developers by being able to prove ownership of software without third parties, as the ownership proof will reside in the blockchain and not in the servers of a company. Players will be able to use this software like if it was a physical copy, meaning they’ll be able to exchange it or sell it to other players. These trades and exchanges will be made up by Smart Contract rules to protect them from piracy while also giving benefits to developers. # Use-Cases ## Buying Process In order to guarantee the ownership, Lotus Core provides an API to create unique cartridges in the blockchain. The validity of cartridges will be given by the recipient address. This implies that the developer will have a direct relation with the final user and consequently get 100% of the profits per sale. Aditionally, the cartridges will be digitally signed in order to allow the use of valid cartridges even in offline mode. This process is useful when someone wants to know the number of copies of a digital game and the history of each one. It also serves as a customizable and convenient DRM protection system, allowing to use the software in offline enviroments and write rules to share the software previously sold. These rules will allow the final user to share or exchange her games: ```sequence Player->Lotus Store: I want this game Note left of Lotus Store: Player makes a payment to address 0xA Lotus Store->Lotus Core: can you create a cartridge for the address 0xA? Note right of Lotus Store: add a new cartridge to the blockchain Lotus Core->Lotus Store: return cartridge Lotus Store->Player: Here is your cartridge ``` Lotus Core provides a channel for communications between software developers and final users without taking part in the sale process, making the software distribution a truly decentralized experience. ### Digital signatures and anti-piracy system In order to avoid hacking and allow players to access to their games even when they are offline, each cartridge will have a digital signature impossible to replicate in case a user maliciously attempts to fake the ownership of cartridges she hasn't bought. The private key to sign this cartridge will be the same key as the purchase address. In detail, the digital game will require a proof of ownership asking the user's account to sign a random string with the private key used to buy the game. Doing this will prevent the usage of valid cartridges by users who did not buy the game. This proof is cheap in terms of computer resources and it can be required at any time during the game execution in case of a malicious binary modification that skips the first verification. It is important to mention that a signature can be verified with only the public address of the signer, but it is impossible to generate a valid signature without knowing the signer's private key. ## Download Process Aiming to provide a truly decentralized experience Lotus Core needed to come up with a method for players to download games in a way that it does not carry any associated costs to developers or to Lotus Core. To accomplish this task we implemented the Lotus Decentralized Storage (LDS), a cloud-based storage system for games running with a different token called `Karma`, where each game holds the necessary `Karma` charge to be downloaded a limited number of times per player. Each game is compressed in blocks and the download process takes place on each individual block, meaning that it consumes one transaction per block until the download is complete. To get a better understanding of how `Karma` will work, consider these conditions: * A player can download as many games as he/she wants as long as he/she has enough `karma` to pay. * Players can gain `Karma` by: * Acting like storage nodes by lending an agreed amount of local drive space to the network. * Purchasing it on the Lotus Store. * Owning a game for certain amount of time. * Players can lose `Karma` by: * Downloading games * Purchasing games with `Karma` ```sequence Note right of Player: Request game copy Player->LDS: Request one block and send karma needed LDS->Node: Broadcast request throught the network Node->LDS: Deliver game files Note right of LDS: verify block integrity LDS->Node: Send Karma payment per one block LDS->Player: Unpack Note right of Player: Repeat process until got all blocks ``` ## Execution or Launching Process This is the core of the DRM system, using digital signatures plus the blockchain network to guarantee the unicity and validity of a piece of software. When a game is launched or executed by a player, the compatible applications will connect with the background process that verifies the blockchain and keeps record of the player's digital games. ```sequence Player->Game: Launches Game->Lotus Core: Solve this challenge Note right of Game: Lotus Core solves the challenge Note right of Game: by using owners' private key Lotus Core->Game: Send the answer to the challenge Note right of Game: Verifies challenge answer Game->Player: Runs game ``` ## Trading Process Lots Core allows players to exchange, gift, lend or sell digital games they own to other players, just like it's possible with most physical copies of games. Using the capabilities of Smart Contracts, we are able to write rules to perform these actions and at the same time benefit developers in case of trades involving tokens. ```sequence Player->Lotus Store: I want to <trade> this game with Bx0 Lotus Store->Lotus Core: Creates the trade contract with Bx0 Note right of Lotus Core: Waits for execution Lotus Core->Player: Receive the agreed in the contract Lotus Core->Developer: Receives part of the tokens in the trade ``` ## Funding Process Lotus Core offers developers the opportunity to fund their existing or new game projects using Lotus Tokens (LTS), which serve as proof of investment. Developers who get funded will give a small percentage of their revenue per sale to Lotus Core after launching. ```sequence Developer->Lotus Core: Creates funding contract Investor->Lotus Core: Supports project Note left of Lotus Core: If the goal is reached Lotus Core->Developer: Gets funds to develop the project Developer->Lotus Core: Puts the game on sale Lotus Core->Developer: Receives part of the revenue per sale Lotus Core->Investor: Receives part of the revenue per sale ``` If the goal is not reached then the invested tokens are returned to the original owner. # Advantages ## For players ### Games work in offline mode Most of the DRM systems require an active internet connection in order to check in real time the ownership of the software. Using cryptographic digital signatures we can check the validity of any owned cartridge in offline mode. ### Access to a new loan market Having unique cartridges in the Blockchain plus Smart Contracts allows us to tap into new bussiness oportunities like loaning systems: for instance, we can write a program that gives a cartridge to a player for a limited time and after a while it automatically removes the cartridge from the player's library. ### A fair DRM system Using Blockchain assets plus the Smart Contracts technology we can write rules that specify the sale of a game is not a trade barrier for a free market to emerge, allowing the game owner to sell, lend or exchange the game after buying it. With these Smart Contracts, developers will also benefit from these operations. ## For developers ### Secure system to avoid piracy Lotus Core provides a convenient system to check the authenticity of a game copy, letting it check the ownership status even in offline mode. Also, the Blockchain introduces the concept digital scarcity, which means it's the only technology that allows to create unique cartridges to protect the trading process of digital games. ### Give profits to developers from each operation that involves tokens The Blockchain assets gives us a series of options to trade games in many ways, allowing the creation of new business models and letting game developers participate in them. By using Smart Contracts we can write trade conditions that benefit game developers from these new models. ### Access to funding capital to launch a new or existing project Taking advantage of the Lotus Core platform, developers can receive funds to build their games following their roadmaps and meeting our guidelines. This is the perfect platform to develop new projects for, as it forges an honest relationship with investors in a win-win relation by using the advantages of the Blockchain to be transparent in all the aspects of the process. ## For investors ### Invest in projects you believe in Lotus Core created the Lotus Investment Program (LIP) to let developers find investors who fund their projects by creating reward-based crowdfunding campaigns. LIP writes Smart Contracts to define the terms of funding, by setting up a percentage per sale to be returned to the investor(s), as well as defining the terms of an eventual refund in case of a campaign that does not meet its funding goal. ### Transparent and honest relation LIP comes with a feature called Secure Funds, which unlocks funds to developers only if certain milestones are accomplished. These milestones will be approved by investors throught a decentralized and transparent voting system. Besides, the LIP reduces bureocratic barriers to fund projects. # Opportunity The games industry has shown tremendous growth in global adoption and revenue during the last two decades, and still is in constant grow year-by-year. In 2016 the game industry made US$ 104.4 billion in revenue. In 2017, it made US$ 116 billion in revenue, representing a 10.7% growth compared to 2016. In the US alone, they took in about US$9.5 billion in 2007 and grew to $30.4 billion in 2016 (ESA annual report), a growth of 220% in 9 years. To build a great product and establish an engaged community that will generate value to players, developers, publishers and investors alike, we cut down the value chain into four layers. ## #1 The distribution layer: Using the platform is free. This matches our principle of not interfering in the game exchange (cutting the middle man). Publishers and developers will be able to publish and sell their games in the Lotus Store free of charge, and they can pay to promote their games within the Store. ## #2 The capital and publishing layer: We created the Lotus Investment Program for several reasons, one of them is that Lotus Core can participate in the success of emerging markets for video games by investing in projects we believe are amazing, and obtaining returns after they are released. ## #3 The production and tools layer: This is a great oportunity for Lotus because it provides brand new tools for developers to integrate their games with the blockchain ecosystem. Potential solutions go from blockchain DRM based alternatives, access to new APIs to loan/free trial games, secure transactions of items and currencies inside games, among many others. ## #4 The software platform layer: Developers can purchase a membership to the Lotus Partner Program, which allows them to access exclusive benefits such as a pool of select players matching their target audience to play-test their unfinished games, as well as an analytics dashboard with metrics and results of the testing sessions. # Lotus Core Platform ## Lotus Core/API This is the process that will be in charge of validating and keeping the Blockchain transactions updated. It implements a wallet to keep your tokens and digital games and an API to be used by third party apps in order to verify game ownership. ## Lotus Store This is a digital distribution platform that uses the Lotus Core API to run the trade operations. This platforms will also serve as a showcase for developers to launch new projects and be funded by individuals or investors. ![logo](https://d1li07aw8o3s58.cloudfront.net/img/app-0.png) # Lotus Token Sale ## Hardcap & Allocation Only 1 billion token supply (1,000,000,000) LTS. 10% Presale, 60% Public Sale and 30% Reserved. ## Pre-sale (10%) Hard cap: 100 million LTS Start date: March 21, 2018 End date: April 21, 2018 Price: 1 ETH = 35,000 LTS Stage Bonus: 50% = 17,500 LTS Minimum pre-sale goal: No minimum ## Public (60%) Hard cap: 600 million LTS Start date: May, 2018 Price: 1 ETH = 35,000 LTS Minimum funding goal: 1000 ETH - **Tier 1:** Stage bonus: 30% (10,500 LTS) - **Tier 2:** Stage bonus: 15% (5,250 LTS) - **Tier 3:** Stage bonus: 0% ## Reserved (30%) 10% Community (locked by 1 month) 10% Marketing & Partnerships (locked by 2 month) 5% Development Team & Advisors (locked by 4 month) 5% Development Team & Advisors (vesting for 2 years) Any unsold tokens will be distributed equally among all the token holders after the crowdsale event ends.