Create an RPG Game in Unity (Udemy.com)
Advanced game design
Created by: Pete Jepson
Last updated July 2025
What you will learn
- Create an RPG fantasy game in Unity
- Upgrade your knowledge of C# coding to an intermediate level
- Create a dynamic menu system for storing pickup items
- Create a potion mixing system for creating magic attacks
- Setting up enemy AI pathfinding navigation
How it compares
Against the other 183 rated Udemy courses in Unity on CourseDuck:
- Rating4.0 out of 5higher than 6% of them
- Reviews567#70 of 184 by number of reviews
- Length41.1 hourslonger than 95% of them
- Last updatedJuly 2025more recently than 86% of them
Course Description
Do you want to create a great RPG fantasy game in Unity?
In this course I am going to take you through the process step by step:
Setting up the terrain and level layout
creating menus and inventory systems
setting up an onscreen mini map
creating a shop system to buy ingredients for potions or weapons and armour
setting up a dynamic inventory menu where you can mix potions to create unique magic attacks
spawning in enemies and boss characters with combat systems and navigation pathfinding
setting up player magic attacks and melee combat
saving and loading player progress
This is a huge course covering more than 40 hours and is intended for learners who have a basic familiarity with Unity and C# coding
By the end of this course you will learn key concepts in advanced game design and upgrade your knowledge of C# coding to an intermediate level
You will also have a completed RPG fantasy game which you can include in your portfolio, share with friends or even sell online
I have over 9 years experience of teaching Unity and like all my courses I make learning game design fun and easy, this is why my courses are highly recommended by my learners in the reviews.
So, why not enrol today and I look forward to seeing you in my course.
Instructor Details
- 4.0 Rating
567 Reviews
Pete Jepson
I am a qualified teacher and I have been teaching game design for over 12 years. I have been using Unity since 2013 and I have produced a series of courses showing people how to create games and animations using this game engine.
With over 64,000 students from over 157 Countries around the world, my courses are helping people learn and create at the same time.
I am completely dedicated to helping you on your learning journey. If you have any questions or require any help I am always available and will respond quickly.
More courses by Pete Jepson
More Unity courses
Learn to make an Awesome Builder-Defender game in Unity! (2021)
4.9 (1,909 Reviews)
Provider: Udemy
Time: 10.1h
$79.99
RPG Core Combat Creator: Learn Intermediate Unity C# Coding (2025)
4.8 (11,337 Reviews)
Provider: Udemy
Time: 27.6h
$149.99
Learn To Code By Making a 2D Platformer in Unity (2017)
4.8 (2,597 Reviews)
Provider: Udemy
Time: 13.1h
$13.99
Learn Blender 3D Modeling for Unity Video Game Development (2026)
4.8 (2,152 Reviews)
Provider: Udemy
Time: 11.7h
$149.99
Learn To Create A Roguelike Game In Unity (2020)
4.8 (1,234 Reviews)
Provider: Udemy
Time: 19.4h
$16.99
Reviews
By Sharon McIntyre on 8/16/2025
I learned a lot about animating characters which will help me create my own animation. Class was great. But have a couple of things. 1) The if statements where you put == (true or false). In all my education, if it is a bool that you are checking you don't need the "== (true or false). If it is false you want you just put a "!" in front and leave it alone it you want true. 2) Duplicating code: I was taught, that if you have common statements for example the screens in inventory being turned on and off, to use a function. You wrote all other the screens turning off and the one on in each one. My teaching tells me to create a function and place all the screens setting to false and have that function called first in all the screen function and then turn on the one you want after it. This saves on duplicating code. Why don't you use switch statements?
By Mirco Martin on 9/16/2023
I hate to write reviews, but unfortunately I have to write something here: First the positive things - one or the other principle (e.g. the inventory, crafting, shops, etc.) became clearer. But what I didn't like was the hardcoding of the items, which makes the whole thing very inflexible and only inflates the scripts. A more generic approach would have been better here. Many of the arrays used could also be replaced by dictionaries in combination with custom classes, makes the whole thing a bit less error-prone if you rely on the indices matching. Especially if you have no idea how to set up an inventory system it is rather unfavourable to be shown such a hardcoded inventory. In many object-oriented programming languages it is also best practice to set properties of a class to "private". If you need to use the value in the Inspector, you can do this with [SerializeField]. If you need access to the properties, getter and setter methods can help and restrict access to the property. It is also advisable to use tools for static code analysis (e.g. SpotBugs or SonarLint). All the "if" nesting would have been noticed there immediately and would have been given a "Cognitive Complexity of methods should not be too high". What I also see with horror are constructs like: "if (myBoolean ==true) {}" Syntactically completely correct but bad style and is immediately criticised by every static code analysis in every language as a redundant declaration. Better is "if (myBoolean){} or "if (!myBoolean){}". I also miss a dialogue or quest system which is an essential part of an RPG. And no, I don't really see the text message box in the shops as a dialogue system.
By Anonymized User on 6/17/2023
I dropped this course and the reason is that it's unnecessarily long. The instructor is not bad, but he wastes too much time on details that don't contribute to learning at all, it's just a matter of how he perceives to be useful. My recommendation is to avoid it, also because the order of the course is wrong. You start with several hours of level design which you cannot play and it turns out to be super boring. Again it's not a bad instructor, he should cut the amount of trivial content and this will be a really nice 5 hour course. Until that happens, I would suggest to spend 40 hours of your time in a much more efficient and smart way.
By Tomaz Znidarko on 6/4/2023
The course itself is very well made. The author has taken a lot into account what a RPG game need. For myself I can say that I have learned a lot and now I'm more confident to take this lesson as a basis for developing it further. The author has clear language and calm voice so even the not natives in English can follow this course with ease. If you stuck with some lectures, you can send a question in Q&A section and the author will respond mostly within 24-48 hours. But I recommend that you go first through all the questions and answers first, not to repeat the same question all over again. All together I highly recommend this course to anybody who is trying to learn Unity and like RPG games (from third perspective above). You won't regret it. If you're stuck, just ask the author. Thumbs up!
By Tasha Bingman on 2/28/2023
This was by far one of the most comprehensive RPG development courses available. This class covered complete game dev from concept through design through coding to exporting a playable build. I was able to complete the build of my entire action RPG using this class as a guideline. The curriculum was well thought out, the instruction was clear, and due to the attention to detail, this class provided unexpected insight into things to consider when developing an RPG. I would highly recommend this class to anyone interested in building an RPG and will be recommending it on my YouTube channel. I hope you continue to build and teach more classes. You are truly a fantastic instructor and essential to the game dev community.
By Daniel Parent on 2/9/2023
First, i would like to say for those who are new and want to get into RPG style game; this courses is really good, complet and covers a lot of Unity's system, fonctions methodes etc. If you're a total beginner, you might feels some blank as '' how did he plan this, how can i do this in a time scale, etc. '' and this is due as this courses is an intermediate level course. if you ever do a more basic course afterward you can also complement this course and fill the blank. it helps consolide what you've, and, will learn. I'm currently around step 120 and im satisfied with the courses. i'm even impress by the lvl of tools given in this courses. It dives you in the reality of how complex a game can be and all of the things, as simple as an inventory, can be challenging but so important to sort out. it is also Simple (in general !) with step by step build to understand the courses. Also, if you take this course and think '' that's not what i expected as a level progression, or i wouldv made another choices of characters/skills/musics etc'' just note that as a game dev you can put this at your style and taste. Look this course more as a model you can work on, a good base, and change it at your will.
By Jakub Chmielewski on 1/20/2023
In my opinion this course has wrong order. We should start form doing systems (movement, inventory, magic, fight, etc.) and prefabs in designated place, something like "Dev room" where all the prefabs and systems could be tested in peace or updated if needed. Second of all, the course description states "Upgrade your knowledge of C# coding to an intermediate level" and after finishing this course I feel like my coding level went down. And I realise that this was made for people who don't know much about coding in which makes it more important to show correct coding habits and practises and this course doesn't deliver. Counting few, the code is chaotic. I never saw anyone else creating so much static field in classes and writing so much in Update. Futhermore I find writing sectioned toggling menu with 5 functions unnessesary and potentialy error inducing in futher coding. In my opinion it would be more pratcital to use one function with right parameter. Inventory script that handles much more than inventory is confusing, someone on "intermediate level" should create new script for new logics and 30 "ifs" for "Hint message script" is excessive. Over all, I belive that the idea itself has great potential and deserves remodeling this course with more planing ahead.
By Salah Alhaddabi on 1/17/2023
As expected, this course has been an amazing experience as it was really different than all other courses on Udemy about unity. This was the real deal as you feel that you are going through a real-life building experience as an engineer. Not to belittle other trainers but seriously Pete did a terrific job on providing Unity users with the best online training ever. I think after taking this course as well as others from the same instructor, you can work with many game studios or be your indie game builder. Beside all of this wonderful stuff, Pete is extremely, extremely helpful. You feel as he is sitting next to you watching over your shoulders and stretching his hands to help you with anything I mean anything that you might face during the training (near or far). Most of the time, he would do the building on the spot without much preparation so you would feel such as that you are in a day-to-day job solving real issues without hidden preparations. Needless to say, I think Pete's courses are like hidden gems that you need to explore in order to be able to build your own games.
By Richard Crossley on 5/25/2022
It's a bit early to tell, but I like the pace and the instructor is easy to understand (that's a big problem in many courses and videos.) So, happy thus far. At the halfway point I am still happy, but I do wish the instructor would use more unique and specific variable names. It would be a great help to students (to me at least) to not use 'theCanvas' in several scripts, as it makes putting things together in your mind harder. I tried using my own variable names but have given that up because it becomes a problem in following the course material. I know it's a pain for experienced coders who just quickly want to move along, but when you're teaching you need to always remember your students. But, that said, the instructor does a good job and I have already enrolled in 2 other course he teaches.
By Kenneth Collins on 5/14/2022
Awesome Tutor, I have gone through several of this tutors courses and all are exceptional, instructions are clear and precise easy to listen to. the content is properly the best I've come across, its very clear their is so much preparation gone into producing these lessons, I myself am a slower learner as I've taken up learning game development a bit later in life but its something I've always wanted to learn thanks to Udemy I am able to learn at home from a professional instructor and I was lucky enough to find this tutor who in my opinion easily has the edge on many teaching. I know its not something that can be learned over night but with this tutor you will get a wide range of learning skills, and if you happen to miss anything simply slide back the video clip and re-watch I do this as I'm learning. Trust me you wont be disappointed in any of this tutors courses............. Im now halfway through the course and still going well instructor has every aspect so far covered in full detail, there has bee a lot of time and energy put in to making these lessons which is very evident once you take this project on. easy a five star rating. I Have now completed the course well worth doing have enjoyed it very much, learnt a lot but I still have a long way to go so will possibly do entire course again at a later date to embed some points.
Quality Score
No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.
Overall Score : 80 / 100











