We may earn an affiliate commission when you visit our partners.
James Doyle

Learn how to create and program your very own Roguelike Dungeon Crawling game using Unity, an industry-standard game development program used by large gaming studios and indie developers across the world.

In this course you won’t just be learning programming concepts, but tying these concepts to real game development uses. You will have access to a course forum where you can discuss the topics covered in the course as well as the next steps to take once the course is complete.

Read more

Learn how to create and program your very own Roguelike Dungeon Crawling game using Unity, an industry-standard game development program used by large gaming studios and indie developers across the world.

In this course you won’t just be learning programming concepts, but tying these concepts to real game development uses. You will have access to a course forum where you can discuss the topics covered in the course as well as the next steps to take once the course is complete.

This course has been designed to be easily understandable to everyone, so whether you’re a complete beginner, an artist looking to expand their game development range or a programmer interested in understanding game design, this course will help you gain a greater understanding of development.

At the end of this course you will have developed the ability to create such game elements as:

  • Full top-down character movement with Dashing

  • Generating Procedural Levels

  • Full Weapon Collection & Switching System

  • Enemies with different movement and firing patterns

  • Multiple Characters & Character Switching

  • Shooting System

  • Complete Health System

  • Creating tile-based maps in Unity

  • Shop system

  • In-Game Maps

  • Boss Battles

  • And more. ...

Start learning today and let me help you become a game developer.

Enroll now

What's inside

Learning objectives

  • Learn c#, a modern versatile programming language.
  • Understand the capabilities of 2d development in unity.
  • Develop strong and transferrable problem solving skills.
  • Gain an understanding of the game development process.
  • Learn how object oriented programming works in practice.

Syllabus

Intro to Scripting
Introduction
Setup
The Unity Layout
Read more

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Uses Unity, a leading industry-standard game engine, providing learners with practical skills applicable to professional game development environments
Teaches C#, a versatile and modern programming language widely used in game development and other software applications
Covers procedural level generation, a technique that is commonly used to create varied and replayable game experiences
Includes challenges that encourage learners to apply their knowledge and develop problem-solving skills in a practical context
Focuses on 2D game development, which is a great starting point for beginners before moving on to more complex 3D projects
Requires learners to set up spritesheets, which may require additional software or tools not readily available to all students

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

Build a roguelike game in unity

According to learners, this course offers a hands-on, project-based approach to learning Unity and C# by building a full roguelike game. Many find it a great starting point for beginners in game development, appreciating the step-by-step guidance through core mechanics like movement, combat, procedural level generation, and UI. While praised for providing a solid foundation and covering a wide range of topics, some reviews note that the code structure could be improved and that parts of the course might feel outdated with newer Unity versions, requiring learners to adapt. Overall, it's seen as an effective way to learn by doing, though it may lack depth for advanced users.
Teaches a range of game features.
"The course covers a surprising amount of mechanics: movement, shooting, health, procedural generation, UI."
"I learned how to implement core roguelike features like room generation and item pickups."
"Good overview of different systems needed for a basic game."
Accessible for newcomers to Unity/C#.
"As a complete beginner in game development, I found this course easy to follow and not overwhelming."
"Great starting point if you have zero experience with Unity or C#. Explanations are clear."
"The instructor takes things step-by-step, which is perfect for someone just starting out."
Learn by building a complete game.
"I loved building the actual game project from start to finish. It really helped solidify my understanding."
"Learning by doing through a practical project is the course's strongest point for me."
"The project-based structure made coding concepts much easier to grasp and apply."
Basic overview, not deep dive.
"Provides a good foundation, but doesn't go deep into optimization or complex design patterns."
"If you're an intermediate developer, you might find parts too basic and lacking advanced techniques."
"Wish there was more explanation on the 'why' behind certain architectural choices."
Some code practices need refinement.
"While functional, the code could sometimes be structured more cleanly or follow better practices."
"Found myself refactoring scripts to make them more manageable and less repetitive."
"Some variable naming and organization choices were confusing initially."
Requires adjustments for newer Unity.
"Had to look up documentation for newer Unity versions as some methods used are deprecated."
"The course hasn't been updated for the latest Unity features, which means some tweaking is needed."
"Be prepared to troubleshoot based on your Unity version, as things have changed since publication."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Learn To Create A Roguelike Game In Unity with these activities:
Review C# Fundamentals
Strengthen your C# foundation to better understand the scripting sections of the course.
Browse courses on C# Programming
Show steps
  • Review basic C# syntax and data types.
  • Practice writing simple C# programs.
  • Familiarize yourself with object-oriented programming concepts in C#.
