Quick answer: Godot 4 load_threaded_get_status returning 99% indefinitely on large scenes? Progress reporting rounds; engine finalizes after - poll status, not progress.
Loading bar reaches 99%; stays there for 2 seconds; jumps to 100%.
Poll status not progress
load_threaded_get_status returns status enum (Loaded, Loading, Failed). Progress is informational.
Map progress to 0-95%
Display progress * 0.95 + 0.05 of remainder during finalization. Bar moves smoother.
Show 'finalizing' message
At 99%, switch to 'Almost done...' text. Players accept the pause.
“Async progress is approximate. Display logic compensates.”
If your loading bar sticks at 99%, the UX hack is the fix. Engine progress isn't going to change.