Skip to content

3D hack and slash platformer inspired by Ratchet & Clank's weapon systems and platforming, and Devil May Cry's stylish hack and slash combat.

Notifications You must be signed in to change notification settings

Axizen/CursedAngel

ย 
ย 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

58 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Cursed Angel

Cursed Angel Logo

3D Hack & Slash Platformer with Reactive Environment Combat

Unreal Engine C++ License Status

๐ŸŽฎ Play Demo โ€ข ๐Ÿ“– Documentation โ€ข ๐Ÿ› Report Bug โ€ข ๐Ÿ’ฌ Discussions


๐Ÿ“– Table of Contents

๐ŸŽฏ About

Cursed Angel is a 3D hack and slash platformer prototype that combines environmental interaction, companion AI, and transformation mechanics. Drawing inspiration from Ratchet & Clank's gadget-based exploration and Devil May Cry's stylish combat, the game features a unique "Source Code" narrative where players debug reality anomalies.

๐ŸŽญ Story

Players control Ripley, a human with an angel's soul, accompanied by Frank, a fox with an angel's soul who is immune to curses. Both characters have been granted access to Yahweh's Source Code and tasked with debugging reality anomalies while maintaining secrecy from mortal authorities.

โœจ Features

๐ŸŒ Reactive Environment System

  • Curse weapons interact with environmental elements
  • Dynamic platform extension and barrier creation
  • Hazard activation and environmental puzzles
  • Real-time world state changes

๐ŸฆŠ Intelligent Companion AI

  • Frank the fox provides utility support
  • Telepathic communication system
  • Witty personality with helpful abilities
  • Autonomous utility station activation

โšก Cursed Angel Transformation

  • Devil Trigger-inspired ultimate ability
  • Data point accumulation system
  • Speed, damage, and fluidity bonuses
  • Stunning visual effects and audio

๐ŸŸ๏ธ Arena Combat System

  • Wave-based progression
  • Environmental integration per wave
  • Multiple enemy types with AI
  • Progressive difficulty scaling

๐Ÿš€ Quick Start

Prerequisites

# Required Software
- Unreal Engine 5.5+
- Visual Studio 2022 (C++ workload)
- Git with Git LFS
- Windows 10/11 (64-bit)

Installation

  1. Clone the repository

    git clone https://github.com/yourusername/cursed-angel.git
    cd cursed-angel
  2. Setup Git LFS

    git lfs install
    git lfs pull
  3. Generate project files

    # Right-click CursedAngel.uproject โ†’ "Generate Visual Studio project files"
  4. Open and compile

    # Open CursedAngel.sln in Visual Studio
    # Build โ†’ Build Solution (Ctrl+Shift+B)
    # Open CursedAngel.uproject in Unreal Engine

๐ŸŽฎ First Play

  1. Launch Unreal Engine and open the project
  2. Press Play or open the ArenaDemo level
  3. Use the controls below to start playing!

๐ŸŽฎ Gameplay

๐ŸŽฏ Controls

Input Action Input Action
WASD Movement Mouse Camera Look
Space Jump Left Click Fire Curse Weapon
Right Click Heavy Attack 123 Switch Curse Weapons
Q Cursed Angel Transform E Request Frank Utility

โš”๏ธ Curse Weapons

Weapon Key Effect Environmental Interaction
Corruption Rail 1 High damage piercing shot Extends platforms for traversal
Fragment Needles 2 Rapid-fire sticky projectiles Activates hazard traps
Void Mines 3 Area denial explosives Creates protective barriers

๐Ÿ› ๏ธ Frank's Utilities

Utility Effect Duration Cooldown
Curse Amplifier 2x weapon damage 10s 15s
Element Highlighter Shows interactive elements 8s 12s
Emergency Shield 50% damage reduction 8s 20s

๐Ÿ—๏ธ Development

๐Ÿ“ Project Structure

CursedAngel/
โ”œโ”€โ”€ ๐Ÿ“ Content/
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ Characters/           # Player and companion assets
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“ Ripley/          # Player character
โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“ Frank/           # Companion fox
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ CurseWeapons/        # Weapon blueprints and effects
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ Environment/         # Arena and reactive elements
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ UI/                  # HUD and interface
โ”‚   โ””โ”€โ”€ ๐Ÿ“ Audio/               # Sound effects and music
โ”œโ”€โ”€ ๐Ÿ“ Source/CursedAngel/      # C++ source code
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ CurseWeaponComponent.*
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ CursedAngelComponent.*
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ FrankAI.*
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ FrankAIController.*
โ”‚   โ””โ”€โ”€ ๐Ÿ“„ ReactiveArenaElement.*
โ”œโ”€โ”€ ๐Ÿ“ Config/                  # Engine configuration
โ””โ”€โ”€ ๐Ÿ“ Plugins/                 # Third-party plugins

๐Ÿ”ง Key Systems

๐ŸŒ Reactive Environment System
UCLASS(BlueprintType, Blueprintable)
class CURSEDANGEL_API AReactiveArenaElement : public AActor
{
    GENERATED_BODY()

public:
    UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Reactive")
    ECurseWeaponType ReactsToWeapon;
    
    UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Reactive")
    EReactionType ReactionBehavior;
    
