Roblox: Game Creation with Lua (Age 9-11)

CAMP OVERVIEW

Language: English

Roblox is one of the most popular sandbox games constructed of Lego-like blocks with more than 65 million active users per month. It is a massively multiplayer online game creation platform for users to design and develop their own games as well as to play games created by other developers.

Instead of using blocks to code our games, we will code our games with Lua! Lua is a lightweight programming language which is designed for multiple applications such as games and web applications. It’s lightweight because it is designed to have very little memory and has a minimalist syntax style. In this course, we’ll learn to create variables, loops and write conditional statements in Lua. Apart from learning to code in Lua, we’ll also learn to use other features such as creating constraints to objects and adding GUIs to our games.

Students are expected to have either taken a blocks-based coding course on Roblox before or have any prior blocks-based programming experience plus experience using Roblox Studio before.

DIFFICULTY

Intermediate

PREREQUISITE

(1) Having taken Roblox Level 1.

OR

(2a) Having played Roblox games before and have a brief idea how to use Roblox Studio. Those without experience with Roblox Studio will find this course tough as we have already covered the basics of using Roblox Studio in Roblox Level 1, and

(2b) Having taken a blocks-based coding course (e.g. AX101).

WHAT TO BRING

A laptop (both Mac and PC are fine). We cannot build Roblox games on iPads.

Operating System Requirements

PC/Windows: Roblox will install on Windows XP; however, for optimal performance, we recommend Vista, Windows 7, Windows 8/8.1, or Windows 10. For Windows 8/8.1 you will need to run Roblox in Desktop Mode, as Metro Mode (the tiled start-screen) is not currently supported.

Mac: Roblox will install on 10.7 (Lion) and higher - and Intel only Macs.

Student’s Roblox account name and password (Roblox is free. Students can sign up with their parents and bring the username/password to class. No email address is required.)

TOPICS COVERED

Session 1: Introduction to Lua

In this lesson, we will review some of the key concepts covered in Roblox Level 1.

We will also go over the basics of how to use Roblox Studio and we’ll introduce some Lua syntax.

Project: Re-designing the Obby Game
Students will create an exciting Obby Game with platforms that will flash on and off, and some will move according the position of the hinges.

Session 2: Gravity in Roblox

In this lesson, we will introduce the concept of gravity. We’ll learn to reduce the gravity of objects in lua.

We’ll also review how to create a scoreboard for our game

Project: Fighting zero gravity
Students will create a game room in which things inside have zero gravity and are floating. In this game, players have to get certain items to gain a point.

Session 3: Variables and Cloning Objects in Roblox

In this lesson, we will re-introduce the concept of cloning. Different from what we’ve covered in Roblox 1, we’ll not clone small objects or obstacles. Instead, we’ll look at how to re-create the popular Roblox game, “Flood Escape”, using cloning.

We’ll also review the concept of variables and we’ll review how to create a countdown timer with Lua language.

Project: Bubbles Attack (name to be confirmed)

We’ll create a game similar to Flood Escape. Instead of having corrosive liquid, we’ll use large spheres (e.g. bubbles). We’ll also learn to build our own towers/platforms.

When the game starts, there’ll be bubbles growing from the ground. Players have to avoid them by jumping on different platforms/towers, or crossing bridges and going through the correct doors to go higher and higher. If the players are not fast enough, they’ll be engulfed by the bubbles.

Session 4 : Introduction to GUIs

We’ll introduce what GUIs are and we’ll talk about some examples of using GUIs in games.

We’ll also look into interactive surface GUIs.

Project: Maze Game

Students will create GUI buttons and we’ll use a maze from the toolbox. In this game, players have to move an object out of the maze using GUI buttons and give it to the player. There’ll be a timer showing how much time the player has taken.

Session 5 : Conditionals in Lua

We’ll review the concept of conditionals. We’ll learn how to write conditional statements in Lua. Then, we’ll apply it in our project.

Project: Switching Tracks (name to be confirmed)

Students will design a two (or multiple) tracks game.

There’ll be pedestrians crossing the tracks. In this game, players have to switch the trains while the pedestrians are crossing that track. If the pedestrians get hit by the trains, the game will end.

Session 6 : Randomness

We’ll review the concept of randomness and we’ll learn how to write conditional statements in Lua.

We’ll also explore a feature that we’ve not used earlier and we’ll apply this in our project.

Session 9: Project Time 1 (Design the game scene)

In this lesson, we’ll do a thorough review of the concepts we have covered in this course.

Then, we’ll move on to planning how we want our game to be and designing the game scene.

Session 10: Project Time 2 (Code & Debug)

In this lesson, we’ll code our game so as to bring our game to life.

We’ll also debug our game if needed.

Finally, we’ll prepare a short presentation about our final project and demonstrate it in class.

CAMP HIGHLIGHTS

8:1 Ratio Guarantee

We believe in developing a personal relationship with the student. Our instructors are as much teachers as we are facilitators, and coach for our students' learning. By ensuring a small class, each student benefits from maximum attention from instructor and teaching assistant, and at the same time, learns from peers.

Personalized Learning

Our courses are designed for students to run at their own pace. Our curriculum is level-based for each module, meaning that each student can learn at their own appropriate, customized pace.

Hands-on Project-based Learning

First Code classrooms are messy, chaotic and we love it! We believe in hands-on creation, experimental learning and lots of discussion.

Follow on Curriculum for Immersed Learning

What happens after this holiday? Like learning any other language, learning to code is best done through an immersive, continual commitment. We offer a multi-year curriculum that allows students to deepen and broaden their interests in computer science and software development.

REGISTRATION

View Schedule for Location

There is no more camp or workshop available in this holiday season, check out Core Programs or other Holiday Camps for continuous learning.

PROGRAM STRUCTURE

3-5 days each week for 1 week, Monday to Friday

SHARE YOUR LOVE OF CODING

Introduce a friend to First Code Academy and they’ll get $55 SGD towards their first enrollment. You’ll get $55 SGD in credit once they enroll. Only for first time First Code Academy parents!