Learn scripting for FiveM!
FiveM offers three different programming languages when you want to write your own scripts, Lua, JavaScript and C#.
Lua offers the most learning ressources regarding FiveM and simultaneously is blazing fast. JavaScript offers the most learning resources outside of FiveM, it also is
number 1 on github's most active languages (opens in a new tab).
Since the most used language on FiveM is Lua we will talk about Lua here, and some Front-End developement options to make things like UI using HTML, CSS and Lua
Learn Analytic thinking and common coding practices
The Harvard University offers some of their courses for free online, including some of their Computer Science Courses. This course is a good way to start: CS50 (opens in a new tab)
Lua
Lua is a simple programming language that is used in many different areas, including video games, network programs, industrial programs, and task automation. It’s popular because it’s easy to learn and use, and it’s fast and efficient.
Learn lua
- Fireship (Lua in 100 Seconds) (opens in a new tab): Short explanation on how lua works under the hood and rushes through it's functions
- Learn Lua in Y Minutes (opens in a new tab): Short summarization without explaining much.
- Codecadamy (opens in a new tab): A great and huge community providing courses free and paid on a lot of languages
- Lua.org (opens in a new tab): The official Lua website that covers their concept, a learning path and how to locally run it.
- Tutorialspoint (opens in a new tab): A tutorial explaining you the parts of Lua bit by bit.
- Tyler Neylon (opens in a new tab): A small compressed explanation on how lua works (Only recommended if you know already some things)
- BMC DevOps Blog (opens in a new tab): Explains how Lua works, it's quirks and how to run it locally.
- Exercism (opens in a new tab): Exercism offers great courses to learn Lua and a lot of online Languages!
Learn lua for FiveM
- FiveM Documentation (opens in a new tab): The official fivem documentation, explaining on how to start as a FiveM developer.
- ESX Documentation (opens in a new tab): Documentation on the Functions of ESX with examples.
- QBCore Documentation (opens in a new tab): Documentation on the Functions of QBCore with examples. With explanation of their Scripts.
- Overextended (opens in a new tab): Documentation and Guides for the Overextended scripts. (But it may be very hard to understand for newcomers)
Front-End (UI/HUD)
FiveM uses a feature called NUI(short for 'new UI'), which allows developers to create user interfaces for their scripts using HTML, CSS, and JavaScript. This means you can create things like menus, scoreboards, or huds that show things like the player's money. It's like designing a website, but for a game. The best part is that you can use all the cool features of these web technologies to make your game look and feel exactly how you want it to.