Weather Radar - Help

Here is my recent work

can someone make it look like [this one]( http://www.bom.gov.au/products/IDR033.loop.shtml#skip )

local script inside startergui:

local Players = game:GetService(“Players”)
local RunService = game:GetService(“RunService”)
local TweenService = game:GetService(“TweenService”)

local radarFrame = script.Parent – Attach this script to the radar GUI frame
local radarSize = UDim2.new(0.735, 0, 0.726, 0) – Set size based on user input
local updateInterval = 1 – Update every second like BoM radar

– Create a color scale UI (for radar intensity)
local colorScale = Instance.new(“Frame”)
colorScale.Size = UDim2.new(1, 0, 0.05, 0)
colorScale.Position = UDim2.new(0, 0, 0.95, 0)
colorScale.BackgroundTransparency = 0.3
colorScale.ZIndex = 55 – Ensure it’s above other elements
colorScale.Parent = radarFrame

– Gradient for color scale
local uiGradient = Instance.new(“UIGradient”)
uiGradient.Color = ColorSequence.new {
ColorSequenceKeypoint.new(0, Color3.fromRGB(0, 255, 0)), – Light Rain (Green)
ColorSequenceKeypoint.new(0.25, Color3.fromRGB(173, 255, 47)), – Light-Medium
ColorSequenceKeypoint.new(0.5, Color3.fromRGB(255, 255, 0)), – Moderate Rain (Yellow)
ColorSequenceKeypoint.new(0.75, Color3.fromRGB(255, 165, 0)), – Heavy Rain (Orange)
ColorSequenceKeypoint.new(1, Color3.fromRGB(255, 0, 0)) – Intense Rain (Red)
}
uiGradient.Parent = colorScale

– Labels for color scale
local labels = {“Light”, “Moderate”, “Heavy”, “Intense”}
for i, label in ipairs(labels) do
local textLabel = Instance.new(“TextLabel”)
textLabel.Size = UDim2.new(0.25, 0, 1, 0)
textLabel.Position = UDim2.new((i - 1) * 0.25, 0, 0, 0)
textLabel.Text = label
textLabel.BackgroundTransparency = 1
textLabel.TextColor3 = Color3.new(1, 1, 1)
textLabel.Parent = colorScale
end

– Stores previous frames for looping effect
local radarFrames = {}

– Enhanced Weather Frame with Clumps and Smooth Animations

local function generateWeatherFrame()
– Remove old frames
for _, frame in ipairs(radarFrames) do
frame:Destroy()
end
radarFrames = {}

local frame = Instance.new("Frame")
frame.Size = UDim2.new(1, 0, 1, 0)
frame.BackgroundTransparency = 1
frame.ClipsDescendants = true
frame.Parent = radarFrame

-- Create moving and fading rain zones
for i = 1, 3 do
	local rainZone = Instance.new("Frame")
	rainZone.Size = UDim2.new(0.4, 0, 0.4, 0) -- Large zone
	rainZone.Position = UDim2.new(math.random(), 0, math.random(), 0)
	rainZone.BackgroundTransparency = 1
	rainZone.ZIndex = 50
	rainZone.Parent = frame

	-- Generate rain patches that fade and move
	for j = 1, math.random(5, 10) do
		local rainPatch = Instance.new("Frame")
		rainPatch.Size = UDim2.new(0.08, 0, 0.08, 0) -- Medium sized patches
		rainPatch.Position = UDim2.new(math.random(), 0, math.random(), 0)
		rainPatch.BackgroundTransparency = 0.5
		rainPatch.ClipsDescendants = true
		rainPatch.ZIndex = 51
		rainPatch.Parent = rainZone

		-- Randomize rain patch intensity (color)
		local intensity = math.random()
		if intensity < 0.3 then
			rainPatch.BackgroundColor3 = Color3.fromRGB(0, 255, 0) -- Light rain
		elseif intensity < 0.6 then
			rainPatch.BackgroundColor3 = Color3.fromRGB(255, 255, 0) -- Moderate rain
		elseif intensity < 0.9 then
			rainPatch.BackgroundColor3 = Color3.fromRGB(255, 165, 0) -- Heavy rain
		else
			rainPatch.BackgroundColor3 = Color3.fromRGB(255, 0, 0) -- Intense rain
		end

		-- Smooth Fade and Movement Animation
		local targetPosition = UDim2.new(math.random(), 0, math.random(), 0)
		local targetTransparency = 1

		local tween = TweenService:Create(rainPatch, TweenInfo.new(2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out, -1, true), {
			Position = targetPosition,
			BackgroundTransparency = targetTransparency
		})

		tween:Play()
		game:GetService("Debris"):AddItem(rainPatch, 3) -- Clean up after 3 seconds
	end
end

table.insert(radarFrames, frame)

end

– Function to add fast-moving streaks across the radar
local function addFastMovingStreak()
local streak = Instance.new(“Frame”)
streak.Size = UDim2.new(math.random(0.02, 0.05), 0, math.random(0.02, 0.05), 0)
streak.Position = UDim2.new(math.random(), 0, math.random(), 0)
streak.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
streak.BackgroundTransparency = 0.4
streak.ZIndex = 50
streak.Parent = radarFrame

local endPosition = UDim2.new(math.random(), 0, math.random(), 0)
TweenService:Create(streak, TweenInfo.new(0.5, Enum.EasingStyle.Linear, Enum.EasingDirection.InOut), {
	Position = endPosition,
	BackgroundTransparency = 1
}):Play()

game:GetService("Debris"):AddItem(streak, 0.6)

end

– Loop to constantly update radar
while true do
generateWeatherFrame()
if math.random() < 0.3 then
addFastMovingStreak()
end
wait(updateInterval)
end

any help would be great!

devforum isn’t chat gpt, creating something in a specific way is something you should learn and attempt first before asking for guidance and not dumping your code and asking someone to do it for you.

I am personally not very good with UI but I’m sure there is someone who has an idea of how you can achieve your goal without doing everything for you.

4 Likes

i have already learnt it you idiot.
why are you bringing chatgpt into this? its like you dont want to help!

Because you’ve used ChatGPT to make this, and then you’re asking people to make it for you instead of making it yourself

3 Likes

incorrect, i label things so i i know what does what

It’s very probable this code was generated with ChatGPT. I also happen to use comments often in my code but yours look unnatural. Sorry dawg.

Addendum: it also happens for ChatGPT to be TERRIBLE with UI work, especially on Roblox. Such things (e.g. frames not being properly sized/parented, etc.) are extremely common in AI-generated codes.

3 Likes

By starting your post like this, you are instantly getting off on the wrong foot.
Why does someone have to make it look like something you want? You ask for help on here, not for someone to make it for you.

2 Likes