We may earn an affiliate commission when you visit our partners.
Course image
SimTek Game Development

In this class you will learn how to create a Roblox game and become proficient with Roblox Studio, the game development suite used to create Roblox games.  You will also develop your ability to code in the LUA programming language.  LUA is a popular language in the game development community and is also used in fields such as image processing and web development.  This course has a section for beginners on basic programming skills such as declaring and using variables, assignment statements, conditionals, loops, tables, and functions.  After the basics are covered, the course gets into more challenging topics such as touched events, powerups, traps, spawning objects and NPC monsters, as well as the leaderboard to keep track score and points.  Additionally, the user interface is covered while creating an in-game store for your players to buy the weapons they need.  This course will be updated periodically and currently the videos are being recreated at a rate of once per week to ensure the expanded functionality of Roblox is fully captured.  Additionally, new content is on its way to cover basic Non-Playing Character AI, a section on creating your own weapons, creating animations, and using the data store to allow players to save their data in between games.

Enroll now

What's inside

Syllabus

Getting Started

In this video, I show you how to get a Roblox account, install Roblox Studio, create a simple game with one part, test your game, and save it to Roblox. 

Roblox Studio: (for building Roblox games)

https://www.roblox.com


For movement: 

W front, A left, D right, S back (both playing and building).  Look around by holding down the right mouse button. 


For your windows: 

View tab -> Explorer (stuff in your game)

View tab -> Properties (if you click on something in the explorer window it shows its properties)


Read more

Change a part's properties such as size, position, color, material, and orientation (rotation).  Also add a spawn location to control where you join the game.

Properties:

Position - x, y z coordinates of where the part in located in the world

Size - x, y, z values of the part's size

Rotation - x, y, z for angular orientation of you part

BrickColor -  named color of the part in named values

Color - matches brickcolor but gives you RGB

CanCollide - things can bump into the part during game play

Anchored - the part is fixed to a position

Transparency - a scale from 0 - 1 that controls the transparency or opacity of you part.

Create your first script and print statements to the output window.  Also, this video shows you how to create a comment and make your "Output" window visible.

This video introduces variables, assignments, and three data types: number, string and Boolean.

In this video we use a script to access and change a game object's transparency and color.

This video introduces the Vector3 data type and how it is used to change a part's position and size. URL to Roblox datatype documentation: https://create.roblox.com/docs/reference/engine/datatypes

In this video I create a script and attach it to a part.  With the script, I change the part's properties so that it looks like a patio.

In this video I introduce the if statement.  If a condition is true, execute the code.  I also demonstrate elseif, else, and the logical operators "and" and "or" 

In this video, I show you how to create a function, call the function, and pass in variables.

Connect the "Touched" event from a part to a function so that it is called when you touch the part.

Learn about the Humanoid in a character and how to access and change it's Health and MaxHealth within a script.  Use the Touched event in a pickup to call a function to replenish your player's health.

Create a coin that rotates in the air using a while do loop, when you touch it, you get increased speed and jumping abilities.

In this lesson we will break the while loop condition to stop the coin from Rotating.  I will use the coin in the last video.  If you need a copy of the coin, get it here: https://www.roblox.com/library/10832103835/Coin

Today I'm going to introduce a progamming construct called a table

When we want to store a bunch or things in one variable, we use a table 

Tables hold a collection of things (numbers, parts, etc)

Building a Boulder Trap

Add the parts for the boulder trap.  No scripting in this one.

Add functionality to the boulder trap setting the touched event to set the boulder rolling.

Reset the boulder trap after it's been triggered.  This lesson includes spawning new parts, the debris service, capturing the destroying event.

Sound - get a sound

https://www.roblox.com/library/10972741222/Boulder-Sound

Log into Roblox and create a badge for your game!

Award the Boulder Trap Trigger badge to players that triggered the Boulder Trap

Decals for the Biohazard Barrel

https://www.roblox.com/library/11179429544/Images-Biohazard-90-Left

