DMCBK.PluginSdk 0.1.0-preview.3

This is a prerelease version of DMCBK.PluginSdk.
dotnet add package DMCBK.PluginSdk --version 0.1.0-preview.3
                    
NuGet\Install-Package DMCBK.PluginSdk -Version 0.1.0-preview.3
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="DMCBK.PluginSdk" Version="0.1.0-preview.3" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="DMCBK.PluginSdk" Version="0.1.0-preview.3" />
                    
Directory.Packages.props
<PackageReference Include="DMCBK.PluginSdk" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add DMCBK.PluginSdk --version 0.1.0-preview.3
                    
#r "nuget: DMCBK.PluginSdk, 0.1.0-preview.3"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package DMCBK.PluginSdk@0.1.0-preview.3
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=DMCBK.PluginSdk&version=0.1.0-preview.3&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=DMCBK.PluginSdk&version=0.1.0-preview.3&prerelease
                    
Install as a Cake Tool

DMCBK

NuGet prerelease NuGet downloads Build status .NET 10 C# 14 License: MIT

DMCBK, the Dotnet Minecraft Client Building Kit, helps you build Minecraft Java clients in .NET. It adds application hosting, commands, Beacon scripts and plugins to UMPK, which handles the protocol and game engine.

Use the same client services in a background worker, desktop app or web backend. Your application owns its interface, storage paths and login prompts. Optional modules let you choose the parts you need.

DMCBK is still in heavy development. APIs, behavior, and documentation are subject to change. Pin the version or commit that your application uses.

Features

  • Client hosting: authentication, connection lifecycle, reconnects and independent clients in one process.
  • Game API: typed access to chat, player state, inventory, entities, terrain and movement through UMPK.
  • Commands: dispatch, completion and scoped registration for hosts and plugins.
  • Beacon scripting (.bcn): event handlers, scheduled tasks, persistent state, linting, formatting and plugin extensions.
  • Plugins: C# source or compiled packages, lifecycle hooks, settings, storage, localization and shared contracts.
  • Marketplace: versioned releases, dependency resolution, platform-specific assets, pins and transactional installation with rollback.
  • Configuration: typed options and optional TOML loading, validation and persistence.
  • Testing: simulated script hosts and in-memory plugin sessions, with headless and web-backend samples.

Architecture

flowchart TB
    Host["Host application: CLI, desktop, mobile or web backend"]
    Builder["ClientBuilder: compose one client"]
    Core["DMCBK.Core: lifecycle, game API and host contracts"]
    UMPK["UMPK: protocol, authentication and game engine"]
    Server["Minecraft Java server"]

    subgraph Modules["Optional DMCBK modules"]
        Config["Configuration: TOML"]
        Commands["Commands: dispatch and completion"]
        Beacon["Beacon: automation runtime"]
        Plugins["Plugins: activation and loading"]
        Market["Marketplace: releases and installation"]
    end

    SDK["PluginSdk: author contracts"]
    Packages["Plugin packages and persistent user data"]
    Testing["Testing: simulated hosts and sessions"]

    Host --> Builder
    Builder --> Core
    Builder -->|selects| Modules
    Modules -.->|extend the client| Core
    Beacon -->|uses| Commands
    Plugins -->|uses| Commands
    Plugins -->|uses| SDK
    Market -->|installs selected assets| Packages
    Packages -->|loaded by| Plugins
    Core -->|uses published packages| UMPK
    UMPK -->|connects| Server
    Testing -.->|exercises| Core
    Testing -.->|exercises| Beacon
    Testing -.->|exercises| Plugins

The diagram shows composition and runtime flow. Core defines module boundaries without referencing their implementations. Your host supplies presentation, paths and login prompts. Add Commands before Beacon or Plugins. The package guide lists package dependencies.

Start here

  1. Install the .NET 10 SDK.
  2. Follow Build a client.
  3. Select modules from the package guide.
dotnet add package DMCBK --version 0.1.0-preview.3

The preview uses UMPK 0.9.0-beta.4. NuGet installation requires the DMCBK packages to be published. Until then, use the local package procedure.

Documentation

Roadmap

  • Improve documentation - WIP
  • Crowdin integration for translations
  • Documentation website
  • Extend the Game API with useful functionality
  • Benchmark and optimize the whole library and Beacon scripts

Contributors

milutinke contributes to UMPK and DMCBK. DMCBK also includes work from the Minecraft Console Client contributors.

License

DMCBK uses the MIT License.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on DMCBK.PluginSdk:

Package Downloads
DMCBK.Marketplace

Versioned catalogues, dependency resolution and transactional plugin installation.

DMCBK.Plugins

Collectible compiled and single-file source plugin runtime for DMCBK.

DMCBK.Testing

Deterministic plugin testing with real client sessions over in-memory UMPK transport.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.1.0-preview.3 37 10/8/2026