READ THIS IF YOU ARE UPDATING TO VERSION 5.x.x from any version
TL;DR:
- I really recommend you make a Tag or Commit in your version control first.
- With the project open, open an empty scene.
- Delete the "AHAKuo Creations/Signalia" folder.
- Import the new version.
- Make a new commit in your version control.
- That's that! Check if everything works, update namespaces if an error occurs as many namespaces changed.
💡 What is Signalia?
Signalia is a powerful, all-in-one UI system and game framework designed to accelerate development and empower creativity. It offers advanced tools for crafting dynamic user interfaces, an event-driven C# radio system, and a suite of modular game systems and utilities, all built to help you prototype, polish, and ship your next game faster.
==================================================
============= USER INTERFACE FRAMEWORK==============
==================================================
🎬 UI System (Menus, Animations & Controls)
- GUI-focused: menus, buttons, UI elements, and animations. Emphasis on ease of use and powerful animation utilities.
- Trigger UI animations with one line
- Auto-back navigation with a global back button
- Built-in sound/VFX hooks (via SIGS.PlayAudio())
- One-click menu setup with auto-activation and deactivation
- Smart button dimming and visual feedback
- Animation preview in the editor
- Non-blocking animations and composite keying for smooth transitions
==================================================
================= GAME SYSTEMS ====================
==================================================
💾 Save System
- Save and load player data, scene states, or custom systems with simple APIs.
- Fully extendable to fit your architecture
- Includes save utility classes and smart default behaviors
- Use Encryption or Modifiable save files
- Alternative to PlayerPrefs using JSON formatting and extendable parsers
- Connected with Signalia's utilities and UI framework
- Async delete operations and improved performance (v4.0.0)
🌀 Loading Screen System
- Animate into any scene with fade-ins, delays, and fake loading support.
- Additive loading + controlled activation for seamless transitions
- Scene unloading support to avoid flashbacks and glitches
- Click to Progress options
📦 Object Pooling
- On-demand or preloaded pooling.
- Lightweight and easy to drop into any system
- Great for VFX, enemies, projectiles, UI, and more
- Invoked like this: bulletPrefab.FromPool(); // with parameters
- Enhanced spawn options, modes, and ParentedEmitter for flexible audio positioning (v4.0.0)
🎶 Audio Layering
- Manage ambient and room audio in layers.
- Continuous Layers: Keep looping ambience always active
- Tracks per Layer:
- BGM – default: forest_music.wav
- SFX – default: birds_and_wind.wav, rain: rain.wav, wildlife: animals.wav
- MISC – default: world_event.wav
- Room Audio: Add specialized layers (shops, dungeons, lakes, crowds) with trigger boxes or manual control
- Priority System: Play new audio on the same track with higher priority to fade it in and mute the old one. Stop it, and the system crossfades smoothly back to the lower priority track without restarting it (controllable by settings)
- Very easy, very straightforward, with example scene
🌍 Localization System | Lingramia
Reach global audiences with localization tools.
- Comprehensive Text Support: Text, audio, images, and UI elements across multiple languages
- String Extraction System: Automatically extract hardcoded strings with ILocbookExtraction interface
- Multiple LocBooks: Organize localization data across multiple LocBook assets
- Paragraph Style Support: String-based styles for different text types (Header, Body, Caption, Button, etc.)
- Material Override Support: Custom material overrides for TextStyle
- Arabic Text Formatting: Full RTL support with smart symbol mirroring and text shaping
- Arabic TMP Font Creator: Editor window for generating Arabic-compatible fonts
- Multi-Language Font Support: Japanese and Chinese font support in font creation system
- Lingramia Integration: Easy translation management with seamless workflow.
- Spreadsheet Support: Turn sheet files and CSV into locbooks easily.
- Runtime Language Switching: Switch languages on the fly and see them update immediately
- Utility Components: LocalizedText and SimpleLocalizedText for simplified workflow
💬 Dialogue System (WIP)
Complete dialogue creation flow. Currently undergoing development.
- Dialogue with Ease: A simple dialogue creation flow that supports branching choices.
- Auto-localized: Organize items by type
- External App: Create dialogue in an external app dedicated for this flow.
- Audio and Events Support: Add events and audio events to trigger things with dialogue.
🎒 Inventory System
Complete inventory management solution.
- Grid-Based Display: Visual grid layout for items
- Item Categories: Organize items by type
- Custom Properties: Extend items with custom data
- Audio Support: Built-in audio feedback
- Save/Load Integration: Seamless integration with Game Saving system
- Abstracted System: Build it into whatever you want (Crafting, Trading, Online, etc...)
⚙️ Common Mechanics
A toolbox of mini-systems found in many games.
- Trigger Box: Unified trigger utility working with collider callbacks and raycast zones. Supports 2D and 3D, optional layer/tag filters, UnityEvent callbacks, Signalia string events, and persistent disable behavior
- Interactive Zone: Component for interaction mechanics with multiple detection methods (ColliderTrigger, RaycastZone, LookToward), line-of-sight checks, and UI prompt integration
- Currency Management System: Struct-based currency tracking with automatic saving, event integration, UI helpers, and audio/haptic support. Access via SIGS.GetCurrency("gold").Modify(100)
🚀 Resource Caching System
- Boost performance with intelligent resource management.
- Automatically caches frequently used assets
- Reduces loading times and optimizes memory usage
- String-based lookup for easy access
- Smoother gameplay experiences
==================================================
================ C# WRAPPED EVENTS =================
==================================================
📻 Radio Event System (Radio-Style Messaging)
Event-driven messaging using C# events. Integrated with the GUI framework and usable in your own code.
- Use SIGS.Listener(), SIGS.Send(), and SIGS.GetValue() for global events and state sync
- One-shot, auto-cleaning listeners. No manual GC management
- Easy debugging — see what fired and where
Two types of Radios:
- Simple: Fast setup, single-line workflows
- Complex: Deep radio system with channels, broadcasts, and TV-like functionality, and audio clip playing with options from code by name (FadeIn, FadeOut, 3D, At Position, Looping, Once, etc...)
==================================================
=============== UTILITIES AND HELPERS =================
==================================================
🛠️ Code Utilities & Time Helpers
- Base utilities for common Unity tasks and time-based operations.
- SIGS.DoIn(), SIGS.DoWhen(), SIGS.DoWhile() – Time-based code without coroutines
- SIGS.DoEveryInterval() for loops and updates
- SIGS.DoFrameUpdate() for frame-based updates
- SIGS.CooldownGate() to throttle spammable logic
- SIGS.HoldOn() for delayed execution control (reverse cooldown gate)
- Value Binding to sync any variable (like health/money) to UI without extra glue
- Threading system for cutscenes and ordered sequences (NQListen, NQWait)
==================================================
================= EXTERNAL UTILITIES =================
==================================================
🔗 External App (Lingramia)
Localization App supported in Signalia.
** Can be downloaded in the editor from Tools > Signalia > Game Systems > Localization > Download Lingramia
- Compatibility with Signalia Localization.
- .Locbook files editing.
- Multiple locbook management.
- For Windows / Mac / Linux (testing)
- AI Translations for faster iteration.
🔗 External App (Spokesman)
Dialogue builder app supported in Signalia.
** Can be downloaded in the editor from Tools > Signalia > Game Systems > Dialogue > Download Spokesman
- Compatibility with Signalia Dialogue System.
- .DlgBook files editing.
- Multiple locbook management.
- For Windows / Mac / Linux (testing)
- AI completion and context aware dialogue for faster iteration.
💬 Need Help?