Lua Scripting: Master Complete Lua Programming From Scratch
Last updated 4/2021
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 9.18 GB | Duration: 13h 48m
Last updated 4/2021
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 9.18 GB | Duration: 13h 48m
Learn complete Lua scripting from scratch; integrate Lua with C and understand how Lua is used by the Roblox Game Engine
What you'll learn
Lua Scripting
Integrate Lua with C and C++
Requirements
Students should know how to work with files, use a text editor, copy and paste files, etc.
Knowledge of the Linux or Windows command-line will help students to make the most of this course
Description
Olá…Welcome to our complete Lua scripting course.This course will teach you everything you need to know about the Lua scripting language.We will start from scratch, installing Lua in your platform (Windows, macOS, or Linux), and progress to learn the main aspects of the Lua language. I will use Linux during the videos, but you can easily follow along with any other OS. If by any chance you cannot or do not want to install Lua in your machine, you can simply use the Replit website which allows you to run your Lua scripts inside your web browser.This course is divided into three main parts:The first part is where we will cover the basics of the Lua language. We will learn the fundamentals of programming with Lua using variables, expressions, conditional statements, loops, functions, metatables, and other important commands and modules from the Lua language. This part covers Lua from the beginning to an advanced level, and it is a super course even if you never programmed before.The second part of the course is aimed at programmers that want to learn how to embed Lua within the C programming language. You'll learn how to embed and expose scripting capabilities to your C code and create a project that controls the movement of a player in C using Lua. If you don't want or don't care about integrating Lua with C, you are welcome to skip this section of the course, but this integration with C is one of the most powerful aspects of the Lua language and it is extremely important for professional programmers that want to take their Lua skills beyond the basics.The third part of the course is a set of short bonus lectures that cover the basics of using Lua with Roblox Studio. Roblox is a popular game engine that uses Lua to script game logic and aspects of the game scene. We will learn how to use everything we learned to understand how Lua is used by Roblox and also understand the basics of the Roblox Studio interface.This course is a super complete package about one of the world's favorite scripting languages. You will benefit from it if you are a beginner or if you are a seasoned developer that wants to discover the power of the Lua language.Be aware: This is not a course about Roblox! This is a course about the Lua programming language, and the final bonus lectures are a basic overview on how Lua is used by Roblox developers.Welcome aboard!
Overview
Section 1: Introduction
Lecture 1 Introduction and Motivations
Lecture 2 A Message for Roblox Users
Lecture 3 History and Language Evolution
Lecture 4 Why do you want to learn Lua?
Section 2: Installing and Using Lua
Lecture 5 A Quick Message About Installing Lua
Lecture 6 Using Lua with REPL
Lecture 7 Installing Lua on Linux
Lecture 8 Installing Lua on MacOS
Lecture 9 Installing Lua on Windows
Section 3: Course Source Code (Download)
Lecture 10 Source Code (Download)
Section 4: Variables and Expressions
Lecture 11 Our First Lua Script
Lecture 12 Variables
Lecture 13 Older Lua Versions and REPL
Lecture 14 Proposed Activity: Variables
Lecture 15 Variables Activity Solution
Lecture 16 Exercises: Variables and Expressions
Lecture 17 Incrementing and Decrementing Variables
Section 5: Conditionals and Logical Operators
Lecture 18 Conditionals
Lecture 19 Elseif
Lecture 20 Proposed Activity: Conditional Statements
Lecture 21 Conditionals Activity Solution
Lecture 22 Logical Operators
Lecture 23 Exercises: Conditionals
Section 6: Strings and Standard Library Modules
Lecture 24 String Manipulation
Lecture 25 Multi-line Strings
Lecture 26 Multiple Assignment
Lecture 27 Standard Library Modules
Lecture 28 Exercises: Strings and Random
Section 7: Loops and Functions
Lecture 29 The For Loop
Lecture 30 The While Loop
Lecture 31 Loop Options
Lecture 32 Variable Scope
Lecture 33 Local Scope and Lua Chunks
Lecture 34 Syntax & Semantic Errors
Lecture 35 Solving Logical Mistakes
Lecture 36 Input Values from the Keyboard
Lecture 37 Handling Input Options
Lecture 38 Finding Distance Between Points
Lecture 39 Finding Angle Between Points
Lecture 40 Arctangent Function in New Lua Versions
Lecture 41 Loop Activity Example
Lecture 42 Loop Activity Solution
Lecture 43 Exercises: Loops
Lecture 44 An Introduction to Functions
Lecture 45 Exercises: Functions
Section 8: Tables
Lecture 46 Tables in Lua
Lecture 47 Looping Key-Value Pairs in a Lua Entries
Lecture 48 Tables Example
Lecture 49 Proposed Activity: Reading Table Entries
Lecture 50 Table Activity Solution
Lecture 51 Tables as Configuration Files
Lecture 52 Tables as Matrices
Lecture 53 Proposed Formative Project
Section 9: Metatables and Object-Oriented Programming
Lecture 54 Moving Forward
Lecture 55 Metatables
Lecture 56 Exercises: Metatables
Lecture 57 Object-Oriented Programming in Lua
Lecture 58 Creating Classes and Objects
Lecture 59 Exercises: Classes and Objects
Section 10: More on Lua Functions
Lecture 60 Higher-Order Functions and Closures
Lecture 61 Variadic Functions
Lecture 62 Coroutines
Section 11: Integrating Lua with C
Lecture 63 Working with Lua and C
Lecture 64 C Project Folder Structure
Lecture 65 Executing Lua File From C
Lecture 66 Get Lua Global Values in C
Lecture 67 The Stack
Lecture 68 Push Pop and Peak
Lecture 69 Calling Lua Functions From C
Lecture 70 Checking and Handling Script Errors
Lecture 71 Calling C Functions in Lua
Lecture 72 Userdata
Lecture 73 Sending and Receiving Userdata
Lecture 74 Reading Lua Tables in C
Lecture 75 Installing SDL
Lecture 76 Creating a SDL Window
Lecture 77 The Game Loop
Lecture 78 SDL Rendering
Lecture 79 Fixing Our Game Loop Timestep
Lecture 80 Delta Time
Lecture 81 Controlling the Player Movement with Lua
Lecture 82 Proposed Exercise: Creating the function rect()
Lecture 83 Final Considerations on Integrating Lua and C
Section 12: Conclusion and Next Steps
Lecture 84 Next Steps
Lecture 85 LuaJIT
Section 13: Bonus Section: Using Lua with Roblox Studio
Lecture 86 Intro to Roblox and Roblox Studio
Lecture 87 Installing and Accessing Roblox Studio
Lecture 88 Roblox Parts and Properties
Lecture 89 Roblox Vectors and Colors
Lecture 90 Roblox Object Instance
Lecture 91 Proposed Activity: Sun and Moon System Hour
Lecture 92 Sun and Moon Activity Solution
Lecture 93 Roblox Loops and the Wait Function
Lecture 94 Roblox Loops and Conditionals
Lecture 95 Roblox Events
Lecture 96 Roblox Humanoid Properties
Lecture 97 Roblox Players and Characters
Lecture 98 Roblox Models and Assets
Lecture 99 Roblox Terrain Editor
Lecture 100 Roblox Day-Night Lighting & ClockTime
Lecture 101 Roblox Leaderboard
Lecture 102 Roblox Debugging and Code Inspection
Lecture 103 Roblox CFrame
Lecture 104 Roblox Following Parts
Lecture 105 Roblox Conclusion and Getting Help
Section 14: Bonus Section: Building Lua 5.4 from Source
Lecture 106 Compiling the Lua 5.4 Language from Source
Lecture 107 Compiling Lua 5.4 on Linux
Section 15: Bonus Lecture
Lecture 108 Congratulations & Other Courses
Lecture 109 Course Links
Beginner that want to learn how to code with Lua,Professional programmers that want to learn how to embed and use Lua with their C applications,Students that want to learn how Lua is used with Roblox Studio