TheiaECS_Extended 1.0.2

dotnet add package TheiaECS_Extended --version 1.0.2                
NuGet\Install-Package TheiaECS_Extended -Version 1.0.2                
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="TheiaECS_Extended" Version="1.0.2" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add TheiaECS_Extended --version 1.0.2                
#r "nuget: TheiaECS_Extended, 1.0.2"                
#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.
// Install TheiaECS_Extended as a Cake Addin
#addin nuget:?package=TheiaECS_Extended&version=1.0.2

// Install TheiaECS_Extended as a Cake Tool
#tool nuget:?package=TheiaECS_Extended&version=1.0.2                

TheiaECS Extended

An extended library designed to enhance TheiaECS with additional capabilities, features, and an improved developer experience!


❓ What is TheiaECS and TheiaECS Extended?

TheiaECS is a expressive, simple and efficient Entity Component System (ECS) framework designed for game development in C#. It provides a structured way to organize game logic through a composition-based architecture.

TheiaECS_Extended builds upon this foundation, introducing additional features that streamline development, improve maintainability, and provide more powerful and resourceful tools.


πŸ”‘ Key Features

  • Systems – A default approach for creating and organizing your game’s systems, using Units for individual system logic, Bundles to group systems together, and MultiBundle to execute multiple bundles in parallel.

  • Singleton Components – Implements a centralized pattern for managing single-instance Components through the Atom class, utilizing the Monostate pattern that allows for both polymorphism and inheritance while sharing state across all instances. The Molecule class extends this by providing lifecycle management for multiple Atom Components, offering customizable methods for initialization, loading, updating, and drawing operations, streamlining component handling and system processing.

  • Data Tables – Offers an efficient system for managing and accessing data using the DataTable class. It enables the Components to reference managed resources like Sprites, Sounds, etc., via table indices, ensuring memory safety and optimized memory usage. It can add custom keys, insert values, and retrieve data efficiently, making it ideal for handling game assets while minimizing memory overhead.

  • Relations – Manages and tracks the parent-child relationships between entities in a World, with the FamilyTree class handling the organization and manipulation of relationship data, while the Relation component stores the specific relationship details.

  • World Serialization – Utilizes Assemblages to serialize and deserialize Entities and their Components, offering better control over what gets saved. It uses MessagePack for efficient binary serialization. During serialization, temporary entity IDs are stored, and a playback system dynamically recreates the Entities during deserialization. Relationships between Entities are restored as they are instantiated, ensuring all references point to valid Entities.

Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible.  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. 
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.2 37 3/10/2025

Released TheiaECS Extended 1.0.2 : Added TheiaECS_Common Package as Dependency.
     Released TheiaECS Extended 1.0.