SolRace is a blockchain racing game on the Solana blockchain inspired by the Mario kart.
- Nodejs
- Nextjs
- Anchor Framework
- unreal engine 4
- AWS
- Postgresql
the code and game can be downloaded from the google drive link here: https://drive.google.com/drive/folders/16On1ksGkRvLx1HPzvb9onXWU-oL0zL5I?usp=sharing
WindowsNoEditor.rar is a fully deployed game, you can extract and run the game on the application file.
GameFile.rar is an unreal project file that can be opened via Unreal Engine Project File (.uproject)
The project file is built in Unreal Engine 4 version 4.26, containing multiple Unreal Engine Asset Files (.uasset). If you want to fully see all the game component's in detail, please download the engine from the link here: https://www.unrealengine.com/en-US/download
if you want use our devnet program, please skip this section.
yarn build yarn deploy
create pool for your nft
Set your program id in cli/.env
file.
SOL_RACE_STAKING_PROGRAM_ID=
copy the generated types and idl
anchor run copy_types
anchor run copy_types_backend
anchor run copy_types_cli
The following command will do the following.
- create mint account of <TOKEN_NAME> if not exist.
- create associate token account for deployer if not exist.
- mint token to ata
yarn init-faucet --name <TOKEN_NAME> --decimals
The initialize pool by run the following
yarn init-pool --pool-name <POOL_NAME> --solr-mint <MINT_ADDRESS> --pool-authority <POOL_AUTHORITY_ADDRESS>
Update the addresses in backend/src/solana/addresses.ts
and frontend/src/api/solana/addresses.ts
. Theses is what you needed
- SOLR_MINT_ADDRESS
- GARAGE_CREATOR
- GARAGE_CM_ID
- KART_CREATOR
- KART_CM_ID
- SOL_RACE_CORE_PROGRAM_ID
See the details in aws/README.md
See the details in scripts/README.md
See the details in backend/README.md
Set the environment variables. Follow frontend/.env.example
for more details
yarn dev
The program consist of two main features
- staking nft (garage)
-
user can stake our nft aka garage to earn SOLR, our governance token.
-
Garage's staker can use their garage to upgrade racing kart of other racers. Garage's staker will also earn upgrading fee no matters the upgrade is success or fail.
- upgrade (kart)
- racers can upgrade their nft aka kart to enhance their in games attributes e.g. max speed, acceleration etc.