Programming For Beginners With Lua And Love2D

Posted By: ELK1nG

Programming For Beginners With Lua And Love2D
Published 6/2025
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 8.41 GB | Duration: 12h 39m

Learn and Refine the basics of programming with Lua and Love2D

What you'll learn

Students will develop the problem solving capabilities of a software engineer

Students will learn how to think strategically and critically about computer code

Students will learn computer coding principles and basic algorithms

Students will be given the confidence to pursue programming in the future

Requirements

No prior coding experience is necessary. Students will need a basic computer with either Windows or MacOS

Description

This course is designed for absolute beginners in programming who wish to make their start in the field!As a university lecturer of many years I've interacted with students enough to get a feel for what works in terms of teaching and practicing. The concept of this course is to take more of a 'classroom' approach to teaching and hopefully encourage you to practice and learn with me as we make our way through the course material together.The course is centred around the Lua programming language and the Love2D framework. Lua is a great beginner language to get started with as it is a lot simpler and more straight-forward than other languages.The course structure is basically that we jump straight into making stuff and explain concepts as we come across them. After we make our first game together, we go back and clarify some concepts. I have taken this approach because a criticism I have of most programming tutorials that I've come across is that they overwhelm you with out-of-context theory at the start before actually doing anything fun. With my model, we immediately make something tangible and then go back and talk about the theory, but since we've already used it in a meaningful way, the theory and concepts will make a lot more sense and will be enjoyable to learn about!

Overview

Section 1: Introduction

Lecture 1 Welcome and Course Philosophy

Lecture 2 Installation

Section 2: First Project: Hangman

Lecture 3 Starting Our First Project

Lecture 4 Update and Draw Functions

Lecture 5 Functions

Lecture 6 Tables

Lecture 7 Tables of Tables

Lecture 8 If Statements

Lecture 9 Mapping Out The Project

Lecture 10 Drawing Lines

Lecture 11 Printing Text to the Screen

Lecture 12 Using Tables of Data

Lecture 13 Using More Tables of Data

Lecture 14 Keeping Track of Guessed Letters

Lecture 15 Click to Start New Game

Lecture 16 Checking Win Conditions

Lecture 17 Updating the Background Colour

Lecture 18 Evaluating Wrong Letter Press

Lecture 19 Using Delta Time

Lecture 20 Keeping Track of Lives

Lecture 21 Evaluating Lose Conditions

Lecture 22 Keeping Track of Letters Already Guessed

Lecture 23 Seeding the Random Generator

Section 3: Extending our Knowledge in Some Areas

Lecture 24 'And' and 'Or' Keywords

Lecture 25 Tables Revisited

Lecture 26 Order of Program Execution

Lecture 27 Local Variables

Lecture 28 Using External Files

Section 4: Homework Project: Dice Application

Lecture 29 Dice Introduction

Lecture 30 Dice Solution

Section 5: Third Project: Country Flags

Lecture 31 Starting our Flags Game

Lecture 32 Setting up our Data Structures

Lecture 33 Setting up our Buttons System

Lecture 34 Button Functionality Continued

Lecture 35 Selecting Random Options

Lecture 36 Evaluating Correct and Incorrect Selections

Lecture 37 Adding a Delay Before Resetting Question

Lecture 38 Accounting for Special Cases

Section 6: Some Extra Concepts Before Our Next Project

Lecture 39 Tables and Keys

Lecture 40 String Comparisons

Lecture 41 State Tables

Section 7: Fourth Project: Typing Game

Lecture 42 Mapping Out Our Typing Game Project

Lecture 43 Making Things Move

Lecture 44 Spawning Letters on a Timer

Lecture 45 Process Correct Keypress

Lecture 46 Letters Crossing the Finish Line

Lecture 47 Increasing the Difficulty Throughout the Game

Lecture 48 Updating the Score

Lecture 49 Flashing Correct Letter Green

Lecture 50 Increasing Difficulty by Adding Entries

Section 8: More Concepts Before Our Next Project

Lecture 51 The Modulo Operator

Lecture 52 Recursive Functions and While Loops

Section 9: Fifth Project - Minesweeper

Lecture 53 Setting up our Minesweeper Project

Lecture 54 Setting up our Menu Buttons

Lecture 55 Menu Button Mouse Hover Functionality

Lecture 56 Spawning Bombs on the Map

Lecture 57 Homework task: Evaluating Adjacent Squares

Lecture 58 Finding Adjacent Squares

Lecture 59 Setting Up Some of Our Mouse Click Behaviour

Lecture 60 Fixing Our Bomb Reset Behaviour

Lecture 61 Revealing Adjacent Zero Squares

Lecture 62 Finding and Fixing a Hidden Bug

Lecture 63 Setting Up Our Flag Behaviour

Lecture 64 Making a Colours Map Table

Lecture 65 Evaluating Win Conditions

Section 10: Congratulations! And where to from here … ?

Lecture 66 Congratulations

Beginner computer programmers