Lumo Loading Screen
A living loading screen whose scene is driven by the load itself.
Version 1.0.0 · Frameworks QBCore · Qbox · ESX · standalone
Config files · Exports & events
A living loading screen for FiveM. Four layouts, each with its own scene drawn live in the browser: no background video to download, and the motion never loops. The load itself drives each scene, so players watch their own progress.
| Layout | The scene | Progress is… |
|---|---|---|
| Summit | A generated mountain range from night to sunrise, a route up the peak | the climber's altitude, and the time of day |
| Arrivals | A dotted globe following a flight, a boarding pass with the player's name, a split-flap news board | the plane on its route |
| Broadcast | A live news channel over a night skyline: headlines, "up next" events, a ticker | the city switching its lights on, and the signal meter |
| Night Drive | A freeway into the city, your name on the hills, a car dashboard | the speedometer, and the distance on the road sign |
Also included:
- a welcome line with the player's name, visit number and when they were last seen
- a music player: a playlist, or a generative soundtrack made live for each layout (0 MB)
- sound cues at each loading stage (singing bowl, airport chime, …)
- an info panel (Tab) with news, events, updates, rules, team, keys and music credits
- clickable socials (Discord, store, YouTube, …) and the players online
- keys for players: L switches layout, H hides the interface, Space plays/pauses the music, arrow keys change track and volume
- a fade-out when the game is ready, and exports for other resources
Works on QBCore, Qbox, ESX and standalone. It needs no framework and no dependencies.
Install
- Drop
lumo-loadinginto yourresourcesfolder. - Remove or stop any other loading screen resource (only one
loadscreencan run). - Add
ensure lumo-loadingtoserver.cfg. - Edit
config.luaand restart the resource.
Configure
Everything lives in config.lua, with a comment on every option. The main ones:
Config.Layout:'summit','arrivals','broadcast','nightdrive','random'or'rotate'.Config.Server: your name, short brand, tagline and logo.Config.Theme.accent: one colour for the whole screen.Config.Background: keep the animated scene, or use your own picture, slideshow or video.Config.Music:'playlist','ambient'(generative) or'off'.Config.Tips,News,Events,Rules,Changelog,Team,Socials.Config.Layouts.<name>: per-layout options and the text of all six loading stages.Config.Locale: every word on screen, for translating.Config.Performance: frame rate and resolution of the scenes.
Your own files go in media/ (media/images, media/music, media/video) and are referenced as 'media/images/my-shot.jpg'. Every player downloads them on connect, so keep them small.
Preview in game
After you spawn, type /loadingpreview to see the screen again with a fake load: /loadingpreview arrivals opens one layout, /loadingpreview demo shows them all in turn, and Esc closes it. It is admin-only by default (Config.Preview.adminOnly); servers with add_ace group.admin command allow already allow it. Change config.lua, ensure lumo-loading, run the command again.
Preview without the game
Open html/index.html in Chrome. It runs a fake load with demo content. Useful URLs:
index.html?layout=arrivals one layout
index.html?layout=summit&p=0.6 frozen at 60 %
index.html?layout=summit&ready=1&p=1 the arrived state
index.html?demo=1 showcase: every layout in turn(The preview uses the built-in demo content; your config.lua is used in game.)
Closing the screen
Config.Shutdown.mode = 'framework' (default): your multicharacter or core closes the loading screen, as QBCore, Qbox and ESX do. Use 'auto' on a server without one; the screen then closes itself once the game is ready.
To close it with the fade-out from your own script:
lua
exports['lumo-loading']:Close() -- fade out and close
exports['lumo-loading']:SetStatus('Preparing your characters') -- your own status lineCredits
Music. All four tracks may be redistributed; the CC BY track needs its credit, which the in-game info panel shows under Keys → Music credits.
| Track | Artist | Licence | Source |
|---|---|---|---|
| Midnight Drive | congusbongus | CC0 | OpenGameArt |
| Passion (Atmosphere Phonk) | Alexi Action | CC BY 3.0 | Wikimedia Commons |
| Cyberpunk Beauty | Tarush Singhal | CC0 | OpenGameArt |
| Lofi Again | omfgdude | CC0 | OpenGameArt |
Fonts (SIL Open Font License 1.1, texts in html/fonts/): Barlow Semi Condensed, Oxanium, Anton, JetBrains Mono, Cormorant Garamond.
Globe land outline: Natural Earth, public domain.
Made by Lumo.