Babyduck.VConsole2.Client 1.0.0

dotnet add package Babyduck.VConsole2.Client --version 1.0.0
                    
NuGet\Install-Package Babyduck.VConsole2.Client -Version 1.0.0
                    
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="Babyduck.VConsole2.Client" Version="1.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Babyduck.VConsole2.Client" Version="1.0.0" />
                    
Directory.Packages.props
<PackageReference Include="Babyduck.VConsole2.Client" />
                    
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 Babyduck.VConsole2.Client --version 1.0.0
                    
#r "nuget: Babyduck.VConsole2.Client, 1.0.0"
                    
#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 Babyduck.VConsole2.Client@1.0.0
                    
#: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=Babyduck.VConsole2.Client&version=1.0.0
                    
Install as a Cake Addin
#tool nuget:?package=Babyduck.VConsole2.Client&version=1.0.0
                    
Install as a Cake Tool

Babyduck.VConsole2.Client

A lightweight C# client library for interacting with VConsole2 used in Source 2 games (eg. Dota 2). This library allows you to connect to a running VConsole2 server, receive structured message chunks, parse common packages (such as PRNT), and send console commands.

Features

  • Connect to a VConsole2 TCP endpoint and stream message chunks.
  • Parse message chunks and convert payloads into typed packages that implement IPackage (includes Prnt package parser).
  • Send commands to the VConsole2 server.
  • Small, single-file API surface that's easy to integrate.

Supported frameworks

  • Library: .NET Standard 2.1
  • Sample project: .NET 10 (net10.0)

Changelog

Version Change
0.1.0 First version.
1.x.x The event system has been migrated from standard C# events to Rx.NET.

Requirements

Before using this library, make sure you have the following:

  • A Source 2 game installed (for example, Dota 2).
  • The game's Workshop Tools DLC installed and enabled. See Valve's documentation: https://developer.valvesoftware.com/wiki/Dota_2_Workshop_Tools
  • The in-game developer console / VConsole2 enabled and configured to listen on a TCP port.
  • The correct TCP port is open/allowed by any local firewall (the sample uses port 29000).

Installation

You can install it from NuGet.

# using dotnet CLI
dotnet add package Babyduck.VConsole2.Client

Quick start & usage

  • See the Babyduck.VConsole2.Client.Sample project (targets .NET 10) for a runnable example and full usage.
  • The sample shows how to create a VConsole2Client, subscribe to incoming messages, parse PRNT packages, and send console commands.

The sample project demonstrates typical usage and is the best starting point for integration.

Contributing

Contributions and fixes are welcome. Please open issues or pull requests on the upstream repository: https://github.com/yuijzeon/VConsole2.Client

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  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. 
.NET Core netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.1 is compatible. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.0 141 2/26/2026
0.1.0 108 2/24/2026