This is Awesome, Great work!
I hope u make more cool helpful items!
A free idea is a good environment editor type of thingy which helps make animated environment like windshake, water movement lines, waterfall lines, etc.
This is Awesome, Great work!
I hope u make more cool helpful items!
A free idea is a good environment editor type of thingy which helps make animated environment like windshake, water movement lines, waterfall lines, etc.
how do u make a poll canât seem to get it to work i see there is a command /poll but canât find what parameter(s) i have to send for it to a work?
awsome chat btw loving it
It needs to be enabled in the settings module, I was just not able to publish the changes yet to the loader.
If you insert the source code, you can see the template for the settings at the top of the MainModule script. You then just add it to settings and it should work, DM me if you need help.
Windshake, water movement, and waterfalls already have pretty popular plugins. Also, this is a resource - not a plugin.
For some reason, this chat system makes my main datastore not save
Please someone help me, the chat system is very good, but when I put it on my game map it makes my main date to save things, and the dates obviously do not have the same name, the name of my date is âDataPlayersâ.
If you use DataStore service use ProfileService instead. Save your player data with ProfileService! (DataStore Module)
ok thx my friend, I will learn about.
I tried to use this thing that you recommended and I didnât understand anything, I found it a bit confusing.
You didnt found anything else on the dev forum or article on it ?
Look in the configuration of BetterChat and turn off the option that saves data for the chat and see if that fixes your data saving.
I read about it, but I didnât really understand how it works, Iâm new
I already tried and nothing changed, I will post my date code in the chat
local dts = game:GetService('DataStoreService')
local MyData = dts:GetDataStore('DataPlayers')
local m = {}
function m.save (plr)
local lista = {}
for Name, Value in pairs(plr:GetAttributes()) do
lista[Name] = Value
end
local tentativas = 0
repeat
local Ok, Info = pcall(function()
return MyData:SetAsync(plr.UserId, lista)
end)
tentativas += 1
until Ok or tentativas >= 5
end
function m.load (plr)
local Ok, Data = pcall(function()
return MyData:GetAsync(plr.UserId)
end)
if not Ok then
plr:Kick('Failed to Load Your Data')
end
if not Data then return end
for Name, Value in pairs(Data) do
plr:SetAttribute(Name, Value)
end
end
return m
Oh geez, whatâs that save code? Variable âOkâ is defined in the repeat scope but you try referencing it in until.
What do you mean, friend?
I would recommend learning ProfileService as there are some underlying problems with your save code, but this should work for your issue. BetterChat V3 only overwrites a specific, designated DataStore so as long as youâre not using the same DataStore for both: you will not run into any issues.
local tentativas, Ok, Info = 0
repeat
Ok, Info = pcall(MyData.SetAsync, MyData, plr.UserId, lista)
tentativas += 1
until Ok or tentativas >= 5
better code:
local ok, info
for i = 1, 5 do
ok, info = pcall(MyData.SetAsync, MyData, plr.UserId, lista)
if ok then
break
end
end
Did as you 2 said, and in the end it didnât work when adding the chat system T-T
local dts = game:GetService('DataStoreService')
local MyData = dts:GetDataStore('DataPlayers')
local m = {}
function m.save (plr)
local lista = {}
for Name, Value in pairs(plr:GetAttributes()) do
lista[Name] = Value
end
local tentativas = 0
local ok, info
for i = 1, 5 do
ok, info = pcall(MyData.SetAsync, MyData, plr.UserId, lista)
if ok then
break
end
end
end
function m.load (plr)
local Ok, Data = pcall(function()
return MyData:GetAsync(plr.UserId)
end)
if not Ok then
plr:Kick('Failed to Load Your Data')
end
if not Data then return end
for Name, Value in pairs(Data) do
plr:SetAttribute(Name, Value)
end
end
return m
I stopped and entered again
My save system, it detects when the player exits the game and saves
game.Players.PlayerRemoving:Connect(function(plr)
activePlr[plr.Name] = nil
dataStore.save(plr)
end)
game:BindToClose(function()
for i, plr in ipairs(game.Players:GetPlayers()) do
dataStore.save(plr)
end
end)
The issue may be a problem with Studio not calling you leaving since itâs known to mess that up while in the studio. Think it should work fine in-game though. (You may want to test it just incase though)