How to Create a Loading Screen in Roblox

Поделиться
HTML-код
  • Опубликовано: 20 дек 2023
  • 50% OFF COUPON WITH "DOUBLEBYTE" (ends in 3 days):
    linktr.ee/ByteBlox
    To try everything Brilliant has to offer-free-for a full 30 days, visit brilliant.org/ByteBlox
    You’ll also get 20% off an annual premium subscription!
    discord: / discord
    wondered how to make a main menu in roblox studio? or how to create a shop which has working GUI? ive made lots of 2024 roblox scripting tutorials about all the different bits of roblox to give you some up-to-date information about all of its properties and events.
    my goal is to simply give some insight on how to use the various features and instances roblox studio, and show you some fun stuff you can do with them. thanks for checking out this roblox scripting tutorial :)
  • ХоббиХобби

Комментарии • 199

  • @byteblox100
    @byteblox100  5 месяцев назад +25

    Get all of my knowledge in one package:
linktr.ee/ByteBlox

    • @martinjelolorenzo8275
      @martinjelolorenzo8275 5 месяцев назад +18

      "give me your email so i can send you stuff" Something a Indian scammer would say.

    • @fardmonkegaming
      @fardmonkegaming 5 месяцев назад

      don't trust you enough you're gonna send me uncensored gore

    • @QUBIQUBED
      @QUBIQUBED 5 месяцев назад +2

      @@martinjelolorenzo8275 bro is not funny

    • @QUBIQUBED
      @QUBIQUBED 5 месяцев назад +1

      Whydo you alwyays use "waitforchild" wouldn't you get like, a billion "infinite yield" errors?

    • @realisticcorporation9756
      @realisticcorporation9756 5 месяцев назад +1

      ​@@martinjelolorenzo8275Not funny + if you don't know scripting get out of here kid.

  • @geriangoofy
    @geriangoofy 5 месяцев назад +127

    i dont even know why im watching this im not wven making a game right now

    • @EpicPico0625
      @EpicPico0625 5 месяцев назад +21

      *KNOWLEDGE*

    • @KittenfanVR
      @KittenfanVR 5 месяцев назад +7

      Same 💀

    • @iamlosingmysanityrapidly
      @iamlosingmysanityrapidly 5 месяцев назад +9

      Wait people watch this when making a game? They don't just watch it occasionally??

    • @fabiankrajewski3147
      @fabiankrajewski3147 5 месяцев назад +1

      Even*

    • @geriangoofy
      @geriangoofy 5 месяцев назад +7

      @@fabiankrajewski3147 you really didnt have to correct me i already knew i messed up

  • @boblox_studio_dev
    @boblox_studio_dev 5 месяцев назад +85

    If anyone is wanting to make this a loading bar instead of a counter do this:
    1. Make a loading bar container frame.
    2. Insert a frame inside the container to be the actual bar.
    3. Make the bar color whatever you want.
    4. Set position = UDim2.new(0, 0, 0, 0)
    5. Set Size = UDim2.new(0, 0, 1, 0)
    6. After the preload async inside the for loop, set the size of the bar to UDim2.new(i / maxAssets, 0, 1, 0)

    • @saniks3174
      @saniks3174 5 месяцев назад

      This makes sense wow

    • @Ammiad
      @Ammiad 3 месяца назад +5

      thanks! took me a bit to understand what this comment meant but it works! looks pretty okay too
      for anyone wondering: this is what i wrote for this:
      local loadBar = ui:WaitForChild("Frame"):WaitForChild("Frame"):WaitForChild("LoadingBar")
      loadBar.Position = UDim2.new(0,0,0,0)
      loadBar.Size = UDim2.new(0,0,1,0)
      (inside the for loop:)
      loadBar.Size = UDim2.new(i/maxAssets,0,1,0)

  • @NotTaskAgain
    @NotTaskAgain 5 месяцев назад +30

    This is one of the first videos that actually EXPLAINS what each thing does, i.e "Putting a # in front of a table gets the number of items/assets in that table." I never realized what that was used for until now.

    • @bbnmm8720
      @bbnmm8720 5 месяцев назад +3

      you could just google up

    • @Omega-mr1jg
      @Omega-mr1jg 5 месяцев назад

      Thats why you experiment

    • @NotTaskAgain
      @NotTaskAgain 5 месяцев назад

      @@bbnmm8720 I'm aware of that I was just giving an example of how he explains what he does

    • @VelocitySoftwareGames
      @VelocitySoftwareGames 4 месяца назад

      no you cant@@bbnmm8720

  • @RealJordi
    @RealJordi 5 месяцев назад +15

    Honestly I just have to check up on your channel and there'll be something that I've been looking for, you're better than all of the talky big youtubers. Thanks!

  • @BubasGaming
    @BubasGaming 5 месяцев назад +12

    I think that loading screens break the immersion of fast join, because on my pc, the game can load pretty fast but sometimes loading screens can make it longer than it is supposed to be.

    • @Wacky_
      @Wacky_ 5 месяцев назад +4

      just make a skip button that hides the ui

  • @Sadjhj
    @Sadjhj 5 месяцев назад

    I do want to try a loading screen in the future for different projects. Thanks for the video.

  • @RisingHuskyERLC
    @RisingHuskyERLC 2 месяца назад

    This was really helpful! I tried the game and it worked like a charm.

  • @user-sk4fx2tk1x
    @user-sk4fx2tk1x 5 месяцев назад

    this channel is so helpful thanks for all the tutorials

  • @ZerowzYT
    @ZerowzYT 10 дней назад +1

    lol when i was a kid i used to hate loading screens, i used to contact Roblox support telling them to remove loading screens💀 now i realize how useful they are

  • @Biltongz
    @Biltongz 2 месяца назад

    Thank you Byteblox! This really helped!

  • @Griffin_545
    @Griffin_545 5 месяцев назад +2

    the way you explain code is way better then others foe some reason

  • @saada5369
    @saada5369 4 месяца назад +1

    Thanks this actually worked without me having to know how to script, it works but I have 24900 parts so I’ll have to fix that too

  • @synkka1221
    @synkka1221 5 месяцев назад +14

    This is a method that certainly works, but only for smaller games really. I've tried this method in the past with a larger game made up of around 6000 assets and loading each individual asset in the loop with content provider took FOREVER. The better way of doing a "working" loading screen is to pass the entire table of assets to the content provider's preload async function BEFORE the for loop and then just loop through each asset and add a task.wait() with a really small random wait time.
    I say "working" in quotes because it does load the assets but the actual progress bar is faked. It is a really efficient method that loads everything even in large games very quickly and the whole thing put together should only take a few seconds. Good video tho!

    • @AntiNuke_
      @AntiNuke_ 4 месяца назад

      I'm sorry, but I'm reading but not comprehending that. Can you elaborate on how to make a better system?

    • @aoqia
      @aoqia 4 месяца назад

      @@AntiNuke_ In the video, the creator passes to ContentProvider 1 asset ID per iteration of the loop. Doing this repetitively for lots of assets is SLOW. Since PreloadAsync takes in a table of asset IDs, you can just feed ContentProvider all the assets at once, and it will load them miles faster since it doesn't have to wait for each iteration of the for loop. That is just what I understand.

    • @synkka1221
      @synkka1221 4 месяца назад

      @@AntiNuke_ i meant exactly what @aoqia said, he explained it better. and when I say to "add a task.wait() with a random wait time", that should be done in the loop to simply create a natural looking progress bar. What you would do is take the content provider line and place it before the loop and put something like task.wait(math.random(1, 20)/100) on the line where the content provider async originally was

    • @marcosbombi
      @marcosbombi 18 дней назад

      Can you explain it in simpler terms?

  • @Budloks
    @Budloks 5 месяцев назад +4

    super usefull! but you should also make a tutorial how to make a progress bars becouse progress bars = cool

  • @desire-zs1rr
    @desire-zs1rr 2 месяца назад

    You helped me so Much thank you..

  • @MeatMake
    @MeatMake 5 месяцев назад +4

    Also, to circumvent the problem in the for loop 11:35, you can just make it do a task.wait() every 'x' amount of iterations to speed it up

    • @GariPlayz
      @GariPlayz 5 месяцев назад +2

      all that would do is double the speed it iterates through the table, just remove it since preloadasync yields either way and its just a nuisance for players to wait for so long. this is no "circumventing" a problem

  • @JacobHatesGaming
    @JacobHatesGaming Месяц назад

    thx you just saved me lots of time

  • @Reditect
    @Reditect 13 дней назад

    As per Roblox documentation, a big part of games on Roblox is being able to get into the fun fast. That means a fast loading screen. When I had a loading screen in my game, I saw retention drop and saw people IRL leave the game cause it took too long to load. It took about 4 seconds to load.
    I'll try this for sure, but I'm wondering if I can have a balance of loading in things and getting the player into fun quick. I can assure the player by having a custom loading screen, but that still didn't help when I tested things with play testers.

  • @hlflifeenjoyer6176
    @hlflifeenjoyer6176 5 месяцев назад

    finally
    i was looking for this

  • @SuperJ-qb4wv
    @SuperJ-qb4wv 27 дней назад

    This is so cool. Could make the transition ease out instead of cutting abruptly?

  • @thecannonman6182
    @thecannonman6182 5 месяцев назад +1

    clutch vid as always

  • @sillyboymax
    @sillyboymax 4 месяца назад

    I don’t even be making roblox games i just like listening to you yap

  • @frensyyo
    @frensyyo Месяц назад

    thanks

  • @randomhuman69420
    @randomhuman69420 5 месяцев назад

    bring back the challenge every video!

  • @QuementRBLX
    @QuementRBLX 4 месяца назад

    What i find pretty funny is that IM CERTAIN ill never need this but it's cool to know

  • @casshgetterceo
    @casshgetterceo 5 месяцев назад +2

    Is there any reason to not just put the loading GUI into StarterGui and getting a reference of it after the game has loaded? Great video, covered a topic which I didn’t really understand yet . I’m just a bit curious since, I have always been using that method because it made sense to me.

    • @byteblox100
      @byteblox100  5 месяцев назад +1

      That’s also possible, I just wanted it to be inside ReplicatedFirst because then the game would load it first

    • @boblox_studio_dev
      @boblox_studio_dev 5 месяцев назад

      Another reason is because you would have to manually disable the GUI every time you want to edit something in your game, along with enabling the GUI when you want to test your game.

  • @Plingey
    @Plingey 5 месяцев назад +1

    you seem like no text to speech but roblox 🔥🔥🔥🔥 so swag

  • @2b2useful
    @2b2useful 5 месяцев назад +8

    Personally i wouldn't bother making loading screens, this is one of the last things you want to do. The default loading screen already works pretty good for a lot of games, especially if they are not stresming instances and the game level is static. The default loading screen has a maximum of 10 seconds to be shown to a player (tho i might be wrong on this one) and after that time you may see weird stuff, but it's usually a player's fault if the cleint haven't managed to load a game.
    And this video has some flaws.
    First, he forgot to mention the replicatedFirst's RemoveDefaultLoadingScreen function, which, you know, should have been used in the first place if you are making loading screens.
    Second, preloadAsync is intended to be used to load stuff such as images and sounds to prevent the sudden "appearance" of them and have them cached before controllably utilizing them.
    Third, to actually wait for a game to be loaded, using game:isLoaded is enough. Getting descendants of the "game" is a bad idea, since you mostly care about models under a workspace folder
    Fourth, it is also a bad practice to do {repeat wait() until game:IsLoaded()} in numerous ways: the wait() isn't the "fastest" yielding function if you want to be loading screens actually make sense, unnecessary usage of "if" statement, and on top of that, roblox has already provided an event without utilizing this weird loop and that is game.Loaded. Doing {if not game:IsLoaded() then game.Loaded:Wait() end} is better in every way
    Fifth, why would you clone a loading gui? That's [although small but] a waste of resources
    And to sum up i just hate it when a tiny game tells me to load something when in fact it's just a wait(x). Don't do that please.
    P.s. the only time i would think of using it is to wait for a server to load data from data store, especially data rrgarding ui dark/light mode or something similar. Solo devs just simply don't need custom loading screens, that doesn't make you game look cooler

    • @byteblox100
      @byteblox100  5 месяцев назад +5

      A lot of these are valid points. It would just take too long to fit into the video imo, so I opted in for the simple option. I didn’t actually know you could remove the default loading screen so that’s very helpful

    • @2b2useful
      @2b2useful 5 месяцев назад +5

      ​@@byteblox100that's okay, i just left it here for someone reading comments to learn something new.
      I don't know why i want to say it, but... "Every professional doctor has its own graveyard"

  • @rockyes3239
    @rockyes3239 5 месяцев назад

    I have subbed a few videos ago

  • @EpicPico0625
    @EpicPico0625 5 месяцев назад +7

    Fun fact: you can just drag the gui into the local script and it will automatically be parented to the script.
    Also, you should ALWAYS use task.wait() since it will always be more accurate than wait() and overall faster

    • @byteblox100
      @byteblox100  5 месяцев назад +2

      What is the actual different task.wait gives? I’ve heard many people talk about it and tried it myself, but it just seems like a regular wait function

    • @flabbergasted1485
      @flabbergasted1485 5 месяцев назад

      task.wait runs on a 60hz polling rate, and wait is a 30hz polling rate. so its more accurate to real time.@@byteblox100

    • @bobbyboy123_
      @bobbyboy123_ 5 месяцев назад

      @@byteblox100 ive read that task.wait() is an equivalent of RunService.Heartbeat:Wait()

    • @Monumentous
      @Monumentous 5 месяцев назад

      @@byteblox100 The task library on roblox doesn't have any throttling or lag because it uses the engine schedular. delay and spawn also appear in the task library. Everything in the task library is functionally way better, and I think roblox should deprecate wait(). Also video idea..?
      edit: ok wait IS deprecated

    • @synkka1221
      @synkka1221 5 месяцев назад

      @@byteblox100 task.wait() is much faster / more performant than wait() and wait() is also deprecated

  • @equilibrum999
    @equilibrum999 5 месяцев назад

    people who remember crosswoods: no, just dont.

  • @312erutaerC
    @312erutaerC Месяц назад

    Thanks!

  • @de_fht
    @de_fht 20 дней назад +2

    The script :
    local contentProvider = game:GetService("ContentProvider")
    local ui = script:WaitForChild("ScreenGui"):Clone()
    repeat wait() until game:IsLoaded()
    local assets = game:GetDescendants()
    local maxAssets = #assets
    local plr = game.Players.LocalPlayer
    local plrGui = plr:WaitForChild("PlayerGui")
    ui.Parent = plrGui
    for i, assetToLoad in assets do
    contentProvider:PreloadAsync({assetToLoad})
    ui:WaitForChild("Frame"):WaitForChild("TextLabel").Text = i.."/"..maxAssets
    end
    wait(1)

    • @HyghRblx
      @HyghRblx 19 часов назад

      forgot the
      ui:Destroy() at the end

  • @randombusdude
    @randombusdude Месяц назад

    so thats why my past GUIs have never covered the full screen and left the space at the top...

  • @thebacongodfather777
    @thebacongodfather777 5 месяцев назад +1

    finally, someone that actually agrees fredoka one is overused. it's like the comic sans of roblox in 2023/2024, theres so many better fonta like ubuntu and gotham sm.

  • @StrayNoblek
    @StrayNoblek 4 месяца назад

    Unsure if its my PC loading fast. though my GUI doesn't show up

  • @Dark_wither392
    @Dark_wither392 Месяц назад +1

    But I did subscribe:)

  • @alex342gwsturk8
    @alex342gwsturk8 5 месяцев назад +12

    wait() IS A SLUR

    • @Lkrupa
      @Lkrupa 5 месяцев назад

      guess i am putting a slur in my local scripts every time

    • @alex342gwsturk8
      @alex342gwsturk8 5 месяцев назад

      @@Lkrupa RAAH USE task.wait() INSTEAD!!!!!

    • @kamiinari.
      @kamiinari. 4 месяца назад +3

      wait() IS A MISOGYNISTIC SLUR
      wait() IS A MISOGYNISTIC SLUR
      wait() IS A MISOGYNISTIC SLUR

    • @Lkrupa
      @Lkrupa 4 месяца назад

      @@kamiinari. Seems like i put alotta slurs in

    • @kamiinari.
      @kamiinari. 4 месяца назад +1

      @@Lkrupa i sometimes accidentally wait() instead of task.wait() and then i get cancelled then doxxed

  • @moonburn87
    @moonburn87 5 месяцев назад +1

    you should use
    for i, assetToLoad in ipairs(assets) do
    spawn(function()
    contentProvider:PreloadAsync({assetToLoad})
    UI:WaitForChild("Frame"):WaitForChild("TextLabel").Text = i.."/"..maxAssets
    end)
    end

    • @gameplayz5847
      @gameplayz5847 5 месяцев назад +1

      it would just instantly finish because you are creating a new thread for each instance (which i dont think is smart to do)

    • @moonburn87
      @moonburn87 5 месяцев назад

      @@gameplayz5847 its useful for really big games

    • @2jammers
      @2jammers 5 месяцев назад +1

      This would just create thousands of threads and will probably crash the game. And as @gameplayz5847 said it would finish instantly.

    • @moonburn87
      @moonburn87 5 месяцев назад

      @@2jammers It doesn't crash the game or finish instantly

    • @Paracosm_Daemon
      @Paracosm_Daemon 5 месяцев назад +3

      ​@@moonburn87 this is not a smart idea at all. spawn() is deprecated, ipairs is also unneeded due to luau's __iter function. alongside this, you can literally just do ContentProvider:PreloadAsync(assets) if it's an array (which is a table with only number indices). you're also better off using the second parameter which is just a callback for when an asset is finished preloading. i'd suggest looking into the ContentProvider documentation, pretty yikes code

  • @Red_Jaws
    @Red_Jaws Месяц назад

    Your the goat

  • @CopperCogStudio
    @CopperCogStudio 5 месяцев назад

    I don't encourage people to use this tutorial for 1 big reason:
    When you give content provider a table with lets say a model, in order to load that model it also needs to load the children parented to the model first, then its finished loading the model
    The problem with this is that in this tutorial he is passing a table containing all instances inside the game. Whats the problem you may ask?
    Well what if your game has a model, well since the assets table got all descendants of the game, that means it also got every part inside that model too, thats exactly the issue, it will ensure the parts inside the model load even if it already ensured the model loaded, which when doing already ensures parts inside of it loaded
    Now the more models you put inside a model means it will take extremely long to load because its just loading over and over again the same instances a lot of times, wasting time in the process.

    • @vulna9150
      @vulna9150 4 месяца назад

      Can you suggest something that begginer scripters can do? They don't have much choice.

  • @iamberlan
    @iamberlan 4 месяца назад

    Are you able to, I guess say, "multithread" load - like have multiple loading bars at once? I feel like preloadasync is only going to slow things down since its only loading one asset at a time.

    • @byteblox100
      @byteblox100  4 месяца назад

      Yeah, you can use task.spawn() to create separate multithreaded functions and then you can just use preloadasync but filter out the items that you don’t want the loading screen to count (something like “if itemToLoad:IsA(“Part”) then continue end” will make the loading screen ignore all items that are parts)

  • @raininthesedan
    @raininthesedan 5 месяцев назад

    Yo! Sick vid jus gonna say tho for future vids instead of string concat i suggest interpolation! Roblox added support for it.
    So ui:WaitForChild('Frame'):WaitForChild('TextLabel').Text = i..'/'..maxAssets
    Could just be
    ui:WaitForChild('Frame'):WaitForChild('TextLabel').Text = `{i}/{maxAssets}`
    Also wait() was deprecated by task.wait()!
    Jus wanted to tell u!
    Amazing vid overall nice teaching style :)

  • @meshelldelligatti
    @meshelldelligatti 28 дней назад

    i did this but my code didnt work, i went thru a code checker too.. not sure why roblox isnt telling me i have any errors and i checked repasted etc. like 15 times. maybe next time i guess

  • @reyanshkk684
    @reyanshkk684 3 месяца назад

    My loading screen doesn’t appear

  • @saada5369
    @saada5369 3 месяца назад

    Hi, um the loading screen works but when I remove parts, the max parts get higher on the game, do you know anything about that

    • @byteblox100
      @byteblox100  3 месяца назад +2

      That’s beyond me. Roblox does a lot of stuff in secret, so maybe when you remove an item it adds like 3 more for some reason

  • @NotOmegaZ3133
    @NotOmegaZ3133 5 месяцев назад

    Erm, it doesnt work for me. Mind helping me?

  • @tactik3
    @tactik3 5 месяцев назад

    doesn't work in my game, the number just freezes after a couple seconds.
    It seems to work in a normal baseplate though which is a bit strange

    • @aleksandarharalanov
      @aleksandarharalanov 4 месяца назад

      sounds like a potato on batteries for a computer issue

  • @Beaniscool
    @Beaniscool 5 месяцев назад +1

    Fun fact, to scale gui to 1,0,1,0 you can actually just write 1,1 instead of 1,0,1,0

    • @Steelxfaze
      @Steelxfaze 4 месяца назад

      ty

    • @pinkaroo69420
      @pinkaroo69420 4 месяца назад

      nah just write 1 (its that simple)

    • @Beaniscool
      @Beaniscool 4 месяца назад

      @@pinkaroo69420 I was gonna say that but I almost never use the same number so I was kinda just using the 1s as placeholders for other numbers in my original comment. Does that make sense?

  • @the_red_gamer
    @the_red_gamer 5 месяцев назад

    Loading screens just slow down the game loading time

    • @TheDevelopmentHive
      @TheDevelopmentHive 5 месяцев назад

      it does, but id rather have a loading screen on lets say, ERLC and wait than everything be invisibile

  • @JadenTheAnimator
    @JadenTheAnimator 26 дней назад +1

    for me it only shows 0/0 - why

  • @jonesb2383
    @jonesb2383 3 месяца назад

    How do I make it, so it can be activated by script? Becasue I am making smth that requires the entire map being reloaded, but I cant figure out how I can make the Loading Screen activate then

    • @martin_taavet
      @martin_taavet Месяц назад

      Put thenloading screen script into modulescript, then just call it from there when you have to

  • @L1s3rg1c
    @L1s3rg1c 5 месяцев назад

    yo nice but can you make it so while its loading the player cant walk and has invincibility?

    • @byteblox100
      @byteblox100  5 месяцев назад

      Yeah just fire a remoteevent to the server whenever a player finishes loading all of their assets, and you can modify their speed and give them immunity (you can do that by giving the character an Instance called something like “SpawnShield”)

    • @pexoz5040
      @pexoz5040 5 месяцев назад

      give them a forcefield till the gui is gone and then destroy it

  • @tekgewet
    @tekgewet 4 месяца назад

    time to remake crosswoods!!! :trollface:

    • @Giga_Muslim750
      @Giga_Muslim750 2 месяца назад

      ur comment is stupid ngl because some games with " loader" are just like numbers and aint waiting for game to actully load like all they do is "1/30"
      and wym time to remake crosswoods i have even tried and if u are srs and gonna try to remake crosswoods using this loader you cant because your coding skills are trash enough for you to search up how to make a loader
      trust me its almost impossible to make crosswoods i have tried 2 TIMES

  • @ClonkBank
    @ClonkBank 22 дня назад

    I wanted to know if anyone can help me with this... the code works perfectly but I have a main menu gui and it just goes over the loading screen. how do I make it so the main menu gui only appears when it's finished loading?

    • @aleksi789
      @aleksi789 19 дней назад

      maybe change zindex or something

  • @cantthinkofaname-lx8st
    @cantthinkofaname-lx8st 5 месяцев назад

    TASHHHHHHHHHHH

  • @ChatGris-vf1iu
    @ChatGris-vf1iu 8 дней назад

    Third tutorial that I have tried today and yet it still doesn't work..
    I am wasting so much time rn °-°

  • @MonitorFrames
    @MonitorFrames 5 месяцев назад

    Can you make a loading bar?

    • @byteblox100
      @byteblox100  5 месяцев назад

      Yeah, you can just increase its length whenever a new asset loads

  • @goober2407
    @goober2407 3 месяца назад

    So the script is working for the most part, but its telling me that PreLoadAsync is not a valid member of ContentProvider. does ayone have any insightful info or fixes?

    • @aleksi789
      @aleksi789 19 дней назад

      you mispelled the function name

  • @dampytofficial
    @dampytofficial 5 месяцев назад +1

    No

  • @theperfecttroller
    @theperfecttroller 5 месяцев назад

    i was worried he was gonna abbreviate content provider like he does tweenservice (ts) 😨

  • @solevxii
    @solevxii 2 месяца назад

    either my pc is too good for this loading screen or what but i dont even seen the gui at all, maybe its broken idk

    • @aleksi789
      @aleksi789 19 дней назад

      your script is broken then because it should have the waits

  • @Highseepkuq
    @Highseepkuq 3 месяца назад

    dosen`t work for me :/

  • @LEPlSTO
    @LEPlSTO 22 дня назад

    didnt work for me

  • @BloxBuilder100
    @BloxBuilder100 3 месяца назад +2

    If Your having problems with The loading screen taking to much time Then Change
    local assets = game:GetDecendants()
    to
    local assets = workspace:GetDecendants()
    that makes it only Wait for The things in The workspace to load

    • @zackrmgaming9349
      @zackrmgaming9349 2 месяца назад +1

      any way to make it even faster? I got a trash laptop and I got 18k assets. tkes at least a minute, I kinda want it to be halved. Any way to divide the amount of time to wait by 2?

    • @HelloHiReal
      @HelloHiReal Месяц назад

      @@zackrmgaming9349 delete preloadedasync line

  • @DevNaN_
    @DevNaN_ 5 месяцев назад +1

    e

  • @MeatMake
    @MeatMake 5 месяцев назад

    Why is there 1252 assets in the baseplate though? lol

    • @TheDevelopmentHive
      @TheDevelopmentHive 5 месяцев назад +2

      serverscriptservice and mainly roblox files that even developers cant really see

  • @Dark_wither392
    @Dark_wither392 Месяц назад +1

    I think I put in script wrong :(

  • @imcoolstickman
    @imcoolstickman 4 месяца назад +1

    mine just stops at 12523 why

    • @byteblox100
      @byteblox100  4 месяца назад

      Assuming you copied the code correctly; it might be an issue with your pc. Sometimes an item doesn’t load fully because of the device and so the loading screen gets stuck

    • @imcoolstickman
      @imcoolstickman 4 месяца назад

      it works now, somehow my assets got from 21k to 1.1k but alright ty@@byteblox100

  • @Dark_wither392
    @Dark_wither392 Месяц назад +1

    It won’t work for me :(

  • @TechWizStudios
    @TechWizStudios Месяц назад

    Wrote and did evereything right and didnt worked i checked 3 times for misspells but nah

    • @ClonkBank
      @ClonkBank 22 дня назад

      worked for me brah check again

    • @TechWizStudios
      @TechWizStudios 22 дня назад

      @@ClonkBank Bro i did 10008829389 times im tired man

  • @SemKuipers-gn7xm
    @SemKuipers-gn7xm 29 дней назад

    It doesn't work...

  • @ChimkenCucumber
    @ChimkenCucumber 5 месяцев назад

    :O

  • @PugDev44
    @PugDev44 2 месяца назад

    i thought it didnt work.... i made one letter wrong..

  • @jonac0426
    @jonac0426 5 месяцев назад

    lodading

  • @RedXVRWorld
    @RedXVRWorld Месяц назад

    It didn’t work

  • @Epecdipas
    @Epecdipas Месяц назад

    Who suffering from this command ?:
    local contentProvider = game:GetService("ContentProvider")
    local ui = script:WaitForChild("ScreenGui"):Clone()
    repeat wait() until game:IsLoaded()
    local assets = game:GetDescendants()
    local maxAssets = #assets
    local plr = game.players.Localplayer
    local plrGui = plr:WaitForChild("PlayerGui")
    ui.Parent = plrGui
    for i, assetToLoad in assets do
    contentProvider:PreLoadAsync({assetToLoad})
    ui:WaitForChild("Frame"):WaitForChild("TextLabel").Text = i.."/"..maxAssets
    end
    wait(1)
    ui:Destroy()

  • @ArtucoDev
    @ArtucoDev 5 месяцев назад +2

    Honestly, I hate loading screens, specially in roblox games.

    • @QUBIQUBED
      @QUBIQUBED 5 месяцев назад +1

      Maybe, but itll look worse if you load into a game where 70% of the parts are transparent

    • @chaoibi
      @chaoibi 5 месяцев назад +1

      @@QUBIQUBED or play while its loading and get huge lag spikes or overall lag

    • @ArtucoDev
      @ArtucoDev 5 месяцев назад +1

      I agree, but most of the time they take 5 to 15 minutes to finish, so I'd rather play with many assets missing until the game finishes loading naturally.

  • @ChuckAIDubs
    @ChuckAIDubs 5 месяцев назад +6

    You didn't make a game, but you watch this video anyway, correct?

    • @TheOneAndOnlyRoco
      @TheOneAndOnlyRoco 5 месяцев назад

      No its actually really useful

    • @dr_mafarioyt4313
      @dr_mafarioyt4313 5 месяцев назад

      Useful? Hmmmm, probably not.
      Interesting? 100%. Even Im not even making a game, its just kinda neat.

    • @RandomGS
      @RandomGS 5 месяцев назад

      @@dr_mafarioyt4313 How can you call this not useful? I now have a loading screen in my game, and i can confirm that it is now 10000% better

    • @ToastysTaken
      @ToastysTaken 5 месяцев назад

      nah but im implementing it rn

  • @PAM_VR
    @PAM_VR 2 месяца назад +4

    This is the script:
    local contentProvider = game:GetService("ContentProvider")
    local ui = script:WaitForChild("ScreenGui"):Clone()
    repeat wait() until game:IsLoaded()
    local assets = game:GetDescendants()
    local maxAssets = #assets
    local plr = game.Players.LocalPlayer
    local plrGui = plr:WaitForChild("PlayerGui")
    ui.Parent = plrGui
    for i, assetToLoad in assets do
    contentProvider:PreloadAsync({assetToLoad})
    ui:WaitForChild("Frame"):WaitForChild("TextLabel").Text = i.."/"..maxAssets
    end
    wait(1)
    ui:Destroy()

  • @HappiTappi10100
    @HappiTappi10100 5 месяцев назад +4

    Nice vid
    Edit: yes i did like my own comment

    • @loco4loco
      @loco4loco 5 месяцев назад

      No one cares you will be…

  • @BendGgHhyeve
    @BendGgHhyeve 18 дней назад

    Time wasted

  • @betapacket
    @betapacket 5 месяцев назад

    `wait` instead of `task.wait` 🤮🤮🤮