project screenshot 1
project screenshot 2
project screenshot 3
project screenshot 4
project screenshot 5
project screenshot 6

Laputa

Build spectacular floating cities together in an on-chain massive multiplayer game. Featuring a unique in-game economy that is both Free to Play & Play to Earn. Collaboratively build your kingdom, vye for resources and trade. Inspired by Stacklands, Islanders, and Pileup.

Laputa

Created At

ETHOnline 2023

Winner of

trophy

🕹️ Mantle — Best NFT or Gaming

trophy

🔀 Polygon — Best Use of zkEVM

trophy

🏊 Scroll — Pool Prize

trophy

💡 Cometh — Most Original

Project Description

LAPUTA is a fully on-chain multiplayer game being built at the intersection of massive online multiplayer experience, bringing web3 technology to the masses.

A Collective Regen Audiovisual Interactive DeFi Experience A different take on collaborative blockchain gaming, A different take on speculative NFTs as essential to crypto games, Free to Play & Play to Earn, In-game ReFi / DeFi.

Gamedesign theme A world of floating cities - Starting from scratch and building them out into a lush habitable station around resources. A large scale multiplayer tile based chill(?) building game with a unique in-game economy.

Players cluster around resources and can build on top of each other (and sideways!), Kowloon city style. Reminiscent of Minecraft.

Can be semi-turn based (i.e> 2sec blocks on Optimism, means sim runs at 30 frames per minute). Using MUD we get local node to simulate TX and make it seem realtime. Having things grow / looking at the world being active can happen in realtime in-between, and makes the game feel alive.

References for gameplay: Islanders, Stacklands, Pileup❗

Players start by placing an initial Gravity Hill? (do players need to choose/be limited where they want to start out). Players could also move themselves to a position under the grid? Maybe you want to go to a different location? Maybe out of scope?

👷 Structures need several items to build & run. Players can work together by contributing to other player’s structures and helping each other out. Structures. All surrounding players benefit!

🧑‍🌾 Soil could be terraformed and initially ‘covers’/’bubbles’ built so players can start growing crops. These bubbles can be connected to each other. Maybe no bubbles but structures? Maybe buildings terraform nearby tiles?

⚛️ Gravity, buildings that float need a source of gravity to stay in the air. Gravity is perpetuated through the construction, when buildings fail or gravity generation fails, things could come crashing down very quickly (literally). Natural growth on top of the building means buildings can increase in weight.

💡 Electricity generation / resources gained from nearby structures / things nearby player character / resources could be floating

🔌 Structures that provide resources can do so in a certain area (perhaps can be expanded with upgrades) or when they are connected via pipes/wires / initially provide resources within a certain radius

🔧 Maintenance? Once in a while things need a checkup, if not they degrade. This means being next to an inactive player comes at the risk of having to maintain their structures yourself to prevent:

💣 Boom. Accidents happen! Mempool / VDF can be used to trigger ‘random’ accidents, events, and other catastrophes. (fighting random catastrophe is actually boring in games, so important the player doesn’t experience this as random and it somehow is a collective fun effort). But also:

🚀 Awesome wins! Lucky shots! Suddenly output of a structure is increased. Something something resource bonus. Asteroid lands and miners race to build around it, giving bonus to nearby mining structures (or blows em up).

🤔 Has some hard game design challenges to get right (fighting a character/enemy is more satisfying than fighting an ecosystem) but there are probably some interesting ideas that could work? such as trying to keep a population of animals alive and breeding? Have to focus on satisfying actions that are a time investment, and cooperative investments are very rewarding.

🚁 May or may not want to give players a movable character/entity (flying drone eliminates the need for collision detection), so players can explore / bring back resources / settle further away.

🌃 At the core it's about players/users being close to each other and building things that generate resources, or bringing in resources from far away. If players are able to build on top of each other there is less monopoly on tiles.

🗼 When players stack too high there's danger of collapse and nearby tiles suffer during accidents, so clustering/stacking is both a blessing and a curse.

Basics

Use a mechanism similar to pooltogether.com. Players buy an NFT (investing their money into a pool), this pool is continually invested in a source of Yield (i.e> Compound, Aave, CRV). The yield from this pool is used to: Pay out rewards/stream income/resources to the players (creates incentive for players to play the game) Invest back into the development of the game Ideally players that play the game have an active stake in making the game more attractive to other players. Pooltogether.com uses tickets, we can have players buy trade-able NFTs

Spectator mode. To show off the game it’d be nice to have an observer mode where you can see the game playing without having to log in. Because it’s browser based this looks like a decent, no speed bumps, possibility, however we need to use blockchain data, and doing RPCs for all spectators is gonna be hell. We could use Tableland SQLITE for storing previous game state.

Random loop drops. Players (paying & F2P) can discover rare items, this could be based on mempool activity.

Events broadcast alerts? Using XTMP / PUSH