https://www.roblox.com/library/11179419559/Images-Biohazard-90-Right

Make your landmine explode when someone steps on it. 

Create a teleporter to relocate your character within the scene (modeling the system)

Final stage of the teleportation system, where you escape to a third location

Introduction to the terrain editor and use it to prepare our terrain for a lava eruption.

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Teaches LUA, a language used not only in game development but also in image processing and web development, broadening its applicability
Covers touched events, power-ups, traps, and NPC spawning, which are essential elements in creating engaging and interactive games
Explores user interface design through the creation of an in-game store, providing practical experience in enhancing player experience
Includes a section on creating weapons and animations, which are key components for action and adventure games
Uses Roblox Studio, which is the standard game development suite for Roblox, making the skills directly transferable to real-world projects
Requires learners to create a Roblox account and install Roblox Studio, which may pose a barrier to entry for some learners

Save this course

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

Reviews summary

Roblox game creation and lua basics

According to learners who have taken this course, it provides a solid foundation in Roblox Studio and Lua programming, making it great for beginners interested in game development. Students frequently mention the hands-on projects and practical examples as being particularly helpful in applying concepts learned. While the course covers a range of topics from basics to more advanced features like data stores and UI, some learners note that certain sections, especially regarding Roblox updates and bugs, can feel outdated or require external troubleshooting. The instruction is generally seen as clear, though a few reviewers suggest a need for more in-depth explanations on specific complex topics.
Good breadth, could use more depth.
"The course covers a wide range of topics, giving a good overview of Roblox development."
"While many topics are covered, some felt a little rushed or could benefit from deeper dives."
"I got a good understanding of the basics and several game mechanics, but some areas like UI and Data Stores felt a bit introductory."
"Provides a solid starting point but you'll likely need other resources for advanced concepts."
Clear explanations, easy to follow.
"The instructor explains things clearly and at a good pace."
"Videos are easy to follow, and the code examples are well-presented."
"I appreciated the step-by-step approach taken in the lessons."
"The teaching style made complex topics approachable for me."
Practical application is a key strength.
"The practical examples and projects helped me really understand how to build things."
"I loved building the boulder trap and zombie spawner; the hands-on parts are the best."
"Working on the teleporter and landmines made the concepts stick much better."
"Applying the code to actual game objects was very useful."
Excellent starting point for new developers.
"This course is perfect for someone just starting out with Roblox Studio and Lua."
"I had no programming experience, and this course made it easy to understand the basics."
"It gives a really good introduction to the tools and language you need."
"Great course if you are a beginner programmer with zero experience in Lua or Roblox Studio."
Some sections may need updates.
"Some parts of the course are a bit outdated due to Roblox updates, which caused some errors."
"I had to look up solutions for bugs that occurred because the platform changed since the video was made."
"It would be helpful if the videos were refreshed more frequently to match the latest Studio version."
"Encountered issues with certain functions or UI elements that have changed slightly."

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 Roblox Programming and Game Creation with these activities:
Review Lua Basics
Reinforce your understanding of Lua programming fundamentals before diving into Roblox scripting. A solid grasp of Lua syntax, variables, functions, and control structures is essential for success in this course.
Browse courses on Lua Programming
Show steps
  • Read a Lua tutorial or guide.
  • Write simple Lua scripts to practice basic concepts.
  • Review examples of Lua code.
Read: Roblox Game Development
Expand your knowledge of Roblox game development with a dedicated guide. This book covers a wide range of topics, from scripting to game design.
Show steps
  • Read the chapters relevant to your interests.
  • Try the examples in Roblox Studio.
Review: Programming in Lua
Deepen your understanding of Lua programming with a comprehensive guide. This book provides a solid foundation in Lua, which is essential for advanced Roblox scripting.
Show steps
  • Read the chapters relevant to the course topics.
  • Try the examples in Roblox Studio.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Create a Simple Roblox Game
Apply your knowledge by building a small, self-contained Roblox game. This hands-on project will solidify your understanding of Roblox Studio and Lua scripting.
Show steps
  • Design a simple game concept.
  • Build the game environment in Roblox Studio.
  • Script the game logic using Lua.
  • Test and refine your game.