    UFUNCTION(BlueprintCallable, Category = "Reactive")
    void TriggerReaction(ECurseWeaponType CurseType, FVector ImpactLocation);
};
๐ŸฆŠ Frank AI Controller
UCLASS(BlueprintType, Blueprintable)
class CURSEDANGEL_API AFrankAIController : public AAIController
{
    GENERATED_BODY()

public:
    UFUNCTION(BlueprintCallable, Category = "Frank AI")
    void SetAIState(EFrankAIState NewState);
    
    UFUNCTION(BlueprintCallable, Category = "Frank AI")
    void ActivateNearestUtility();

private:
    void UpdateFollowBehavior(float DeltaTime);
    void UpdateUtilityDetection();
};
โšก Cursed Angel Transformation
UCLASS(BlueprintType, Blueprintable)
class CURSEDANGEL_API UCursedAngelComponent : public UActorComponent
{
    GENERATED_BODY()

public:
    UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Cursed Angel")
    float DataPoints = 0.0f;
    
    UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Cursed Angel")
    float SpeedMultiplier = 1.5f;
    
    UFUNCTION(BlueprintCallable, Category = "Cursed Angel")
    void ActivateTransformation();
};

๐Ÿ”จ Building from Source

Development Build
  1. Prerequisites

    # Install Visual Studio 2022 with C++ workload
    # Install Unreal Engine 5.5
    # Ensure Git LFS is configured
  2. Compile C++ Classes

    # Method 1: Visual Studio
    Open CursedAngel.sln โ†’ Build โ†’ Build Solution
    
    # Method 2: Unreal Engine
    Open project โ†’ Compile button in toolbar
  3. Package for Distribution

    # In Unreal Editor
    File โ†’ Package Project โ†’ Windows (64-bit)
    # Select output directory
    # Wait for packaging to complete

๐Ÿ“Š Performance Targets

Metric Target Current
Frame Rate 60 FPS โœ… 60+ FPS
Memory Usage < 4GB RAM โœ… ~3.2GB
Loading Time < 10s โœ… ~7s
Package Size < 2GB โœ… ~1.8GB

๐Ÿ—บ๏ธ Roadmap

โœ… Completed (v0.1.0 - Prototype)

  • Core curse weapon system with environmental interactions
  • Frank companion AI with utility support
  • Cursed Angel transformation with visual effects
  • Arena combat with wave-based progression
  • Complete UI system with HUD and feedback

๐Ÿšง In Progress (v0.2.0)

  • Enhanced Frank personality system with more dialogue
  • Additional curse weapon types and combinations
  • Advanced enemy AI with varied behaviors
  • Performance optimizations and bug fixes

๐Ÿ“… Planned (v0.3.0+)

  • Story mode with narrative progression
  • Multiple arena environments with unique mechanics
  • Save system and progression tracking
  • Steam integration and achievements

๐Ÿค Contributing

We welcome contributions from the community! Please read our Contributing Guidelines before getting started.

๐Ÿš€ How to Contribute

  1. ๐Ÿด Fork the repository
  2. ๐ŸŒฟ Create a feature branch
    git checkout -b feature/amazing-feature
  3. ๐Ÿ’ป Make your changes
  4. ๐Ÿงช Test thoroughly
  5. ๐Ÿ“ Commit with clear messages
    git commit -m 'feat: add amazing feature'
  6. ๐Ÿ“ค Push to your branch
    git push origin feature/amazing-feature
  7. ๐Ÿ”„ Open a Pull Request

๐Ÿ“‹ Development Guidelines

๐Ÿ› Known Issues

Current Known Issues
Issue Severity Status
Frank occasionally gets stuck on complex geometry Low ๐Ÿ” Investigating
Transformation effects may persist after death Medium ๐Ÿ”ง In Progress
Audio cues can overlap during rapid weapon switching Low ๐Ÿ“‹ Planned
UI scaling issues on ultrawide monitors Low ๐Ÿ“‹ Planned

See our Issue Tracker for the complete list and to report new bugs.

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

๐ŸŽจ Third-Party Assets

Asset Acknowledgments
Asset Pack Usage License
StylishCombatStarterKit Melee combat foundation Asset Store License
Cat Girl Character Pack Player character mesh Asset Store License
Weapon Asset Packs Railgun, Needler, ProximityMineLauncher Asset Store License
Unreal Engine Starter Content Environmental assets Epic Games License

๐Ÿ™ Acknowledgments

๐ŸŽฎ Inspiration

  • Ratchet & Clank - Gadget-based environmental interaction
  • Devil May Cry - Stylish combat and transformation mechanics
  • .hack franchise - Digital reality narrative themes
  • MASH (1970) - Character personality and dialogue tone

๐Ÿ‘ฅ Special Thanks

  • Epic Games for Unreal Engine 5
  • The Unreal Engine community for tutorials and support
  • Asset creators for high-quality content packs

๐Ÿ“ž Support & Community

Discord Documentation Issues Discussions

๐Ÿ“ˆ Project Stats

GitHub repo size GitHub contributors GitHub last commit GitHub issues GitHub pull requests GitHub stars


โญ Star this repository if you found it helpful!

"Flippin' amazing."

About

3D hack and slash platformer inspired by Ratchet & Clank's weapon systems and platforming, and Devil May Cry's stylish hack and slash combat.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 96.7%
  • C# 3.2%
  • C 0.1%