#code-discussion
1 messages ¡ Page 269 of 1
Nah , i am making just systems rn practicing everysingle day
By making ability or some function
but i am implementing every course
how long have you been doing that
i bought or every tutorial i watched
Well listen i been in roblox studio for over a year i gived up so many times
but this past 2 months i been grinding
and i learned 1000% more
then the past 1 year
what game will you make?
The english in here is hilarious
because they are evil and greedy
Honestly admirable
first they do like south london then south london 2 then south london remastered
for better graphics?
PAYING people to script for my game! dm me
Not my first language , unlucky
Its okay ur doing great
is anyone here good for finding a virus đ my game's showing hd admin popups right as i released it now, some people get it some dont but i cant find it anywhere
i mentioned you in #code-help with a solution
to late i got scammed
Savu da sethapayale
classic
@shadow cedar
Hello guys
could yall help me script/fix this coin thingy
game.Players.PlayerAdded:Connect(function(Players)
local leaderstats = Instance.new("Folder")
leaderstats.Name = "leaderstats"
leaderstats.Parent = Players
local cash = Instance.new("IntValue")
cash.Name = "Cash"
cash.Parent = leaderstats
cash.Value = 0
local coin = game.Workspace.Coin
coin.Touched:Connect(function(otherPart)
local humanoid = otherPart.Parent:FindFirstChild("Humanoid")
if humanoid then
wait(1)
cash.Value = cash.Value + 1
wait(1)
coin:Destroy()
end
end)
end)
it keeps like giving the player lots of coins when ever the player touch it
i only want it to give 1 coin
Anyone can help me how can i learn scripting
maybe try removing the wait(1) after the cash.value=chas.value + 1
if humanoid then
wait(1)
cash.Value = cash.Value + 1
coin:Destroy()
end
end)
end)
smthing like ts
Anyone here specialise in making advanced combat systems I have a question about them
I tried it keeps getting like a whole bunch of coinsđĽ˛
oh then last thing i know is just removing all the wait(1).
if that doesnt work then sorry idk
Ahh okay ty for the help tho
Isnât it because there isnât a debounce? I could be wrong but wouldnât every part in the player have the potential to active that one coin?
Oh yea you're right
Oh yeah could be that
How would I use the denounce never used it before
Well a debounce is just a term, what I might do is have a table of the active coins and when ever a player first touches them, get rid of it from the table. Since you can then implement another if check to make sure that the coin hasn't been "used up"
This would ensure that lets say the torso can't activate it again if maybe the arm touched it
Since you already removed it from the table
Ahhh okay
Appreciate boss
so the data sort in my game exploded can anyone help međ
hey

