don’t watch tutorials that teach you how to make entire systems man, I’ve never needed tutorials like “how to make a gun system” as long as you read the documentation and learn actual functions to do this you will be fine. Only watch tutorials as a last resort, They spoonfeed alot that’s why I don’t use them.
But yes to answer your question, use attributes since they’re slightly fsater than values I believe? But if you don’t want to use attributes that’s your choice. I still use regular debouncing boolean variable values from time to time. If you want to save a player’s data or something, everytime they do something like add a new pad use updateasync/setasync to update or set a new value to their data. If you wanna save certain positions just do something like this:
local x,y,z = cframe:GetComponents()
data:SetAsync("key", x,y,z)