Git Product home page Git Product logo

tomlooman / actionroguelike Goto Github PK

View Code? Open in Web Editor NEW
3.2K 98.0 623.0 282.79 MB

Third-person Action Roguelike made in Unreal Engine C++. Project for Unreal Engine C++ Course & Stanford University

Home Page: https://courses.tomlooman.com/p/unrealengine-cpp?coupon_code=COMMUNITY15&src=github

C# 1.06% C++ 97.94% C 0.64% Batchfile 0.36%
unreal-engine game cpp stanford stanford-university ue4 ue4-tutorial ue4-project tutorial course

actionroguelike's Introduction

Unreal Engine C++ Projects

You can find all my blogs and tutorials over at tomlooman.com. I have many Unreal Engine and C++ focused tutorials and learning resources.

Action Roguelike (C++ Course Project)

Browse Repository

This project is part of the Professional Game Development in C++ and Unreal Engine Course where we build this project step-by-step.

Combat Example Still

Survival Game (C++ Sample Project)

Browse Repository

Third-person survival game for Unreal Engine made entirely in C++. Originally built as six part tutorial series for Epic Games, now available as open-source C++ sample project.

Refreshed look for Landscape Map

Unreal Engine C++ Pro Course

In 2020 I taught a full curriculum at Stanford University for Unreal Engine C++. You can now enroll in this course yourself using the links below.

Professional Game Development in C++ and Unreal Engine

The C++ Course features include building of a C++ game framework including an "action system" and event-driven code for flexible and re-usable game code the "unreal way". Multiplayer features, AI bots, SaveGame system, async loading of content, UMG menus and UI and so much more!

actionroguelike's People

Contributors

lundeful avatar tomlooman avatar ycoffeegames avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

actionroguelike's Issues

UE5 says the Gideon Blueprint anim is corrupted

I downloaded the ExampleContent and ParagonGideon file and put them in the instucted position, but sadly found that the Gideon had no color and the blueprint could not be found.
When I clicked the blueprint in menu directly, I was told it was corrupted.
-files were from master
-using ue5

Crash inUSProjectileMovementComponent::Reset()

Due to the pooling system you can get a crash in USProjectileMovementComponent::Reset(). We need to check with HasbeenInitialized() if the movement component is already initialized before initializating it again.

// Properly resets velocities and rotations
if (HasBeenInitialized())
{
UninitializeComponent();
}

InitializeComponent();

Corrupted Animation Blueprint

Tried to download the whole project in order to usethe Gideon_AnimBlueprint but seems impossible cause is corrupted . I imported 3 folders: ExampleContent, ParagonGideon, ParagonMinions

Tried different times. is this happening only to me ?

Update IsPendingKill to IsValid

Deprecation: "IsPendingKill() should no longer be used. Use IsValid(Object), IsValidChecked(Object) or GetValid(Object) instead."

While it's not yet deprecated in UE 4.27(it is in 5.0), I thought IsValid is a valid replacement at that point and should still accomplish the same goal.

https://github.com/tomlooman/ActionRoguelike/blob/master/Source/ActionRoguelike/Private/SProjectileBase.cpp#L51
https://github.com/tomlooman/ActionRoguelike/blob/master/Source/ActionRoguelike/Private/SSaveGameSubsystem.cpp#L43
https://github.com/tomlooman/ActionRoguelike/blob/master/Source/ActionRoguelike/Private/SSaveGameSubsystem.cpp#L117

I am not sure if you accept PRs, but these should probably be updated at some point.

Git LFS does not enabled for this repository

The repository does not contain .gitattributes file and Content folder uasset files does not stored with Git LFS.

Sample contents of .gitattributes

* text=auto

# UE file types
*.uasset filter=lfs diff=lfs merge=lfs -text
*.umap filter=lfs diff=lfs merge=lfs -text