Build a Reusable Roblox Model
Create a reusable model, such as a weapon or a building, to practice your Roblox Studio skills. This will help you understand how to create modular game assets.
Show steps
  • Design a model with specific functionality.
  • Build the model in Roblox Studio.
  • Script the model's behavior.
  • Test the model in a game environment.
Document Your Roblox Game Creation Process
Improve your understanding and retention by documenting your game creation process. Explaining your code and design choices will reinforce your learning.
Show steps
  • Record your screen while building and scripting.
  • Annotate your code with comments.
  • Write a blog post or create a video tutorial.
Contribute to a Roblox Open-Source Project
Enhance your skills by contributing to an existing Roblox open-source project. This will expose you to different coding styles and project management practices.
Show steps
  • Find an open-source Roblox project on GitHub.
  • Review the project's code and documentation.
  • Identify a bug or feature to work on.
  • Submit a pull request with your changes.

Career center

Learners who complete Roblox Programming and Game Creation will develop knowledge and skills that may be useful to these careers:
ROBLOX Developer
A Roblox developer specializes in creating games and experiences within the Roblox platform. This course directly prepares you for this role by teaching you how to use Roblox Studio and the Lua programming language, the primary tools for Roblox development. The course delves into topics like creating interactive elements, designing user interfaces, and implementing game mechanics specific to the Roblox environment. Furthermore, the course covers advanced topics, such as creating animations, and saving data between games. By the end of the course, you'll have the skills and knowledge to develop your own Roblox games from scratch. One who wants to become a Roblox developer should consider taking this course.
Game Developer
A game developer designs and creates video games for various platforms. This course helps build a foundation in the fundamentals of game development using Roblox Studio and the Lua programming language, which are valuable assets for any aspiring game developer. The course covers essential concepts such as scripting, object manipulation, event handling, and user interface design, all of which directly translate to the broader field of game development. The section on creating your own weapons, creating animations, and using the data store to allow players to save their data in between games may be useful. One who wishes to become a successful game developer should consider taking this course.
Game Designer
A game designer conceptualizes and designs the gameplay, rules, and overall experience of a video game. This course helps you understand the practical aspects of game design by guiding you through the process of creating your own Roblox game. You'll learn how to implement game mechanics, design levels, and create engaging user experiences. The course covers essential game design principles such as player progression, reward systems, and user interface design. In particular, the sections on creating an in game store for your players to buy the weapons they need, and creating animations may be useful to you as a designer. One who wants to become a successful game designer should consider taking this course.
Lua Programmer
A Lua programmer develops software using the Lua scripting language. This course provides a great introduction to Lua programming, teaching you the basics of syntax, data structures, and control flow. While the course focuses on game development within Roblox, the Lua skills you learn are transferable to other domains where Lua is used, such as embedded systems, web development, and image processing. You may find that the course equips you with a solid foundation in Lua. One who wants to become a Lua programmer should consider taking this course.
Interactive Developer
An interactive developer creates engaging and interactive experiences for websites, games, or other applications. This course helps you develop the skills needed to create interactive elements within a virtual environment using Roblox Studio and Lua. You'll learn how to handle user input, trigger events, and create dynamic behaviors that respond to user actions. The course covers essential concepts such as event handling, user interface design, and game mechanics. One who wants to become an interactive developer should consider taking this course.
Content Creator
A content creator produces various forms of digital content, such as videos, tutorials, and articles, for online audiences. This course helps you develop the skills to create engaging content related to Roblox game development. You can use your knowledge of Roblox Studio and Lua to create tutorials, showcases, and behind the scenes videos for your audience. The course provides you with a solid foundation in Roblox game development, which enables you to share your expertise with others. One who wants to become a content creator should consider taking this course.
Simulation Developer
A simulation developer creates virtual environments and models for training, research, or entertainment purposes. This course may be useful by providing you with experience in building interactive virtual worlds using Roblox Studio. You'll learn how to create realistic environments, simulate physical phenomena, and program interactive behaviors using Lua. The skills you gain in this course, such as object manipulation, event handling, and user interface design, are applicable to the development of various types of simulations. The section on terrain editing might be useful to you. One who wants to become a simulation developer should consider taking this course.
Educational Game Developer
An educational game developer creates games that are designed to teach specific skills or concepts. This course may be useful by providing you with the tools and knowledge to create engaging and interactive learning experiences within Roblox. The course covers essential game development concepts such as game mechanics, user interface design, and event handling, which can be applied to the creation of educational games. The Lua programming language is also covered. One who wants to become an educational game developer should consider taking this course.
Software Developer
A software developer designs, develops, and tests software applications. This course helps build a foundation in programming concepts using the Lua language. The course covers essential programming skills such as variables, data types, control flow, functions, and object oriented programming. While the course focuses on game development, the programming skills you learn are transferable to other software development domains. The section on using tables for data management may be useful, as well as understanding the basics of coding from declaring and using variables, assignment statements, conditionals, and loops. One who wants to become a software developer should consider taking this course.
Virtual Reality Developer
A virtual reality developer creates immersive experiences for virtual reality platforms. This course may be useful by providing you with experience in building 3D environments and interactive elements using Roblox Studio. While Roblox is not primarily a virtual reality platform, the skills you learn in this course, such as object manipulation, event handling, and user interface design, are transferable to virtual reality development. One who wants to become a virtual reality developer should consider taking this course.
Mobile Game Developer
A mobile game developer creates games specifically for mobile devices such as smartphones and tablets. This course may be useful by introducing you to the fundamentals of game development using Roblox Studio and Lua. While Roblox is not exclusively a mobile game platform, the skills you learn in this course, such as game mechanics implementation, user interface design, and event handling, are applicable to mobile game development. One who wants to become a mobile game developer should consider taking this course.
Technical Artist
A technical artist bridges the gap between artists and programmers, ensuring that art assets are optimized for use in games and other interactive applications. This course may be useful by providing you with a basic understanding of game development workflows and scripting using Lua. You'll learn how to manipulate game objects, handle events, and create visual effects using Roblox Studio. This knowledge can help you collaborate more effectively with programmers and artists on game development projects. One who wants to become a technical artist should consider taking this course.
Web Developer
A web developer builds and maintains websites and web applications. This course may be useful by introducing you to the Lua programming language, which can be used in web development contexts, particularly in conjunction with web servers. While the course focuses on game development within Roblox, the Lua skills you learn can be applied to web development projects. You may find that some of the basic programming skills may be useful. One who wants to become a web developer may find this course somewhat helpful.
Data Scientist
A data scientist analyzes large datasets to extract meaningful insights and trends. This course may be useful by introducing you to basic programming concepts and data structures using Lua. While the course focuses on game development, the programming skills you learn can be applied to data analysis tasks. You may find that the section on using tables is useful. One who wants to become a data scientist may find this course somewhat helpful.
Project Manager
A project manager oversees and coordinates projects, ensuring they are completed on time and within budget. This course may be useful by providing you with a basic understanding of the game development process. You'll gain insight into the different stages of game development, from design and programming to testing and deployment. In particular, the section on creating an in game store for your players to buy the weapons they need, and creating animations may be useful to you as a designer. One who wants to become a project manager may find this course somewhat helpful.

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 Roblox Programming and Game Creation.
Provides a comprehensive guide to Roblox game development, covering topics such as scripting, building, and game design. It useful reference for both beginners and experienced developers. This book is commonly used as a textbook at academic institutions and by industry professionals. It adds more depth to the existing course.
Is the definitive guide to the Lua programming language. It covers all aspects of Lua, from basic syntax to advanced topics such as coroutines and metatables. While not specific to Roblox, it provides a deep understanding of the underlying language used in Roblox scripting. This book is more valuable as additional reading to deepen understanding.

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