Interactive Game Design | NYU Tandon School of Engineering

Interactive Game Design

Learn the fundamentals of 2D, story-driven game design and develop world-building and scripting abilities necessary to create narratives and virtual realms.

coding project


Apply now for summer 2020!

student testing a game NYU Tandon's Summer Program for Narrative-Driven Game Design is a two-week, full-day summer program that introduces high-school students to the fundamentals of two-dimensional, story-driven game design on the NYU Tandon Downtown Brooklyn campus. Over the course, students will learn to create games with engaging and interactive stories driven by interesting characters, complex world-building, and rich lore to motivate players to keep playing. 

mobile gameStudents will learn essential skills for becoming a great storyteller through interactive technologies through a series of individual and collaborative projects. This course builds up the skills necessary for world-building and scripting necessary to create visual stories, interactive narratives, and virtual worlds through a variety of software tools and platforms.

Syllabus & Curriculum

Students will begin with designing simple non-linear narratives for the web using open-source tools like Twine, where they will develop skills in developing characters and worlds, and scripting plots and stories where players will have choices that open up new avenues of gameplay.

Later, students will progress to developing more complex game worlds and narratives with dynamic variables and conditions and learning how to code in scripting languages like Python for game design engines like Ren’py. They will also be exposed to practices and skills in creating visual storyboards and moodboards,developing art assets for their games, and incorporating sound and music. Additionally, students will learn the process of developing independent games professionally. An understanding of programming or 2D art asset creation is not necessary.

student holding up a phone

By the end of this semester, students should have:

1. Gained useful skills in storytelling, worldbuilding, and lore-building, developing characters, and storyboarding;

2. A handy grasp of a variety of development tools used in narrative-driven game design, as well as 2D-illustration and graphical tools, and audio editing tools;

3. Basic hands-on experience in coding and compiling for games for the web or desktop using Python and/or Javascript in platforms like Twine and Renpy.

Day 1
This class will introduce students to game design, discussing ludology and narratology in games, and getting them to participate in a series of group exercise where they perform character roles in a series of situations in order to grasp the fundamentals of writing scripts and plots.

Morning Session
Introduction to game design
What is a game?
Ludology & narratology
Exercise: Analysing gameplay & narrative in tangible games

Afternoon Session
Designing player immersion and character development
Characters, Scenes, & Situations
Exercise: Performing narratives

Day 2

Students will cover a short history of narrative in games, be introduced to the idea of hypertext and interactive fictions, play some landmark narrative-driven games, start to plot and develop a story and create storyboards, and develop some of the larger aspects of the game world that players are immersed in.

Morning Session
A short history of narrative in games
Hypertext and interactive fiction
Exercise: Playing important interactive fictions

Afternoon Session
Class Discussion: Analyzing the games we played
Branching narratives
Storyboarding & Worldbuilding basics

Day 3
Twine work session
Day 3 will introduce students to creating basic branching narratives in Twine. We will also cover more advanced concepts in Twine, including working with media assets and setting up more complex conditions and tracking player variables; they will work on their Twine games with the student testing a gameaid of the instructor and playtest their games by the end of the day.

Morning Session
Class discussion: Sharing each other’s storyboards
Player choices and endgames
Lab: Creating a branching narrative in Twine
Lab: Incorporating images and sound
Lab: Rules, conditionals & variables

Afternoon Session
Lab: Working on our Twine games
Lab: Pilot playtesting of the games

Day 4
Students will be introduced to Ren’py, an engine for creating narrative games and visual stories. They will learn to set up file structures and preferences, and be introduced to setting up characters, scripting plot and dialogue, displaying visual assets, and playing ambient sound.

Morning Session
Class discussion: Sharing each other’s Twine games
Introduction to Ren’py & visual novels
Ren’Py basics: assets, interface, scenes & narrative
Exercise: Playing Ren’Py games

Afternoon Session
Lab: Installing and setting up Ren’py
Lab: Setting up characters, scenes, and dialogue
Lab: Finding visual and sound assets on and other online sources
Lab: Setting up and using visual and sound assets

Day 5
In this working session, students will learn how to create 2D art assets and sound, creating manually or digitally drawn assets in Adobe Creative Suite and bringing them into Ren’py. In the second half, students will learn how to create branching stories through player choices, introduce scene transitions, and customize the user interface. Students will take the weekend to develop stories that they will want to turn into games.

Morning Session
Identifying visual style and creating a moodboard
Lab: Creating art and UI assets from scratch in Illustrator & Photoshop
Lab: Creating sound assets from scratch in Audition

Afternoon Session
Lab: Choices and in-game menus
Lab: Transitions and object-specific sounds
Lab: Customizing the GUI, styles, and screens

Day 6
We will cover more advanced concepts that utilize scripting in Python. Students will learn to set up and use variables, and develop conditional statements that will help them deepen player choices and further narratives in dynamic ways. During the second half of the day, students will be taken on a tour of the Games Center at NYU.

Morning Session
Lab: Introduction to Python
Lab:  Setting up, tracking, and calling variables
Lab: Setting up rules and conditionals

Afternoon Session
Tour of the Game Center at NYU

Day 7
Students will work on their Ren’Py games all day with the help of the instructor. This day will focus on finalizing a script in Twine that students will want to translate to Ren’Py, developing a moodboard, and working on art and sound assets.

Morning & Afternoon Sessions
Class Discussion: Students discuss each other’s Twine scripts
Lab: Developing a moodboard and working on art and sound assets
Lab: Setting up project and importing art and sound assets

Day 8
Students will work on their Ren’Py games all day with the help of the instructor. This day will focus on coding for their games, scripting narrative flow with dynamic variables and narrative conditions, and customizing the user interface. Towards the end of the day, we will aim to have a pilot play through of all player choices and endings in the game.

Morning & Afternoon Sessions
Lab: Programming the script, variables and conditions
Lab: Customizing GUI
Lab: Connecting all art and sound assets
Lab: Pilot play-through

Day 9
Students will playtest their games with each other, incorporate feedback and modify their scripts, and debug their games if needed during the first half of the day. During the second half of the day, we will discuss documentation and creating a game manual.

Morning Session
Playtesting and iterating
Class Discussion: Students play and give each other feedback on their games
Lab: Iterating and debugging the game

Afternoon Session
Developing documentation for users

Day 10
Students will spend the first half of the day showing off and playtesting their Ren’Py games on the public, and the second half debriefing on the course.

Morning Session
Show & Tell!

Afternoon Session
Class Discussion: Debrief Session

Who Can Apply?

  • Rising 9thstudents testing a game through 12th grade students interested in learning at the intersection of art, design, and technology
  • Academically prepared, highly motivated students who are willing to take initiative
  • Students with a passion for learning software and hardware skills and tools and applying them to developing creative expression

Program Details

Choose one of the following sessions when you apply *

  • Session 1: June 22, 2020 - July 3rd, 2020 
  • Session 2: July 13, 2020 - July 24, 2020  
  • Session 3: August 3rd, 2020 - August 14, 2020

*Orientation for all sessions will take place the Sunday before the first day of your program, starting at 4pm. 

Application Deadline:

Preferred Deadline: February 28th, 2020

Final Deadline: March 14th, 2020

Program Costs

  • Tuition: $2,000 + $100 Program Fee (special events and gameactivities) per two-week session
  • Housing is available at an additional cost of $558 for 2 weeks
  • Meal plan is available at additional cost of $340 (10 meals/week for two weeks) and is required with housing

Questions? Contact us at or 646.997.3524 or check out our Tandon Summer Programs Blog for general information about housing and international applications.