Roblox Devs, stop misusing :WaitForChild()!

Поделиться
HTML-код
  • Опубликовано: 29 авг 2024
  • WaitForChild() is misused all the time, and I'm guilty of it too. Hopefully, this video will shed some light on when and when NOT to use WaitForChild()!
    Have you ever wanted to learn Roblox Studio and Roblox Scripting? Check out my course: bit.ly/LuaScri...
    Use code LUA_CODING for 33% off!
    My linktree:
    linktr.ee/crus...
    Have fun scripting!

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

  • @crusherfire1
    @crusherfire1  7 месяцев назад +119

    Do you know someone who is horribly mistreating and abusing WaitForChild()?!?
    Send em this video and let the WaitForChild abuse finally end!

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

      i spam findfirstchild() way to much lmao even when it already exists sometimes

    • @Czectly
      @Czectly 7 месяцев назад

      0:48 does anybody actually do that? i've never seen people on dev forum post anything like that

    • @Czectly
      @Czectly 7 месяцев назад

      7:00 never seen anybody make that mistake

    • @crusherfire1
      @crusherfire1  7 месяцев назад +4

      @@Czectly
      "does anybody actually do that?"
      Oh 100%, especially any beginners who don't really know about WaitForChild. When I first learned scripting, the tutorials I watched had people doing that lol

    • @Czectly
      @Czectly 7 месяцев назад

      off topic but do you know what ConnectParallel() is any time i type function it has came up and their is like little to no info online about i tried messing around with and couldn't figure out what it did i have over 2 years of lua coding experience. every time i connect function it auto pops up and i want to know what it is badly even if it's useless engine feature @@crusherfire1

  • @mrstarfish
    @mrstarfish 6 месяцев назад +171

    The habit is so built in, anytime I don’t see WaitForChild at the start of my scripts I always get the feeling that a laggy client will end up erroring everything, my palms get sweaty, knees weak, arms get heavy.

    • @SilliousBillious
      @SilliousBillious 6 месяцев назад +33

      Mom’s spaghetti 🤑

    • @Raykiv
      @Raykiv 6 месяцев назад +2

      @@SilliousBillious The next lyric was about Vomit on a sweater >:C

    • @SilliousBillious
      @SilliousBillious 6 месяцев назад +8

      @@Raykiv ye ik it’s like there’s vomit on his sweater already I just said that cuz it’s a funny line lol

    • @thex2983
      @thex2983 Месяц назад +9

      He's nervous, but on the surface he looks calm and ready, to write codes.
      But he keeps on forgetting what he wrote down
      The output goes so loud.
      He opens his script but the codes won't come out.
      He's burning out.
      All the code is broken now.
      The clock's run out.
      Time is up, over blow!

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

      @@thex2983 To find it's finality, get script locality
      Breaking your habit, it's broke, WaitForChild() you spoke, just far too easily
      No, he won't have it he knows
      His whole back's to this code, it don't matter it's broke
      He knows that but he's stoked, he's so stagnant
      He knows, when he goes back to this broken code, that's when it's
      Back to the pad again, yo this old game series
      Better go capture this moment and hope it don't pass him...

  • @bongoz8160
    @bongoz8160 7 месяцев назад +578

    waitforchild can sound really wrong if its not specified to be about programming 😭

    • @jso1
      @jso1 7 месяцев назад +170

      "GetChildren" 😂😂

    • @ZylithDev
      @ZylithDev 7 месяцев назад +169

      ClearAllChildren()

    • @XaneMyers
      @XaneMyers 7 месяцев назад

      Instance.ChildRemoved:Wait()
      ​@@ZylithDev That reminds me of how censored Roblox's method's name is. In GZDoom (Doom source port), there's a DECORATE function named “A_KillChildren”.

    • @CrazyDoodEpicLeaves
      @CrazyDoodEpicLeaves 7 месяцев назад +75

      FindFirstChild

    • @boblox_studio_dev
      @boblox_studio_dev 7 месяцев назад +3

      @@SpinnySpiwal let me see

  • @bryaaaaaaaan
    @bryaaaaaaaan 7 месяцев назад +171

    Steven Hawking definitely used Waitforchild()

  • @cupdoesvideos5853
    @cupdoesvideos5853 7 месяцев назад +105

    I know someone who has waitforchilditis. This video was very informative for helping me cure them

    • @crusherfire1
      @crusherfire1  7 месяцев назад +32

      It's truly a terrible disease 😔

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

      ​@@crusherfire1 I had waitforchilditis. Thank you for this cure!

    • @Monkeymario.
      @Monkeymario. 27 дней назад +1

      @@TheDevelopmentHivei had waitforchilditis but i recovered before i watched this video

  • @SpiralAPI
    @SpiralAPI 7 месяцев назад +63

    bro gave a better explanation of replication in a video about WaitForChild than most videos which entire purpose is explaining replication

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

      I finally have a quick video to explain for me instead of explaining it myself and sounding like im yapping ❤️

  • @Monkeymario.
    @Monkeymario. 27 дней назад +12

    3:07 fun fact on older versions of ROBLOX the client used to be able to replicate to the server but due to exploiters the client can now only replicate their avatar and nearby unanchored parts but nothing else

    • @dedbl2ck
      @dedbl2ck 8 дней назад

      this was due to filtering disabled still existing allowing users to replicate the stuff from server to every client

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

    your server replication explanation made multiplayer games very easy to understand

  • @tedbasher3000
    @tedbasher3000 Месяц назад +9

    before 2018 it used to be that all clients can replicate to the server, but then Roblox introduced FilteringEnabled, which makes it the way you're explaining it.

    • @gaylootomatoe
      @gaylootomatoe Месяц назад +2

      exploiters when 2018: noooooooooooo i can not do the hack anymore waaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

  • @brawldude2656
    @brawldude2656 25 дней назад +1

    This was the problem for me. It is hard to find in what order exactly these local and server sided stuff are loading in. Thank you for making this video

  • @MatteoP04ita
    @MatteoP04ita 6 месяцев назад +4

    Astonishing video. I'm going to remove all "WaitForChild" from my scripts right now

  • @tact310
    @tact310 7 месяцев назад +8

    This is one of many times where I'm actually ashamed of myself after watching a video 😅 I have been using waitforchild method in pretty much all of my variables in my local scripts, trying to access stuff that is already loaded in the client like you mentioned. I genuinely didnt like using waitforchild everytime whenever I want to access an instance but I felt it was necessary. After this video I'll definitely have to go on rehab and stop using waitforchild haha... Good video!

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

      Your WaitForChilditis has been cured!

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

    Here's an easier way to explain it.
    Look at it as the Server and the client. The server has to send information to the client, our internet isn't godspeed, so it has to take time receiving this information. Which we call Ping. Milliseconds it took to receive the information.
    Same for the Server. If you're on the client waiting for a part being created by the server by sending you packets of data, you want to use WaitForChild to wait for that part to exist.

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

      Did he not basically say that in the video?

    • @SaleMales
      @SaleMales 29 дней назад

      Even better is (probably, not absolutely sure, kind same thing you said)
      Probably better cuz easier to understand sometimes
      Server have already loaded in, the reason you need to use WaitForChild at server-side only if you sure that this thing won't exist (meaning it will not be there from start of game) when that code is launched
      At client (player) you have to use WaitForChild since we don't have anything loaded in and have to load that in, and if this haven't loaded when some part of code is launched which using Instance, it will cause error, thats why you use WaitForChild
      But ofc at client you can pre-load things like GUI's by putting them in ReplicatedStorage and using game:IsLoaded() and game.Loaded:Wait() (As I remember), and then for that gui you don't have to use WaitForChild at it anymore (Probably, I don't use this anyway)

    • @canyouhelpmehuh411
      @canyouhelpmehuh411 2 дня назад

      Nice

  • @squify7226
    @squify7226 7 месяцев назад +16

    EXACTLY! I didn't use waitforchild unless it would break when I didn't use it because it wouldn't load, or when I needed to use it, I was always confused why people spam waitforchild like every line of code

    • @Im557
      @Im557 6 месяцев назад

      wait why are you being confused over how someone else codes?

    • @squify7226
      @squify7226 6 месяцев назад

      because waitforchild is not supposed to be used every time, only in certain instances, so i was confused why everyone just spammed it every line of code instead of writing code how its intended to be written and save time@@Im557

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

      @@Im557 Confused over the unnecessary use of the :WaitForChild() function. And it isn't "how someone else codes", it's completely useless, and a waste of time to write.

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

      @@FloxyCola this was 4 months ago

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

      @@Im557 And I just found the video :)

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

    Hi just wanted to say thank you! Me and my friends are learning lua rn and this video will hopefully help us from making a bunch of mistakes!

  • @Ghillis_Peyton
    @Ghillis_Peyton 7 месяцев назад +4

    now i gotta go back to all my scripts and fix this lol. Great video!

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

    A great example of when you should use WaitForChild that you kind of missed is character loading.

    • @crusherfire1
      @crusherfire1  7 месяцев назад +9

      That would fall into the category of instances created during runtime, so yes, use WaitForChild!

    • @XaneMyers
      @XaneMyers 7 месяцев назад +2

      ​@@crusherfire1Well, for this, either WaitForChild() or Player.CharacterAdded:Wait() works.

    • @crusherfire1
      @crusherfire1  7 месяцев назад +3

      @@XaneMyers
      Yes, and also if you needed to access any descendants of the character, make sure to use WaitForChild!

    • @XaneMyers
      @XaneMyers 7 месяцев назад

      @@crusherfire1 Player characters are tricky to reference and access, so I use my own module to store all of my character instance references. (I do use WaitForChild() while getting them, though.)

    • @waflanta
      @waflanta 7 месяцев назад +2

      local character = player.Character or player.CharactedAdded:Wait()

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

    This is a well-made video, explaining extremelly well the use of :WaitForChild(). This was definitely worth the 17 minutes. This particularly helped me to fix an error on my script that i did not know how to fix.
    Good job man, keep going!

  • @lazypezt810
    @lazypezt810 7 месяцев назад +3

    Unironically a banger explanation
    I will go home and fix some parts of my script now
    Also i genuinely learned much more about replication on this video than anything else lmao

  • @TheOVRD
    @TheOVRD 7 месяцев назад +8

    WaitForChild() sounds exactly like something an adult roblox player would use and abuse in their life.....

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

    thanks bro this is gonna cure my WaitForChilditis

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

    everytime i script, i think about this: we don't wait for child, we find the childs

  • @y0y55
    @y0y55 2 дня назад

    I like that at random moments you start to sound like squidward

  • @JavonDevv9000
    @JavonDevv9000 6 месяцев назад +13

    this is why when you get to the end of an obby game and use those fly paths no one else can see it

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

      Fun fact, fly paths have been in ROBLOX for over a decade. A lot of the tools were coded before server-client filtering was put in place. Back then, clients could do nearly whatever they wanted which was a huge security issue, including spawning bricks replicated to other players.

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

      @@MatchaFlavoredTea woah that's really interesting, thanks for the fact

    • @NewPuncher
      @NewPuncher Месяц назад +2

      me when I lie

    • @Jonskipvp
      @Jonskipvp 29 дней назад +2

      ​@@NewPuncher fr

  • @Monkeymario.
    @Monkeymario. 27 дней назад +2

    1:46 a better way to illustrate this would be to show a computer instead of their face

  • @vfisha
    @vfisha 7 месяцев назад +3

    that random model of parts looks cool you should leave it in the description

    • @crusherfire1
      @crusherfire1  7 месяцев назад +4

      You can make it yourself via the command line! Just create 500-1000 parts, color them randomly, size them randomly, and then position them randomly.

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

    This helped alot! Also i'm sure :WaitForChild() can also be used in hetting the player's character as unlike many who use *_player.Character or player.CharacterAdded:Wait()_*
    Some use *_Workspace:WaitForChild(player.Name)_* right?

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

      Not the best option as there might be another object in the workspace with the same name as the player.

    • @SaleMales
      @SaleMales 29 дней назад

      @@Secrethack_ that's why character added exists tho
      You can also put players in folder (It requires character added too)

    • @Spelo1
      @Spelo1 29 дней назад

      ​@@SaleMalesI don't think they were against characteradded tho

  • @deoverseers
    @deoverseers 7 месяцев назад +6

    I use ".", but if an object is added, I use waitforchild, or I use findfirstchild when eoblox messes up and guves me a random error when the object CLEARLY IS A MEMBER

  • @Monkeymario.
    @Monkeymario. 27 дней назад +1

    3:35 and most importantly permission to move your ROBLOX avatar

  • @Kryst0v
    @Kryst0v 7 месяцев назад +2

    Roblox studio is basically the engine made for these who tired Unreal but got traumatized from the struggle to set up a simple dedicated server

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

    My Dad had in his programing :WaitForChild(Never).

  • @thebrian2p
    @thebrian2p Месяц назад +3

    dads spam that in their code 😂😂😂

  • @Monkeymario.
    @Monkeymario. 27 дней назад +1

    6:59 STOP DONT USE WAITFORCHILD

  • @shadowstorm202
    @shadowstorm202 7 месяцев назад +1

    the poblem of FindFirstChild is when the instance load after the script of FindFirstChild and it don't find it

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

    You can't stop me

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

    Pretty sure you can do
    Repeat wait() until game:isloaded(); as well instead of waitforchild

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

      That would be unnecessary polling of a condition when you can listen to an event instead (game.Loaded)! Also, wait() is deprecated and task.wait() should be used for new work!

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

      ​@@crusherfire1 Yeah, I forgot about task.wait(), you can use task event as well. But Repeat task.wait() until game:isloaded(), will still make the job done and it's minor computational resources even if it isn't the best practice it's still somewhat reliable.

  • @FreyzS
    @FreyzS 7 месяцев назад +3

    are you using theme? how to make my roblox studio look like yours?

    • @crusherfire1
      @crusherfire1  7 месяцев назад +3

      It's just modifications to some script editor settings in Studio. There is a plugin you can grab that has several presets available to choose from:
      create.roblox.com/store/asset/3617323299/

    • @FreyzS
      @FreyzS 7 месяцев назад

      @@crusherfire1 thank you

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

    0:47 Everytime i dont put waitforchilds in every line, my code works in studio but breaks in actual games

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

      Don't know about server (Server don't need these)
      But in client it is probably loading smh faster or have things pre-loaded

  • @Jaypiasco
    @Jaypiasco 7 месяцев назад +1

    ogod I feel called out sm, please hab mercy for i have sin of WaitForChild misuse

  • @amooingdog3297
    @amooingdog3297 24 дня назад +1

    They can't WaitForChild to grow up

  • @Wannabe-channeL
    @Wannabe-channeL 7 месяцев назад +1

    I only used it when that object can exist only one and never be deleted, mostly at the top of the script when I need a reference of something.

  • @Spooky.Studios
    @Spooky.Studios 7 месяцев назад +2

    in local scripts, i add this to the first line: (especially if it's replicated first, if not i just use it in scripts that runs right after replicatedfirst)
    if not game:IsLoaded() then game.Loaded:Wait() end
    it helps me alot and sometimes i don't even need to use :WaitForChild() at all

  • @_k.
    @_k. 7 месяцев назад +2

    7:00 This part is wrong. (edit: no im wrong, at some point they changed things) Quote from the PlayerGui page in the roblox documentation:
    "When the player's Player.Character spawns for the first time all of the contents of StarterGui are automatically copied into the player's PlayerGui."
    And since its cloned by the server, you need to make sure it's replicated. A workaround is to not use startergui at all and clone stuff to playergui through a local script

    • @crusherfire1
      @crusherfire1  7 месяцев назад +2

      Nope. Please go ahead and test it yourself, I already have.
      If you have a local script inside of the Gui in StarterGui, you do not need to wait for the replication of the descendants.
      If you have a local script outside of StarterGui trying to grab the GUI, you only need to wait for the GUI itself to be cloned into the PlayerGui folder. However, you do not need to wait for the descendants.
      I have dozens of local scripts for GUIs not even located in StarterGui and I only need to wait for the GUI itself, there is no need to use WaitForChild on any descendants of the GUI.
      This is probably specialized behavior only for the StarterGui container.

    • @_k.
      @_k. 7 месяцев назад

      @@crusherfire1 tried it, you're right. but this doesn't even make sense with what you're saying at 5:49, the gui is cloned by the server at runtime right? or is there just an exception for this cloning to work differently? i swear it wasn't always like this

    • @crusherfire1
      @crusherfire1  7 месяцев назад +1

      @@_k.
      Yes, the GUI is cloned by the server. You can prove that by listening to the ChildAdded event on both the client and server for the PlayerGui folder, and you will see it is added on the server first and then the client.
      Now cloning is a synchronous operation, so it would make sense for all of the descendants to be made available (if cloning an object on local script to be accessed by another local script or server script to be accessed by another server script).
      But with the StarterGui service, the behavior is a little more interesting since it being cloned by the server yet we don't need to wait for the descendants of the GUI. There must be some kind of special behavior going on behind the scenes that isn't well documented. However, I guess this would make sense because in the past you would actually have to use WaitForChild when accessing the PlayerGui folder since it was created by the server, but Roblox did something internally where you don't have to use WaitForChild.
      Another developer did some tests and also confirmed that you don't need to use WaitForChild.
      devforum.roblox.com/t/local-script-under-s%D1%81reengui-runs-only-after-all-gui-descendants-are-fully-replicated-to-playergui/2510092

    • @_k.
      @_k. 7 месяцев назад

      @@crusherfire1 alright, thank you!

    • @_k.
      @_k. 7 месяцев назад

      they really made waitforchild unnecessary for gui at some point between july and august without telling anyone...

  • @averagedevroblox
    @averagedevroblox 6 месяцев назад

    A "Child" is basically a object. For those who think its weird to call a Function in a Programming Language like that. But what about "Parent" which is a Folder...

  • @Monkeymario.
    @Monkeymario. 27 дней назад +1

    oh also devs stop missusing GetService most of the time it's useless

  • @m3s5_0f_numb3r5
    @m3s5_0f_numb3r5 7 месяцев назад +3

    Learned a lot from this video,
    and none of it had to do with WaitForChild() 😂
    But no really lots of small stuff I didn’t know about. Good video. 👍

  • @tomato.mp4
    @tomato.mp4 23 дня назад

    Video:WaitForChild("Tomato"):WaitForChild("Comment"):WaitForChild("TextLabel")

  • @usernamehere_
    @usernamehere_ 23 дня назад

    I’m gonna guess before I even watch this is that WaitForChild shouldn’t be chained.

  • @devandyEsp
    @devandyEsp 3 месяца назад +1

    It looks ugly if you use them unnecessarily

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

    Wait so this is why the game freaks out when, say, multiple people are sitting on a moving physics object?

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

    we aint waiting for any child

  • @user-oy5mk2eq3h
    @user-oy5mk2eq3h Месяц назад

    Mom:Goes to shopping mall with child
    Child:Sees Hot Wheels on Toys"R"Us and getting buzy on it
    Mom:waitforchild()

  • @tomato.mp4
    @tomato.mp4 23 дня назад

    lazy method: just never use waitforchild until it errors

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

    How about for GUIs? Like if you place your GUI scrips inside somewhere else like StarterPlayerScripts

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

      You would need to use WaitForChild on GUIs being cloned to the player's PlayerGui folder in scripts that are outside of that particular GUI.
      Fortunately, however, you do not need to use WaitForChild on any of the GUIs descendants!

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

      @@crusherfire1 So like, I just need to do a WaitForChild for each of the ScreenGUIs under PlayerGUI? Thank you, this video is incredibly helpful!

  • @user-ly1bk5ck5i
    @user-ly1bk5ck5i 6 месяцев назад +2

    Why

  • @Kart
    @Kart 7 месяцев назад

    thanks i have never not used wait for child ever and now i might not use it as much maybe

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

    Missed opportunity to say "WaitFor Child Abuse"

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

    Did you guys really spend 17 mins watching THIS?

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

    Thanks for the invitation!!!
    local MUAHAHA = game:WaitForChild("ReplicatedStorage"):WaitForChild("Folder"):WaitForChild("Folder"):WaitForChild("Folder"):WaitForChild("Folder"):WaitForChild("Folder"):WaitForChild("Folder"):WaitForChild("Folder"):WaitForChild("Folder")

  • @linuskat6446
    @linuskat6446 7 месяцев назад +2

    Don't use wait() use the task library instead which has task.wait()

    • @crusherfire1
      @crusherfire1  7 месяцев назад +2

      Of course. The code that had the wait() in it was written before the task library was released.

    • @MrCrackbear
      @MrCrackbear 7 месяцев назад

      @@wwa-du7jw it's slower and less accurate. just ran this in the studio console after hitting play on one of my test places:
      12:41:13.622 > print(wait()) - Studio
      12:41:13.666 0.04290370000000365 47.31120865861885 - Client
      12:41:23.371 > print(task.wait()) - Studio
      12:41:23.381 0.009695800000002919 - Client

    • @liqznaa
      @liqznaa 7 месяцев назад

      apparently it ruins something, i think performance? but thats what ive heard on devforum + im not a scripter@@wwa-du7jw

    • @a_username_lol
      @a_username_lol 7 месяцев назад

      @@wwa-du7jw wait has weird delays if u have low fps i think but im not sure

  • @f-149
    @f-149 7 месяцев назад +2

    Yeah I've seen byteblox doing that. It completely irritated me.

  • @Lured17
    @Lured17 5 дней назад

    I am just curious, where do you get all of this knowledge?

  • @amit6875
    @amit6875 7 месяцев назад +2

    This is actually really helpfull thx brotha. Hope you can make more videos like this

  • @Kagedaze
    @Kagedaze 7 месяцев назад +2

    as a man who likes waiting for children and the touched event, I found this video extremely helpful.

  • @massezagni4249
    @massezagni4249 6 дней назад

    Thanks a lot for the video!

  • @eaeaeaeaeaeaeaeaeaeae
    @eaeaeaeaeaeaeaeaeaeae 7 месяцев назад +2

    great video, but im going to continue misusing it

  • @ilovemywhiteshoes
    @ilovemywhiteshoes 21 день назад

    why did this show up in my recommended thing?????

  • @sifenus
    @sifenus 7 месяцев назад +1

    Thank you for this video, really informative!

  • @bmfnatedogg
    @bmfnatedogg 7 месяцев назад

    to be honest the only time i acctually used it was when a item you had to pick up would just kill the user getting it so i just made a script for the player that waits for the child to hold it then enabled its scripts

  • @glexix1151
    @glexix1151 21 день назад

    Thank you! That was helpful

  • @yuuwa_rblx
    @yuuwa_rblx 29 дней назад

    But... consistency!!!

  • @dhruv6489
    @dhruv6489 7 месяцев назад +2

    but whats the problem even if you use waitforchild, i dont think there any implications to use it right

    • @crusherfire1
      @crusherfire1  7 месяцев назад +6

      Well first off, chaining a whole bunch of WaitForChild function calls takes much longer to type than directly indexing.
      Secondly, it makes your code harder to read.
      Thirdly, WaitForChild shouldn't be used when you don't need to wait for a child, it's a gross misuse of the function.
      If you want to save time typing (which is a big deal when programming) and you know you don't need to use WaitForChild, then don't use it lol

    • @jso1
      @jso1 7 месяцев назад

      so it doesnt affect performance? ​@@crusherfire1

  • @bigboy8285
    @bigboy8285 7 месяцев назад +2

    indeed, go get the milk instead.

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

    Simple solution: just don't wait for the child

  • @AmCheez
    @AmCheez 20 дней назад

    Hey, I have the exact opposite problem where I don’t use it at all…
    Do you have a video that cures that?

  • @vlogsquad7113
    @vlogsquad7113 8 дней назад

    Could you cover the difference between findfirstchild and waitforchild

  • @aGuyWhoWantsToSudyIGuessEGYbtw
    @aGuyWhoWantsToSudyIGuessEGYbtw 6 месяцев назад

    Amazing Tutorials Thx For The Help

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

    stop calling me out bro i literally have 15k instances of code in my skill handler that use wait for child, i don’t think i can change it man

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

    are you going to continue doing things like this? cuz u got a new sub fr

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

    Let me just whip out my notebook

  • @6IM_
    @6IM_ 2 дня назад

    i never had this problem

  • @BodenPflanze
    @BodenPflanze 27 дней назад

    How did you do the split screen with both Client and server view. I usally switch between them (when im working on client scripts) which is kinda annoying

  • @justwave3407
    @justwave3407 7 месяцев назад

    i never knew i had waitforchilditis, but after seeing this i got cured

  • @skcarti
    @skcarti 23 дня назад

    can you make a video about your script editor? whats the font ur using?

  • @Mr.Smiler1
    @Mr.Smiler1 7 месяцев назад

    when scripters need to wait for a child comes out from school:

  • @execute214
    @execute214 7 месяцев назад +2

    the wait for child chain

  • @MichaelObamaSon
    @MichaelObamaSon 7 месяцев назад

    amazing knowledge, taught me stuff i didnt know. instant sub

  • @polarisprog
    @polarisprog 7 месяцев назад

    Thanks man I'm one of the people who have waitforchilditis

  • @Venu5s
    @Venu5s 7 месяцев назад +2

    Oh it's a coding tutorial 😅

  • @JoaoMPdS
    @JoaoMPdS 25 дней назад +1

    Hmmm... I'll keep using it anyways XD

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

    Im waiting for my child

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

    me:WaitForChild("Brain")

  • @jasonsgone
    @jasonsgone 6 месяцев назад

    im sad that this is all basic knowledge to me but i still suck at scripting

  • @handsomesponge9952
    @handsomesponge9952 24 дня назад

    Bruh i just do it without wait/findfirstchild if im absolutely sure that the child im searching for is there. (Assuming another script doesnt add it/its sımething like armour and waitforchild is necessary.. or not)

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

    12:41 with the recent audio api update I’ve ram into issues wiring stuff since the script is running before everything loads, if I use a waitforchild on for example a parent of an object but that object has children it’ll still give me an error since the child didn’t load yet, I’m confused as to how yours isn’t the same since you mentioned the script only runs after everything loads?

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

      Are your instances in the workspace? If you have streaming enabled + items in the workspace, you'll have to use WaitForChild, otherwise, you won't need to if streaming is disabled.

  • @aarneon24
    @aarneon24 7 месяцев назад

    so I will just abandon my child?

  • @randomchannel-kh7oc
    @randomchannel-kh7oc Месяц назад

    i use it when a free model uses it

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

    Me who uses the WaitForKing() variable instead as it is more powerful:

  • @Termoz
    @Termoz 7 месяцев назад +1

    literal child abuse...

  • @Proxiw
    @Proxiw 7 месяцев назад

    i agree that developers should stop misusing their child()