
Key Features
ScriptableObject Architecture
Define effects and categories as reusable assets. Configure once, use everywhere.
Flexible Stacking
Stack, Refresh, Replace, Extend, or None - choose how effects combine.
Tick System
Built-in tick scheduler for DoT effects, HoT, and periodic triggers.
Immunity System
Permanent profiles and temporary immunity via API. Block by effect, category, or tag.
Effect Interactions
Rule-based reactions: Wet + Shock → Electrocuted, Burn melts Frozen. Match by effect, category or tag.
Priority & Resistance
Exclusive categories where the higher priority wins, apply chance and GC2 Stat based resistance.
GC2 Visual Scripting
21 Instructions, 14 Conditions, 11 Events, 6 Properties - plus instruction lists directly on each effect.
Stats Integration
Optional bridge to GC2 Stats for automatic modifier application.
Complete UI System
Effect bars, icons, tooltips, and immunity feedback. Ready-to-use prefabs included.
Save/Load Support
StatusEffectRemember component integrates with GC2 persistence.
Source Tracking
Effects remember their caster. Query, react to, or remove everything a specific source applied.
Quick Overview
Buff & Status Effect Manager (BSM) provides a complete solution for managing temporary and permanent effects on characters in your game. Whether you need poison damage over time, speed boosts, stun effects, or complex immunity systems - BSM has you covered.
The system is built around ScriptableObject assets, making it easy to create, configure, and reuse effect definitions across your project. With full integration into Game Creator 2's Visual Scripting, you can implement complex effect logic without writing any code.
System Architecture
┌─────────────────────────────────────────────────────────────┐ │ StatusEffectManager │ │ (Component on Player/NPC - manages all active effects) │ ├─────────────────────────────────────────────────────────────┤ │ │ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ │ │ Definition │ │ Category │ │ Immunity │ │ │ │ (SO Asset) │ │ (SO Asset) │ │ Profile(SO) │ │ │ │ │ │ │ │ │ │ │ │ • Duration │ │ • Type │ │ • By Effect │ │ │ │ • Stacking │ │ • Color │ │ • By Category│ │ │ │ • Tick Rate │ │ • Max Active │ │ • By Tag │ │ │ │ • Tags │ │ │ │ │ │ │ └──────────────┘ └──────────────┘ └──────────────┘ │ │ │ │ ┌──────────────────────────────────────────────────────┐ │ │ │ StatusEffectInstance (Runtime) │ │ │ │ • Current Stacks • Remaining Duration • Tick Count │ │ │ └──────────────────────────────────────────────────────┘ │ │ │ ├─────────────────────────────────────────────────────────────┤ │ Interaction Set (SO): rules Incoming + Present → Result │ ├─────────────────────────────────────────────────────────────┤ │ Events: OnApplied, OnRemoved, OnStacked, OnTick, OnBlocked │ │ OnReaction, OnResisted │ └─────────────────────────────────────────────────────────────┘
Screenshots
Roadmap
Wave 3 — Cross-Module Bridges
Cross-module integration bridges: BSM ↔ SWS/PTB/CPS, CPS ↔ PTB/RS, WAS ↔ SWS/RS.
Multi-language Support
Add centralized multi-language support to all modules, allowing users to select their preferred language for documentation and in-editor messages.
BSM v1.2.1 — Debug Overlay, Build Fix & Examples Repair
Opt-in BSMDebugOverlay runtime QA panel, fixed the Examples install package (BSM_ReactionsScene now really ships) and a player-build compile failure, plus the BSM_ImmunityPanel prefab fix. Accepted by the Asset Store 2026-09-17; a same-day 1.2.2 follow-up regenerated the PDF manual and fixed an installer descriptor typo.
BSM v1.2.0 — SerializeReference warning fix
Fixed the 'StatusEffectRemember is missing the [Serializable] attribute' warning reported by a customer, restored tick progress on Save/Load and made the Extend stacking mode extend the duration as documented.
BSM v1.2.0 — Reactions, Priorities & Resistance
Effect Interactions (Wet + Shock → Electrocuted), exclusive categories with priority, source tracking, instruction lists on the effect definition, apply chance and stat-based resistance, 9 new Visual Scripting nodes and the BSM_ReactionsScene example. Submitted to the Asset Store.
Remove HuckHub from all module packages
Replace bundled HuckHub assemblies with per-module Documentation menu items to prevent assembly name conflicts.
Support
Need help? Check out the Support page for:
- Frequently Asked Questions
- Changelog and version history
- Contact information
- Community resources