How to Use ProfileService in Roblox Studio! | Best Way to Save and Manage Player Data in Roblox!

Поділитися
Вставка
  • Опубліковано 26 січ 2025

КОМЕНТАРІ • 240

  • @AmoraScripting
    @AmoraScripting  Рік тому +10

    If you have any issues, let me know! I'll help to my best ability!

    • @555peti_
      @555peti_ Рік тому

      I have a problem, so basically i use coins and when the player picks up the coin it gives an error :
      Data is not valid member of Player
      So basically how do i get the data folder?

    • @AmoraScripting
      @AmoraScripting  Рік тому

      @@555peti_ you are trying to set data in the player. Change the line to "profile.Data.Coins" instead.

    • @simmixzapasowe862
      @simmixzapasowe862 Рік тому

      When more players join the game then my data crashes

    • @555peti_
      @555peti_ Рік тому

      I have another problem man, when a player rejoins the game the data does not load in

    • @AmoraScripting
      @AmoraScripting  Рік тому

      @@555peti_ if you added .Mock at the end of .GetProfileAsync, it won't load or save any data

  • @Travixty
    @Travixty 11 місяців тому +4

    great tutorial, but i really want to point out how much I appreciate the entire part starting at 11:32 I'm very new to doing this, but having an explanation on what each line does is incredibly helpful to grasping this entire concept.

  • @Thelittlesthoboson
    @Thelittlesthoboson 10 місяців тому +3

    If your Table values aren't saving, it's probably because your table has mixed integer and string indexs, read the top of ProfileService. I hope this helps anyone so they don't bang their head into the wall for 3 days like i just did

  • @AA_idkhaha
    @AA_idkhaha Рік тому +9

    why dont you have more subs lol!
    imma sub cuz this is genuinely helpful!

    • @opm_a-ngo2903
      @opm_a-ngo2903 Рік тому

      i'll tell you why he is a furry

    • @AA_idkhaha
      @AA_idkhaha Рік тому

      @@opm_a-ngo2903 damn bruh💀💀I just liked the tutorial lol

    • @opm_a-ngo2903
      @opm_a-ngo2903 Рік тому

      @@AA_idkhaha he still furry tho

    • @AmoraScripting
      @AmoraScripting  Рік тому +4

      @@opm_a-ngo2903 boohoo. Who cares. If you don't like that, then leave

  • @satori-main
    @satori-main Рік тому +4

    This just makes my life much easier

  • @renjiplays7567
    @renjiplays7567 2 місяці тому

    Amazing tutorial but I would recommend slowing down some i had to watch this in .6x speed lol

  • @liam2795
    @liam2795 Рік тому +1

    tysm this help alot it really allow me to understand

  • @arctalgamez
    @arctalgamez 2 місяці тому

    It worked in my test game, but when I tried it on my actual game it just didn't save, and I lost all my previous data from my old datastore.

  • @thatinteresteddeveloper2674
    @thatinteresteddeveloper2674 Рік тому +2

    so im trying to make it so that when you use a tool (which is in your starterpack) and you click you get 1 sip, the problem is the sip value isnt going up ive used both local and regular scrips im not sure whether or not im needing to use remote events?, heres my code
    local serverScriptService = game:GetService("ServerScriptService")
    local DataManager = require(serverScriptService:WaitForChild("Modules"):WaitForChild("DataManager"))
    script.Parent.Activated:Connect(function(player)
    local profile = DataManager.Profiles[player]
    if not profile then return end
    profile.Data.Sips += 1
    player.leaderstats.Sips.Value = profile.Data.Sips
    end)
    Update, if youre using tools to gain points with a local script, use remote events

    • @SadlekAski
      @SadlekAski Рік тому +1

      why tool, just make a simple button (well, first understand how to do it through button, then do tool)

    • @ImIndeedCappy
      @ImIndeedCappy Рік тому

      @@SadlekAski that did not help them at all.

  • @sadsimonsayagainplay9313
    @sadsimonsayagainplay9313 2 місяці тому

    Hi, I see you are quite good at this and I need some advice. I can also use this script to automatically save the time spent on the server, I've been struggling with this for a long time, but no script ever works for me. It always shows me a problem in the datastore and I don't know what to do about it. Does saving also work for more things, for example saving time and also saving money in the game? thank you very much

  • @7take93
    @7take93 9 місяців тому +1

    Thanks! How can I save data in multiple locations?

  • @danieltavares2754
    @danieltavares2754 6 місяців тому

    You're a GOD bro, thank you so much!

  • @DevelopedBananaas
    @DevelopedBananaas 7 місяців тому

    Great tutorila but i have a issue here is my error : ServerScriptService.Module.ProfileService:1714: [ProfileService]: Profile template not set - ProfileStore:LoadProfileAsync() locked for this ProfileStore

  • @FLEKSBEATS
    @FLEKSBEATS Рік тому +3

    Nice video it was very helpful! Btw do you know how to access every profile created in the store (to make a global leaderboard)?

    • @AmoraScripting
      @AmoraScripting  Рік тому +1

      Unfortunately, that is one of the things with profile service I don't know how to do. You'll have to do some research on that.

    • @Mamyschn1
      @Mamyschn1 Місяць тому

      @@AmoraScripting hey ik its a year later and stuff but how would i save one value that's in the leaderstats folder and then have more values that aren't leaderstats?
      edit: used common sense and figured it out myself thx for the tutorial

  • @overthe_best6687
    @overthe_best6687 2 місяці тому

    im trrying to make a obby but with saving obby progression would this work for me with the obby or would i be better off writing a regular leaderstats script for it becuase when i join and re load it doesnt save? (I got it to save!)

  • @dextertheio2857
    @dextertheio2857 3 місяці тому

    I dont know what the fuck is going on in this video but hey, it saves data.

  • @user-unknown-jfjgjdmvorjrg
    @user-unknown-jfjgjdmvorjrg 3 місяці тому

    what if i want to like make a inventory system so it saves the players pets

  • @maybelazy
    @maybelazy 5 місяців тому

    hello why i cant acces profiles[player], and when i console log profiles, its dont have nicknames or something like that

  • @Gindalo_Official
    @Gindalo_Official 7 місяців тому

    Can you make a addon video of this where you can pick between multiple slots to access your data?

  • @contcsgo-ko8ny
    @contcsgo-ko8ny 4 місяці тому

    if i want to change the datastore to a different save, how do i do it?

  • @2NinjaTwins
    @2NinjaTwins 7 місяців тому

    I followed the scripting - but it doesn't have any leaderboard? All it shows is my name
    Thanks in advance

  • @ninpu1173
    @ninpu1173 5 місяців тому

    hey, nice tutorial!
    i was wondering if it would be worse if i made a maybe "statsHandler", and make functions like
    "player.profile.Data.Exp.Changed:Connect(function())"
    to make it so when the player gets exp, i dont need to update it inside the own script, would that work?

  • @verticalpug2026
    @verticalpug2026 10 місяців тому

    those waitforchilds are... oof, that's a lot of em, if you want to just load them via dot/bracket indexing, you can do game.Loaded to wait until everything is loaded.

    • @AmoraScripting
      @AmoraScripting  10 місяців тому

      Yeah.. it's a force of habit for me. Most of them aren't even necessary! I don't know why it's just a force of habit 🤣

    • @verticalpug2026
      @verticalpug2026 10 місяців тому

      @@AmoraScripting well, it prevents those annoying "attempt to index string with nil" errors lol

    • @AmoraScripting
      @AmoraScripting  10 місяців тому

      @@verticalpug2026 You got that right, lmfao

  • @miscento1114
    @miscento1114 6 місяців тому

    i get an error saying argument 3 missing or nil. can you please help?

  • @No_EffortWasTaken
    @No_EffortWasTaken 11 місяців тому

    leaderstats doesn’t show up in the leaderboard when I’m in game and doesn’t show up in my player when I check in studio

    • @No_EffortWasTaken
      @No_EffortWasTaken 11 місяців тому

      I have tried rewritting the leaderstats scripts a few times already

    • @No_EffortWasTaken
      @No_EffortWasTaken 11 місяців тому

      I got leaderstats to work but it doesn’t save there’s no errors

    • @No_EffortWasTaken
      @No_EffortWasTaken 11 місяців тому

      Might be because it’s not loading the data

  • @unfathomabledescription
    @unfathomabledescription 9 місяців тому

    Thanks but, how do I make it work with a remote event whenever the remote event fires it loads a data value that it added. But if the player joins the data doesn't load for some reason.

  • @MaskedFacez
    @MaskedFacez Рік тому

    I'm getting the ProfileService Missing or invalid Name paramater bug

  • @karma_clips733
    @karma_clips733 11 місяців тому

    im having troubles with my leaderstats is there any chance you could help?

    • @karma_clips733
      @karma_clips733 11 місяців тому

      this message is outputed when i run the game" 12:36:29.253 ServerScriptService.Modules.ProfileService:1409: attempt to index nil with 'Data'"

  • @superstitic
    @superstitic 9 місяців тому

    Whats the point of using a proximity prompt? Can I do it without it?

    • @AmoraScripting
      @AmoraScripting  9 місяців тому

      It was a demonstration.

    • @superstitic
      @superstitic 9 місяців тому

      @@AmoraScripting what do you mean by that

    • @superstitic
      @superstitic 9 місяців тому

      @@AmoraScripting im just trying to store 2 variables ive created in a local script on the server so that when someone leaves and rejoins i can access their user specific variable values and display them

    • @AmoraScripting
      @AmoraScripting  9 місяців тому

      @@superstitic I mean that the proximity prompt is just an example of how to change the data in ProfileService.

  • @EeveeTheQueen
    @EeveeTheQueen 11 місяців тому

    If your having an issue with the Data Manager at line 19, its AddUserId not AddUserID. I struggled with this small error for hours.

    • @AmoraScripting
      @AmoraScripting  11 місяців тому

      Very small typos are very much a burden and very hard to notice.

    • @EeveeTheQueen
      @EeveeTheQueen 11 місяців тому

      @@AmoraScripting They are, Now the leaderstats are showing and updating but its not saving the information har har

    • @AmoraScripting
      @AmoraScripting  11 місяців тому

      @@EeveeTheQueen Do you receive any errors in your output? It's likely something else wrong in your DataManager.

    • @EeveeTheQueen
      @EeveeTheQueen 11 місяців тому

      @@AmoraScripting No other errors. Im attempting to add a timer instead of a proximity prompt so maybe my error is there.

    • @AmoraScripting
      @AmoraScripting  11 місяців тому

      @@EeveeTheQueen Well, if your leaderstats are going up, you're either not changing the data itself, or there's something wrong with your DataManager.

  • @rukiammh
    @rukiammh 9 місяців тому

    yo on the part stuff where when u fire the prox prompt why do I ge tan error attempt to index nil with instance Im erroring on this line local profile = dataManager.Profiles[player]

  • @w........
    @w........ 4 місяці тому

    how would i access this data inside of a "place" under the main game?

    • @AmoraScripting
      @AmoraScripting  3 місяці тому +1

      Sorry for the late reply. I've been very busy. Hopefully you've already found an answer elsewhere by now. If not:
      ProfileService at its very, very, very watered down basics is Roblox's normal DataStores glorifed, so I'm going to assume it's the same as that: just use the exact same code in the other place below the game, making it load with the exact same data key and everything.
      I might be wrong because I'm not super familiar with ProfileService. I only use its basics to cleanly and efficiently save data in my projects, and I've never experimented with it myself. Please let me know if it works!

    • @w........
      @w........ 3 місяці тому

      @@AmoraScripting thanks for the response, i never actually did find out so this information is very useful, thanks!

  • @Mouncho
    @Mouncho Рік тому

    Im having some problems with the code. it works and the leaderstats loads but it seems that the data isnt saving. Ive checked the code many times and i have HTTP and API on anyone help?

  • @betreyal9182
    @betreyal9182 10 місяців тому

    in the log you can edit your leaderstats and scripts easily, how would you edit your stats yourself with profileservice

    • @AmoraScripting
      @AmoraScripting  10 місяців тому

      Can you expound? I'm a bit confused with what you're saying.

    • @betreyal9182
      @betreyal9182 10 місяців тому

      @@AmoraScripting in the dev console with F9 would you just edit the values like you normally would and profile service would save them? or is there something else you need to type in there for profile service to save it because i dont think it let me edit stats in the dev console to where it saved when i rejoined. lol i meant dev console not log

  • @texark.
    @texark. Рік тому

    What is the purpose of script PlayerData in ServerScriptService?

  • @caleb-pe1dw
    @caleb-pe1dw 8 місяців тому

    is this video still up to date? just curious if my current issue is a spelling error or not

  • @Thelittlesthoboson
    @Thelittlesthoboson 10 місяців тому

    Is this safe to do in a script that's in the workspace? Shouldn't the data be handled in a server event?

  • @hehe-vk4ls
    @hehe-vk4ls 6 місяців тому

    hey im really confused on how to use tables in the template section and how to add things to it so it is stored if you can help me that would be great, i have an example of what im trying to do if you dont really understand what im saying. Thank you for the great video!

    • @AmoraScripting
      @AmoraScripting  6 місяців тому +1

      @@hehe-vk4ls Inside of the template module, all you need to do is create a table like normal. An example: "MyTable = {}"
      That data is still accessed the same way as every other value in the player's data: by accessing their data through the DataManager. Editing the table and reading the table is exactly the same as tables inside of variables in other scripts. You use table.insert to add values, table.remove to remove values, and table.find or player.Data.MyTable[value] to read values.
      Because this is player data, the values in the table must be equal to a number, boolean, string, or another table. The values in the table must not be equal to objects. Otherwise, it will break the data stores.
      I hope this helps :)

    • @hehe-vk4ls
      @hehe-vk4ls 6 місяців тому

      ​@@AmoraScripting thanks, this helped a lot!

    • @hehe-vk4ls
      @hehe-vk4ls 6 місяців тому

      @@AmoraScripting when the player connects im trying to use a characteradded event under the playeradded event but any script inside characteradded doesnt work, any fix?

    • @AmoraScripting
      @AmoraScripting  6 місяців тому

      @@hehe-vk4ls Is the CharacterAdded event right at the very top of PlayerAdded? Sometimes, it refuses to work if it's not at the top in my experience.

    • @hehe-vk4ls
      @hehe-vk4ls 6 місяців тому

      @@AmoraScripting yeah it is but it wont load anything, i tried making a seperate event in a normal server script and it didnt work there either

  • @trikingstudio4267
    @trikingstudio4267 Рік тому

    what do I do if i'm getting this error message: ServerScriptService.Modules.ProfileService:2209: [ProfileService]: Missing or invalid "Name" parameter

  • @LeapInno
    @LeapInno Рік тому

    Nice tutorial.

  • @AnytimeUseless
    @AnytimeUseless 8 місяців тому

    It doesn't work and the error says instance expected got table in the line 3 of leaderstats :( it's been 6 days since I'm trying to create a datastore and this was my last chance

    • @AmoraScripting
      @AmoraScripting  8 місяців тому

      Please show me line 29, and only line 29 of your DataManager module.

    • @AnytimeUseless
      @AnytimeUseless 8 місяців тому

      @@AmoraScripting i will be home in 30 min, btw i appreciate a lot the fact that you actually answered, you're a life saver fr fr

    • @AnytimeUseless
      @AnytimeUseless 8 місяців тому

      ​@@AmoraScripting it worked i wrote .Create instead of :Create... You're an awesome scripter, recognized the error just by a yt comment, deserves a sub

    • @AmoraScripting
      @AmoraScripting  8 місяців тому

      @@AnytimeUseless I'm glad you were able to figure it out! I hope your project goes well!

    • @AnytimeUseless
      @AnytimeUseless 8 місяців тому

      @@AmoraScripting tysm, with your help it will go well 100%

  • @RobloxOneMinuteDev
    @RobloxOneMinuteDev 7 місяців тому

    I do not believe leaderstats has to be an entire module. You can make all of it in a normal serverscript

    • @AmoraScripting
      @AmoraScripting  7 місяців тому

      I'm aware. I put it into a separate module because that's how I like to organize it. It feels easier to read to me, and that's how it was made in the video. You can change it accordingly yourself if you do not wish to have it in its own module.

  • @katthedev
    @katthedev 9 місяців тому

    would this break my in-game leaderboards?

    • @AmoraScripting
      @AmoraScripting  9 місяців тому

      No. You just need to make sure it's set up properly.

    • @katthedev
      @katthedev 9 місяців тому

      @@AmoraScripting what do you mean?

  • @FPSClippinn
    @FPSClippinn 9 місяців тому

    amazing script and stuff but i type 150 wpm in c++ and i couldnt keep up without having to pause every 10 seconds
    It's extremely annoying, if your gonna explain then slow down a little please.

    • @AmoraScripting
      @AmoraScripting  9 місяців тому

      I get it. My brain just likes to go fast. When I start making videos again, I will slow down more. I can type unreasonably fast in the perfect conditions. My fastest typing speed ever was 193 wpm
      Thank you for the feedback!

    • @FPSClippinn
      @FPSClippinn 9 місяців тому

      @@AmoraScripting Yeah of course. I spoke a little too early because I'm getting server kick message even after I did everything perfect,

    • @lu4ren
      @lu4ren 5 місяців тому

      are u dumb? just slow the video down

  • @AlexisAutotte
    @AlexisAutotte 9 місяців тому

    How do you update bool value with this ?

  • @LuCiiOYTChannel
    @LuCiiOYTChannel 9 місяців тому

    I tryed the old ones and says many errors

  • @saltyontop_
    @saltyontop_ Рік тому +1

    hey! can profile service be used between games?

    • @AmoraScripting
      @AmoraScripting  Рік тому

      That might be something you'll have to do some research on, unfortunately. I don't have much knowledge on cross-game data saving. Especially with ProfileService.

    • @joeldct
      @joeldct 7 місяців тому

      you can't use them across games lol. You can only link stuff to badges and give them items in the other game if they own the badge

    • @not_sambreto
      @not_sambreto 4 місяці тому

      @@joeldct You can, if the game is made inside of the game (in the asset manager) all you gotta do is copy the data store stuff over and the data will pass over

    • @joeldct
      @joeldct 4 місяці тому

      @@not_sambreto thats not what he meant. He means 2 different games

    • @not_sambreto
      @not_sambreto 4 місяці тому

      @@joeldct oh ok, unless it was like a sequel to the game there wouldn’t be a point but thanks

  • @superhandsdeveloper
    @superhandsdeveloper Рік тому

    I'm trying to figure out how I would make the gamepass basically save the player's data just so i can check if a player owns it but in an easy way for me here is a script i tried (NOTE: It's just for testing too see if it prints like if it works)
    local serverScriptService = game:GetService("ServerScriptService")
    local dataManager = require(serverScriptService:WaitForChild("ServerModules"):WaitForChild("DataManager"))
    game.Players.PlayerAdded:Connect(function(player)
    local profile = dataManager.Profiles[player]
    if not profile then return end

    wait(2)
    profile.Data.VIP_Gamepass = true
    task.wait(0.1)
    print(profile.Data.VIP_Gamepass)
    end)

    • @AmoraScripting
      @AmoraScripting  Рік тому

      This is the worst way possible to check if someone owns a game pass.
      Use MarketplaceService:UserOwnsGamePassAsync()
      create.roblox.com/docs/reference/engine/classes/MarketplaceService

    • @SadlekAski
      @SadlekAski Рік тому

      the model you left in description are different from what you shown, I dont kinda want to write all by myself cuz I already watched the video@@AmoraScripting
      oh nvm I was just watching video at 4 am and wanted to sleep so uh xd

  • @fuducklol
    @fuducklol 9 місяців тому

    How do I get it in a local script, because it doesnt see modules

    • @AmoraScripting
      @AmoraScripting  9 місяців тому

      Don't.

    • @fuducklol
      @fuducklol 9 місяців тому

      @@AmoraScripting oh

    • @fuducklol
      @fuducklol 9 місяців тому

      @@AmoraScripting well do you have and advice on how you would put these on a text label

    • @AmoraScripting
      @AmoraScripting  9 місяців тому

      @fuducklol Create values inside of the player, inside a leaderstats folder or not, then you can change the value to the data when the data changes and use that value for a text label

    • @fuducklol
      @fuducklol 9 місяців тому

      @@AmoraScripting this is my 3rd time reading it i finally understand it

  • @monkeechunke96
    @monkeechunke96 Рік тому

    I need some help, Basically I did everything and when I run it the leaderstats doesn't show up. Can you tell me the problem. I also looked through every line of codes in the Module Scripts.

    • @AmoraScripting
      @AmoraScripting  Рік тому

      Can you show me your script?

    • @monkeechunke96
      @monkeechunke96 Рік тому

      @@AmoraScripting
      Template:
      local template = {
      Cash = 0,
      }
      return template

    • @AmoraScripting
      @AmoraScripting  Рік тому

      @@monkeechunke96 show me the datamanager module and leaderstats module as well, please

    • @monkeechunke96
      @monkeechunke96 Рік тому

      @AmoraFolf
      Leaderstats:
      local module = {}
      function module:Create(player: Player, profile)
      local leaderstats = Instance.new("Folder")
      leaderstats . Name = "Leaderstats"
      leaderstats . Parent = player

      local cash = Instance.new("IntValue")
      cash . Name = "Cash"
      cash . Value = profile . Data . cash
      cash . Parent = leaderstats
      end
      return module
      (I can't put the dots in without spaces because suspicious link)

    • @AmoraScripting
      @AmoraScripting  Рік тому

      @@monkeechunke96 you capitalize the name of the leaderstats folder. It has to be all lowercase, or it won't work.

  • @wosi-old127
    @wosi-old127 8 місяців тому

    hi, how could i acces the data thru the client?

    • @AmoraScripting
      @AmoraScripting  8 місяців тому

      You can't. You also never should. That is a stupid idea because it is so incredibly exploitable.

  • @cpufnafarandedits1436
    @cpufnafarandedits1436 7 місяців тому

    And how do I restart the data?

  • @gerixycs
    @gerixycs Рік тому

    if i had a table in template named Inventory how to add things to the table?

    • @AmoraScripting
      @AmoraScripting  Рік тому +1

      You would use "table.insert(profile.Data.TableName, value)"

    • @gerixycs
      @gerixycs Рік тому

      ​@@AmoraScripting Thank you, I've been struggling with this all day to make it happen, but you solved it.

    • @AmoraScripting
      @AmoraScripting  Рік тому +1

      @@gerixycs glad I could help! 😁

  • @TheCoolestGuyEverLol
    @TheCoolestGuyEverLol 4 місяці тому

    You couldve done the exact same thing by just using 1 module like i do

    • @AmoraScripting
      @AmoraScripting  4 місяці тому

      @@TheCoolestGuyEverLol I know, but this is how I prefer to organize it. Change it to however you like. It will work no matter what if it's set up correctly.

  • @anotherdeadchannel
    @anotherdeadchannel 5 місяців тому

    Why do you use waitforchild on the server ;-;

    • @AmoraScripting
      @AmoraScripting  5 місяців тому

      @@anotherdeadchannel I have waitforchilditis.

    • @anotherdeadchannel
      @anotherdeadchannel 5 місяців тому

      Also, why did you use a module script instead of a regular script if you're not gonna use a module script to re-use code. You literally used a module script like a normal script except you need to require it for it to run ;-;

    • @AmoraScripting
      @AmoraScripting  5 місяців тому

      @@anotherdeadchannel organization.

    • @anotherdeadchannel
      @anotherdeadchannel 5 місяців тому

      @@AmoraScripting Understandable, have a nice day.

  • @DeepboundAJ
    @DeepboundAJ Рік тому

    what do i do if i want to change it from cash to like levels

    • @AmoraScripting
      @AmoraScripting  Рік тому

      Change it in the template and the name of the leaderstats (if there are any)

    • @DeepboundAJ
      @DeepboundAJ Рік тому

      thanks and also my leader board doesnt work at all@@AmoraScripting

    • @DeepboundAJ
      @DeepboundAJ Рік тому

      got it working missing capital lmao@@AmoraScripting

  • @LuCiiOYTChannel
    @LuCiiOYTChannel 9 місяців тому

    I dont have this CashPart in studio

  • @fuducklol
    @fuducklol 9 місяців тому

    Thank you brother☝

  • @noturne54
    @noturne54 Рік тому

    Can you make a .GetProfileStore method with different keys and templates for something like currency and inventory?

    • @AmoraScripting
      @AmoraScripting  Рік тому

      Yes, you can. The ones in my tutorial were examples.

    • @noturne54
      @noturne54 Рік тому

      Can you artificially change the profile's value in-game?

    • @noturne54
      @noturne54 Рік тому

      @@AmoraScripting What i am doing is making a script named "currencyData" and making a profileStore with the key and the currency template inside the template's module (Templates.Currency). And then, when i check if the player is descendant of, let's say there are two tables inside the datamanager. I'm making it the currencyProfiles table. And then making another script but with the inventoryProfiles table in the same datamanager module. Is there any problem with it?

    • @AmoraScripting
      @AmoraScripting  Рік тому

      @@noturne54 I'm a little confused on what you're trying to do. Can you clarify a bit for me, please?

    • @noturne54
      @noturne54 Рік тому

      @@AmoraScripting Nvm you can forget what i said, i just don't want to Store all the player stats inside the same key. I figured out there is no problem with it, but i wanna find a way to manually change the datastore when in-game as an Admin. How can I relate the saved data with the new data so I can change the Player's (e.g. Coins) value? If I do it, the data is attached to the saved data so i can't change it. Everytime it updates it comes back, so i tried to find a way to change the saved data instead but I couldn't find it.

  • @unifow
    @unifow 4 місяці тому

    do you know how I can wipe data?

    • @AmoraScripting
      @AmoraScripting  4 місяці тому

      @@unifow For a specific player or every single player?

    • @unifow
      @unifow 4 місяці тому

      @@AmoraScripting every single player

    • @AmoraScripting
      @AmoraScripting  4 місяці тому

      @@unifow Change the data key.

    • @unifow
      @unifow 4 місяці тому

      @@AmoraScripting ooooh I just tried it and it works. Tysm.

  • @notwuxxi
    @notwuxxi 4 місяці тому

    thanks man

    • @hunhowshadow317
      @hunhowshadow317 3 місяці тому

      Believe it or not they are a girl, at least that's what they claim

  • @Washavalaca
    @Washavalaca 4 місяці тому

    How do I store objects?

    • @AmoraScripting
      @AmoraScripting  4 місяці тому

      @@Washavalaca You can't

    • @Washavalaca
      @Washavalaca 4 місяці тому

      @@AmoraScripting but in numbers, if hair = 12 then it will create a part and so on

    • @AmoraScripting
      @AmoraScripting  4 місяці тому

      @Washavalaca There are ways to do it, like if you wanted an inventory system, you could save the name of the object in the inventory and the amount of it, and then load the object by duplicating it into the inventory, but you cannot actually save objects themselves in datastores. ProfileService, at the end of the day, still uses Roblox's default datastores, but it creates features to make it incredibly secure and way better.

  • @diyaribeste5845
    @diyaribeste5845 Рік тому

    how to add boolValue??

    • @AmoraScripting
      @AmoraScripting  Рік тому

      You add the value in the template and set it to true or false.

  • @nathanrobloxsquad4529
    @nathanrobloxsquad4529 Рік тому +1

    I am trying to do this:
    A player spawns with a wooden sword then if they defeat a boss they get stone sword.
    So I need a way for tools to save when the player dies or leaves and I need it to save for new tools. So I tried different scripts but none of them worked. How can I use profile service to do this?

    • @AmoraScripting
      @AmoraScripting  Рік тому

      You can add a table to the template full of every tool's name, then when they get a new sword, use "table.insert(profile.Data.WhateverYourTableNameIs, tool.Name)" to save the new tool.
      Or, instead of tool.Name, you could just insert the string directly, but I recommend using tool.Name. After you publish the game and people get save data, it's important not to change the name of the tool. Otherwise, if you're cloning all of their saved tools into their backpack, or if you're cloning one based on an equipped tool value in their data, it will error because it can't find the tool with the same name.

  • @TylersAdventures_YT
    @TylersAdventures_YT 8 місяців тому

    i hope u get 10k sub for this but can you provide the scripts because that would really help me out

    • @AmoraScripting
      @AmoraScripting  8 місяців тому

      I will never give the scripts out. You do not learn from copying and pasting. The purpose of my channel is to teach.

  • @theendtimesaints5324
    @theendtimesaints5324 Рік тому

    I like your pfp

  • @sadge6430
    @sadge6430 Рік тому

    Tysm

  • @Meeshkan
    @Meeshkan Рік тому

    Could you please post the code from the video somewhere so that it can be copied

    • @AmoraScripting
      @AmoraScripting  Рік тому +1

      I don't like to let you copy the code because then you can't learn from it. However, the official documentation on ProfileService will have basic level code on how to use it.

  • @scarfyproxy6789
    @scarfyproxy6789 Рік тому +3

    Finally a furry roblox dev, if I learned anything always trust furries with tech.

  • @Prynux
    @Prynux Рік тому

    Uhh I need help haha

  • @sadge6430
    @sadge6430 Рік тому

    hkmn

  • @mr-banana971
    @mr-banana971 Рік тому

    the leaderstats doesnt show up for me
    this is the script
    local module = {}
    function module:create(player: player, profile)
    local leaderstats = Instance.new("Folder")
    leaderstats.Name = "leaderstats"
    leaderstats.Parent = player

    local money = Instance.new("IntValue")
    money.Name = "Money"
    money.Value = profile.data.money
    money.Parent = leaderstats

    local food = Instance.new("IntValue")
    food.Name = "Food"
    food.Value = profile.data.food
    food.Parent = leaderstats
    end
    return module

    • @AmoraScripting
      @AmoraScripting  Рік тому

      I have two questions. Are you getting any errors? And are you running the function in the DataManager script?

    • @ZyanFernando
      @ZyanFernando Рік тому

      player: Player*

  • @c_rushed2328
    @c_rushed2328 Рік тому

    Does this save between places? if not would u know how i can possibly save the data between different places

    • @AmoraScripting
      @AmoraScripting  Рік тому

      If you're talking about places that are part of a parent game, then yes. However, it will not work across completely different games, at least to my knowledge.

    • @c_rushed2328
      @c_rushed2328 Рік тому

      @@AmoraScripting thanks! im also working on a parkour game, although im way much more of a builder/visual design/concept art whatever. So most i can do is change properties when it comes to scripting lol.