Frequently Asked Questions
Is Game Creator 2 required?
Yes. BSM is designed as a module for GC2 and requires GC2 Core as a foundation. The Visual Scripting integration only works with GC2.
Does it work without GC2 Stats?
Yes! BSM works fully without GC2 Stats. The Stats integration (StatsBridge) is optional and only needed if you want effects to modify GC2 Stats.
How many effects can be active simultaneously?
Unlimited by default. You can optionally set a max limit per StatusEffectManager or per Category.
Can effects stack?
Yes! BSM supports 5 stacking modes: None, Stack, Refresh, RefreshAndStack, and Extend. Each effect can have its own stacking behavior and max stack count.
Can I create permanent effects?
Yes. Set Duration Mode to 'Permanent' and the effect will never expire on its own. Remove it via dispel, API, or specific game logic.
How do I deal damage on tick?
Subscribe to the OnEffectTicked event or use the GC2 Event 'On Any Effect Ticked'. In your handler, deal damage to the target.
Can I prevent certain effects from being applied?
Yes! Use ImmunityProfile for permanent immunities, or AddTemporaryImmunity() for time-limited immunity. You can block by specific effect, category, or tag.
Does it support save/load?
Yes. Add the StatusEffectRemember component to integrate with GC2's Save/Load system. Active effects, durations, and stacks are preserved.
Can I customize the UI?
Absolutely! All UI prefabs are standard Unity UI elements. Modify colors, fonts, layouts, and add your own elements freely.
How do auras work?
Add StatusEffectAura to a GameObject. It automatically applies the configured effect to all valid targets within the radius and removes it when they leave.
What are Cleanse Types?
Cleanse Types let you create strategic dispel abilities. A 'Magic' dispel only removes 'Magic' type effects, while 'Undispellable' effects can't be removed at all.
Can I prevent effect spam with cooldowns?
Yes! Enable 'Has Cooldown' on any effect and set the cooldown duration. The effect can't be reapplied until the cooldown expires.
How do I add VFX to effects?
In the StatusEffectDefinition, assign prefabs to Apply VFX, Remove VFX, and/or Tick VFX. They spawn automatically at the target's position.
Can effects react with each other (elemental combos)?
Yes, since 1.2.0. Create Effect Interaction Rules (e.g. Incoming: Shock, Present: Wet, Result: Electrocuted), group them in an Effect Interaction Set and assign it to the StatusEffectManager or as the Global fallback. See Core Concepts → Effect Interactions.
How do I make Stun override Slow but not the other way round?
Mark the Crowd Control category as Exclusive and give Stun a higher Priority than Slow on the effect definitions. A weaker incoming effect is blocked, a stronger one replaces the active effect.
Can targets resist effects based on their stats?
Yes. Each definition has an Apply Chance plus optional GC2 Stats on the target for a resist chance (0-100 %) and a duration reduction (0-100 %). A failed roll fires the On Effect Resisted event.
Can multiple players have separate effect states?
Yes. Each StatusEffectManager is independent. NPCs, players, and enemies all have their own effect instances.
Changelog
Current Version: 1.2.2
Version 1.2.2 — Manual Rewrite & Installer Fix
pending validation
- Documentation & PDF manual rewritten fully customer-facing — internal notes and maintainer-only language removed, retitled "Buff & Status Effect Manager for Game Creator 2 — Documentation", with a proper Changelog appendix covering 1.2.2 / 1.2.1 / 1.2.0 / 1.0.0
- FIXED: Visual Scripting reference header corrected from "Instructions (20)" to "Instructions (21)" — Conditions (14), Events (11), and Properties (6) were already correct
- FIXED: Two stale Examples install-path references corrected from `@1.2.0` to the shipped archive's actual `@1.2.1` folder
- FIXED: Examples install descriptor author typo "Cupdeos" corrected to "cupedos"; description updated to "three demo scenes"
- No runtime code changed in this release
Version 1.2.1 — Debug Overlay, Build Fix & Examples Repair
2026-09-17
- NEW: BSM Debug Overlay — opt-in IMGUI runtime QA panel (Add Component → Buff Status Effect Manager → BSM Debug Overlay) listing active effects and temporary immunities in Play mode and in built players; configurable corner/size/colours, optional toggle key, and BuildReport() for bug reports
- NEW: "More Cupedos Modules" cross-promotion window (Window → Buff Status Effect Manager → More Cupedos Modules)
- NEW: "Support & Feedback" and "Rate on Asset Store" editor menu items
- NEW: Elemental reactions tutorial in the documentation — Wet + Shock → Electrocuted, built from the real BSM_ReactionsScene assets
- NEW: Documentation section confirming BSM's 14 Conditions work unmodified in Behavior trees, State machines, Hotspots and Dialogue requirements (Target defaults to Player — switch to Self for NPC-side nodes)
- FIXED: Player builds no longer fail with "error CS0246: The type or namespace name 'MenuItem' could not be found" — editor-only menu code now lives in its own Editor assembly. Affected 1.0.0 and 1.2.0 as shipped.
- FIXED: The Examples install package (Game Creator → Install… → Buff Status Effect Manager → Examples) really contains its three demo scenes again, including BSM_ReactionsScene — the 1.2.0 submission's archive was a mislabeled source-code snapshot with zero scenes
- FIXED: BSM_ImmunityPanel prefab was missing its ImmunityPanelUI component and showed a static placeholder instead of the live immunity list
- 299 EditMode tests (297 passed, 0 failed, 2 skipped); fully backward compatible, all new features opt-in
Version 1.2.0 — Reactions, Priorities & Resistance
2026
- NEW: Effect Interactions — rule-based reactions between effects (Wet + Shock → Electrocuted, Burn melts Frozen). Match by effect, category, category type or tag; block or apply the incoming effect, remove, de-stack, refresh or extend the present one, apply a result effect with optional stack transfer, priority, chance, VFX and sound
- NEW: Interaction Sets assigned per StatusEffectManager or as a global fallback
- NEW: Exclusive categories with priority — only one effect of a category at a time, the higher Priority wins
- NEW: Source tracking — effects remember who applied them; query and remove effects by caster, auras report their owner as source
- NEW: Instruction lists on the effect definition — run GC2 Instructions On Apply, On Tick, On Expire and On Dispel without a separate Trigger
- NEW: Apply chance and stat-based resistance — base apply chance per effect, optional GC2 Stats on the target for resist chance and duration reduction
- NEW: Interactions page in the BSM Settings window with rule validation
- NEW: 2 Instructions (Set Interaction Set, Remove Effects From Source), 3 Conditions (Would Effect React, Has Effect From Source, Category Priority At Least), 2 Events (On Effect Reaction, On Effect Resisted), 2 Properties (Effect Priority, Effect Apply Chance)
- NEW: Example scene BSM_ReactionsScene (Examples package 1.2.0)
- FIXED: StatusEffectRemember missing [Serializable] attribute (SerializeReference warning)
- FIXED: Save/Load did not restore tick count and tick progress of running effects
- FIXED: Stacking mode Extend rejected re-application instead of extending the duration
- 223 EditMode tests; fully backward compatible, all new features opt-in
Version 1.0.1 — Documentation Update
2026
- HuckHub has been removed
Version 1.0.0 — Initial Release
2025
- Core runtime: StatusEffectManager, StatusEffectInstance, EffectTickScheduler
- Data assets: StatusEffectDefinition, StatusEffectCategory, ImmunityProfile
- 5 Stacking modes: None, Stack, Refresh, RefreshAndStack, Extend
- Duration modes: Timed, Permanent
- Tick system with configurable intervals and max ticks
- Immunity system: Permanent (profile) and Temporary (API)
- Cooldown system to prevent effect spam
- Cleanse Types for strategic dispel abilities
- VFX & Audio hooks for Apply, Remove, and Tick events
- Aura system: StatusEffectAura for area effects
- 18 GC2 Instructions for Visual Scripting
- 15 GC2 Conditions for Visual Scripting
- 9 GC2 Events for Visual Scripting
- Complete UI system: EffectBar, Icons, Tooltips, Panels
- Immunity feedback with floating text
- StatsBridge for GC2 Stats integration (optional)
- StatusEffectRemember for save/load persistence
- 100+ Unit Tests
- Comprehensive documentation
Roadmap
Features under consideration for future updates:
- Effect Dependencies: Effect A only works if B is active
- Global Effect Modifiers: 'Amplify all DoTs by 50%'
- Network/Multiplayer synchronization support
Support
This is a passion project — no 24/7 support, but I reply as quickly as I can.
FAQ, Changelog & more →