Skip to content

amegakure-studio/verdania-unity

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Verdania logo

Amegakure logo

Project license Follow 0xVerdania on Twitter

🌿 Verdania Unity Client 🌿

Useful Links

Screenshots

Screenshot from 2024-02-15 18-43-37 Screenshot from 2024-02-15 18-44-15

Current Development

The game features a frontend implemented in Unity, while the backend is built with Dojo on Starknet.

Currently, JPS is implemented and working, but due to the algorithm's poor performance, we decided to remove it. Therefore, the game's pathfinding is being handled by Unity. However, player positions are being persisted by Dojo.

Used Libraries

The development of Verdania has benefited from several open-source libraries, including:

  • Dojo.Unity: Used to facilitate the connection between Dojo and Unity.

Mechanics

Movement

Our game is fully on-chain. This means that we have the player's position registered on the farm. When the player wants to move to another tile, this action is also calculated on-chain.

To achieve this, we have implemented a pathfinding algorithm called JPS, which outperforms other algorithms such as Dijkstra and A*. This algorithm determines if there is a possible path for the player's movement.

Interact

  • Prepare the soil
  • Sow/Plant
  • Water
  • Harvest

Crop growth

Our crops include details on the time needed for them to be ready for harvest and their maximum survival time without irrigation. Additionally, each plant has a growth level ranging from 0 to 100, where 0 indicates it has just been planted and 100 means it's ready to be harvested.

The game's time is based on the blockchain's time, so the growth of the plants is determined by the time you spend caring for them.

Our 'updater' system handles efficiently updating active users' crops, taking into account the specific state of each crop. This system is triggered periodically via a cronjob.

Marketplace

We utilize implementations of the ERC20 and ERC1155 standards from Origami, which we've adapted to suit our needs. Additionally, we've developed an escrow contract that serves as our marketplace.

This enables us to have an ERC20 token named VRD, which is the in-game currency used to purchase items. For the items themselves, we employ the ERC1155 standard.

Within the marketplace, users can list their items or purchase those already available for sale. Furthermore, thanks to this implementation, we can send both VRD and items to our friends.

Assets

Category Asset Link
SDK dojo.unity SDK GitHub Repository
BackEnd verdania Cairo GitHub Repository
3D models Characters VRoid Studio
3D models Environment VRoid Studio

Supporters

Join us as Supporters and be an active part of Verdania's growth and continuous development. Your support is essential to take the game to new heights. Join here and be part of this exciting adventure!

Creators ✨

Thanks goes to these wonderful people (emoji key):

Dubzn
dubzn

😸
Damián Piñones
Damián Piñones

🤠
Cristian Fleita
Cristian Fleita

💻
Brenda Mareco
Brenda Mareco

🎨

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published