Custom Tick System
Custom Tick System is a high-performance, tick manager designed for projects that require precise and scalable time-based logic execution without relying on Update() methods or coroutines.
by Energise
Price History +
Allows you to register methods or actions to be called at custom intervals, with optional delays, one-shot execution, and pause/resume control. Ticks can be assigned via attributes or registered programmatically using a builder API. This system replaces scattered timing logic with a centralized, deterministic tick loop.
Key Features
- Custom tick intervals per function or action
- Zero hot-path GC allocations for every registered tick
- Attribute-based or builder-style registration
- Optional delays, one-shots, pause and resume
- Centralized ticking via Unity’s PlayerLoop (no GameObjects required)
- Runtime-safe, editor-only debugging tools included
- Fully documented and unit-tested
Benefits
- Performance Optimized: Runs without generating garbage each frame, making it ideal for mobile, VR, and high-frequency logic such as AI, damage-over-time, background logic, or event dispatching.
- Cleaner Architecture: Avoids bloating MonoBehaviour with Update() methods. Keeps tick logic encapsulated and modular.
- Flexible Timing Control: Set custom intervals, start delays, and one-shot execution for precise scheduling of any logic.
- Central Debugging: Includes an editor window to inspect, pause, resume, and unregister ticks during playmode.
- Scales Easily: Supports thousands of concurrent ticks without frame drops or memory churn.
Use Cases
- Periodic AI decisions or sensory checks
- Damage-over-time and timed effects
- Background data polling or syncing
- Cooldowns and scheduled actions
- Procedural generation steps
- Lightweight job scheduling in gameplay systems
Whether you're building a real-time strategy game, action RPG, simulation, or any system with repeating logic, offering a fast, GC-safe, and easy-to-maintain alternative to traditional update loops or coroutine-based ticking.