BSGameLib.Core 1.0.3-preview

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

BSGameLib.Core

The few types every BSGameLib package and a game's shared code agree on. You don't need to reference it: it comes in with whichever BSGameLib package you add.

  • IIdentifiable<TKey>, INameable and IDescribable, for a game's domain types. BSGameLib.Server's repositories store IIdentifiable<TKey> entities.
  • DoNotRegisterAttribute, which keeps a class, or a whole assembly, out of what BSGameLib.Server registers by scanning assemblies and what BSGameLib.Networking discovers as packets.
  • Extension methods for collections, enums, dates, strings and types.
using BSGameLib.Core;
using BSGameLib.Core.Attributes;

var health = 120.Clamp(0, 100);        // 100
var day = "Monday".ToEnum<DayOfWeek>();

[DoNotRegister]
public class DebugPacket { }

public class Item : IIdentifiable<long>, INameable
{
  public long Id { get; set; }
  public string Name { get; set; }
}

Documentation: https://docs.burningstormstudios.com/

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 (4)

Showing the top 4 NuGet packages that depend on BSGameLib.Core:

Package Downloads
BSGameLib.Game

A 2D game engine for .NET on SDL3, with Vulkan and OpenGL renderers, shaders compiled at build, content, input, audio, localization and Dear ImGui.

BSGameLib.Networking

Client and server networking for games over QUIC: plain-class packets, reliable and unreliable delivery, server certificate pinning, on Windows, Linux and macOS with nothing to install.

BSGameLib.Chat

A chat and slash-command engine for games: commands from a fluent builder or attributes, typed parameters, command groups, token replacement and tab completion.

BSGameLib.Server

A dedicated game server host on Microsoft.Extensions.Hosting: finds your game's handlers and services, registers them for dependency injection, listens over QUIC and runs a fixed-step game loop, as a console app or a systemd or Windows service.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.3-preview 64 11/9/2026