this post was submitted on 02 Jul 2023
86 points (96.7% liked)
Games
32440 readers
1105 users here now
Welcome to the largest gaming community on Lemmy! Discussion for all kinds of games. Video games, tabletop games, card games etc.
Weekly Threads:
Rules:
-
Submissions have to be related to games
-
No bigotry or harassment, be civil
-
No excessive self-promotion
-
Stay on-topic; no memes, funny videos, giveaways, reposts, or low-effort posts
-
Mark Spoilers and NSFW
-
No linking to piracy
More information about the community rules can be found here.
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
The problem is, loading things takes different amounts of time. I once tried to implement a real loading bar for an app because it took long enough to load that clients needed some indication that the app hadn't crashed. There were seven steps, so I naively made each step take about 14% of the bar. Then I tested it, and it just jumped to step 4, sat there for the entire loading process, and then jumped to 100%. Because loading isn't linear.
The only way for loading bars to work is for them to be fake.
I've seen other games add a secondary loading bar for the individual task at each step. So, sure, its stuck at 5/7, but then the second loading bar shows it's still processing.
Perhaps the best indication is just telling the user what it's doing rather than an arbitrary progress bar.
Edit: Just gonna add, I've been playing Bannerlord and the game (while heavily modded) just silently freezes when starting a new game. Outside of task manager and watching the game just not do anything for a while, you wouldn't even realize it was frozen.
Why not make a fake loading screen that adjusts load times based on how long it took to load the previous instance within the same environment?
If I'm using the same version of everything, and same hardware, then those load times would be very similar or near identical, and I no longer have to deal with randomly jumping status bars, no?