-
Notifications
You must be signed in to change notification settings - Fork 0
Home
A comprehensive Unreal Engine C++ plugin for creating Vampire Survivors-style roguelike games with Blueprint-First, Component-Based, Actor-Agnostic, Plug & Play architecture.
Ultimate Roguelike Framework provides a complete, production-ready system for building top-down roguelike games inspired by Vampire Survivors. The framework is built in C++ for performance but fully exposed to Blueprints for ease of use.
- 6-Slot Weapon System - Vampire Survivors-style weapon inventory with auto-fire
- 8 Weapon Types - Projectile, Melee, Area, Orbit, Beam, Bounce, Passive, Summon
- Weapon Evolution - Evolve weapons when conditions are met
- Experience & Leveling - XP gain, level progression, and skill points
- Health System - Damage, healing, regeneration, and death handling
- Player Stats - Comprehensive stat system with PowerUp modifiers
- Level-Up Cards - Vampire Survivors-style card selection on level up
- Fallback Cards - Alternative cards when weapon pool is empty
- PowerUp Shop - Meta progression with persistent upgrades
- Currency System - Run-based and persistent currency tracking
- Character Selection - Multiple character support with unique stats
- Auto-Fire - Automatic weapon firing with individual cooldowns
- Per-Weapon Targeting - Configure target filters per weapon, such as boss-only or door-only weapons
- Targeting System - Flexible enemy targeting with class/tag filtering
- Enemy Logic Component - Reusable enemy behavior for custom Character/Pawn enemies
- Object Pooling - Optimized projectile and pickup pooling
- Vacuum System - Automatic pickup collection
- Separation Component - Prevent enemy stacking
- Wave System - Wave-based enemy spawning with difficulty scaling
- Time Limit - Optional time limit or endless mode
- Special Events - Timed events with custom enemy spawns
- Loot System - Configurable loot drops from enemies
- Blueprint-Friendly - All systems fully exposed to Blueprints
- Easy UI Libraries - Simplified functions for UI integration
- Debug Tools - Visual debugging and console commands
- Performance Optimized - Handles hundreds of enemies efficiently
- Comprehensive Documentation - Detailed guides included
- Unreal Engine 5.0+
- Tested on UE 5.0 - 5.7
- Windows (Win64)
- C++ Core - High-performance C++ implementation
- Blueprint-First - Designed for Blueprint users
- Component-Based - Build production players and enemies from reusable URF components
- Actor-Agnostic - Use your own ACharacter, APawn, or custom actor classes Build production players and enemies from standard Unreal Character/Pawn classes by adding URF components. AURFTestPlayer and AURFTestEnemy are demo/prototyping classes, not required production parents.
- Data-Driven - Configuration through Data Assets
- Demo-Friendly - Included test classes remain available for quick prototyping
- Copy the
UltimateRoguelikeFrameworkfolder to your project'sPlugins/directory - Restart Unreal Engine
- Enable the plugin in Edit -> Plugins -> Search "Ultimate Roguelike Framework"
- Restart the editor
- Plugin is ready to use
- Open the included Example Project
- Explore the demo map and example implementations
- Copy components and configurations to your project
-
Add Components to Player
Create your own
ACharacterorAPawnBlueprint and add:Player Blueprint: +-- URFHealthComponent (Health system) +-- URFExperienceComponent (Leveling system) +-- URFWeaponComponent (Weapon management) +-- URFPlayerStatsComponent (Stat system) +-- URFLevelUpSystem (Card selection) +-- URFVacuumComponent (Pickup collection)You can use your own Capsule, SkeletalMesh, SpringArm, Camera, input, and movement setup. The player does not need to manually register with
URFGameDirector. The director automatically uses the pawn possessed by the firstPlayerControlleras the player target. -
Create Weapon Data Asset
Right-click in Content Browser -> Data Asset -> URFWeaponDataAsset -> Configure weapon properties -
Add Starting Weapon
Player Blueprint -> URFWeaponComponent -> Starting Weapons -> Add your weapon data asset -
Add Enemies
For production enemies, create your own
ACharacterorAPawnBlueprint and add:Enemy Blueprint: +-- URFHealthComponent (Health and death events) +-- URFEnemyLogicComponent (targeting, contact damage, rewards, loot, director registration)You can use your own Capsule, SkeletalMesh, AIController, Behavior Tree, or movement system.
AURFTestEnemyis still included for quick prototyping, but production projects should use the component-based setup above.Configure enemy spawning in Game Director.
-
Test
Press Play -> Weapon auto-fires -> Kill enemies to gain XP -> Level up to get card selection
The included Example Project contains:
- Fully configured player character
- Production-style enemy examples
- Multiple weapon examples
- Enemy spawning system
- UI implementation
- Demo map with all features
Simply open the Example Project and press Play to see everything in action.
Comprehensive documentation is included in the Documentation/ folder.
- QUICK_TEST_SETUP.md - 5-minute quick start guide
- WEAPON_SYSTEM_QUICKSTART.md - Weapon system overview
- FRAMEWORK_BLUEPRINT_REFERENCE.md - Complete Blueprint API reference
- EVOLUTION_SYSTEM_GUIDE.md - Weapon evolution system
- LOOT_SYSTEM_GUIDE.md - Loot drop configuration
- VACUUM_SYSTEM_GUIDE.md - Pickup collection system
- PLAYER_STATS_DATAASSET_GUIDE.md - Player stats configuration
- POWERUP_SHOP_QUICKSTART.md - PowerUp shop and meta progression
- CHARACTER_SELECTION_QUICKSTART.md - Character selection system
- FALLBACK_CARDS_GUIDE.md - Fallback card system
- TIME_LIMIT_QUICKSTART.md - Time limit and endless mode
- WAVE_DATA_EXAMPLE.md - Wave configuration examples
- EXAMPLE_WEAPONS_GUIDE.md - Weapon implementation examples
- PLAYER_UI_EASY_GUIDE.md - Easy UI functions for widgets
- PICKUP_DEBUG_COMMANDS.md - Debug console commands
- WEAPON_CONFIGURATION_TROUBLESHOOTING.md - Common issues and solutions
- P0_FIXES_SUMMARY.md - Critical fixes and best practices
Manages health, damage, healing, and regeneration.
- Armor support
- Health regeneration with delay
- Death handling
- Blueprint events for damage/healing
Manages weapon inventory and firing.
- 6-slot weapon inventory
- Auto-fire system
- Per-weapon targeting overrides
- Weapon leveling
- Evolution system
- Passive item tracking
Handles XP and leveling.
- Configurable XP curve
- Skill point system
- Level rewards
- Max level support
Calculates player stats with PowerUp bonuses.
- Combat stats: Health, Armor, Recovery, Move Speed
- Weapon stats: Might, Area, Speed, Duration, Cooldown, Amount
- Progression stats: Growth, Greed, Magnet, Luck
- Utility stats: Revival, Reroll, Skip, Banish, Curse
Manages level-up card selection.
- 3-card selection system
- Weapon acquisition and upgrades
- Fallback cards support
- Easy UI integration
Reusable enemy behavior component for production Character/Pawn enemies.
- Auto enemy tag setup
- Player target acquisition
- Optional simple follow movement
- Contact damage through a selected collision component
- GameDirector registration and unregistration
- XP reward handling
- XP pickup spawning
- Random loot drops
- BlueprintAssignable events for targeting, contact damage, and rewards
Controls wave-based enemy spawning.
- Wave progression system
- Difficulty scaling
- Special events
- Time limit support
Fire projectiles at enemies.
- Homing support
- Pierce support
- Bounce support
- Critical hits
- Example: Magic Wand
Continuous damage aura.
- Radius-based damage
- Damage intervals
- Critical hits
- Example: Garlic
Rotating beam damage.
- Sweeping area damage
- Configurable rotation speed
- Continuous damage
- Example: Holy Wand
Temporary damage zones.
- Ground-based areas
- Duration-based
- Multiple instances
- Example: Santa Water
Orbiting damage objects.
- Defensive rotation
- Multiple orbiters
- Collision damage
- Example: King Bible
Bouncing projectiles.
- Chain between enemies
- Configurable bounces
- Damage falloff
- Example: Lightning Ring
Passive effects.
- No active firing
- Stat modifications
- Evolution requirements
- Example: Spinach
Meta progression between runs.
- Persistent upgrades
- Currency-based purchases
- Stat modifications
- Unlock system
- Stat Modifiers - Increase player stats
- Weapon Unlocks - Unlock new weapons
- Character Unlocks - Unlock new characters
- Utility Upgrades - Rerolls, skips, revivals
Framework provides Easy UI functions for simplified widget integration:
// Get player stats globally
Get Current Health (Easy UI)
Get Max Health (Easy UI)
Get Health Percentage (Easy UI)
// Get weapon info globally
Get Weapon Count (Easy UI)
Get All Weapon Slots (Easy UI)
// Card selection globally
Get Card Options (Easy UI)
Select Card (Easy UI)
Get Card Name (Easy UI)No need to find player reference - works from any widget.
URF.Debug.ShowPickups - Toggle pickup debug display
URF.Debug.ShowWeapons - Toggle weapon debug display
URF.Debug.ShowHealth - Toggle health debug display
URF.Debug.GiveXP [amount] - Grant XP
URF.Debug.SetLevel [level] - Set player level
URF.Debug.SpawnPickup [type] - Spawn test pickup
- On-screen debug info for all systems
- Configurable per-component
- Performance metrics
- Collision visualization
Optimized for Vampire Survivors-style gameplay:
- Handles 500+ enemies simultaneously
- Object pooling for projectiles and pickups
- Efficient collision detection
- Minimal garbage collection
- 60+ FPS on mid-range hardware
- Detailed guides included
- Complete Blueprint API reference
- Example implementations
- Troubleshooting guides
- Discord: https://discord.gg/QJxvpuyUv8
- GitHub: https://github.com/CanTATARDev/UltimateRoguelikeFramework
Regular updates with new features and improvements.
Copyright 2026 CanTATAR. All Rights Reserved.
This plugin is licensed for use with Unreal Engine projects. See Fab EULA for details.
Developed by CanTATAR.
Inspired by Vampire Survivors by poncle.
Version: 1.0.0
Release Date: 2026-02-18
Engine Version: UE 5.0+
Ready to build your roguelike? Check out the Example Project and Documentation folder to get started.