124 Unity systems on one set of conventions: UI, gameplay, minigames, backend, phone-as-controller multiplayer. The free UGTK Core is included. Documented step by step, with GIFs.I build games for a living, mostly for clients: advergames, kiosks, totems, browser games that run on a phone scanned from a QR code. UGTK is the toolkit I built to ship them. It is not a collection of unrelated scripts: 124 systems that share the same base classes, the same naming, the same "drop the prefab, wire the UnityEvent" way of working, so they compose instead of colliding.Most of it is a component you drop on a GameObject and configure in the Inspector. The bigger pieces - the visual novel framework, the 2D platformer framework, the quiz, the tic-tac-toe, the tournament bracket, the chat, the on-screen keyboard - come as prefabs and ScriptableObjects, with a demo scene each. The 2D platformer also comes with Lumen Woods, a finished six-level game made only with it, with original pixel art and music: you can play it at ugtk.fantasyrolldice.it/play/lumen-woods.Two things you should know before buying. First: the 23 foundation systems are the free package "UGTK Core", and this package contains the very same files with the same GUIDs, so the two never duplicate code in a project. Second: a group of systems talk to a server you own (leaderboard, tickets, email, the WebSocket multiplayer). The SQL schema, the PHP endpoints and the WebSocket relay are in the package, but hosting them is your job. The list is below, read it first.WHAT YOU NEED• Unity 6 (6000.0) or newer, tested on 6000.0 and 6000.6. Built-in and URP; WebGL and mobile are first-class.• Unity UI (com.unity.ugui) with the TextMeshPro essentials.• Input System (com.unity.inputsystem), free, from Unity's registry. It asks to switch the active input handling and restart the editor: say yes.• Newtonsoft Json (com.unity.nuget.newtonsoft-json), free, from Unity's registry. Used by WebSocketsSystem, VisualNovel and MessageSystem.• On the first import a check tells you which of these is missing and offers to install them.• Bundled third-party code, each under its own licence (full list in Third-Party Notices): NativeWebSocket (Apache 2.0), StandaloneFileBrowser (MIT), PHPMailer on the PHP side (LGPL 2.1).• External services, each with your own key: timeapi.io for TimeOnlineSystem (no key, internet required, URL configurable), api.qrserver.com for the QrGenerator remote renderer, the Anthropic API for the optional Visual Novel story generator.SERVER — READ THIS BEFORE BUYINGSome systems talk to a server you own. Everything for that side ships under Server~ (Unity ignores the folder): the MySQL schema, the PHP endpoints next to each system (any shared hosting with PHP 7.4+ and MySQL), and the WebSocket relay as TypeScript source for Bun or Node behind HTTPS.• PHP server, endpoints shipped: LeaderboardSystem, Tickets, EmailSender, TableManagement.• WebSocket relay, shipped: WebSocketsSystem, QrMultiplayerSystem, TournamentSystem online. Local mode needs nothing.• An endpoint you write yourself: MessageSystem, ImagePhpManagment, the QrGenerator short-link flow.• Everything else — most of the toolkit — works with no server at all.Every default URL is a placeholder (your-server.com). Scores arrive from the client, so anyone who can read your build can forge them; the server README says what to add (a shared secret, rate limiting) if a prize is attached.DOCUMENTATIONEvery system has its own page, and wherever there is something to show the setup is a GIF rather than a wall of text: https://ugtk.fantasyrolldice.it — the same pages ship as .md files next to the code. A generated dependency map tells you what each module pulls in, so you can delete what you do not use.SUPPORTmarcellodebonis.work@gmail.com — I answer.WHAT'S INSIDE — 124 systems in 10 categories, all production-readyEvery name below has its own page with GIFs at https://ugtk.fantasyrolldice.itGameplay Systems (18)• Audio System — Comprehensive audio management for playback control and volume adjustment.• Grid System — Manage gameobject placed in a 2D or 3D grid layout.• Visual Novel System — Visual novel framework with chapters, dialogues, choices, variables and conditional flows.• Platform 2D Framework — Ready-to-use 2D platformer framework: player with stats and events, moving platforms, coins, checkpoints, enemies with vision cones, and status power-ups.• Dynamic Track Audio System — Multi-track music system that blends and switches layers based on gameplay states.• QR Multiplayer System — Local multiplayer helper that generates and reads QR codes to connect player devices.• Tangram System — Puzzle system for building Tangram-style boards, checking tile combinations and firing events when shapes are correctly assembled.• Achievement System — System for defining, tracking and rewarding player achievements and progression goals.• Language System — Global language manager that stores available languages, syncs UI dropdowns and notifies listeners to update localized texts at runtime and in editor.• Quiz System — Flexible quiz framework with ScriptableObject quiz databases, controllers and UI managers to run linear or random quizzes and evaluate win/lose conditions.• Tris System — Tic-tac-toe in four variants — classic, matriosca, sliding and inception — with an AI opponent whose difficulty is selectable.• Tournament System — Tournament framework for managing brackets, users and match progression.Also here: Pause System, Loading System, Checkpoint System, First Person 3D, Interaction System, Line Chart.Utility Systems (34)• Collision System — Manages 2D/3D collisions and detects mouse and touch interactions with customizable behavior.• Event System — Flexible system for managing game events, including listener management, event invocation.• Key Input Action System — Maps keyboard or gamepad input to high-level actions, simplifying input handling and remapping.• Code Wizard — Editor wizard that automates generation of boilerplate UGTK code and ScriptableObjects.• UGTK Assembly Manager — Centralizes references to UGTK assemblies and modules, easing setup and dependency tracking.• Hierarchy Overwritten — Editor-only Hierarchy overlays: row colours, name rules, Tag/Layer and component badges, separators, visibility and lock toggles.• Vibration System — Utility wrapper to trigger vibration/haptic feedback from non-mobile-specific contexts.Also here: Activation System, LinkOpener System, Pooling System, RandomicListElements System, Copy Paste System, Image Picker, Time Online System, Timing System, Interface Founder, Graph System, VFX System, UGTK Instantiator, Counter System, Range System, Effectiveness System, Codes Generator, Web Param System, Texture Resizer System, Desktop Window Controls, Video View System, Level Streaming System, Input Compatibility, FPS Limiter System, Invisibile Mouse System, GameObject Editor System, Folder Path System, Replace Special Word.Libraries Extensions (4)Also here: GameObject Extension, List Extension, AnchorsLibrary, Sprite Base64 Extension.Algorithms Module (1)Also here: ReorderSystem.Ui Module (34)• Dashboard System — Modular dashboard UI for displaying tables, KPIs and widgets bound to data sources.• Blur System — UI blur effects controller for backgrounds and panels.• Leaderboard System — Displays a list of users and their scores, sorted in order.• TextAnimatorUGTK — Per-character TextMeshPro effects driven by tags inside the text: persistent, appearance and disappearance effects, 35+ built in, plus a typewriter with inline actions and events.• Keyboard System — Keyboard on screen that allow the mouse/touch only to type on a inputfield.• Message System — A chat UI: conversations, pooled left/right bubbles, long messages split across clouds, with a client layer for login, polling and read receipts. The seven chat endpoints it calls are not in the package: you write them.• QR Generator — Generates QR codes into UI images for links, invites or session IDs.Also here: Line Chart System, Text Updater System, TMP Line Balancer, TMP CapsLock System, TMP Partial Bold, Mouse Over System, Click Effect Button, Jelly System, Slider System, Coroutine Timer Slider System, Screen Chooser System, Camera Shake System, Gradient System, Fade Controller System, Layout AutoResize, Auto Scroll System, Raw Image Preserve Aspect, Responsive Layout System, Dropdown Extension, Element Cycler System, Char Limiter System, Drawing System, Area Handles System, Text Typer System, Toggle Extension, Resolution System, Scene System.Data Systems (4)• Save System — Designed to save data from the game by storing key-value to be later on saved in the main memory.• Table Management System — Tools for managing table-like data (e.g. CSV) and mapping it into UGTK data structures.Also here: Database System, Dictionary System.Component Module (16)• Follow System — Implements follow behaviors for game objects, supporting 2D and 3D targets, as well as mouse and touch input.• DragDrop System — Drag and Drop System for UI uses a state machine for smooth interactions and includes drag events, state transitions, and pooling.• Damage System — The Damage System manages game object damage, offering advanced functions for applying damage, healing, controlling vulnerability, and event management.• Shooting System — The Shooting System manages shooting mechanics, ammo handling, reloading, and projectile management using efficient pooling for performance.Also here: Generic Component, Movement Component, Rotation Component, Jump Component, Dash Component, Ping Pong Movement Component, Resource Component, Snap Component, Level System, Persistent Component, Collider AutoResize Component, Flip Component.Design Patterns (3)• State Machine — The State Machine manages state transitions, defining states and conditions for control over state changes.Also here: Singleton, Command.Mobile (2)• GestureSystem — Gesture System detects and manages mobile touch gestures in Unity, triggering events for taps, swipes, pinches, and more.• Motion System — Accesses and normalizes device motion/accelerometer data for gameplay and UI effects.API (8)• EmailSender — EmailSender is a system that allows you to send emails from your game.• Tickets Api — Generates and validates ticket codes, integrating with backend APIs.• WebSockets System — WebSocket client/host wrappers for real-time communication with servers.Also here: ImagePhpManagment, PhpConnectionSystem, Leaderboard Api System, OAuth Email Api, Connection System.The systems were written by hand over several years of client work. The brand illustrations were produced with AI assistance and then edited. The sample stories shipped with the Visual Novel framework use AI-generated illustrations, and the framework contains an optional story generator that calls the Anthropic API with the user's own key; a demo game produced with it is included. Packaging tooling and store copy were drafted with an AI assistant and reviewed by the author.