Review 'C# 8.0 and .NET Core 3.0 – Modern Cross-Platform Development'
Deepen your understanding of C# with a comprehensive guide to the language and its applications.
Show steps
  • Read the introductory chapters on C# syntax and .NET Core.
  • Focus on chapters related to object-oriented programming.
  • Refer to the book when encountering unfamiliar C# concepts in the course.
Practice Unity Scripting Challenges
Reinforce your understanding of Unity scripting by completing coding challenges.
Show steps
  • Find online resources with Unity scripting challenges.
  • Attempt challenges related to player movement and object interaction.
  • Review solutions and identify areas for improvement.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Document Your Roguelike Development Journey
Solidify your learning by documenting your progress, challenges, and solutions throughout the course.
Show steps
  • Start a blog or journal to record your development process.
  • Document each milestone, including code snippets and explanations.
  • Reflect on challenges faced and solutions implemented.
Expand the Roguelike Game with New Features
Apply your knowledge by adding new features to the roguelike game, such as new enemy types, items, or level generation algorithms.
Show steps
  • Choose a new feature to implement.
  • Plan the implementation, breaking it down into smaller tasks.
  • Implement the feature, testing thoroughly along the way.
  • Document the new feature and its implementation.
Create a Portfolio Piece
Showcase your skills by creating a polished demo of your roguelike game to include in your portfolio.
Show steps
  • Refine the game's visuals and gameplay.
  • Create a short demo showcasing the game's key features.
  • Record a gameplay video and write a description of the project.
Review 'Game Programming Patterns'
Learn common game programming patterns to improve the structure and maintainability of your code.
Show steps
  • Read chapters related to commonly used patterns in game development.
  • Identify opportunities to apply these patterns to your roguelike game project.
  • Refactor your code to implement the chosen patterns.

Career center