Building types (width x height x depth) House houses people? May be bought or rented by other players for building permissions? Clustered houses generate more revenue from the yield pool? Gravity hill (2x1x2) generates the base gravity for a cluster, gravity is perpetuated throughout the cluster. Initially generates a limited amount of gravity. Amount of gravity can be increased using energy Dynamo (2x2x1) generates energy used to power other buildings. Dynamos generate will continually generate heat that perpetuates through the Laputa (similar to gravity). Construction zone allows other players to build in the specified location for a small fee?

Economic model We seem to be leaning towards two parallel economies that influence each other:

  • in-game resources

  • yield from facilities

    People are more willing to help someone else if they benefit from it? Social spending?

Resources Resources are needed for construction / facility development / maintenance, where resources may come from: Purchase with coins, using a dynamic market price. Harvest from space or generate from a facility. Exchange / deal with other players. Regional trading center, able to trade within a certain distance. Can be extended by building trading outposts in-between? [out-of-scope] Borrow with facility as a collateral. [out-of-scope] Rob from another region with a battle. Facilities may generate revenue by providing what the citizens need, facilities may also require / generate the following resources to build or operate: Gravity Energy Population Foods Entertainment Services [out-of-scope] Protection Facilities Facilities can be built by players if they have build permissions for a tile. Facilities need the necessary resources to be built. Facilities need maintenance (vegetation grows on top of them over time, increasing weight, facilities degrade over time) It’s possible facilities break and fall down? Jenga like mechanics, all facilities are initially built on a Gravity Generator (gravity hill), this generates X amount of gravity points that are perpetuated through linked facilities. More gravity points perpetuate upwards than sideways. This way we don’t use a (non deterministic) physics model and reduce complexity (physics are terrible). Basically every facility tile has X amount of gravity and Y amount of weight. Similar to gravity we also have heat being generated by facilities. Heat causes buildings to degrade, (it also makes living conditionals uncomfortable?). Ownership of facilities & building permits. Facilities can be turned into a dynamic NFT for trading. Players to build residential housings where other players can pay rent to live inside Or allow players to buy and be granted building rights for the Laputa? And grant players + citizens in the same Laputa a shared communication channel. While DM is only allowed for players with facilities right next to each other. Also use ownership/rental for these push notifications / channels, sort of community gating them. (push / xmtp) Avoids monopolies on ‘tiles’ Facilities may generate revenue from spectators with: Music Video Post [Maybe?] Drawing High spectator visit rate increases citizen’s population => higher revenue from (b) Players developing around the same region would work together to make the region more attractive / balance / civilization level => higher population => higher revenue from (b) And compete with other regions for resources and populations. LAPU Token Vault Smart Contract

Primary use case: To serve as an exchange medium between in-game resources, DeFi yielding behind the game and stable coins (i.e. USDT). The major difference of our use case from a standard ERC-4626 vault smart contract Standard: DeFi yields increased the underneath asset (i.e. USDT) amount on the vault contract, while the total amount of the share token remained the same. Such that the exchange ratio is then increased and people withdraw with the unchanged amount of share token gain a yield. LAPU: DeFi yields increased the underneath asset (i.e. USDT) amount on the vault contract, new LAPU tokens were minted while the exchange ratio remained the same. Such that the newly minted LAPU could be distributed as an in-game reward to players. This is a zero-sum token economic model such that LAPU can always be exchanged back to USDT with the same fixed ratio. The more the players, the higher the TVL on the LAPU vault, the higher the DeFi yields. However the distribution of the harvested yields is not based on the amount of LAPU a player holds. It is based on the facilities a player owns in the game. In other words, a star player may be able to deposit a small amount of USDT to start playing this game and end up with a big portion of the yields generated by the big pot of TVL from all players. While LAPU can be used for purchasing in-game resources directly, resources cannot be refunded to LAPU. Secondary use case of the vault: To serve as a vault for secondary revenues like: NFT minting fee Advertisement Extracting fees for the game Set apart a fixed amount for dev & maintenance & operations OR Developers need to build a big city in game and maintain it

In Depth Doc: https://docs.google.com/document/u/2/d/1ITkXf_4CMTa4ngvNXF3QfDrGIo8TD9fn6oXTxfSThxY/mobilebasic

How it's Made

The project is built using MUD, Foundry, Three.js, react three fiber, zustand. Cometh is used for account abstraction, Spark for DeFi integration in game. The game is live on Lattice Testnet and can be brought onto any EVM compatible chain using MUD. Setting up the LAPU contract vaults we start with our Laputa Vault. All DAI spent on the game enters the vault. Using Spark we generate DeFi yield over the entire vault This increases the underlying asset (DAI) amount on the vault contract From this yield, new LAPU tokens are minted Players are continually being rewarded in a percentage of the yield, according to their shares (residences built, upgrades etc) Read More in Detail here: https://docs.google.com/document/d/1ITkXf_4CMTa4ngvNXF3QfDrGIo8TD9fn6oXTxfSThxY

background image mobile

Join the mailing list

Get the latest news and updates