(post inspired by Download before game instead of in-game)
The title says it all - I think it would be genuinely beneficial to allow pre-loading of chosen streamed assets. Why? There are two main reasons:
1.) In regards to custom vehicle models, we’ve all been there - you join a server and, while someone’s cool vehicle is loading, they are falling through the floor on your screen. This is particularly an issue for RP servers (especially regarding police officers, as the majority of roleplay servers use custom models and skins for emergency vehicles);
2.) There is some weird form of lag when approaching particularly large streamed MLOs or YMAPs. Judging by the forums there’s a number of people affected by that. What’s that? Oh, you’re asking how would pre-loading solve it? You see, I have tested this issue for a time now, and I can reliably say that the lag occurs only if the streamed asset is NOT cached. I have done (legitimately) more than 20 tries with this so far, and it’s always behaved that way - when it’s not cached, freeze on approach, then even after game restarts it never lags, in before I clear cache to test and the lag occurs again when the asset is not cached… you get the idea.
How could this be implemented? From a user’s perspective, I’d say a way to define which streamed assets would need to be pre-loaded on the client (I’m guessing add that to the fxmanifest.lua
options?)
As a small note, to rule out the “bad server loading 1000GBs of data on my PC!11!!” comments and reports, I’d say there should be a limit on how much those pre-loaded assets can weigh in total. And as a way to encourage people to actually care about physmem allocation going overboard, disable pre-loading for streamed assets that use memory beyond the limit?
In any case, I am open for opinions regarding this matter.
And yes, I do know there is a way to pre-load vehicles currently, but it’s way too many hoops to jump through (not to mention that it might not work for everyone, on every server etc.)
P.S. Bubble (and renegade, and whoever else from the CFX team), I am willing to help troubleshoot and try to find the cause of the lags when loading streamed MLOs and YMAPs - don’t hesitate to reach out to me in forum DMs if needed
EDIT: Let me say this again to avoid confustion. I am not requesting a way to pre-load ALL streamed assets (that literally defeats the whole purpose of streaming); I am, instead, asking for a way to pre-load (sort-of “ensure”) specific assets that you somehow choose before the client joins the server.