Skip to content
Blockchain core in C#/.NET for persistent peer-to-peer online games
C# Other
  1. C# 99.1%
  2. Other 0.9%
Branch: master
Clone or download
longfin Merge pull request #676 from longfin/feature/seperate-contains-from-c…

Move BlockChain<T>.Contains(TxId) to IStore
Latest commit 0d84f4c Nov 14, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
.azure-pipelines Apply suggestions from code review Oct 7, 2019
.github Run benchmarks on GitHub Actions instead of Azure Pipelines Nov 11, 2019
.idea/.idea.Libplanet/.idea Add rider common files. Nov 18, 2018
.vscode Column guideline for Visual Studio Code Jun 27, 2019
Docs Fix docs build Oct 21, 2019
Libplanet.Benchmarks LRU cache Nov 13, 2019
Libplanet.Stun.Tests Introduce SonarAnalyzer Nov 11, 2019
Libplanet.Stun Delete Sonar Analyzer suppression S927 Nov 12, 2019
Libplanet.Tests Move BlockChain<T>.Contains(TxId) to IStore Nov 14, 2019
Libplanet Move BlockChain<T>.Contains(TxId) to IStore Nov 14, 2019
hooks .NET Core Apr 25, 2019
.editorconfig Widen max line column to 100 Jun 19, 2019
.gitignore Update .gitignore Sep 2, 2019 Move BlockChain<T>.Contains(TxId) to IStore Nov 14, 2019 Wrote basic docs on how to run benchmarks Nov 11, 2019
LICENSE Relicense to LGPL 2.1 or later Jan 17, 2019
Libplanet.Tests.ruleset Introduce SonarAnalyzer Nov 11, 2019
Libplanet.ruleset Delete Sonar Analyzer suppression S927 Nov 12, 2019
Libplanet.sln Add Libplanet.Benchmarks Aug 6, 2019
Libplanet.sln.DotSettings Restrict actions and states types Oct 15, 2019
Menees.Analyzers.Settings.xml Do not delete canonical chain Nov 14, 2019 Our new shiny Discord invite link Oct 29, 2019
azure-pipelines.yml Run benchmarks on GitHub Actions instead of Azure Pipelines Nov 11, 2019
codecov.yml settings Feb 13, 2019
icon.png As PackageIconUrl is deprecated, use PackageIcon instead Oct 11, 2019
stylecop.json Apply StyleCop.Analyzers.ruleset Nov 25, 2018


Discord Build Status Codecov NuGet NuGet (prerelease)

Libplanet is a .NET library for creating multiplayer online game in decentralized fashion, which means the whole gameplay occurs on a peer-to-peer network among equal nodes rather than an authorized central server. Under the hood, it incorporates many features (e.g., digital signature, BFT consensus, data replication) of a blockchain.


For every stable release, we pack Libplanet into a .nupkg and upload it to NuGet and GitHub releases page. (You can find the changelog for versions from releases page.) To use Libplanet in your game, your project needs to add a dependency to Libplanet package. On Visual Studio IDE, run the following command in Package Manager Console:

Install-Package Libplanet

If you prefer dotnet CLI run the following command instead:

dotnet add package Libplanet

See also Microsoft's docs on different ways to install NuGet package.

In addition to stable releases, we also provide pre-release packages. For every day and every merge commit, it is packed into a .nupkg and uploaded to NuGet with a hyphen-suffixed version name.

For a merge commit build, a version name is like 0.1.0-dev.20181231235959 where 20181231235959 is a UTC timestamp of the build. For a daily build, a version name is like 0.1.0-nightly.20181231.

Unfortunately, Unity currently does not support NuGet. There are some Unity plug-ins to deal with NuGet package system, and these seem immature at present. To use Libplanet on Unity, you need to manually extract Libplanet.dll from Libplanet.*.nupkg file and place it inside of your Unity project. We are acknowledging the fact Libplanet is currently not very usable together with Unity, and promise to make it better in the next few minor releases. In the near future, we are going to submit it to Unity Asset Store too.


You could build Libplanet.dll and Libplanet.Stun.dll assemblies from the source code.

The following command installs dependencies (required library packages) and builds the whole Libplanet solution:

dotnet build

Note that dotnet command is distributed together with .NET Core SDK.

If you'd like to contribute code to the Libplanet project in earnest, please read our contributor guide.

You can’t perform that action at this time.