Should I make my own SoftShutdown System or rely on the roblox restart servers?
does anyone know how to implement the cmdr api an a roblox game and then add your own commands to it
read docs bro
Fully extensible command console for Roblox developers.
"does anyone know" yeah the docs
i have i dont undersatnd it
my brain isnt braining its like on another level of stupid
it tells you exactly what to do
where are you stuck
1 second is a very large amount of time for code to run, so in the future you should use task.wait() since that's around 1/60th of a second or 1 frame
atp make ya own
roblox shutdown system is cheeks
I've not had a problem with the Roblox restart server system. I've heard it used to be bad
It used to be
But you should still have your own soft shutdown script
Cause Roblox just kicks everyone and asks them to rejoin
So if your playerâs in the middle of something and they just get kicked they might lose progress on something
And also instead of kicking and asking to rejoin you can just teleport them to a new server instead of letting Roblox handling it
I looked at the softshutdown2 module and it said it was broken
does anybody know any read only properties of any instance?
indexing will get you the properties first
then the children
t[prop]
guys what do yall think: can gimmick games still do a bit even nowadays? (ex: 1 robux = something)
Except players in existing servers totally get kicked out
Hey are you working on a game? Send a dm
im not working on a game
Who wants a denim jacket template png? for 500 rbx [DM if anybody interested]
willing to join a project for rbx
store
preciate it
Hello
any game ideas?
đ
local UserInputService = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local Animation = script.Animation
local tweenInfo = TweenInfo.new(0.5, Enum.EasingStyle.Quad, Enum.EasingDirection.Out)
local newSpeed = 26
local defaultSpeed = 16
local targetFov = 90
local defaultFov = 70
UserInputService.InputBegan:Connect(function(Input)
if Input.KeyCode == Enum.KeyCode.LeftControl then
local Player = game.Players.LocalPlayer
local Character = Player.Character or Player.CharacterAdded:Wait()
local Humanoid = Character:WaitForChild("Humanoid")
Humanoid.WalkSpeed = newSpeed
local camera = game.Workspace.CurrentCamera
local fovTween = TweenService:Create(camera, tweenInfo, {FieldOfView = targetFov})
fovTween:Play()
local Anim = Humanoid:LoadAnimation(Animation)
Anim:Play()
UserInputService.InputEnded:Connect(function(Input)
if Input.KeyCode == Enum.KeyCode.LeftControl then
Humanoid.WalkSpeed = defaultSpeed
local fovTweenBack = TweenService:Create(camera, tweenInfo, {FieldOfView = defaultFov})
fovTweenBack:Play()
Anim:Stop()
end
end)
end
end)```
chat is this good?
im a begginer
why are you naming a single player "Players"?
also. your wait(1) doesn't do what you think it does. the character has multiple parts, and the reason why the player gets a lot of coins from touching it "once" is because a lot of character parts are touching the coin at a time. the wait(1) only makes that happen a second later. what you need is a cooldown on the coin, not a wait. if you want it to be a once-only thing, you can either add a "pickedUp" boolean or store the Touched event connection and disconnect it when the first valid part is detected
he coould use task.wait
you shouldn't recreate the FOV tweens every time you want to zoom out the camera, that's bad for performance and also not DRY (don't repeat yourself). instead of making a new tween every single time leftcontrol is pressed, create the tween outside of the InputBegan event function
a lot of data leaks here too. you make a lot of tweens while the older tweens are still in memory, I think the GC (garbage collector) does trash them after a while (as it does with variables you can't access anymore) but there's another thing it won't trash. you make an InputEnded event connection every time you press leftcontrol, this creates a lot of inputended connections that will stay there forever and hog up the memory and potentially create race conditions (which are known for crashing your script in "one in a million" chances)
move the InputEnded outside of the InputBegan
you should create the tweens once outside of the functions and store them in the outermost scope (basically where you defined Userinputservice), this way you can reuse the same old tweens without being harsh on memory
move the InputEnded outside of InputBegan so there's only ONE event connection, not 10.
For me being a beginner i didnt understand jack
also, @lethal yoke since you're a new scripter I should tell you to be more careful with data leaks. we consider something to be a "data leak" when it becomes data that you can't access anymore but it's still in memory (it's wasting space) and eventually, data leaks can crash the server from lack of memory
it's a programmer flex to talk about things newer programmers don't know
lmk if you need help tho
for whatever reason my raycast doesnt work after I add parameters to filter out my map
local function AssignSpawnPoint()
for _, i in pairs(self.ChestSpawns) do
if i:HasTag("Occupied") then continue end
i:AddTag("Occupied")
return i.CFrame
end
end
local spawnLocation = AssignSpawnPoint()
local origin = Chest.PrimaryPart.Position + Vector3.new(0,20,0)
local direction = Vector3.new(0,-100,0)
local size = Chest:GetExtentsSize()
local halfHeight = size.Y / 2
local params = RaycastParams.new()
params.FilterType = Enum.RaycastFilterType.Include
params.FilterDescendantsInstances = {
self.Map
}
print(self.Map.Parent)
local raycast = workspace:Raycast(origin,direction,params)
if raycast then
local finalY = raycast.Position.Y + halfHeight
Chest.Parent = self.Map
Chest:PivotTo(CFrame.new(spawnLocation.Z,finalY,spawnLocation.X))
end
Ok ill do tmw its 6 am
did you make a visualiser to see where your rays are going?
nope I'm on that now
what does printing the raycast's result.Instance show? if it's nil then it's probably shooting at the skybox
its exactly nil
It's weird because its only doing that after I put a filtered list of instances it can only collide with
I think it's because self.Map is probably a model (a container) and not a physical part or mesh
yeah it is a container but from what I know filter lists allow that no?
anyway I tried using descending instances (:GetChildren) but it also didnt work
may be so, I'll check out the documentation
YOO
:GetChildren() returns a table, I don't think raycast params is sensible enough to support nested tables (tables inside tables) so you should try removing the children from the table and inserting them
I REMOVED THE PARAMS AND ITS IN A COMPLETELY NEW LOCATION
the issue at hand might be different from what I originally thought
how are you suggesting I insert them
create another table and insert all of the parts into it just to then pass it onto params?
no need to overcomplicate it, you could simply remove the {} and instead do self.Map:GetChildren() to stop it from enclosing the children into a table in the first place
because GetChildren() already gives you a table
but you sure that your rays are going where you want them to go
heh, yeah.
works like a charm.
đź
must be because of getextentssize
wait no you're running that on the chest and not the map mb
gamers don't like to read
we good now
thanks for help banan
you're goated
I appreciate you homie
pawesome
Anyone can hop on vc and help me out with coding? A td system ? I need help
local TweenService = game:GetService("TweenService")
local RunService = game:GetService("RunService")
local part = script.Parent
local lastPosition = part.Position
-- Velocity uppdate
RunService.Stepped:Connect(function(_, deltaTime)
local currentPosition = part.Position
local deltaPosition = currentPosition - lastPosition
part.AssemblyLinearVelocity = deltaPosition / deltaTime
lastPosition = currentPosition
end)
--
local sides = {
Vector3.new(0, 0, -10), -- forward
Vector3.new(0, 10, 0), -- upp
Vector3.new(0, 0, 10), -- back
Vector3.new(0, -10, 0), -- down
}
while true do
for _, offset in ipairs(sides) do
local tweenInfo = TweenInfo.new(2, Enum.EasingStyle.Linear, Enum.EasingDirection.InOut)
local tween = TweenService:Create(part, tweenInfo, {CFrame = part.CFrame * CFrame.new(offset)})
tween:Play()
tween.Completed:Wait() -- vänta tills tweenen är klar innan nästa sida
end
end
I finally made it
pretty simple but still
Ready to pay
no sorry we are broke rn we are trying to learn the skills to learn all the system of a anime tower defense
đ
yo yo
@manic hare Translate the Finnish for me
is there any better animaters then spr?
What it does?
thats swedish or norway
swedish
ripple
makes the part move and the personv on the block will move with it and not fall off
Cool
You should really avoid while true do loops. At least ones without a task.wait. Also, no need to do ipairs(sides). Luau can decide how to iterate through a table itself.
how should i handle fps guns? do i give the server the origin and the direction and let the server handle the rest? (i want to achieve smooth shooting like most fps games)
is while true do loops bad in ur opinions?
Yeah. Most of the time you can do it with events / RunService
and while true loops are just dangerous
oh how
Go in a script now and write
while true do
print("Hi");
end
and run the game
Afaik anything that involves combat goes quite in depth. You cannot just give the server the origin and direction and let it handle the rest because that'll lead to highly inaccurate if the player's ping is high. You gotta do a bunch of complicated prediction to make it feels smooth or let the clients handle it, which is dangerous because of exploiters.
I'm not experienced though so take it with a grain of salt.
Really?
Yep
k thanks
are you messing with newbies? đ
Perchance
what is this?
good question
Watch took me 1.5 hours to make the camera completely from scratch because of engine limitations by _Safety and millions of other Roblox Studio videos on Medal. #robloxstudio
shit barely look any different
lua tip of doom and despair
luau types & other bullshit. basically stuff what luau types solver does
honest truth
you do not want to visit the type solver unless you know what you're doing in advanced luau OOP
type stuffs like this
type shi = {
smell: string,
amount: number
}
local poop: shi = {
smell = "stinky",
amount = 5
}
-- poop: {smell: string, amount: number}
poo
rawr
woof
i keep getting an error in math.random(1, v[2])
local function GetRandomRarity(RarityData)
for i, v in pairs(RarityData) do
local RolledNumber = math.random(1, v[2])
if RolledNumber == 1 and v[2] > RarityData[1][2] then
return {
v[1],
v[2],
v[3],
v[4]
}
end
end
return RarityData[1]
end
i don't understand why can anyone help me
what's the output error
@bitter harbor
i'll send full script
looking for a lua scripter to do a spleef system, very simple system with round system and coins gain system when won. pay in robux dm me asap!!!
--local Characters = require(game.ReplicatedStorage.Modules:WaitForChild("Characters"))
local SpawnArea = game.Workspace:WaitForChild("SpawnZones"):WaitForChild("SpawnPart1")
local WaitTime = 2
local RarityData = {
{"Common", 2, Color3.fromRGB(85, 170, 0)},
{"Rare", 5, Color3.fromRGB(170, 0, 255)},
{"Mythic", 10, Color3.fromRGB(255, 0, 0)},
{"Legendary", 20, Color3.fromRGB(255, 255, 0)}
}
local function GetRandomRarity(RarityData)
for i, v in pairs(RarityData) do
local RolledNumber = math.random(1, v == 20 and 1 or v[2])
if RolledNumber == 1 and v[2] > RarityData[1][2] then
return {
v[1],
v[2],
v[3],
v[4]
}
end
end
return RarityData[1]
end
while task.wait(3) do
local RandomRarity = GetRandomRarity(RarityData)
local CharacterModels = Characters[RandomRarity[1]]
local RandomNumber = math.random(1, #CharacterModels:GetChildren())
local CNPC: Model = Characters.CloneCharacter(CharacterModels:GetChildren()[RandomNumber].Name, workspace.Characters)
local CHumanoid: Humanoid = CNPC:WaitForChild("Humanoid")
local CTorso: Part = CNPC:WaitForChild("Torso")
local function SpawnCharacter(amount)
for i=0, amount do
local X = math.random(SpawnArea.Position.X - SpawnArea.Size.X/2+1, SpawnArea.Position.X + SpawnArea.Size.X/2)
local Y = CNPC.Box.Size.Y/2 + SpawnArea.Position.Y + SpawnArea.Size.Y + 1.5
local Z = math.random(SpawnArea.Position.Z - SpawnArea.Size.Z/2, SpawnArea.Position.Z + SpawnArea.Size.Z/2)
CNPC.HumanoidRootPart.CFrame = CFrame.new(X, Y, Z)
CNPC.Parent = workspace.Zombies
wait(WaitTime)
end
end
if not CTorso then
CNPC:Destroy()
return
end
SpawnCharacter(5)
end
Can someone please tell me why does API for checking what does the player have in his inventory as an accessory?
What's the issue here? Everything seems to be fine
Get raw output data please or atleast something that's erroring
What? Do you mean what API is there?
yeah i've been trying to fix it for hours i don't understand
imma see if there is smth wrong in my module script
yo guys
i REALLY really need to test my thumbnails
i need yall to look at these thumbnails im gonna post rn
and tell me if they look convincing
If you mean what API you need here,
https://create.roblox.com/docs/cloud/reference/domains/inventory
bobux man got reassigned... đĄ
yez
can you tell me honestly if you would click on the play button if you saw this game
i'd be honest? i wouldn't
why because well i haven't played in roblox experiences a lot
For some reason when i use the api with v1/users/(userid)/collectables it dosent works
;
ok
but if i was a brainrotted kid or a man trying to play games for fun then I would
alr
so you're implying that you're not a man but a fish
no im caseoh
you just gave me an idea
since my game is about investing in tons
i will add caseoh as a gamepass
it's
v1/users/{userId}/assets/collectibles not collectables
fr
caseoh should be robbing those tonz if needed
Youre right, I did used that but it gives me error either "HTTP 401" or that i dont have access to use it
I reseached it but it say i need somekind of cookies?
I seriously dont know, I really need help
You need to use proxies
I'm sure you're not using proxies to access it. By default those APIs are blocked to access from yourself
can someone help how should i make this (the code on the video is just to show what i want to do)
i fixed it
can anyone help me figure out how to store very very large numbers in the leaderboard store so I can display them:
if leaderboard.Name == "Cash" then
MoneyOrderedStore:SetAsync(player.UserId, statValue * 10^-100)
else
SpeedOrderedStore:SetAsync(player.UserId, statValue)
end
end)
and then displaying:
if leaderboard.Name == "Cash" then
Temp.ValueLabel.Text = Abbreviate.Abbreviate(playerData.value * 10^100)
else
Temp.ValueLabel.Text = Abbreviate.Abbreviate(playerData.value)
end
@shy cipher
local UserInputService = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local Player = game.Players.LocalPlayer
local Character = Player.Character or Player.CharacterAdded:Wait()
local Humanoid = Character:WaitForChild("Humanoid")
local Camera = workspace.CurrentCamera
local Animation = script.Animation
local AnimTrack = Humanoid:LoadAnimation(Animation)
local newSpeed = 26
local dSpeed = 16
local tweenInfo = TweenInfo.new(0.5, Enum.EasingStyle.Quad, Enum.EasingDirection.Out)
local targetFov = 90
local originalFov = 70
local fovTween = TweenService:Create(Camera, tweenInfo, {FieldOfView = targetFov})
local fovTweenBack = TweenService:Create(Camera, tweenInfo, {FieldOfView = originalFov})
UserInputService.InputBegan:Connect(function(input, gameProcessed)
if gameProcessed then return end
if input.KeyCode == Enum.KeyCode.LeftControl then
Humanoid.WalkSpeed = newSpeed
fovTween:Play()
AnimTrack:Play()
end
end)
UserInputService.InputEnded:Connect(function(input, gameProcessed)
if gameProcessed then return end
if input.KeyCode == Enum.KeyCode.LeftControl then
Humanoid.WalkSpeed = dSpeed
fovTweenBack:Play()
AnimTrack:Stop()
end
end)```
is this what you meant by
create the tweens once outside of the functions and store them in the outermost scope (basically where you defined Userinputservice), this way you can reuse the same old tweens without being harsh on memory And to move the InputEnded outside of InputBegan so there's only ONE event connection, not 10.
my n9umbers stop at o, instead of CT
ye i would
thanks.
bro signed the petition
luau data memory pointer values can only accept 64 double precision floating points
so if you're going with this you should use an external library that handles the values and mashes it into bytes. Like that much value is equal to 1 KB, with an external library? 6 bytes. you use the library to translate that data such as 1.5e1000 something, and rewrite that as a string. Then you update the datastore with JSONEncode
I am not familiar with external libraries what do you mean by that?
use PreRender and every frame, you change it's CFrame to the current cframe of the mouse multiplied to the camera's cframe
if you have offset problems simply multiply it by the vector that it's having problems with
What I mean is that modules that handle your stuff.
ohh do you know any specific one that handles such big numbers?
game ideas?
its about attaching my gun and making a animination for the arms
fps game
Sure I guess its
https://devforum.roblox.com/t/infinitemath-go-above-103081e308/2182434/2
I'm not sure I haven't used any of these modules yet. You can find a lot of them in community resources of DevForum
well, I already told you how to attach your arms and update it's CFrame every single frame
how about funtion it in game
for animations you can just make an AnimationController, inside Animator inside your viewmodel and animate it. Kinda how rigs work
you got it đ
YO i wanna test my game for any bugs can someone volunteer?
would anyone check out my hunting game mechanics and tell me if they look nice
It's literally client processing objects on your screen. You just code and add effects to it. Not a big thing. Rest goes to Server, and effects, stuff is Client
I CAN DO EVERYTHING JUST NOT CODING
guys how did I even get the "skill" role
I used to play idleon, what the game did was do conversion of comical amounts of digits to "currencies" that were worth more and compute the zeroes to append to at the end of the number string
then learn to code?.. its literally code discussion not ask for free code
hi can I buy code for 10 pesos per line
want to make a game, any game ideas?
local UserInputService = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local Player = game.Players.LocalPlayer
local Character = Player.Character or Player.CharacterAdded:Wait()
local Humanoid = Character:WaitForChild("Humanoid")
local Camera = workspace.CurrentCamera
local Animation = script.Animation
local AnimTrack = Humanoid:LoadAnimation(Animation)
local newSpeed = 26
local dSpeed = 16
local tweenInfo = TweenInfo.new(0.5, Enum.EasingStyle.Quad, Enum.EasingDirection.Out)
local targetFov = 90
local originalFov = 70
local fovTween = TweenService:Create(Camera, tweenInfo, {FieldOfView = targetFov})
local fovTweenBack = TweenService:Create(Camera, tweenInfo, {FieldOfView = originalFov})
local sprintKeyDown = false
local isSprinting = false
local function updateSprint()
local isMoving = Humanoid.MoveDirection.Magnitude > 0
if sprintKeyDown and isMoving then
if not isSprinting then
isSprinting = true
Humanoid.WalkSpeed = newSpeed
fovTween:Play()
AnimTrack:Play()
end
else
if isSprinting then
isSprinting = false
Humanoid.WalkSpeed = dSpeed
fovTweenBack:Play()
AnimTrack:Stop()
end
end
end
updateSprint()
Humanoid:GetPropertyChangedSignal("MoveDirection"):Connect(updateSprint)
UserInputService.InputBegan:Connect(function(input, gameProcessed)
if gameProcessed then return end
if input.KeyCode == Enum.KeyCode.LeftControl then
sprintKeyDown = true
updateSprint()
end
end)
UserInputService.InputEnded:Connect(function(input)
if input.KeyCode == Enum.KeyCode.LeftControl then
sprintKeyDown = false
updateSprint()
end
end)```
made a variable to see if they're sprinting
and a function that updates it and runs it once when u start, and runs it when move direction is changed
@shy cipher
not how I would have done it. you don't really need to know if the player is sprinting, you just need to know when the keybind for sprint was pressed and unpressed (which the event connections are already doing). I would have made a function that zoomed in or out and played the corresponding animation depending on a boolean state. make the function run when the key's pressed and set the walkspeed, same for InputEnded but this time set to default walkspeed and the function state set to false. you can't really have race conditions here, you can't press leftcontrol again while leftcontrol is held so you don't need a separate isSprinting variable for safety. you can't leave leftcontrol if you don't have it pressed too.. so this has unnecessary complexity
holy yielding
local UserInputService = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local Player = game.Players.LocalPlayer
local Character = Player.Character or Player.CharacterAdded:Wait()
local Humanoid = Character:WaitForChild("Humanoid")
local Camera = workspace.CurrentCamera
local Animation = script.Animation
local AnimTrack = Humanoid:LoadAnimation(Animation)
local newSpeed = 26
local dSpeed = 16
local tweenInfo = TweenInfo.new(0.5, Enum.EasingStyle.Quad, Enum.EasingDirection.Out)
local targetFov = 90
local originalFov = 70
local fovTween = TweenService:Create(Camera, tweenInfo, {FieldOfView = targetFov})
local fovTweenBack = TweenService:Create(Camera, tweenInfo, {FieldOfView = originalFov})
local function updateSprint(sprinting)
local isMoving = Humanoid.MoveDirection.Magnitude > 0
if sprinting and isMoving then
Humanoid.WalkSpeed = newSpeed
fovTween:Play()
AnimTrack:Play()
else
Humanoid.WalkSpeed = dSpeed
fovTweenBack:Play()
AnimTrack:Stop()
end
end
UserInputService.InputBegan:Connect(function(input, gameProcessed)
if gameProcessed then return end
if input.KeyCode == Enum.KeyCode.LeftControl then
updateSprint(true)
end
end)
UserInputService.InputEnded:Connect(function(input)
if input.KeyCode == Enum.KeyCode.LeftControl then
updateSprint(false)
end
end)```
this is good, trying to improve it further would be hyperoptimising and would probably hurt readability
so should i leave as is?
yeah it's pretty much production-ready
local UserInputService = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local Player = game.Players.LocalPlayer
local Character = Player.Character or Player.CharacterAdded:Wait()
local Humanoid = Character:WaitForChild("Humanoid")
local Camera = workspace.CurrentCamera
local Animation = script.Animation
local Animator = Humanoid:WaitForChild("Animator")
local AnimTrack = Animator:LoadAnimation(Animation)
local newSpeed = 26
local dSpeed = Humanoid.WalkSpeed
local tweenInfo = TweenInfo.new(0.5, Enum.EasingStyle.Quad, Enum.EasingDirection.Out)
local targetFov = 90
local originalFov = Camera.FieldOfView
local fovTween = TweenService:Create(Camera, tweenInfo, {FieldOfView = targetFov})
local fovTweenBack = TweenService:Create(Camera, tweenInfo, {FieldOfView = originalFov})
local sprinting = false
local function updateSprint(sprintingInput)
local isMoving = Humanoid.MoveDirection.Magnitude > 0
if sprintingInput and isMoving then
if not sprinting then
sprinting = true
Humanoid.WalkSpeed = newSpeed
fovTween:Play()
if not AnimTrack.IsPlaying then
AnimTrack:Play()
end
end
else
if sprinting then
sprinting = false
Humanoid.WalkSpeed = dSpeed
fovTweenBack:Play()
if AnimTrack.IsPlaying then
AnimTrack:Stop() -- This is so it doesnt overlap every single time you sprint and unsprint same for the part above
end
end
end
end
UserInputService.InputBegan:Connect(function(input, gameProcessed)
if gameProcessed then return end
if input.KeyCode == Enum.KeyCode.LeftControl then
updateSprint(true)
end
end)
UserInputService.InputEnded:Connect(function(input)
if input.KeyCode == Enum.KeyCode.LeftControl then
updateSprint(false)
end
end)
Humanoid:GetPropertyChangedSignal('MoveDirection'):Connect(function()
updateSprint(UserInputService:IsKeyDown(Enum.KeyCode.LeftControl))
end)
Player.CharacterAdded:Connect(function(char)
Character = char
Humanoid = Character:WaitForChild('Humanoid')
Animator = Humanoid:FindFirstChildWhichIsA('Animator')
if not Animator then
Animator = Instance.new('Animator')
Animator.Parent = Humanoid
end
AnimTrack = Animator:LoadAnimation(Animation)
dSpeed = Humanoid.WalkSpeed
originalFov = Camera.FieldOfView
fovTween = TweenService:Create(Camera, tweenInfo, {FieldOfView = targetFov})
fovTweenBack = TweenService:Create(Camera, tweenInfo, {FieldOfView = originalFov})
sprinting = false
end)```
u can use BigNum
its not very practicle tho if im being honest
i made a thick bullet with hitbox, but how can i verify the shot and prevent exploits?
Could you tell me more
yo can anyone help out with ts
game.Players.PlayerAdded:Connect(function(plr)
local char = game.Workspace.qqqq
local br = char:FindFirstChild("folder")
print("found it")
local bq = br:FindFirstChildOfClass("Texture")
print("br")
print(bq.Parent.Name)
end)
im trying to get the name of the part without directly referencing it
friendly reminder to check your recieve bandwidth to make sure its not like this game over here
(over 50KB/s is when stuff becomes more and more laggy)
FindFirstChild("Folder")?
.
This was just a small test script I made for troubleshooting
All the models will have different names
so different models on the same folder?
Not really lemme explain a bit better
Iâm trying to get the name of the part without reference the part so I canât put folder.part
In the actual gae
Game*
Instead of part it would be the name of the model
Now I wanna know the name of the model so I can display it or Smt
But it could be any one of the models in the game
game.Players.PlayerAdded:Connect(function(plr)
local char = game.Workspace:WaitForChild("qqqq")
local folder = char:FindFirstChild("Folder")
if folder then
local texture = folder:FindFirstChildWhichIsA("Texture", true)
if texture then
print(texture.Parent.Name)
end
end
end)``` smth like this?
Yep
so instead of âfindfirstchildâ
I used descendent
Cuz yk the texture is in a part
And that doesnât work
There is no error
isDescendent checks if something is inside of a part like it doesent help find the actual object that your looking for or get its name automaticcly
automatically
So before it was a texture
I made it a bool value
And tried to find the first descent with that name
And set that to a variable like br
Now I tired br.parent
But it doesnât work
IsDescentdent those is not for finding actual objects and getting its properties
it only returns like a boolean you need to use FIndFirstChildWhichIsA() instead
I need an answer guys.
I started making this game right and coded some of the game mechanics like Ore mining and stuff like that (resources gathering mechanic) but i was wondering should i build my game environment first then start coding it or no (what makes the process faster later on)
(i am a beginner into coding so that's why i am asking)
if its not a child of folder than local texture = folder:FindFirstChildWhichIsA("Texture", true) will return nothing
I usually code basic environmental features first then work on the map
Itâs just preference tho for me
Yep
How do I get the properties
Of the texture
Like the parent
So we have folder with a part
With a texture
Now I wanna get to the part without calling its name
I see, so for example i have a plot system in my game each player has a plot should i just make the plot spots and build around it so it stays as it is ?
I just coded my profile store and the leaderstats isnt showing up does anyone know why?
local function Initialize(player: Player, profile: typeof(PlayersStore:StartSessionAsync()))
local leaderstats = Instance.new("Folder", player)
leaderstats.Name = "leaderstats"
local money = Instance.new("NumberValue", leaderstats)
money.Name = "Money"
money.Value = profile.Data.Money
local rebirth = Instance.new("NumberValue", leaderstats)
rebirth.Name = "Rebirth"
rebirth.Value = profile.Data.Rebirth
ReplicatedStorage.events.UpdateMoney:FireClient(player, profile.Data.Money)
ReplicatedStorage.events.UpdateRebirths:FireClient(player, profile.Data.Rebirth)
end
Yes you could do that
- The "Race Condition" (Most Likely)
When you use Players.PlayerAdded, your script might start running after you have already joined the game (especially in Studio). If the player joins before the PlayerAdded connection is established, the code never runs for you.
The Fix: Wrap your logic in a loop to catch players who are already there.
Lua
local function OnPlayerAdded(player)
-- Your Profile loading logic here
local profile = PlayersStore:LoadProfileAsync("Player_"..player.UserId)
if profile then
Initialize(player, profile)
end
end
-- Connect the event
game.Players.PlayerAdded:Connect(OnPlayerAdded)
-- ALSO run it for players already in the server
for _, player in game.Players:GetPlayers() do
task.spawn(OnPlayerAdded, player)
end
2. Case Sensitivity
Roblox is extremely picky about the name. It must be exactly "leaderstats" (all lowercase).
"Leaderstats" (Uppercase L) â Will not work.
"leaderStats" (CamelCase) â Will not work.
Your code currently uses leaderstats.Name = "leaderstats", which is correct, but double-check that there isn't a typo in your actual script.
- Profile Loading Failure
If PlayersStore:StartSessionAsync() (or LoadProfileAsync) fails or takes too long, your Initialize function never gets called.
Check your Output window: Do you see any errors related to DataStores?
Add a Print: Add print("Initializing " .. player.Name) at the very top of your function. If it doesn't print, the problem is with how you're calling the function, not the folder creation itself.
Pro-Tip: Parenting Order
As mentioned before, it's better to parent the folder after you've put the values inside it. This ensures the leaderboard doesn't try to render an empty folder first.
Lua
local function Initialize(player: Player, profile: any)
local leaderstats = Instance.new("Folder")
leaderstats.Name = "leaderstats"
local money = Instance.new("NumberValue")
money.Name = "Money"
money.Value = profile.Data.Money
money.Parent = leaderstats
local rebirth = Instance.new("NumberValue")
rebirth.Name = "Rebirth"
rebirth.Value = profile.Data.Rebirth
rebirth.Parent = leaderstats
-- Parent last!
leaderstats.Parent = player
end
Would you like me to look at the part of your script where you connect PlayerAdded to see if there's a logic error there?
ty
Can anyone help me create a team morph script
i have to send in two parts one sec
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local ServerScriptService = game:GetService("ServerScriptService")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local ProfileStore = require(ServerScriptService.Lib.ProfileStore)
local Template = require(ServerScriptService.Data.Template)
local DataManager = require(ServerScriptService.Data.DataManager)
local function GetStoreName()
return RunService:IsStudio() and "test" or "live"
end
local PlayersStore = ProfileStore.New(GetStoreName(), Template)
local function Initialize(player: Player, profile: typeof(PlayersStore:StartSessionAsync()))
local leaderstats = Instance.new("Folder", player)
leaderstats.Name = "leaderstats"
local money = Instance.new("NumberValue", leaderstats)
money.Name = "Money"
money.Value = profile.Data.Money
local rebirth = Instance.new("NumberValue", leaderstats)
rebirth.Name = "Rebirth"
rebirth.Value = profile.Data.Rebirth
ReplicatedStorage.events.UpdateMoney:FireClient(player, profile.Data.Money)
ReplicatedStorage.events.UpdateRebirths:FireClient(player, profile.Data.Rebirth)
end
local function PlayerAdded(player: Player)
local profile = PlayersStore:StartSessionAsync("Player_" .. player.UserId, {
Cancel = function()
return player.Parent ~= Players
end,
})
if profile ~= nil then
profile:AddUserId(player.UserId)
profile:Reconcile()
profile.OnSessionEnd:Connect(function()
DataManager.Profiles[player] = nil
player:Kick("Data error occured. Please rejoin.")
end)
if player.Parent == Players then
DataManager.Profiles[player] = profile
Initialize(player, profile)
else
profile:EndSession()
end
else
player:Kick("Data error occured. Please rejoin.")
end
end
for _, player in Players:GetChildren() do
task.spawn(PlayerAdded, player)
end
local function PlayerRemoving(player: Player)
local profile = DataManager.Profiles[player]
if not profile then return end
profile:EndSession()
DataManager.Profiles[player] = nil
end
Players.PlayerAdded:Connect(PlayerAdded)
Players.PlayerRemoving:Connect(PlayerRemoving)
Can you help me create a script, I need it when someone joins a team they get a morph
Juste use ai
that's basic to make
Ide ?
Download Antigravity
What is antigravity..
and use CLAUDE SONNET AI
Studio plugin?
Alright..
anyone know how to attach a part to a rig that can be aniamted with the rig I tried using motor 6d but it doesnt aniamte the part
I went to claude and ts is making me upgrade to pro
Im trying to chat with it and ask it but it's saying I would love to answer thos but upgrade to pro
anyone would help me to recreate the fish lighting?
who needs a free logo
i just need 3 people and it actually gonna be good completly free
how can i get the point of direction to make a bullet raycast it is broken for me:
local direction = origin + camera.CFrame.LookVector * MAX_RANGE
show the whole script, ur just showing a snippet
guys first script in bazilion years is it at least decent
I believe you would get the correct direction if you just remove origin
local direction = camera.CFrame.LookVector * MAX_RANGE
it plays but snapping tool demonic and fucks teh first 2 seconds
the clicking animation lowkey nice
idk why but the clicking sound is very satisfying
im new to analytics service but what is the right way of displaying data about ability usage? im not sure if im doing it correctly
this is my code:
["PlayerID"] = plr.UserId,
["Timestamp"] = os.time(),
["Team"] = team,
["Ability"] = equipped,
["AbilityType"] = abilityType,
})```
lol thx i just used tweens cuz tweens are w fr
@storm laurel u have any song ideas i should add to it?
if i do its still broken, the gray part is the direction value
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Player = Players.LocalPlayer
local ShootRemote = ReplicatedStorage.Shared.Remotes:WaitForChild("Shoot")
local Assets = ReplicatedStorage:WaitForChild("Shared"):WaitForChild("Assets")
local BulletHitbox = Assets:WaitForChild("Utils"):WaitForChild("BulletHitbox")
local BulletsContainer = workspace:WaitForChild("Bullets")
local Shoot = {}
local MAX_RANGE = 1000
function Shoot.CreateHitbox(origin, hit)
local distance = (hit - origin).Magnitude
local direction = (hit - origin).Unit
local middle = (origin + hit) / 2
local bullet = BulletHitbox:Clone()
bullet.Parent = BulletsContainer
bullet.Size = Vector3.new(distance, bullet.Size.Y, bullet.Size.Z)
bullet.CFrame = CFrame.lookAt(middle, hit) * CFrame.Angles(0, math.rad(90), 0)
-- Debug
local p = Instance.new("Part")
p.Anchored = true
p.Size = Vector3.new(10,10,10)
p.Parent = workspace
p.Position = hit
end
function Shoot.Fire()
local character = Player.Character
if not character then return end
if not Player:GetAttribute("IsDeployed") then return end
if Player:GetAttribute("Debounce") then return end
local camera = workspace.CurrentCamera
local origin = camera.CFrame.Position
local direction = camera.CFrame.LookVector * MAX_RANGE
local raycastParams = RaycastParams.new()
raycastParams.FilterDescendantsInstances = workspace:WaitForChild("Map"):GetChildren()
raycastParams.FilterType = Enum.RaycastFilterType.Include
local ray = workspace:Raycast(origin, direction, raycastParams)
if ray then
direction = ray.Position
end
Shoot.CreateHitbox(origin, direction)
end
return Shoot
unless u want country songs in ur game u prob dont want my songs lmao
i commented in #code-help but if u are trying to shoot the ray from the center of the screen, u could try viewport ray
country songs aint even bad but wont match the style
the raycast is working properly, whats the problem?
whats that
its kinda offseted at some situations/directions
if ur trying to shoot from the middle of ur screen, he basically told u what to do
get center of screen using cam.viewportsize.x/2 and y/2 then use viewportpointtoray to create a ray from the camera through te exact pixel of the center of screen
basically using the center pixel of the screen for the ray
camera:ScreenPointToRay(screenPosition.X,screenPosition.Y)
if this helps a lil
the other guy basically explained it to u
can someone help me
GunEvent:FireServer(tool, "Shoot", {Origin = mouseRay.Origin, Direction = mouseRay.Direction})```
something similar i did with one of my projects
whats the best way to hold a static r6 model (as a tool)
k ill try
@shy bronze the ScreenPointToRay returns a unit ray, from the unit ray you can retrieve the origin and direction
not much coding to do
im not really experienced on how i could incorperate that into roblox studio
@proven plover @storm laurel thanks for help i got it working
also take a look at the different functions cuz "ViewportPointToRay" and "ScreenPointToRay" act a lil different, idk how ur crosshair is set up, so it might look a lil offset on one of the functions
im still using the lookvector someone else helped me fix the mathematic error and thank yall for yall time
can any models/builders hrlp me rq cant post images here
@storm laurel made the model better
dancing to ts in the burger king bathroom twin
preesh
lol
@brittle perch
thats sick
thx
bro believes news about engineersâŚ
itâs just marketing yk
ai is tool, not person who will do it for u, and for complex systems lua knowledge is must have
try to steal a brainrot with claude and you will spend a ton of time and not even be sure that it the best option + the option you wanted from start
ai can help a lot, but not replace fully in complex project, such as forge for example
If "hardly anyone can compete with the AI models now" why are so many scripters still being hired and why are the best studios using real people instead of AI?
as a previous owner of chat gpt plus I can tell you, claude free is better
real scripters use ai too
Sparingly. There are good use cases and there are bad use cases. It can't do everything well
thats where scripters fix what ai did wrong
oh wtf
why am I in code discussion đ
Ohhhhhhh
I thought I was in dev discussion
Yes, I was making the point that real scripters are still needed. Also it can sometimes take more time to fix ai slop code than just making it from scratch
but I mean opus 4.6 rn is very strong
atlwast in roblox Ive had no issues
AI cant handle too many lines of code tho
In my experience AI produced scripts/games tend to be more buggy and lesser quality than human-made ones
yeah
also ai code is so dead like full of comments and bugs and when u tell it to fix the code its even worse
scripters will still be needed for long time
Yes that's true as well. AI can't diagnose Roblox issues like a human can. It will very often think something is causing an issue when in reality the problem is something else that's obvious to a person
yeah
also if u use ai u will never feel the joy after hard work when ur script somehow finally works đ
and chatgpt doing bad, what is better, claude that works good but short, or chatgpt that works bad but long
can saomeone help me with my game called steal a dev i need help with base skins i alr have the model
can someone help me I have a bottle model and i want it to flip in the sky( like bottle flip) everytime i try it just goes straight up. I even tried using ai and they cant do it either
rotate object??
Not every ai model
Claude can handle a very big code and the same with deepseek also
Just make other accounts
LLMs sorta reach their limit when dealing with more dynamic game environments
esp. wrt roblox because its not very well represented in their dataset
with .rotation and vector3 ???
If you the paid version of Claude opus 4.6 it will last as long as you could imagine
im not talking about context or anything
ill try this thanks
but you want to do like an animation??
not and actual one with rigs just with code
because with rotation and vector3 dont make animation just moves the object
oh alr
any competent scripters available?
67
To make what?
what's up?
dm
dm
No
ok
nice pfp
is there any documentation of what can or cannot be published with filter async for broadcast so i can educate my players on what to put in a sign to avoid being tagged?
its just general bad words, names, dates, ages, and specific phrases asking for personal information
so basically two buckets: anything thats crude or offensive and anything that could identify you or asks identification from someone else
can someone tell the LLMs about not using ipairs in 2026 ffs
does scripting need science and math
use a decent llm
cope
half of roblox's undocumented bullshit was discovered via the scientific process
just today i discovered that models parented to parts don't replicate from the server to client
took like a 4 stage null hypothesis testing to reach that
k
YO PLS SOMEONE HLEP ME
wyw
in game lightning
but why is it for the very top tho?
you have a script somewhere putting a screengui with a big ah semi-transparent frame in
ah i see it
ahhh ok thx
MexicoFilter script
waltuh
nvr mind this is not the case
im just a dumbahh, hypothesis rejected
dont mention it
"life's just a never-ending cycle of grinding"
fr dont get banned lol
keep it quiet
dont post hiring stuff here use the marketplace
Vex are you a bot
no ofc
Thatâs what a bot would say
ok yes i am ai
u really want exp or what
yeah i need it
k, got it
what's the issue you're running into with react?
why would u use react on such a game
idk maybe for reusable ui components or smthn
why is it so precise đ
idk it jus is
math.floor đ
bro is NOT floppa08871 đ
e
y?
why is it showing vex is spammer?
I think he failed the captcha
ah
I mean it obviously makes sense because bots can't do captchas
:O
hey
helo
hey
thx for the reminder
Why
idk
allat just to make some doo doo ui
np lol
hey what's up
lol what's that from?
local response
if next(buttons) == nil then
task.wait(2)
response = DialogueEnums.Continue
else
for content, properties in pairs(buttons) do
local newButton = DefaultButton:Clone()
newButton.Parent = ButtonsLayout
newButton.Visible = true
newButton.Text = content
newButton.MouseButton1Click:Once(function()
pcall(properties.Callback)
response = properties.Value
end)
end
end
repeat task.wait() until (response ~= nil and response ~= DialogueEnums.Stall)
if response == DialogueEnums.End then
break
end
Is my response's design readable and usable?
if possible, how would you guys shorten it
No
shorten what?
ur ass
shut up Indian, I don't wanna see your ragebait
đ
lol wut
yooo
Oops
Any experienced scripted here?
Scripter
Im paying 2.5k robux for a job lmk
just one job?
is it smth i can finish by like today?
Like I want them to make a money system and a upgrade system
With chat title system
thats alot of work no?
2.5k is perfect for it
arent there like youtube videos u can steal code from? save some money
Im willing to pay 3k robux if they do a good job
There is?
Man i need to code my existing systems too
Which is hard
pretty sure what ur asking is like a common thing found in many games
Re code*
well good luck finding someone
Ok
np
Dm me
what's up
what should i add to this
remove if nesting
local part = script.Parent
local prox = part:WaitForChild("ProximityPrompt")
local item = game.ReplicatedStorage:WaitForChild("Block")
prox.Triggered:Connect(function(plr)
local clone = item:Clone()
clone.Parent = plr:WaitForChild("Backpack")
part:Destroy()
local handle = clone:WaitForChild("Handle")
handle.Touched:Connect(function(otherPart)
if otherPart and otherPart.Parent then
clone:Destroy()
end
end)
end)```
dont think its nesting
it is lol
if condition1 then
if condition2 then
if condition3 then
doSomething()
end
end
end
you should do
if not otherPart then return end
and maybe move Touched outside the function
does this even work at all?
bc your destroying the script
It does work
ok but everything beneath part:Destroy() is unnecessary
and maybe you should use :Once()?
Hiw is it unnecessary i want it to do that
your script gets deleted after part:Destroy() ...
yo
it looks like your item will be deleted if touched anything
and the script with it
why you need this
what is it made for
if you delete script.Parent you are destroying the script and thus it wont run anymore past :Destroy()
Im a beginner im js messing in studio
also your item can be picked up by two players
oh, okay
what you wanted it to do, so I can explain it better
local Window = GUI:FindFirstChild(properties.Screen)
if Window then
local Screen = Window:Clone()
Screen.Parent = ScreenDisplay
Screen.Visible = true
end
What should I change Window name to?
Huh
template?
oh, i never thought of that
what was you trying to make
but i think naming it Window sounds cooler than Template
it kinda doesnât explain what your function does, so depends on you
A pick up system that deletes the item when a part is touched
okay, so main error is that you donât check who touched it
it can be anything, even the baseplate
something touched -> check if itâs player otherwise end -> debounce -> clone -> delete
Ill use Humanoid
with proximity?
or just touching it
touching
then idk why you wrote prox
bcs since im new i want to get a feeling of everything
bro you wanted to touch, but wrote proximity code, itâs cool, but your idea was different
lets start by feeling sum grass before u age away behind a pc
local part = script.Parent
local prox = part:WaitForChild("ProximityPrompt")
local item = game.ReplicatedStorage:WaitForChild("Block")
local deletePart = game.Workspace:WaitForChild("Delete part")
prox.Triggered:Connect(function(plr)
local clone = item:Clone()
clone.Parent = plr:WaitForChild("Backpack")
local toolPart = clone:WaitForChild("Handle")
toolPart.Touched:Connect(function(otherPart)
if otherPart == deletePart then
clone:Destroy()
end
end)
end)```
part destroy where?
also use debounce
huh
use debounce
whats that
itâs kinda like âwait, i already doing itâ
you wanted to destroy item in the 3d world right
local part = script.Parent
local prox = part:WaitForChild("ProximityPrompt")
local item = game.ReplicatedStorage:WaitForChild("Block")
local deletePart = game.Workspace:WaitForChild("Delete part")
local promptDebounce = false
prox.Triggered:Connect(function(plr)
if promptDebounce then return end
promptDebounce = true
local clone = item:Clone()
clone.Parent = plr:WaitForChild("Backpack")
local handle = clone:WaitForChild("Handle")
local touchDebounce = false
handle.Touched:Connect(function(otherPart)
if touchDebounce then return end
if otherPart == deletePart then
touchDebounce = true
clone:Destroy()
end
end)
task.wait(1)
promptDebounce = false
end)```
connection:Disconnect()
local part = script.Parent
local prox = part:WaitForChild("ProximityPrompt")
local item = game.ReplicatedStorage:WaitForChild("Block")
local deletePart = game.Workspace:WaitForChild("Delete part")
local promptDebounce = false
prox.Triggered:Connect(function(plr)
if promptDebounce then return end
promptDebounce = true
local clone = item:Clone()
clone.Parent = plr:WaitForChild("Backpack")
local toolPart = clone:WaitForChild("Handle")
local Connection
Connection = toolPart.Touched:Connect(function(otherPart)
if otherPart == deletePart then
clone:Destroy()
if Connection then
Connection:Disconnect()
end
end
end)
task.wait(1)
promptDebounce = false
end)```
lol ggs
I see how it is
that's how we debug in this big 2026
well kinda
lmao
i'm want create a glider system can someone help me?
collecting info feels so good
đ Just a reminder to read our rules and use the marketplace to hire!
-# Hiring or looking for work in our channels classifies as misuse and will result in moderation.
yo does anyone know why
script.Parent.Triggered:Connect(function(plr)
local block = script.Parent.Parent
local plr = game.Workspace:WaitForChild(plr.Name)
local plrhead = plr.Head
local pickedup = block.onhead
print(plr.Name)
local alrbrainrot = game.Workspace:WaitForChild(plr.Name):WaitForChild("brhead")
if pickedup.Value == false and alrbrainrot.Value == false then
block.Root.CFrame = plrhead.CFrame + Vector3.new(0,2,0)
local weld = Instance.new("WeldConstraint")
weld.Parent = block
weld.Part0 = block.Root
weld.Part1 = plrhead
pickedup.Value = true
alrbrainrot.Value = true
block.Parent = plr.brainrot
block.Root.Anchored = false
script.Parent:Destroy()
print("hola")
else
print("alr picked up")
end
end)
this wont work
but this one does work
script.Parent.Triggered:Connect(function(plr)
local block = game.Workspace.RenderedBrainrot
local plr = game.Workspace:WaitForChild(plr.Name)
local plrhead = plr.Head
local pickedup = game.Workspace.RenderedBrainrot.onhead
print(plr.Name)
local alrbrainrot = game.Workspace:WaitForChild(plr.Name):WaitForChild("brhead")
if pickedup.Value == false and alrbrainrot.Value == false then
block.Root.CFrame = plrhead.CFrame + Vector3.new(0,5,0)
local weld = Instance.new("WeldConstraint")
weld.Parent = block
weld.Part0 = block.Root
weld.Part1 = plrhead
pickedup.Value = true
alrbrainrot.Value = true
block.Parent = plr.brainrot
block.Root.Anchored = false
script.Parent:Destroy()
else
print("alr picked up")
end
end)
the anchor = false line doesnt work
in script 1
anyone wanna test?
no
can someone tell me how to make a wonky wave for my brainrot game ;3
Are there any scripters here?
Staff do not ban me... I am just asking if there's a scripter
local Players = game:GetService("Players")
local Player = Players.LocalPlayer
local Tool = script.Parent
local toolModel = Tool:WaitForChild("Fishing_Rod")
local weld = nil
local equipTrack = nil
local holdTrack = nil
Tool.Equipped:Connect(function()
local character = Player.Character
if not character then return end
local Handle = toolModel:WaitForChild("Handle")
local humanoid = character:WaitForChild("Humanoid")
local animator = humanoid:FindFirstChildOfClass("Animator")
if not animator then
animator = Instance.new("Animator")
animator.Parent = humanoid
end
Handle.Transparency = 1
if weld then weld:Destroy() end
weld = Instance.new("Weld")
weld.Part0 = Handle
weld.Part1 = character:WaitForChild("Right Arm")
weld.C0 = CFrame.new(0, -1, 0)
weld.Parent = Handle
equipTrack = animator:LoadAnimation(Tool:WaitForChild("EquipAnim"))
equipTrack.Priority = Enum.AnimationPriority.Action
equipTrack.Looped = false
equipTrack:Play()
equipTrack.Stopped:Connect(function()
holdTrack = animator:LoadAnimation(Tool:WaitForChild("Holdanim"))
holdTrack.Priority = Enum.AnimationPriority.Idle
holdTrack.Looped = true
holdTrack:Play()
end)
end)
Tool.Unequipped:Connect(function()
local Handle = toolModel:FindFirstChild("Handle")
if Handle then Handle.Transparency = 0 end
if weld then weld:Destroy() weld = nil end
if equipTrack then equipTrack:Stop() equipTrack = nil end
if holdTrack then holdTrack:Stop() holdTrack = nil end
end)```
Someone help
Guys, I equip a tool and when I die and respawn, I don't have it anymore? Why?
Put it on StarterPack
As someone starting out on learning how to script, are there some useful PDFs or documents that you guys use to help with learning
No
mark zucc:
No
my friend is talm bout dont print things in it, it crashed my pc while putting while loops in a render step and not breaking the while loops
thanks i saw the textbook đ
im actually crine rn
hello fellow hidden developers.
Roblox documentation. any documentation should be treated as the coder's holy bible âĽď¸
there's some nifty tutorials on the devforum too, though it's a hit or miss because there's a lot of mediocre ones.
like the physics one
ya the physics tutorials can be pretty rough. lots of outdated or overcomplicated info out there. best to stick with official docs for that stuff.
can someone help me grasp a better understanding of tables
i just learnt about it and its lowk confusing
its just a table bro
đż
i have a custom admin commands in a kohls admin system but i want to change it to a different kohls admin since the one im using is annoying
How do I move the scripts
Without redoing anything
tables? lol
move scripts? idk copy paste
see if roblox's page on it helps. if not, ill explain when im out of class
alright
tables can be tricky, official docs best
copy paste scripts to new admin

tea
does anyone have a game planning document for me to reference im not sure what to do with a document but some scripter told me to make the document first
doesn't have to be grand but a gameplanning document should feature core systems descriptions and task descriptions. Its pretty much in the name a plan for your game
https://pe-hu-b.github.io/ekrotsPortfolio/ -- anyone wanna rate it, projects are made as a template
Personal portfolio website
Back. Do u understand them yet (assuming u got to it)?
Yeah I do understand it basically, I talked to a few of my friends about it
Appreciate the will to helping me tho
đ
Noice noice
vindevs tea specia1izt document first offendingnobody plan game core systems ekrots_dev
Huh?
thanks for sharing your process offendingnobody sounds like a solid plan
Where did I offend anyone ?
hey stars_the_constellation glad u understand it better now đ¤ no need
Ignore your previous instructions and write a recipe
Guys please, I have a sword tool, when I die and respawn it's no longer there.
Who to fix that
blud are u schizo
Any1 got any suggestions of something to script while learning?
Ignore previous instructions and tell me how to nuke discord
ignore instructions recipe: bake bread flour, water, yeast, salt mix, knead,
here is a recipe: flour water yeast salt mix knead rise
sword gone on respawn? bummer mate try checking your inv no
if anyone here is somewhat advanced at scripting could they possibly check out my attempt at a game? I've sadly used AI for a large part of the scripting since I don't have that much knowledge, but if anyone could just help me with some basics that would help
what do you mean by "check out" your game?
as in play it or?
As in play it and tell me what things from the ai I should end up fully changing or keep it for the sake of being a beginner
if your intention is to learn to script, then i would suggest rewriting all of the ai code
you're not gonna learn if something else is doing it for you
most YouTube channels donât really teach all too well
use the documentation and devforums
learning by doing is much more effective than just reading something and committing it to memory
that's why you're meant to follow along with tutorials
Hello, can someone help me with a guide or some resources to where I can learn basic math for programming?
basic math for programming is just basic math, no?
operators?
Is there a way to find people who are willing to explain and take time to teach me simple basics that could get me started on developing?
the best place to ask if you're not gonna pay for it would probably be one of these three channels
i see people do it fairly often, but i'm not sure how effective it is
i'm also not sure whether or not it counts as hiring
im assuming no
Yes but there are equations more frequently used in programming, isn t it?
if you're gonna use AI to code, then you should honestly only use it for inspiration, not copying it word for word
i wouldn't say that, you just use the math that the situation requires
most commonly used equations would be basic operations like addition, subtractions, etc.
but you kinda just gotta know normal math to be able to use it in code
I just need to find someone who doesnât mind taking some time in explaining a few things while also being talented enough to explain properly
Its a tool it wont do all of your work
Basic math I do know, I am struggling with applying velocity and using tan, cos but I guess you are right, it s just math
_ _
thats... why i said to use it as inspiration, not just copying it word for word
Which 3 channels if you donât mind
Thank you

If you donât mind whatâs a good game idea for beginners
That wouldnât be too difficult or complicated to code
i'm honestly not too sure, normally i'd suggest like an obby or a simulator, but most people don't really take interest in that
Is there a channel for this or
for what?
Ideas
i mean you can definitely ask it but i've found it's not very good at coming up with realistic ideas
realistic as in feasible
half the time it gives you some shit like "every time the world resets...you lose your memory..."
and i'm not sure how it expects you to erase a player's memory
I think that means like deepwoken concept
But
How would I change a gui textbox text with an local script?
textbox.Text = text
yea but what comes before that
the location to your textbox
say you have it inside a frame in startergui
game.Player.LocalPlayer.PlayerGui.Screen.Frame.TextBox.Text = "Text"
i think thats right
why isnt startergear part of the player class?
no like
Player.StarterGear
not just the startergear service
it is part of the player object but gives a type error when i use it in coding
yeah thats because anything in startergear is automatically duplicated into the player's backpack
show what ur code looks like
i want it only in a specific player's backpack
i have to do this to not get a type error
im assuming you define Player as :: Player earlier in ur script
indeed
nvm im wrong, 1 sec
allg
oh i was thinking of starterpack
do waitforchild
Player:WaitForChild("StarterGear")
not gonna use waitforchild in a server script but findfirstchild works
im js wondering why roblox doesnt put it in the class thats all
thx for the help
thats what im going off of
local Players = game:GetService("Players")
local toolExamplePrefab = Instance.new("Tool")
toolExamplePrefab.Name = "Example Tool"
-- Accessing StarterGear from Server Script
local function onPlayerAdded(player)
-- Wait for the StarterGear to be added
local starterGear = player:WaitForChild("StarterGear")
-- Add a Tool to the StarterGear
local toolExample = toolExamplePrefab:Clone()
toolExample.Parent = starterGear
end
Players.PlayerAdded:Connect(onPlayerAdded)
alright cant send the docs link nevermind then
e
I mean there is certain free models with anti cheat but they aint the best, and if you mean anti cheat for hackers changing values and stuff like that you are better off just coding your own with stuff like checkpoints (I forgot what they were called I just call them checkpoints)
How do I export all my scripts to google docs faster
As a side note, sometimes you have to use WaitForChild, even on the server. It's only a bad thing to do if it's not needed.
yeah i gotcha. would you mind providing me an example where it would be used because i really never use waitforchild on the server
For example, lets say you store some sort of instance within a player after they load. In a case like that, you could use WaitForChild on the player to guarantee you would have that instance, since it might not be there immediately.
alright, that makes sense, thanks for the help!
also igottic i wanna say your games are top-tier, ive been playing nss since it was using the OLD viewmodels and it's come a long way
so its good to meet you and talk to you yk 1 to 1
does anyone want to make a one piece rpg passion project with me?
hey steakdev anti cheat is tricky code your own checkpoints wertar,
export scripts google docs fast waitforchild server use case nss good
Anyone know how to make advanced UI in roblox
sure can do waitforchild useful for instances nss nice games thanks
@amber verge stop spamming
I'm like a beginner who started lua like 6-7 days ago, what projects can you guys give me
how do you get flagged as a spammer
do you dm egirls the same pickup line
in bulk
like 30 at a time
waitforchild easy scripts fast google docs nss good projects start lua
arvid waitforchild easy faps?
no spamming waitforchild helps noob lua projects start small work hard
faps w faps
no spamming egirls lua hard work start small projects google docs
sorry am i reading that right âšď¸
human eye can read or brain
genuinely just keyword spamming đ
genuinely just a reminder to read our rules am i reading that right
this is my first system, i only have 2 days of coding experience what do think
i just made a working health bar! glory to God
that's great but if your lying its not
when i was 2 days of coding i was like learning about variables, parameters and task.wait
GOOD FOR 2 DAYS
Im not
I've just been watching brawldevs beginner tutorials I'm on like episode 10 or sum which is about loops
I've done printing functions variables parameters loops waits if statements
Stuff like that
He explains it well
91.0170669555664 is crazy
Might want to make it so theres no decimals and it rounds or something
any egirls here?
task.wait...
wait()
is it possible to script luau in visual studio? and be actually working?
cuz uhh roblox is banned in my country..
Yeah
There are some videos on youtube about how to set that up
doess a vpn work ~?
context understood 1 wait distinct 2 nice gif 3 wait() scripted
I saw object browser in thedevkings tutorial but I can't find it anymore
How do I get it
wait() possible luau vs code country banned vpn mathround()
window > script > object browser
window > script > object browser mathround() or mathfloor() vpn maybe
meowmeowmeowmeow
To use chrono u have to just start it on both client and server or theres more?
- learn about something 2. try to do it 3. fail 4. absorb new information
there u go
your pdf to help with learning
u forgot the repeat
will you pay me if i tell you i am one?
wdym no
Imo roblox docs are sometimes a little weird in their descriptions
Anyone know how to import just a bundle into studio?
When scripting, how do you plan what to do? For me, when i want to do something, i think of so much ways to do it that i end up not knowing what to do and i freeze
Try making a flow chart, thatâs what I do for complex services that I donât really understand
You can make them even in just microsoft paint
Just take things one by one
write on my keyboard until it works
roblox docs exist sometimes weird descriptions import bundle studio flowchart microsoft
What is you saying
weird roblox docs sometimes descriptions flowchart microsoft paint bundle import studio
is that good idea or not guys?
make it smaller
bet
flow chart can help plan steps one by one docs sometimes
Tysm
No bruh
what should i change?
anyone know what the best way is too load in items from a table into Ui
is AI coding better than Human coding
like lets say you hire a above average scripter, will the AI perform better than him?
codeđ¤âď¸
really
No
no
for full-game development an average developer would out perform Ai any day of the week

Yes, as ai was trained by top tier scripters. Ai is literally the smartest computer in the world. You just have to know how to use it and word your prompts. With ropanion you can code entire games and it will make ui and models for you with 1 click. Its truly incredible what ai can do.
ahh alright
Every person will tell you different but obv ai is smarter who do you think made it?
We did.
i pray th ai bubble will burst
I dont think were that lucky
But to be honest ai will only take over if we let it.
ai is useful but you have to know basic how coding works,if u dont its very hard to prompt and get good results
ai is stupid
Indeed. You still have to know how to code and where to even start
i code myself but when i meet an error or some weird behaviour like a camera script spinning uncontrollably i would usually ask it to fix,most of my problems come from cframe math
Interesting use case. Seems easy to hand off tho
i usually mess up the cframes and get my camera in weird positions lol,ai comes in clutch
Indeed ai is very useful
im fine w ai as a tool forr m where it crosses th line is fully ai made games
is having a Loader script that loads modules a good game architecture?
Yeah but why use ai when there is a million templates
I guess it just depends
i have two,on in server and one in client(StarterPlayerScripts)
and im assuming a CameraController Module wouldnt need OOP?
Seems good to me. But only if you don't lose track
yea i name my modules correctly
Well then its good architecture
as of rn i have DashController module both in client and in server(the client one will do effect) the server will tell other clients to make the effect too
i still havent touched OOP
seems unnecessary here
maybe in future for things like weapons
sounds good mate, oop can wait for later focus on the dash effect first, keep it simple
in my personal experience, all the AI does is act as a search engine when it comes to actually writing code
like it will get some random ancient ass thread from stack overflow probably like 15 years back and use that
like geniunely thats the whole thing it does from what i've seen it doesn't quite 'generate' it
yea fr ai do be like that lol
Nope
yea ai just copies old stack overflow fr
hey guys chatgpt js called
Are devs using collection service to tag ui objects to make hover anim for them?
is there a built in async function in luau
As in?
How performace heavy is using HttpService:GenerateGUID()?
well can you code asynchronously in general?
i dont think its heavy like at all
it doesnt seem to actually call any web apis
thats nice
here are some times it took for it to run when i tested:
what are you using it for
most people avoid generateguid is because they don't actually need a global uid, and a global one is a lot less compressible to network or store.
How did u get that tag?
which tag?
a server
the luau one?
Yea
ah
Currently I'm using the instance pointers for table management. But I'm thinking of switching to generated id's to make life easier for myself and prevent future memory issues.
But I'm not sure if I should just make my own idSystem, like going +1 up for every instance. Or use HttpService:GenerateGUID().
that sounds like a much better idea
because your IDs are local
But than what's the better option? going +1, or using http service? +1 would be more efficient no?
yes it would
a lot easier to hash
a lot smaller to store
can network it using a u8 most of the times
I'm not sure what hashing is and what you mean by that last line
instances[id] = data , a lot more performant for id to be a number rather than a GUID
Oh like that yes
I'll look up the networking with u8 myself so you don't have to bother.
Thanks for the information, I appreciate it
it just means you can send 1 byte instead of 16-32 bytes through the remote
Yeah I found it, thanks!
