The Lua programming language is becoming increasingly popular for game development. And the LÖVE 2D game engine makes it simpler to create games using Lua.

We just published a full 11-hour game development course on the freeCodeCamp.org YouTube channel that will teach you how to create games using LÖVE 2D and Lua.

Steve from the Steve's Teacher YouTube channel teaches this course. Steve is an experienced game developer and he has created hundreds of programming tutorials.

LÖVE is as framework you can use to make 2D games in Lua. It's free, open-source, and works on Windows, Mac OS X, Linux, Android and iOS.

In this course, you will first learn how to program in Lua. Then you will learn how to use LÖVE 2D with Lua to develop amazing games. You will create two different games during this course.

Here are the sections in this comprehensive course:

LUA BASICS

  • Intro to Lua
  • Installing Lua
  • Running Lua (VSCode)
  • Printing and Comments
  • Variables & Data Types
  • Strings
  • Math
  • If Statements
  • Loops
  • User Input
  • Tables
  • Functions
  • Working with Files
  • Custom Modules
  • OOP

LOVE 2D BASICS

  • Setup and LUD basics
  • The Config File
  • Drawing & Moving Shapes
  • Keyboard Input
  • Working with Sprites

CREATING A SAVE THE BALL GAME

  • Game Setup
  • Creating the Enemy
  • The Menu Screen
  • Adding a Point System
  • Game Over Screen

CREATING AN ASTEROIDS GAME

  • Game Setup
  • The Player
  • The Thruster
  • The Game State
  • Game Text
  • Asteroids
  • Lasers
  • Laser Collision Detection
  • Player Collision Detection
  • Player Lives
  • The Menu
  • Installing & Running LuaRocks
  • The Score System
  • Game Over
  • Invincible PLayer & Infinite Levels
  • Game Reset & High Score
  • BGM & SFX

Watch the full course below or on the freeCodeCamp.org YouTube channel (11-hour watch).