Game Design and Coding Workshop
Game Design and Coding Workshop
Get students creating and coding using this lesson plan for ages 10 and up. Designed as a foundation course for introducing students to Roblox Studio and the power of code, this outline includes a lesson plan and step-by-step tutorials to prepare you for running your first Roblox workshop.
|Target Age Group||10-12|
|Estimated Running time||1.5 hours to 1.75 hours|
|Notes||Recommend that students set up their accounts before attending the workshop for time sake. Students should also be equipped with a 3 button mouse.|
|Sample Workshop Description||
With over 60 millions players a month, Roblox is the world's largest social technology platform. But did you know that Roblox games are one hundred percent created by the players? Learn to create and code your own games using the free tools made available by Roblox. This is a perfect course for first time game developers.
Installing Roblox Studio
ISTE Standards for Students »
Students use a variety of technologies within a design process to identify and solve problems by creating new, useful or imaginative solutions
- 4a Students know and use a deliberate design process for generating ideas, testing theories, creating innovative artifacts or solving authentic problems
- 4c Students develop, test and refine prototypes as part of a cyclical design process.
- 4d Students exhibit a tolerance for ambiguity, perseverance and the capacity to work with open-ended problems
Students communicate clearly and express themselves creatively for a variety of purposes using the platforms, tools, styles, formats and digital media appropriate to their goals.
- 6b Students create original works or responsibly repurpose or remix digital resources into new creations.
- 6d Students publish or present content that customizes the message and medium for their intended audiences.
Objectives and Outcomes
Students will practice working in 3D space to create an obby style game using basic parts while keeping in mind the end user. As they create their game, they will be asked to playtest and find ways in which it can be improved. Students will then be introduced to the text-based scripting language Lua in an action and task based manner allowing them to see immediate results.
Coding concepts start with the traditional twist on Hello World. Students will then explore variables, properties, and while loops while using coding best practices. Students will come away with a part which continuously loops through the colors of their choice that can be used within their game.
Professional Behaviors and Skills Practiced
Design skills: Design thinking, critical thinking, iteration, working in 3D space, designing with basic shapes, creating for an end-user
Coding skills: Variables, Strings,Commenting, Dot Notation, Properties, Loops
Using the Materials in the Classroom
For each lesson there is a series of step-by-step tutorials. The tutorials are meant to provide educators with little to no experience with coding or game design a starting point for how to present the materials to students. They can be given to students to follow at their own pace, but with younger students it’s best to direct them through the material using the tutorials as a script. The hope is that as a teacher becomes more confident, they will toss out the script and teach the material in a way that suits them best.
Review the materials
- Read through the tutorials and follow the steps within it.
- Look for areas that might trip up students, and take notes about how you can provide clarification.
- Think about how to present the materials in a way that feels natural to you. This might be by projecting the tutorial overhead, or by speaking your way through it.
Adapt the materials for your classroom
- Every teacher and classroom environment is different!
- You can use the provided handouts, create your own, or use an alternate activity
Plan out how to use your classroom time
- Determine how much time you have available to run the lesson.
- Look for areas you might elaborate or cut depending on how things go in class
- Remember that no two groups of students will run through the material at exactly the same pace. If possible, consider your students’ prior knowledge. Are they comfortable with computers? If they are younger, will you have to take time to explain concepts like double-click?
- Prepare a extra material or challenges for students who move at a faster pace than anticipated.
One Hour Game Design Workshop Variation
One example of adapting the materials for use in your classroom is using only the subjects taught in Designing an Obby to create a one hour workshop. Instead of coding, have the students spend 15 minutes creating diagrams of what their games will look like. Spend more time on iteration and design thinking by incorporating peer-testing and time to address feedback.
Teaching Computer Skills to Young Students
Students will have a wide range in their comfort levels when it comes to using computers. Be patient in explaining basic computer concepts such as right-click or double-click. Students who become more confident using a mouse and working in 3D space can transfer those skills to a wide variety of STEM applications and are better prepared for the workforce.
In text based coding lessons, the most common troubleshooting issue you will run into with young students is improper capitalization and typos. This is totally normal and even professional programmers have errors in their code. Treat troubleshooting as an opportunity to learn just as much as every other concept of coding. Ask students leading questions rather than solving the issue for them as much as possible.
Overall, be flexible. Don’t get too caught up in having to cover a certain amount of material. Celebrate your students accomplishments and remember that everything they achieve is a win.
Additional tips for teaching
- Use studio to demonstrate the concept for students whenever possible
- Use printed handouts or portions of the tutorials for students to reference
- Demonstrate one concept at a time, and have students act on that concept immediately.
- When possible, encourage students to not do exactly what you did and instead tweak the code in some small way.
- Keep emphasizing that they are creating a game that others can play, not just for themselves.
- Lay ground rules about how the students can ask for help. Effective strategies include asking peers before the instructor, pairing students, or using question flags.
- Set the tone of your class by stating how much time students have to accomplish a task, such as two minutes to test a game, and stick to those time allocations.
- Ask students if they know what Roblox is and if they have ever played before
- Ask if anyone has ever played an Obby or a platforming game before. If they have, have the student describe it to the rest of the class.
- Have students play the template obby and ask what would make it more interesting
Let students know that today is their first day as a game developer. They’ll be creating their own obby, and then using code to create new parts for their game.
Demonstration & Practice
Intro to Game Design - 30 minutes
Have students create an obby while learning how to do the following in Studio:
- Opening Roblox Studio
- Customizing the workspace
- Saving files
- Creating a place for the player to spawn
- In-game camera controls
- Creating and manipulating parts
- Changing the appearance of parts
Intro to Coding - 60 minutes
Create new parts and use code to create a part which continuously changes colors.
- Creating scripts
- Hello World
- The output window
- String variables
- Troubleshooting code
- Working with parts in code
- Finding a part with code
- Changing the color properties
- Variable practice
- Store the location of the part with a variable
- Wait function
- Use wait() to change part to a second color
- Looping code
- Use while true do to continuously cycle through 3 colors
- Insert scripts directly to the part
Checks For Understanding
- Play “Will it run”
You or a student can write snippets of code on a whiteboard. Ask the rest of the class if they think it will run or have them debug the code together.
- Treat troubleshooting as an opportunity to learn just as much as every other concept of coding. Ask students leading questions rather than solving the issue for them as much as possible.
- Have students state examples of variables they see in their favorite games or apps.