In this update, I’ve been working on introducing a new system for weapon imbues. This is one of several features developed over the past month, and it lays the groundwork for adding more combat depth going forward.
The first imbue currently implemented is Flaming Weapons, but the system is designed to be scalable, so adding more variants like frost or lightning will be straightforward.
Overview of the Imbue System
Rather than treating imbues as one-off effects, I’ve built a more structured system with three layers:
- Primary Imbue
Adds direct damage to weapon hits (e.g. fire damage). - Secondary Imbue
Applies a status effect to the target (e.g. burn, slow, debuff). - Tertiary (Trinary) Imbue
Focuses on enhancing the wielder (e.g. stat boosts or enchantments).
This separation allows each imbue type to be more flexible and reusable across different elements and playstyles.
Flaming Weapons: How It Works
The Flaming Weapons imbue applies two effects:
- Primary Effect
Adds additional fire damage to each hit. - Secondary Effect
Applies a burn status to the target, dealing damage over time.
Without the imbue active, attacks deal normal physical damage. Once activated:
- Initial hits deal increased damage
- Targets are afflicted with a burning effect that continues to deal damage
The effect is also fully replicated, so it appears consistently across clients in multiplayer.
Server-Driven Logic
All gameplay logic for imbues is handled on the Java server, which keeps the client lightweight and easier to maintain.
The Flaming Weapons definition includes:
- A primary imbue configured to apply fire damage
- A secondary imbue that applies a burn effect with damage over time
Because this is largely config-driven, balancing and iteration are much easier:
- Damage values can be adjusted without changing core systems
- Additional effects can be layered in as needed
Extending to Other Imbues
The system is designed so new imbues can follow the same pattern:
- Frosted Weapons
- Primary: Frost damage
- Secondary: Slow effect (movement or attack speed reduction)
- Lightning Weapons
- Primary: Lightning damage
- Secondary: Resistance reduction (e.g. armor or magic resist)
This makes it easy to expand the system without introducing new architecture each time.
Client Implementation (Unreal Engine)
On the client side, the implementation is intentionally minimal:
- The skill itself relies on a shared base system for activation
- The status effect handles visual feedback:
- Spawning a particle emitter (e.g. fire on the weapon)
- Removing it when the effect ends
All heavy logic (damage, status application, scaling) remains on the server.
Current State
- Flaming Weapons is fully functional
- Effects replicate across clients
- Damage and burn effects are working, though balancing still needs refinement
- Minor bugs remain (e.g. UI/status sync), but overall the system is stable
What’s Next
Next steps include:
- Adding Frost and Lightning imbues
- Expanding tertiary imbue effects (stat-based enhancements)
- Balancing damage and scaling across all imbue types
This system should make it much easier to introduce new combat variations without significant rework.
