https://github.com/btspoony/turbine
A Cadence Fully On-chain Game Engine with ECS Architecture
https://github.com/btspoony/turbine
blockchain cadence flow fully-onchain-game game-engine smart-contracts
Last synced: 7 months ago
JSON representation
A Cadence Fully On-chain Game Engine with ECS Architecture
- Host: GitHub
- URL: https://github.com/btspoony/turbine
- Owner: btspoony
- License: mit
- Created: 2023-10-12T22:06:15.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2023-11-14T10:31:57.000Z (almost 2 years ago)
- Last Synced: 2025-01-09T10:54:07.296Z (9 months ago)
- Topics: blockchain, cadence, flow, fully-onchain-game, game-engine, smart-contracts
- Language: Cadence
- Homepage: https://turbine.run/
- Size: 1.06 MB
- Stars: 5
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Turbine - A Cadence Fully On-chain Game Framework with ECS Architecture
[](https://opensource.org/license/mit/)
> Turbine is currently in development, and is not yet ready for production use.
Turbine is a fully on-chain game framework for the [Cadence](https://cadence-lang.org/) programming language on [Flow blockchain](https://flow.com/). It utilizes the Entity Component System (ECS) architecture, providing a flexible and powerful framework for developing a wide range of games.
## Contracts
Turbine is composed of a number of contracts that work together to provide a complete game framework.
The core contracts are:| Contract | Description |
| --- | --- |
| IComponent | The interface contract for all components. |
| IEntity | The interface contract for all entities. |
| ISystem | The interface contract for all systems. |
| IModule | The interface contract for all modules. |
| IWorld | The interface contract for the game world. |
| Context | The contract including the Consumer and Provider interfaces |
| EntityManager | The contract that manages all entities in the world. |
| CoreEntity | The contract that implements the IEntity interface. |
| CoreWorld | The contract that implements the IWorld interface. |
| EntityQuery | The utiltity contract that queries entities in the world. |
| WorldUtils | The utiltity contract that dump or import all entities for the world. |Core contracts can be found on here:
| Network | Address |
| --- | --- |
| Testnet | [0x3102c5131b585d67](https://testnet.flowdiver.io/account/0x3102c5131b585d67) |