Content/** filter=lfs diff=lfs merge=lfs -text

Unreal 5.02 with Visual Studio 2022 ActionRoguelike.h

Hi,

Thanks for open sourcing this.

To get the project running under Unreal 5.02 and Visual Studio 2022 I had to update the includes for:

ActionRoguelike\Source\ActionRoguelike\ActionRoguelike.h

To below, I can raise a PR if you like.

// Fill out your copyright notice in the Description page of Project Settings.

#pragma once

#include "CoreMinimal.h"
#include "Stats/Stats.h"
#include "UObject/Object.h"
#include "Engine/World.h"
#include "Engine.h"

DECLARE_STATS_GROUP(TEXT("STANFORD_Game"), STATGROUP_STANFORD, STATCAT_Advanced);

static void LogOnScreen(UObject* WorldContext, FString Msg, FColor Color = FColor::White, float Duration = 5.0f)
{
	if (!ensure(WorldContext))
	{
		return;
	}

	UWorld* World = WorldContext->GetWorld();
	if (!ensure(World))
	{
		return;
	}

	FString NetPrefix = World->IsNetMode(NM_Client) ? "[CLIENT] " : "[SERVER] ";
	if (GEngine)
	{
		GEngine->AddOnScreenDebugMessage(-1, Duration, Color, NetPrefix + Msg);
	}
}

Not working with UE5.2

I downloaded the whole new project from branch 5.1, I have UE5.2 installed but when I tried to open it in Visual Studio 2022, it's not working for me. I can not start the project due to this issue. I really need help to fix it so I can start the course. Thank you

4.25.4 Compile Errors

This first compile error is in SPlayerController.cpp. It can be fixed by adding the #include -
#include "Kismet/GameplayStatics.h"

1>D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Source\ActionRoguelike\Private\SPlayerController.cpp(21): error C2653: 'UGameplayStatics': is not a class or namespace name
1>D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Source\ActionRoguelike\Private\SPlayerController.cpp(21): error C3861: 'SetGamePaused': identifier not found
1>D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Source\ActionRoguelike\Private\SPlayerController.cpp(38): error C2653: 'UGameplayStatics': is not a class or namespace name
1>D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Source\ActionRoguelike\Private\SPlayerController.cpp(38): error C3861: 'SetGamePaused': identifier not found

The second compile error occurs in SAnimInstance.h. It can be fixed by changing line 24 from USActionComponent* ActionComp; to class USActionComponent ActionComp;*

1>D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Source\ActionRoguelike/Public/SAnimInstance.h(25): error C2143: syntax error: missing ';' before '*'
1>D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Source\ActionRoguelike/Public/SAnimInstance.h(25): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Source\ActionRoguelike/Public/SAnimInstance.h(25): error C2238: unexpected token(s) preceding ';'
1>D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Source\ActionRoguelike/Public/SAnimInstance.h(15): error C2039: 'ActionComp': is not a member of 'USAnimInstance'
1>  D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Source\ActionRoguelike/Public/SAnimInstance.h(13): note: see declaration of 'USAnimInstance'
1>D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Source\ActionRoguelike/Public/SAnimInstance.h(15): error C2618: illegal member designator in offsetof
1>  D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Source\ActionRoguelike/Public/SAnimInstance.h(15): note: offsetof has a builtin meaning; use /Zc:offsetof- to revert to old, non-conforming definition
1>D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Intermediate\Build\Win64\UE4Editor\Inc\ActionRoguelike\SAnimInstance.gen.cpp(70): error C2039: 'ActionComp': is not a member of 'USAnimInstance'
1>  D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Source\ActionRoguelike/Public/SAnimInstance.h(13): note: see declaration of 'USAnimInstance'
1>D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Intermediate\Build\Win64\UE4Editor\Inc\ActionRoguelike\SAnimInstance.gen.cpp(70): error C2618: illegal member designator in offsetof
1>  D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Intermediate\Build\Win64\UE4Editor\Inc\ActionRoguelike\SAnimInstance.gen.cpp(70): note: offsetof has a builtin meaning; use /Zc:offsetof- to revert to old, non-conforming definition
1>  [3/8] SAnimInstance.cpp
1>D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Source\ActionRoguelike\Public\SAnimInstance.h(25): error C2143: syntax error: missing ';' before '*'
1>D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Source\ActionRoguelike\Public\SAnimInstance.h(25): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Source\ActionRoguelike\Public\SAnimInstance.h(25): error C2238: unexpected token(s) preceding ';'
1>D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Source\ActionRoguelike\Public\SAnimInstance.h(15): error C2039: 'ActionComp': is not a member of 'USAnimInstance'
1>  D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Source\ActionRoguelike\Public\SAnimInstance.h(13): note: see declaration of 'USAnimInstance'
1>D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Source\ActionRoguelike\Public\SAnimInstance.h(15): error C2618: illegal member designator in offsetof
1>  D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Source\ActionRoguelike\Public\SAnimInstance.h(15): note: offsetof has a builtin meaning; use /Zc:offsetof- to revert to old, non-conforming definition
1>D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Source\ActionRoguelike\Private\SAnimInstance.cpp(19): error C2065: 'ActionComp': undeclared identifier
1>D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Source\ActionRoguelike\Private\SAnimInstance.cpp(30): error C2065: 'ActionComp': undeclared identifier
1>D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Source\ActionRoguelike\Private\SAnimInstance.cpp(32): error C2065: 'ActionComp': undeclared identifier

The third compile error occurs in SPowerupActor.cpp. This can be fixed by adding the #include -
#include "Net/UnrealNetwork.h"

1>D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Source\ActionRoguelike\Private\SPowerupActor.cpp(71): error C2275: 'ASPowerupActor': illegal use of this type as an expression
1>D:\ActionRoguelike-UE4.25\ActionRoguelike-UE4.25\Source\ActionRoguelike\Private\SPowerupActor.cpp(71): error C3861: 'DOREPLIFETIME': identifier not found

[Idea]AI Party

will be nice if you can add an AI character that will help you fight

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.