Indie Game Developer from Hong Kong.

Packages for Unity
In the world of software development, a well-designed system and architecture are paramount. They not only streamline the development process but also significantly reduce costs and enhance team productivity.
For any team or company involved in software creation, establishing a robust architectural foundation should be the top priority. It sets the stage for smooth collaboration, easier debugging, and faster iteration - all crucial factors in today's competitive game development landscape.
My Architecture Design
Most 5-person development teams need six months to deliver a project, while some can do it in 1-3 months. The difference isn't about talent - it's about having the right architectural foundation and tools.
My Unity architectural packages provide battle-tested solutions including State Machines, Node Frameworks, Event-Driven, Unity and c# implements. These tools are designed to streamline development and bring clarity to your projects, benefiting both experienced teams and junior developers.
The proof is in the results: using this architecture, a two-person team (one developer, one artist) completed an entire system with custom editor tools in just three months, earning high praise from management and clients. (Project details coming soon)
This page showcases my comprehensive architectural design for Unity. A detailed Figma diagram provides a visual overview of the entire system, illustrating how various components integrate within the Unity environment. Accompanying this diagram are links to GitHub repositories with sample code implementations, demonstrating how these architectural concepts are realized in practice.
Source Code is protected under MIT License. Everyone can use and modify for personal or business, but keeping credits on me. Welcome to fork my repositories for your necessaries.
Injection
Component and Dependency Injection Solution
The Injection Package wires your objects together instead of making them hunt for each other. It injects services from a container and components from the Unity hierarchy through the same attribute set, works on MonoBehaviour, plain C# classes and ScriptableObject alike, and gives every AceLand package a shared place to publish its services.
Injection happens before Awake, plans are compiled by a Roslyn source generator instead of reflected at runtime, and everything is verified before you build by an editor validation pass.
Lifecyle
Centralizing CoreLR Lifecycle
The Lifecycle Package solves a problem that RuntimeInitializeOnLoadMethod alone cannot: ordering. Unity guarantees that all methods of one RuntimeInitializeLoadType run before the next type begins, but it makes no guarantee about the order within a single type — which breaks down the moment your packages start depending on each other.
This package flips the model. Attributes only declare; a topological sorter decides. You describe what a module depends on, and the registry works out a deterministic execution order across all assemblies, in both Editor and Player.
It also closes the two holes most bootstrap code leaves open: a symmetric shutdown path, and a graceful before-quit pipeline that can await asynchronous work before the application actually dies.
Core
Roading to Unity 7 and CoreCLR
Unity 7 is a great update in Unity history, and it will change what Unity can fulfill in future.
I'm now developing 2 Core Packages for this change, and they are already in beta published level. Everyone can pull from github to test the packages.
As a new phase of my packages, core packages will be completely independency-free. There will be Editor toos for verify of codes, graph-view to show the whole designed structure with checked issues. If necessary, profiler will be included for estimated runtime performance for solving botton neck of design.
Please visit my GitBook from above link for details.
2.0
New Stage
Released on 23 Sep 2025.
The largest changes is implement with ZLinq for effiency and zero memory allocation.
Task Utils
The most important package is evoluted to next level.
○Promise Handler is a Task Handler designed for Unity Framework with promised thread-safe and exception-safe processes. Promise Handler works with simple and elegant syntax to success, fail, final state. Try-Catch block is not necessary in Task design.
○Promise Dispatcher is a new public interface that confirming actions running in main thread. Unity APIs and Object construction works only in main thread. This is the main reason why Task is not recommended in Unity Project. Unity do not provide a Dispatcher for developer, and Promise Dispatcher is the solution.
State Machine
One of the famous system design.
○Prewarm Provider is a scriptable object provides to system. System will create the state machines on assembly ready state. The whole state system will be built before first scene start to load.
Event Driven
Event Driven is most important role in any system.
○Event Bus has no initialization step. Listen or Raise with type-safe data. This promises the independency of observers and raisers.
○Signal is a focused and object-based event. This is suitable for communication between runtime instantiated objects.
More functions from system design to business logics function. Please visit my document site for details.
1.0
Published and Keep Development
AceLand Unity Packages are published completely to public.
I'm still keep updating current packages, and adding new packages.
Documentation will keep the latest information.
0.3
Documentation
First public of AceLand Unity Packages has been released on 24 Nov 2024.
In this version, not all packages are released. However most important foundation library and common frameworks are released.
Packages are released under my workshop 'AceLand'.
0.2
Old Version
Before this page completion, please access the old page [Unity Solutions] of my designs.
0.1