The Unity RPG Creator in C# Series - Part 1: Core Combat
4.8 (171 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
4,543 students enrolled
Wishlisted Wishlist

Please confirm that you want to add The Unity RPG Creator in C# Series - Part 1: Core Combat to your Wishlist.

Add to Wishlist

The Unity RPG Creator in C# Series - Part 1: Core Combat

Build your own Role Playing Game (RPG) in Unity 5.5. Learn intermediate C#, game & level design & architecture.
4.8 (171 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
4,543 students enrolled
Last updated 3/2017
Current price: $10 Original price: $95 Discount: 89% off
1 day left at this price!
30-Day Money-Back Guarantee
  • 13.5 hours on-demand video
  • 1 Article
  • 18 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Have a coupon?
What Will I Learn?
Create core combat mechanics for your own Action RPG.
Make a simple level with terrain, placed enemies and props.
Balance the player and enemy stats (eg. health, damage, movement, attack speed, and more).
View Curriculum
  • You should be able to write basic C# (loops, conditionals, components, etc)
  • Some familiarity with Unity's APIs is helpful.
  • You should know your way round Unity 5's editor.

This highly acclaimed course was over 200% funded on Kickstarter, and is designed for intermediate users of Unity. We recommend our Unity course as a pre-requisite.

Role Playing Games can be complex to create, with many interacting gameplay systems. We want to make it easy for you, by creating a series of online courses that teach you step-by-step how to make an RPG from scratch.

Because this is such a comprehensive and detailed project, we have divided it into multiple parts. We expect to have 3 parts in the series, each course being 20+ hours of detailed lectures, practical exercises and outstanding community support.

In this first course we're focusing on the core of any great RPG, giving your players a fun combat moment in a well crafted level, based upon a solid game design, built using a robust code architecture. You will follow our project, but also make the game entirely your own.

We will choose a fixed camera-rotation isometric or dimetric projection. This will allow art assets to be optimised for viewing from two sides, and simplify level design. 

You'll need a basic grasp of Unity and C# before you get start, from there we'll be teaching you more advanced programming techniques such as C# delegates, interfaces and more.

Building an RPG is an amazing way to level-up you game development skills, so why not join us and get started right now?

Who is the target audience?
  • This course is for intermediate Unity users who want to create their own RPG.
  • Our Complete Unity Developer course provides the perfect pre-requisite.
Students Who Viewed This Course Also Viewed
Curriculum For This Course
Expand All 60 Lectures Collapse All 60 Lectures 13:36:00
Character Movement
23 Lectures 04:27:40
  • What this course is all about
  • Why you would take this course
  • What you need to get started
  • What games you will build
  • What you will learn.

(Unique Video Reference: 1_CM_RPG)

Preview 02:06

  • Re-watch promo
  • About
  • About resource links
  • Challenge: Find the donkey!

(Unique Video Reference: 2_CM_RPG)

Preview 04:06

  • An overview of the section’s project

(Unique Video Reference: 2b_CM_RPG )

About Character Movement

  • You start designing your game
  • Start creating your 1-Page GDD
  • We discuss your top-down direction
  • We discuss your bottom-up moment
  • Challenge: Create first section of 1-page GDD.

(Unique Video Reference: 3_CM_RPG)

Start Designing Your RPG

  • Quickly setup Unity project
  • World scale considerations
  • Import Ethan
  • Layout a simple arena

(Unique Video Reference: 4_CM_RPG)

Set Up A Combat Sandbox

  • Set up a camera arm
  • Position a fixed camera
  • Tag camera and player
  • Write a small script

(Unique Video Reference: 5_CM_RPG)

Preview 09:31

  • Investigate Unity’s standard cameras pack
  • Positioning the Free Look camera
  • Why we’re choosing a fixed camera

(Unique Video Reference: 6_CM_RPG)

Pan And Tilt Camera Options

  • Prototyping requires pretending
  • Add placeholder blocks and enemies
  • Tighten movement and camera
  • Write down ideas and questions

(Unique Video Reference: 7_CM_RPG)

Prototyping With Placeholders

  • A quick intro to raycasting in Unity
  • What a layer mask is
  • The bit shift operator << in C#
  • How to form a layer mask
  • How a layer mask helps Unity to filter hits.

(Unique Video Reference: 7b_CM_RPG )

Raycasting And Layer Masks

  • Raycasting explained
  • Assign layers for raycasting
  • Import and review CameraRaycaster.cs

(Unique Video Reference: 8_CM_RPG)

Using Raycasts To Query Click

  • How the ThirdPersonCharacter moves
  • Import & review PlayerMovement.cs
  • Resolve any major movement bugs.

(Unique Video Reference: 9_CM_RPG)

Click Mouse To Move

  • As Indie developers we wear many hats
  • What are we building?
  • What is a Work Breakdown Structure

(Unique Video Reference: 10_CM_RPG)

Work Breakdown Structure

This quiz will continue to be updated as we add new content to the course.

Mid Section Quiz
10 questions

  • Using GameObject > Clear Parent
  • Create separate Player and Enemy prefabs
  • Organise folders by game object type

(Unique Video Reference: 11_CM_RPG)

Organizing Project For Teamwork

  • How to rename a C# script in Unity 5
  • Why we need affordances
  • Import cursor artwork
  • Start writing CursorAffordance.cs

(Unique Video Reference: 12_CM_RPG

Using Cursor Affordances

  • Where are we at with our moment?
  • What is next priority?
  • What are the design requirements?

(Unique Video Reference: 13_CM_RPG)

Most Important Combat Feature

  • Simplify & debug current movement code
  • Optional: implement direct movement

(Unique Video Reference: 14_CM_RPG)

Gamepad Movement Mode

  • What is Onion Design
  • Tighten our core

(Unique Video Reference: 15_CM_RPG)

Onion Design

  • What do we mean by "The Player Experience"
  • How do you create your player experience
  • Challenge - define the player experience for your RPG

(Unique Video Reference: 16_CM_RPG )

The Player Experience

  • Review all the current TODO comments
  • Fix bug when changing back to indirect mode
  • Fix the slippery enemy bug!
  • Fix bug with cursor?

(Unique Video Reference: 17_CM_RPG )

TODOs And Bug Fixes

  • What the Observer pattern is
  • How data and execution flows
  • The benefits of the pattern

(Unique Video Reference: 18_CM_RPG )

The Observer Pattern

  • Declare a new delegate subject type
  • Instantiate a new delegate observer set
  • Write a compatible handling function
  • Add the handling function to the set of observers
  • Call the delegate

(Unique Video Reference: 19_CM_RPG )

Using Delegates In C#

  • Why we need to protect our delegate set
  • Using the event keyword in C#
  • Adding a parameter to our delegate functions

(Unique Video Reference: 20_CM_RPG )

The Event Keyword In C#

  • What we covered from a design perspective
  • What we covered from a dev perspective
  • Share your thoughts and work :-)

(Unique Video Reference: XX_CM_RPG)

Section 1 Wrap Up

End Of Section Quiz
7 questions
Core Combat
37 Lectures 09:08:19
  • We’ll cover core combat in this section
  • We will focus on the simplest code solutions
  • You will also learn some play tuning…
  • … and create your first level

(Unique Video Reference: 1_CC_RPG)

Section 2 Introduction

In this video...

  • Attack requirements
  • Attack and movement distances

(Unique Video Reference: 2_CC_RPG)

Attacking The Enemies Design

In This Video…

  • Introducing the Gizmos class in Unity
  • Import code to visualise movement
  • Adding attackStopMoveRadius
  • Prevent retreat when in radius
(Unique Video Reference: 3_CC_RPG)
Using Gizmos To Visualise Code

In This Video…

  • Review structure of health bar pack
  • Export a custom package
  • Import custom package
  • Create Player class and test

(Unique Video Reference: 4_CC_RPG)

Player Health Bar UI

In This Video…

  • Import Enemy Health Bar v.2.unitypackage
  • Explore how the package works
  • Create Enemy.cs and wire-up

(Unique Video Reference: 5_CC_RPG )

Enemy Floating Health Bar

In This Video…

  • Our current ranged attack problem
  • Diablo versus Torchlight 2 paradigms
  • Our design decision

(Unique Video Reference: 6_CC_RPG)

Ranged Attack Problem

In this video...

  • We discuss remaining sections of 1-Page GDD
  • We discuss Design Pillar
  • We discuss Remarkability
  • We'll look at what Darkest Dungeon does for their design pillar and remarkability

(Unique Video Reference: 7_CC_RPG)

Update Your 1 Page GDD

In this video...

  • Your feedback to us
  • We’re starting to juggle priorities - combat needs level, level needs art direction
  • Structure of Art Concept Document

(Unique Video Reference: 8_CC_RPG)

Set Your Art Direction

In this video...

  • Designing your level - start with your level’s intention and requirements
  • How we are creating our village level

(Unique Video Reference: 9_2_RPG)

Sketch Your Prototype Level

In this video...

  • We’ll import a level asset pack
  • Tidy up and prepare our scene

(Unique Video Reference: 10_2_RPG)

Importing Level Assets

Mid Section Quiz
8 questions

In this video...

  • Terrain versus module assets approaches
  • Adding terrain and modifying it
  • Blocking out one moment in your level

(Unique Video Reference: 11_CC_RPG)

Creating Terrain

In this video...

  • Getting rough placement for all of your level moments.
  • Dealing with elevation and camera issues.

(Unique Video Reference: 12_CC_RPG)

Block Out Your Level

In This Video…

  • Asset review and feedback for Mikey
  • Art review - an interesting mistake
  • Altering our level
  • Setup & Standards text file

(Unique Video Reference: 13_2_RPG)

Review And Adjustments

In This Video…

  • Learnings and tips from blocking out level
  • Adding comments and references in your level

(Unique Video Reference: 14_2_RPG)

Commenting Your Level

In This Video…

  • Aside: why you need .psd.meta files
  • Scene folder structure and naming
  • Creating a best practices discussion
  • Everything should be a prefab!

(Unique Video Reference: 15_2_RPG)

Standardising Scene Setup

In This Video…

  • How importing asset packs affects your project
  • Bringing objects to life with script based rotation
  • How to use unit consistency to help you code
  • Why we keep root object scales at 1,1,1.

(Unique Video Reference: 16_2_RPG)

Help Writing Physics Code

In This Video…
  • How to fix disappearing hard shadows
  • Add a navmesh to your terrain(s)
  • Add a Navmesh Agent to our enemy prefab

(Unique Video Reference: 17_2_RPG)

Make Enemies Pathfind To Player

In This Video…

  • The limitations of our current architecture
  • Import new CameraRaycaster.cs
  • Review what’s changed and why
  • Remove our Layer.cs script
  • Preview the editor script

(Unique Video Reference: 18_2_RPG)

Fully Event Based Raycasting

In This Video…

  • Why you would want to extend Unity’s editor
  • Review CameraRaycasterEditor.cs
  • CHALLENGE - check your understanding.

(Unique Video Reference: 19_2_RPG)

Writing Custom Editors

In this video...

  • Control your FOCUS - let’s move on
  • How to modify our player for pathfinding

(Unique Video Reference: 20_2_RPG)

Player Pathfinding To Enemies

Second Mid Section Quiz
10 questions

In this video...

  • Recap our goals for prototyping
  • Where are you at with your goals - what is your score out of 10?

(Unique Video Reference: 21_2_RPG)

Prototyping Goals And Progress

In this video:

  • Import latest art assets
  • Review distance, sizes, pacing in your level
  • Clean up Nav Mesh

(Unique Video Reference: 22_2_RPG )

Refine Your Nav Mesh

In This Video…

  • It’s important to experiment when prototyping

(Unique Video Reference: 23_2_RPG)

Tuning And Exploring

In This Video…

  • Humanoid character import settings
  • How to replace a character’s mesh

(Unique Video Reference: 24_CC_RPG)

Importing Humanoid Animations

In This Video…

  • What an interface is in C#, and why they’re useful
  • Where and when to use them, e.g. IDamageable
  • Building a simple example scene.

(Unique Video Reference: 25_CC_RPG)

Using Interfaces In C#

In This Video…

  • How to find game objects by interface
  • How to call a method via an interface
  • Getting damage working on player and enemy

(Unique Video Reference: 26_CC_RPG)

Calling Methods Via Interfaces

In this video...

  • How to find game objects by interface
  • How to call a method via an interface
  • Getting damage working on player and enemy

(Unique Video Reference: 27_CC_RPG)

Enemy Move And Attack Spheres

In this video...

  • A quick recap of unit vectors, speed and velocity
  • Setup projectile prefab & attach to enemy

(Unique Video Reference: 28_CC_RPG)

Spawning Enemy Projectiles

In this video...

  • How InvokeRepeating() is string referenced
  • StartCoroutine() is type safe, but more complex
  • A very quick overview of co-routines
  • Test enemies damaging player

(Unique Video Reference: 29_CC_RPG)

InvokeRepeating() vs StartCoroutine()

In this video...

  • Make enemies hit player in chest
  • Import dirty old hoe
  • Attach weapon to player’s hand
  • Make player target a single enemy

(Unique Video Reference: 30_CC_RPG)

Player Melee Damage

Third Mid Section Quiz
10 questions

  • Tidy up level, renaming and position weapon
  • Design 3 Archetypes - Archer, Minion, Bruiser

(Unique Video Reference: 31_CC_RPG)

Creating Enemy Archetypes

  • Check our WBS
  • Health and damage continuums

(Unique Video Reference: 32_CC_RPG)

Health And Damage Philosophy

  • Start your Stat Spreadsheet with some starting points
  • Update Player and Enemy stats in level
Start Your Stat Spreadsheet

  • Using the tools we have
  • Creating a healer
Healing Companion Prototype

  • Give story flavour to your level flow
  • Create new enemies types

(Unique Video Reference: 35_CC_RPG)

Level Story Theme And Flow

  • No two moments in your level should be the same
  • Place enemies and healing to make good combat flow
  • Test and tweak your level

(Unique Video Reference: 36_CC_RPG)

Playable Level With Combat

More Content Coming Soon...
About the Instructor
Ben Tristem
4.7 Average rating
38,651 Reviews
206,390 Students
9 Courses
Best-selling Instructor, Game Developer, Online Entrepreneur

Hi, I'm Ben. I have a degree in computing from Imperial College London, and a physics diploma from the Open University.

I started working for myself at the age of 15, and never looked back. I explored careers as varied as being a commercial pilot, stunt-man, rock climbing instructor, and more. None of these provided a continued challenge, and stable income in the same way technology does.

After building and selling a home computer support business, I became an angel investor and business mentor here in Cambridge UK. I fell in love with teaching game development through one of my investments, and I now spend all of my time sharing my passion with people like you.

I can't wait to help you experience the fulfilment, and financial freedom, that having a deep understanding of technology brings.

So why not start learning to make games with me and my team now?

See you soon!


Rick Davidson
4.8 Average rating
280 Reviews
5,988 Students
2 Courses
Game Career Coach with 13+ years in the Video Game Industry

Rick Davidson has been making video games for a living for more than 13 years as a Designer, Producer, Creative Director, and Executive Producer, creating games for console, mobile, PC and Facebook. He founded an Indie game studio, Inspirado Games, which was acquired in 2012 by Electronic Arts / PopCap. He has worked on cool IPs such as Mario, Transformers, Captain America and Mortal Kombat and created successful new IPs from scratch (such as "GardenMind" which was nominated for Canadian Game of the Year in the social / mobile category).

As a qualified Career Coach, Rick has helped thousands of people achieve their dream of making games for a living - both as Indie Game Developers and as valuable game industry employees.