Lua Love

Learn the basics of programming, then use that knowledge to create games with the beginner-friendly game engine: Love2D!

Last updated 2022-01-10 | 4.7

- Understand the basics of programming
- How to use Lua
- Utilize the core features of LÖVE

What you'll learn

Understand the basics of programming
How to use Lua
Utilize the core features of LÖVE
Find and use open-source software
Incorporate additional editors and tools
Create your own games!

* Requirements

* Capable of using the basic functionality of your computer
* Ability to download and install programs

Description

For beginner and experienced programmers alike, one of the best tools to learn game development with is LÖVE (also known as Love2D), an open-source game engine that allows users to write the logic of their games in Lua, an easy to pick up scripting language. These hidden gems of the development industry are perfect for learning the basic concepts, as well as applying them to create full-scale applications.

This course is a project-based approach to understanding the basics of programming and its role in game development. The lectures assume no prior technical knowledge, and whether or not you have programmed before, there is content in this course that can be utilized by anyone. Together, we will create three separate games, each one growing in difficulty, and in doing so, we will gain a strong familiarity with programming video games.  After learning the core functionality of what LÖVE has to offer, you will be ready to apply this knowledge into creating your very own games.

The course begins with several lectures discussing the basics of programming with Lua, specifically covering:

    • Variables
    • Conditional Statements
    • Loops
    • Functions
    • Comments
    • Local vs Global
    • Tables

These concepts are common throughout most programming languages, so the information covered in this section can be applied beyond the scope of this course. To add to this, if you already have a background in programming, there will be a "syntax recap" that will quickly discuss how to perform each of these actions in Lua specifically, so there is no need to watch every lecture if you already have some related experience, but haven't worked with Lua before.

After the programming lesson, we will jump right into working with LÖVE, and will create our games throughout the rest of the course. We will start with a simple Shooting Gallery game, then move on to a top-down shooter, and finish off the course with a physics-based platformer. By the end, we will cover all of the following game development concepts:

    • Making a playable character
    • Keyboard and mouse input
    • Drawing graphics
    • Enemies
    • Collisions
    • Timers
    • Randomness
    • RGB Color Scheme
    • Physics
    • Animations
    • Utilizing open-source software
    • Tiled
    • Camera
    • Sound effects and music
    • Keeping score
    • Saving data

With the ability to implement all of these features, you will be fully prepared to create your own games. By coding along with the lectures, the information will stick with you as we go through the material, and by the end, your programming and development skills will be strong enough for you to bring to life whatever game idea you can think of!

Who this course is for:

  • Anyone who wants to learn game development - regardless of technical background

Course content

8 sections • 86 lectures

Course Overview Preview 02:30

Installing LÖVE Preview 01:40

Programming Environment Preview 03:32

Project Structure Preview 05:05

Projects On GitHub Preview 01:36

Introduction to Lua Preview 02:11

Variables Preview 06:47

If Statements Preview 05:02

Else and ElseIf Preview 05:12

While Loops Preview 05:47

For Loops Preview 05:49

Functions Preview 08:21

Comments Preview 02:48

Local and Global Variables Preview 02:40

Tables pt. 1 Preview 07:54

Tables pt. 2 Preview 03:54

Syntax Review Preview 07:41

Lua Programming Quiz

This will review some of the core fundamentals established in Section 2: Lua Programming

Shooting Gallery Overview Preview 02:50

Load, Update, and Draw Preview 04:26

Drawing Shapes Preview 09:02

Colors and Overlapping Graphics Preview 05:41

Target Table and Global Variables Preview 04:29

Using the Mouse Preview 06:16

Shooting the Target Preview 08:35

Randomness Preview 06:07

Timer Preview 07:54

Sprites (Images) Preview 10:31

Main Menu Preview 07:47

Finishing Touches Preview 06:34

Game #1 Skills Assessment

This quiz will review the fundamental LÖVE concepts discussed during development of Game #1. You are free to use any resources to help with this quiz, including the code you wrote for this section.

Game #1 Coding Challenge Preview 00:44

Top-Down Shooter Overview Preview 01:28

World Setup Preview 05:23

Player Movement Preview 05:39

Delta Time Preview 03:29

Sprite Rotation Preview 08:16

Facing the Mouse Preview 04:47

Enemies Preview 08:41

Enemy Rotation Preview 05:07

Enemy Movement Preview 07:21

Basic Collisions Preview 04:25

Shooting Projectiles Preview 07:29

Scaling Sprites Preview 05:04

Deleting Projectiles Preview 07:28

Shooting Enemies Preview 06:16

Enemy Spawn Position Preview 05:20

Enemy Spawn Timer Preview 06:03

Menu, Score, and Polish Preview 14:00

Game #2 Skills Assessment

This quiz will review the fundamental LÖVE concepts discussed during development of Game #2. You are free to use any resources to help with this quiz, including the code you wrote for this section.

Game #2 Coding Challenge Preview 01:13

Platformer Overview Preview 04:05

Physics Preview 08:46

Moving and Jumping Preview 06:37

Collision Classes Preview 09:12

Querying for Colliders Preview 08:16

Animations Preview 11:47

Player Graphics Preview 08:21

Changing Between Animations Preview 04:40

Player Direction (Flipping the Animation) Preview 04:09

Jump Animation Preview 05:27

Multiple Lua Files Preview 04:28

Tiled Preview 07:58

Import Tiled Map to LÖVE Preview 05:18

Spawning Objects from Tiled Preview 09:32

Camera Preview 05:09

Platformer Enemies Preview 19:22

Transitioning Between Levels Preview 17:17

Saving Data Preview 09:23

Music and Sounds Preview 03:43

Finishing Touches Preview 08:23

Game #3 Skills Assessment

This quiz will review the fundamental LÖVE concepts discussed during development of Game #3. You are free to use any resources to help with this quiz, including the code you wrote for this section.

What's Next? Preview 03:09

LÖVE for Web Overview Preview 01:57

Love.js Setup and Installation Preview 04:06

Building and Running with Love.js Preview 08:15

Hosting Your Game Preview 05:37

Mobile Overview Preview 01:36

Touching the Screen Preview 04:22

Adapting to Screen Size Preview 09:03

Installing Android Tools Preview 07:08

Generating the APK Preview 07:33

Installing on Your Android Device Preview 03:56

Signing Your App Preview 12:02

Publishing Your App Preview 03:13