Learners who complete Learn To Create A Roguelike Game In Unity will develop knowledge and skills that may be useful to these careers:
Game Developer
A game developer brings video game ideas to life, designing gameplay, writing code, and creating compelling user experiences. This course focused on creating a roguelike game in Unity provides a practical introduction to the field. You will learn to implement core game mechanics such as character controls, enemy AI, shooting systems, health systems, and level generation. You will also become familiar with industry-standard tools and workflows, which are essential for any aspiring game developer. By building a complete game, you will gain hands-on experience and a portfolio piece to showcase your abilities.
Unity Developer
A Unity developer specializes in using the Unity game engine to create interactive experiences, ranging from video games to simulations and augmented reality applications. This course emphasizes the practical application of Unity. By learning how to build a roguelike game, you will become proficient in using Unity's tools and features, including tilemaps, character controllers, physics, and user interfaces. Moreover, you will develop problem-solving skills that are directly applicable to Unity development projects, making you a valuable asset to any development team. Knowledge of Unity is critical to becoming a successful Unity developer.
Indie Game Developer
An independent game developer works autonomously, handling all aspects of game creation from design and programming to art and marketing. This course provides a comprehensive foundation for indie game development. You will learn to create gameplay mechanics, design levels, implement user interfaces, and even incorporate audio. The emphasis on procedural level generation is particularly valuable, as it allows you to create expansive and replayable game worlds, a key feature for roguelike games and many other indie titles. This makes it easier for an indie game developer to realize a project either individually or in a small team.
Gameplay Programmer
A gameplay programmer focuses on implementing the core mechanics of a video game, such as character movement, combat systems, and artificial intelligence. This course's deep dive into character movement with dashing, weapon collection, enemy AI, and shooting systems is extremely relevant. You will gain hands-on experience in translating game design ideas into functional code using C# and Unity. The course's emphasis on object-oriented programming and problem-solving will also help you develop the skills needed to tackle complex gameplay challenges, such as those faced by a gameplay programmer.
Technical Designer
Technical designers bridge the gap between design and programming, using scripting and visual tools to implement gameplay features and create interactive environments. The course content on level generation, enemy behavior, and weapon systems directly translates to the responsibilities of a technical designer. You will learn to use Unity's tilemap system to create and populate levels, implement enemy AI to create challenging encounters, and design weapon systems that provide players with a variety of tactical options. The skills gained in this course help build a foundation for this career.
Level Designer
Level designers are responsible for crafting engaging and challenging game environments. This course's focus on procedural level generation is incredibly valuable for level design. You will learn to use algorithms to create dynamic and varied levels, ensuring that each playthrough feels fresh and unique. You will also gain experience in designing level layouts, placing enemies, and creating environmental challenges. These skills translate directly to the design world, enabling you to create compelling and replayable experiences for players as a level designer.
Game Designer
A game designer conceptualizes and designs the gameplay, story, and overall experience of a video game. This course allows you to put your ideas into action. You can create gameplay mechanics, design levels, and implement user interfaces. The emphasis on procedural level generation is particularly beneficial, as it enables one to create expansive and replayable game worlds. You learn how to use Unity, which is important to learn. This is a creative and technical role that can benefit from insights from this course.
Tools Programmer
A tools programmer develops software and scripts that help game developers streamline their workflows and create content more efficiently. This course's exploration of procedural level generation provides a solid foundation for tools programming. By understanding how to generate content programmatically, you will be well-equipped to create tools that automate repetitive tasks, such as level creation, asset placement, and animation rigging. You may find the introduction to scripting and the use of C# especially helpful.
Quality Assurance Tester
A quality assurance tester thoroughly examines software and games to identify and document defects, ensuring a high-quality user experience. This course helps build a strong understanding of game mechanics, level design, and player interactions. By completing this course, you gain insight into the development process, allowing you to anticipate potential issues such as bugs, glitches, and design flaws. Understanding the intricacies of game development is crucial for a quality assurance tester.
Software Engineer
Software engineers design, develop, and test software applications. Whilst this is not a course in software engineering, the curriculum helps develop valuable skills in software engineering. The introduction to software engineering concepts such as object oriented programming provides a basic understanding. You will use coding to generate enemies, move characters, develop health systems, and more. The course emphasizes the importance of building a complete game from start to finish. The course may be useful, but may not be suitable for a software engineer.
Software Developer
Software developers create applications. The game design in this course may prove useful. You will develop skills in C#, a popular language. This course is helpful as it shows one how to move characters and develop gaming environments. The course emphasizes the importance of building a complete game from start to finish. The course may be useful, but may not be as suitable for a typical software developer role that is not game development oriented.
Mobile Application Developer
Mobile application developers create applications for mobile devices. The game design principles in this course may prove useful for mobile game development. You will develop skills in C#, a popular language. This course is valuable because it shows one how to design enemies, move characters, and develop gaming environments. The course emphasizes the importance of building a complete game from start to finish. The course may be useful, but may not be as suitable for a typical mobile application developer role that is not game development oriented.
Web Developer
Web developers create websites. The game design in this course may prove useful. You will develop skills in C#, a popular language. This course is helpful as it shows one how to move characters and develop gaming environments. The course emphasizes the importance of building a complete game from start to finish. The course may be useful, but may not be as suitable for a web developer role.
Data Engineer
Data engineers build data pipelines to enable analysis and reporting. The game design in this course may prove useful. You will develop skills in C#, a popular language. This course is helpful as it shows one how to move characters and develop gaming environments. The course emphasizes the importance of building a complete game from start to finish. The course may be useful, but may not be as suitable for a data engineer role.
Data Scientist
Data scientists analyze reports to better develop insights. The game design in this course may prove useful. You will develop skills in C#, a popular language. This course is helpful as it shows one how to move characters and develop gaming environments. The course emphasizes the importance of building a complete game from start to finish. The course may be useful, but may not be as suitable for a data science role.

Featured in The Course Notes

This course is mentioned in our blog, The Course Notes. Read one article that features Learn To Create A Roguelike Game In Unity:

Reading list

We've selected two books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Learn To Create A Roguelike Game In Unity.
Explores common design patterns used in game development. Understanding these patterns can help you write cleaner, more maintainable code. This book is particularly useful for improving the structure and organization of your roguelike game project, making it easier to add new features and fix bugs. It provides a deeper understanding of game architecture.
Provides a comprehensive guide to C# and .NET Core. It covers the fundamentals of C# programming, as well as more advanced topics such as cross-platform development. This book useful reference for understanding the C# concepts used in the course and for expanding your knowledge of C# beyond the scope of game development.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser