Lib9c - A library for Nine Chronicles
Tip
If you're new to Nine Chronicles, try to visit our Developer Portal!
Lib9c is a library that contains key implementations of Nine Chronicles, a decentralized RPG developed on Libplanet. Lib9c includes Nine Chronicle's key features like in-game decisions and data models, which can be used to implement game core capabilities.
Key Features
Model (Data storing structure, a.k.a. state)
Lib9c runs based on libplanet, blockchain, hence all the data are saved into chain as a state
.
You can find all models in Lib9c/Model.
Each model has its own structure and read/write with blockchain store through de/serialization.
Action (Core game logic changes state)
State can be created/updated by action
s.
In Lib9c/Action, you can find all actions can be executed in the game Nine
Chronicles.
When someone do the action in game, action data is loaded on Libplanet transaction and be propagated
through blockchain network.
Then after the transaction is accepted by validators, this action is executed and related states are
updated with action result.
Data
All game has its own game data such as item table, exp-level table, etc.
Thus Nine Chronicles is a blockchain game, all the gme data also should be stored into blockchain.
To achieve this, special models to handle data are present in Lib9c/TableData
and Lib9c/TableCSV.
TableCSV
is actual CSV formed data and this can be handled in Lib9c using TableData
state model.
Dependencies
- .Net >= 6.0
- Libplanet as a submodule
Contribution
Any contributions are welcome. Please check here.
License
Lib9c is under GNU GPL3 license. For details, Please check our LICENSE.