How to make a working meteor | Roblox studio

Поделиться
HTML-код
  • Опубликовано: 3 янв 2025

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

  • @abrathecadabra
    @abrathecadabra  Год назад +2

    Hello everyone, I've finally made the meteor shower tutorial that most of you asked for
    Here's the link: ruclips.net/video/5AjBuSZbe0Y/видео.html

  • @abrathecadabra
    @abrathecadabra  2 года назад +3

    everyone, pardon me for not replying on time to questions

    • @MinosPrimeGaming69
      @MinosPrimeGaming69 2 года назад +2

      oklahoma

    • @abrathecadabra
      @abrathecadabra  2 года назад +1

      @@MinosPrimeGaming69 i agree

    • @TheoneGuyYT
      @TheoneGuyYT 2 года назад +2

      Oh hello I’m new account of Kaiden lol also can u make videos again also I left the Kaiden Collins account because my sister uses it .-.

    • @abrathecadabra
      @abrathecadabra  2 года назад +1

      @@TheoneGuyYT mind saying nothing personal here?

    • @TheoneGuyYT
      @TheoneGuyYT 2 года назад +1

      Ok

  • @dasslav3193
    @dasslav3193 9 месяцев назад +1

    thx

    • @abrathecadabra
      @abrathecadabra  9 месяцев назад +1

      No problem! I'm happy I could help!

  • @Grassplant2012
    @Grassplant2012 Год назад +1

    Bro is a Chad for keeping the hello world thingy 🗿🗿🗿

  • @Gamernoobub
    @Gamernoobub Год назад +1

    can you add different meteors or does it only work with 1 type?

  • @sillyza
    @sillyza 9 месяцев назад +1

    I DID IT!!!!!!!!!!!! thank you now im very pro!!!!!

    • @abrathecadabra
      @abrathecadabra  9 месяцев назад +2

      NO PROBLEM!!! CONGRATULATIONS ON BECOMING VERY PRO!!!! I HOPE TO PROVIDE FURTHER ASSISTANCE IN YOUR JOURNEY!!!!!

    • @sillyza
      @sillyza 9 месяцев назад

      @@abrathecadabra REAL!!!!!!!!!!!

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

    Do you know how to make it so that it does a certain amount of damage instead of immideately killing?

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

      To make it so that the meteor does a certain amount of damage instead of immediately killing, do this:
      First things first, we have to set the explosion's BlastPressure to 0. This way the explosion won't deal explosive damage:
      print("Hello world!")
      script.Parent.Anchored = false
      local explosion = nil
      function touched()
      script.Parent.Fire:Destroy()
      script.Parent.Transparency = 1
      -- creating the explosion
      explosion = Instance.new("Explosion")
      explosion.Parent = script.Parent
      explosion.Position = script.Parent.Position
      explosion.BlastPressure = 0 -- editing the blast pressure here
      wait(2)
      script.Parent:Destroy()
      end
      script.Parent.Touched:Connect(touched)
      Just paste the code above into the script inside the meteor.
      Now, create a second part and make it spherical. Set its position to the meteor's position.
      You can scale it as big as you want.
      Make sure to weld the sphere to the Meteor using WeldConstraints!
      Now, make two NumberValues inside the sphere, call one "DamageCooldown" and the other one "Damage". the Damage value is the amount of damage you want the meteor to inflict, and the DamageCooldown value is the cooldown before the MeteorDebounce value can become false / true again (I will talk about it later).
      Now, create a script inside the sphere, and paste in the following:
      script.Parent.Touched:Connect(function(Part)
      if Part.Parent:FindFirstChild("Humanoid") then -- find the humanoid object inside the character
      if not Part.Parent:FindFirstChild("MeteorDebounce") then -- if we can't find the MeteorDebounce value, then create one:
      local MeteorDebounce = Instance.new("BoolValue") -- creating the MeteorDebounce value
      MeteorDebounce.Parent = Part.Parent
      Part.Parent.Humanoid.Health -= script.Parent.Damage.Value -- inflicting damage to the character
      MeteorDebounce.Value = true -- setting MeteorDebounce to true to avoid doing damage again
      wait(script.Parent.DamageCooldown.Value) -- waiting to set the DamageDebounce value is set to true
      MeteorDebounce.Value = false -- setting the value to false
      else -- if we did find the MeteorDebounce value, then do the following:
      if Part.Parent:FindFirstChild("MeteorDebounce").Value == false then -- if the value is false, then:
      Part.Parent.Humanoid.Health -= script.Parent.Damage.Value -- inflict damage
      Part.Parent:FindFirstChild("MeteorDebounce").Value = true -- set the MeteorDebounce value to true
      wait(script.Parent.DamageCooldown.Value) -- waiting to set the DamageDebounce value is set to true
      Part.Parent:FindFirstChild("MeteorDebounce").Value = false -- setting the MeteorDebounce value to false
      end
      end
      end
      end)
      The comments explain everything.
      And that should be it! If you have any questions you can ask me them here!
      If you are too lazy to make the meteor yourself, I did the whole thing for you and published it as a model on the creator marketplace: create.roblox.com/dashboard/creations/store/84340989946398/configure
      I'm so sorry for replying so late!

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

      @@abrathecadabra thank you so much!

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

      No problem, @@altoid211! I'm always happy to help! ❤

  • @Icy2018
    @Icy2018 11 месяцев назад +1

    How do i make that happen when i use a tool and where i click it spawns

    • @abrathecadabra
      @abrathecadabra  11 месяцев назад +1

      Hello,
      This will be a bit advanced, but I hope that my quide through this script will help you understand everything.
      First, create a tool and parent it to StartPack. Create a LocalScript inside of it;
      Second, parent the meteor to ReplicatedStorage, create a RemoteEvent in ReplicatedStorage, too;
      Third, create a script in ServerScriptService.
      In the LocalScript inside the tool write:
      local Debounce = false -- Debounce, or basically making the function be unable to repeat twice
      local Players = game:GetService("Players") -- Get players service
      local Player = Players.LocalPlayer -- Local Player
      local Mouse = Player:GetMouse() -- Get Player's mouse
      script.Parent.Activated:Connect(function() -- fire function below when tool is activated (player clicks / taps somewhere)
      if Debounce == false then -- If debounce is false, fire the function
      Debounce = true -- because debounce is set to true, the function will run only once
      game:GetService("ReplicatedStorage").RemoteEvent:FireServer(Mouse.Hit) -- fire RemoteFunction in replicated storage while also passing the mouse.hit value so we can spawn a meteor globally
      wait(5) -- cooldown, adjust to your liking
      Debounce = false -- make the function be able to fire again, therefore, it makes meteors be able to spawn again
      end
      end)
      In the script inside ServerScriptService write:
      game:GetService("ReplicatedStorage").RemoteEvent.OnServerEvent:Connect(function(Player , MousePosition) --, Player - get the player who sent the function locally, MousePosition - get Mouse.Hit value; if a LocalScript fires a the remote function called "RemoteEvent" in replicated storage then run the function below
      local MeteorClone = game:GetService("ReplicatedStorage").Meteor:Clone() -- create a clone of the meteor
      MeteorClone.Parent = game.Workspace -- parent the meteor to workspace
      MeteorClone.Position = Vector3.new(MousePosition.X, 100, MousePosition.Z) -- set the meteor's position to MousePosition.X -- Meteor clone's X coordinate , (any Y value) -- Meteor clone's Y coordinate, replace it with any number, MousePosition.Z -- The meteor clone's Z coordinate
      -- If you want the meteor to spawn at your mouse's Y coordinate too, then replace the Y coordinate with MousePosition.Y
      end)
      Reply to this message if you have any questions.
      Hope this helped!

    • @Icy2018
      @Icy2018 11 месяцев назад +1

      @@abrathecadabra Whenever i click nothing happens

    • @abrathecadabra
      @abrathecadabra  11 месяцев назад +1

      ​@@Icy2018 Weird, it works on my side. Are you sure you had the tool equipped? I suggest moving the meteor slightly upwards to avoid immediate collision, therefore not getting the meteor destroyed early.
      By any chance, can you please copy and paste the whatever error that showed up in Output? In case you don't know, to open output press View, then find and click the small icon that looks like this: >_→ . It's second and on top of all small icons.

    • @Icy2018
      @Icy2018 11 месяцев назад +1

      @@abrathecadabra sadly there wasn’t a error in the output

    • @abrathecadabra
      @abrathecadabra  11 месяцев назад +1

      @@Icy2018 Check if your tool has RequiresHandle off. If so, turn it on by clicking the checkbox.

  • @MinosPrimeGaming69
    @MinosPrimeGaming69 Год назад +2

    e

  • @Moruko_desu
    @Moruko_desu Год назад +1

    I need help,what do i do if i want the explosion to be a 3d/mesh explosion instead of 2d?

    • @abrathecadabra
      @abrathecadabra  Год назад +1

      The thing you can do is put a mesh (your explosion) in ReplicatedStorage.
      At the top of the script write:
      local Explosion = your mesh part here
      and in the "touched" function (basically the function that gets executed in the meteor when it gets touched) replace the lines where the explosion is created with this:
      Explosion.Parent = game.Workspace
      Explosion.Position = Meteor.Position
      I recommend setting CanCollide in your explosion mesh to false, because it sometimes causes problems with players being near it, don't forget to anchor the explosion too
      edit: sorry for not replying sooner

    • @Moruko_desu
      @Moruko_desu Год назад

      @@abrathecadabra thanks

    • @abrathecadabra
      @abrathecadabra  Год назад +1

      @@Moruko_desu No problem, hope your project will go well =D

    • @undertheground3862
      @undertheground3862 Год назад

      @@abrathecadabra Hey sorry for asking but what is a mesh path? also how can we make this into a tool?

    • @abrathecadabra
      @abrathecadabra  Год назад

      @@undertheground3862 Not mesh path, MESH PART. It's basically a creation imported from (mostly) blender to roblox, better explanation here: create.roblox.com/docs/building-and-visuals/studio-modeling/meshes-in-studio
      I didn't understand what you meant by "how can we make this into a tool"
      Sorry for late response

  • @stormgaming9857
    @stormgaming9857 Год назад +1

    How do you make it so it can kill the players when close

    • @abrathecadabra
      @abrathecadabra  11 месяцев назад +1

      I'm so sorry for not responding earlier. I didn't get notified of this message.
      The meteor should be able to kill the players when they are close due to the explosion, but, if you want to make them die immideately, then follow my steps:
      First, create a Part, make sure it's size is a bit bigger than the meteor. But you can make it as big as you wish.
      Second, create a script inside the part.
      Set the part's position to the meteor's position. Weld the part and the meteor together using WeldConstraint. Make sure to set the part's CanCollide to false.
      In the script inside the part write:
      local Debounce = false -- making the function be unable to fire twice
      script.Parent.Touched:Connect(function(Part) -- if something touches the part, fire the event below
      if Part.Parent:FindFirstChild("Humanoid") then -- if the part's parent has a humanoid object, then it should be a player/humanoid, therefore, we can kill it
      if not Debounce then -- if debounce is false, then fire the function
      Debounce = true -- function cananot fire
      Part.Parent.Humanoid.Health -= 100 -- kill the humanoid
      wait(1) -- cooldown
      Debounce = false -- function can fire again
      end
      end
      end)

  • @CMDexe
    @CMDexe 2 года назад +1

    hey is it possible to make if explosion happens near you you trip

    • @abrathecadabra
      @abrathecadabra  2 года назад

      the best solution here is to make a sphere around the meteor and weld the sphere to the meteor using WeldConstraints, then adding a script into it
      wait till the sphere is touched by
      "script.Parent.Touched:Connect(function(Part)
      end)"
      then we need to get the player to sit, presumably we are going to think that a player's HumanoidRootPart touched it
      to do that write:
      " if Part.Parent:FindFirstChild("Humanoid") then
      Part.Parent:FindFirstChild("Humanoid").Sit = true
      end"
      i highy reccommend you using an if statement when it comes to FindFirstChild, because if you dont there will be errors saying that the part you are searching for (in this case "Humanoid") does not exist

    • @CMDexe
      @CMDexe 2 года назад +1

      @@abrathecadabra bro thanks for the effort ima sub

    • @abrathecadabra
      @abrathecadabra  2 года назад

      @@CMDexe no worries mate, and also thanks for the sub, i appreciate it =)

  • @tempy5280
    @tempy5280 2 года назад +1

    hey i was wondering if you could help me and if you could make the meteor spawn where you click?

    • @abrathecadabra
      @abrathecadabra  2 года назад +1

      really simple, insert a LocalScript into StarterPlayerScripts and the meteor into ReplicatedStorage, in the script try finding the player's mouse using
      "local Mouse = game:GetService("Players").LocalPlayer:GetMouse()",
      and then wait till the player clicks using "Mouse.Button1Down:Connect(function()".
      After that clone the meteor and set the clone's parent to game.Workspace
      after that make its position be the mouse's position (MeteorClone.Position = Mouse.Hit.Position)

    • @zeds5458
      @zeds5458 Год назад

      @@abrathecadabra how would you turn this into a tool?

    • @abrathecadabra
      @abrathecadabra  Год назад +1

      ​@@zeds5458 Didn't properly understand, but if you want for this to be a tool but with the same idea, here:
      Make sure the meteor is in ReplicatedStorage
      Create a tool in StarterPack
      Go into the tool's properties and find RequiresHandle, tick it and make sure it's false (off). This is very important since we are avoiding errors later
      Create a LocalScript in the tool,
      Now we need to track when the tool is activated (when player clicks on the screen), we can do that by doing so:
      script.Parent.Activated:Connect(function()
      end)
      Now we need to clone the meteor, inside the function write:
      local MeteorClone = game.ReplicatedStorage.Meteor:Clone() -- Clone the meteor, create a variable for it's clone
      MeteorClone.Parent = game.Workspace -- parent the meteor to workspace
      MeteorClone.Position = game:GetService("Players").LocalPlayer:GetMouse().Hit.Position -- Track the player's mouse, find where it hit and get its position
      The whole code:
      script.Parent.Activated:Connect(function()
      local MeteorClone = game.ReplicatedStorage.Meteor:Clone()
      MeteorClone.Parent = game.Workspace
      MeteorClone.Position = game:GetService("Players").LocalPlayer:GetMouse().Hit.Position
      end)
      sorry for late response
      SHOULD NOTE THAT THIS IS LOCAL, ONLY THE CLIENT (PLAYER) CAN SEE THIS
      If you wish for it to be Server-sided, use RemoteEvents in ReplicatedStorage, more about those here: create.roblox.com/docs/reference/engine/classes/RemoteEvent
      If you read the documentation, you will probably figure it out yourself
      Tell me if you need help

  • @mattyg1982
    @mattyg1982 10 месяцев назад +1

    For some reason its not working
    😭😭

    • @abrathecadabra
      @abrathecadabra  10 месяцев назад +1

      Check if CanTouch in the meteor is Enabled and please show me your script.

  • @mattyg1982
    @mattyg1982 10 месяцев назад +1

    :c

  • @usercodwarzonePS5
    @usercodwarzonePS5 2 года назад +1

    Can u make how to make a meteor shower tutorial pls? i liked video

    • @abrathecadabra
      @abrathecadabra  2 года назад +1

      Someone asked me about this in the comments, but sure thing!

    • @usercodwarzonePS5
      @usercodwarzonePS5 2 года назад

      @@abrathecadabra Thanks!

    • @abrathecadabra
      @abrathecadabra  2 года назад

      @@usercodwarzonePS5 no worries mate, stay tuned

    • @Grassplant2012
      @Grassplant2012 Год назад

      Can you just duplicate the meteor? Because all meteor shower really is just a whole bunch of meteors crashing down.

    • @abrathecadabra
      @abrathecadabra  Год назад

      ​@@Grassplant2012 thats one way to do it, however those duplicated meteors of yours will end - it wont be infinite, thats why its best to use a while loop, it's infinite and at the same time you can end it with break

  • @le4d23
    @le4d23 2 года назад

    how do i make it do damage to every one but you if added to a tool

    • @abrathecadabra
      @abrathecadabra  2 года назад

      i dont get it what you mean by "if added to a tool", but im gonna guess that the meteor cant damage you while you have the given tool equiped. Edit the script lower if i guessed wrong.
      create a local variable with the name "Forcefield", and set it to nil, we are doing this to avoid errors later
      local Forcefield = nil
      now we need to track when the tool is eqipped:
      script.Parent.Equipped:Connect(function()
      end)
      in the function write:
      Forcefield = Instance.new("ForceField", script.Parent.Parent)
      this will overwrite the "Forcefield" variable.
      just to balance things its best to make the forcefield go away after the tool is uneguipped, we can track when the tool is unequipped by doing so:
      script.Parent.Unequipped:Connect(function()
      end)
      now we need to destroy the forcefield,
      in the function write:
      Forcefield:Destroy()
      Forcefield = nil
      THE WHOLE SCRIPT:
      local Forcefield = nil
      script.Parent.Equipped:Connect(function()
      Forcefield = Instance.new("ForceField", script.Parent.Parent)
      end)
      script.Parent.Unequipped:Connect(function()
      Forcefield:Destroy()
      Forcefield = nil
      end)
      (yes from now on i will include the full script in answers)

  • @stormgaming9857
    @stormgaming9857 Год назад +1

    I got the Meteor from the Link and it was not working and invisible

    • @abrathecadabra
      @abrathecadabra  Год назад +1

      Did you drag it upwards from the map to prevent it from falling and exploding before you could see it?

    • @stormgaming9857
      @stormgaming9857 Год назад +1

      @@abrathecadabra it was pretty far up and I saw nothing although it could be that the game I was trying to make was completely bugged out cause my friends were putting a lot of free models in it and I didn't Relly know what was happening 😅 but I will try it by myself later (it could be that I'm Dum 🤣)

    • @abrathecadabra
      @abrathecadabra  Год назад +1

      @@stormgaming9857 Theres the immidiate solution to your problem, the meteor was too far up into the sky
      Maybe it touched something while it was falling, check if there are any structures blocking it's path

  • @Amine_GamerYtb
    @Amine_GamerYtb 2 года назад +1

    that not in sale

    • @abrathecadabra
      @abrathecadabra  2 года назад +2

      It should be fixed now, thanks for telling =D

  • @TheoneGuyYT
    @TheoneGuyYT 2 года назад +1

    I wish u can code on mobile lol

    • @abrathecadabra
      @abrathecadabra  2 года назад +1

      Roblox will make that kind of revolutionary update one day

    • @TheoneGuyYT
      @TheoneGuyYT 2 года назад +2

      Yeah totally but man I’m 💀

    • @chickencbg
      @chickencbg Год назад +1

      @@abrathecadabra hope you make a loop tutorial soon!

    • @abrathecadabra
      @abrathecadabra  Год назад +1

      @@chickencbg i didn't really get it what you mean by loop tutorial, but i guess you mean the while and for loops?

    • @chickencbg
      @chickencbg Год назад +1

      @@abrathecadabra i meant for the meteors to keep coming down forever.

  • @boschhotpointfan8354
    @boschhotpointfan8354 2 года назад +1

    I want a meteor that ENDS ROBLOX!!!!!!!

  • @ΤΣΙΡΛΙΚΙ
    @ΤΣΙΡΛΙΚΙ 2 года назад +1

    I want a meteor that just falls every minute into a random position

    • @abrathecadabra
      @abrathecadabra  2 года назад

      make a while loop, set its seconds to 60 (60 seconds = 1 minute)
      clone the meteor, its important for the clone to have its own variable ( local MeteorClone = game:GetService("ReplicatedStorage").Meteor:Clone() )
      change its parent to workspace
      then to change its position do:
      "MeteorClone.Position = Vector3.new(math.random(300, 1000), 291, math.random(300, 1000)) -- X, Y, Z".
      Change the x y and z depending on your map, or your liking
      create an attachment make its parent be the meteor (to make the vectorforce work)
      local Attachment = Instance.new("Attachment", MeteorClone)
      then create a vectorforce and make the attachment its parent
      (local Force = Instance.new("VectorForce", Attachment))
      dont forget to set its attachment0 to the attachment
      Force.Attachment0 = Attachment
      then set its force to your liking or depending on the map, again
      Force.Force = Vector3.new(math.random(300, 1000), 0, math.random(300, 1000)) -- X, Y, Z

    • @giftingcheap
      @giftingcheap 2 года назад

      @@abrathecadabra make a tut i wanna wtach it

    • @abrathecadabra
      @abrathecadabra  2 года назад

      @@giftingcheap i will actively start thinking about making one, personal things were pulling me away from that

    • @giftingcheap
      @giftingcheap 2 года назад

      @@abrathecadabra any idea how to make the meteor destroy buildings?

    • @abrathecadabra
      @abrathecadabra  2 года назад

      @@giftingcheap enable join surfaces in studio (Home -> join Surfaces)

  • @lesterwhitehead4658
    @lesterwhitehead4658 2 года назад +1

    𝓅𝓇o𝓂o𝓈𝓂 👌

    • @abrathecadabra
      @abrathecadabra  2 года назад +1

      Btw what word is "hidden" in there

    • @TheoneGuyYT
      @TheoneGuyYT 2 года назад

      @@abrathecadabra it’s saying promosm?