DataStoreService in NodeJS

how old is that account that you’re using right now?

Did you not read my message? I literally just said I authenticated it

no I mean, did you create the account whose cookie you’re using right now, right now?

Cookies are session based, when you log out it destroys that session therefore destroys that cookie. What I am saying is, the cookie will expire 30 years from the date you either signed up or logged in, or it will expire when you log out

And also, if you want to know how I am interacting with the DataStores, refer to this:
https://github.com/mfd-co/RbxDataStoreService/blob/master/src/Classes/DataStore.ts

ah, I misinterpreted the whole discussion, sorry about that. there are cookies as I like to call them, legacy cookies, they are cookies that, technically expire, as you said, after 30 years. new accounts tho, they do not have “legacy cookies”, and they obey the new refresh policy which causes them to reset every now and then, correct me if I’m wrong here.

that’s why I asked how old the account, whose cookie you’re using, is. I was just curious if it was an account with a legacy cookie, feel free to test this theory, by using an old accounts cookie, and a new one’s cookie, and checking how long they both last.

source: Guide to Scripting Bots | Javascript Tutorial | FunCaptcha and New Host Info - #109 by TechSpectrum

1 Like

Howdy! We found that the best work around is to simply go into Incognito, get the cookie, and close the browser.

Do not sign out of that session or get a cookie from a non-incognito mode.

Back when I mentioned “legacy cookies” at the time, it’s because I believe during the captcha change a lot of cookies got reset or something. But had you logged into the account session again it would refresh as normal. Every time you log in, Roblox will generate you a new cookie for a session, this is why not doing incognito can cause it to expire. If they detect a cookie, they will expire it early to refresh a new one.

1 Like

Yeah, so I fixed a few of the bugs that existed

1 Like

This is an epic resource to have, and I notice it doesn’t respect a limit since it looks to be outside of roblox?

1 Like

Can you elaborate on limit? I assume you mean it doesn’t adhere to a queing system

2 Likes

Yea, I was looking through the source and didn’t find much of a limit system anywhere so I assume there is no limit?

1 Like

No, but I can implement it if you want it to exist

1 Like

Great resource, opens up many possibilities! :smiley:

Like @LordMerc I was wondering about limits as well.
Limits per server are clearly described here but limits per game aren’t described as clearly (get limited if requested from “too many servers at once”).
Maybe you could do something with the error codes returned?

It does have limits in the DataSize, key length, scope length etc, but no queuing

1 Like

Just wondering about this snippet here:


Is this usable, or would I have to basically poll?
image
When I try to use it ^

let DataStoreService = RBX.DataStoreService;
  let DataStore = DataStoreService.GetDataStore('Player_Stats')
  DataStore.OnUpdate("LordMerc", function(obj){
    console.log('got update')
    console.log(obj)
  })

I haven’t used this library or looked into it, so I don’t know it’s API, but public set tells me you should probably be assigning to the OnUpdate key.

const DataStoreService = RBX.DataStoreService;
const DataStore = DataStoreService.GetDataStore("Player_Stats")

DataStore.OnUpdate = (key, oldValue, newValue) => {
    console.dir("Got update", key, oldValue, newValue)
}
3 Likes

Wow! Really cool! It would be really useful for me in discord js, you could just update a value in DataStores with just running a command. Cool feature! :grin:

2 Likes

I’d assume key can be set, unless it’s a placeholder for the updated info? Would like to pinpoint the key thats changed if possible.

1 Like

As I said, I don’t know the API of this library, having never used it or looked at the code.

Purely based on the screenshot you shared, I’d say the OnUpdate function is called whenever the DataStore you connected to previously is updated.

The OnUpdate property of the DataStore should be assigned a callback function, which takes three parameters: Key, OldValue and NewValue.

What you choose to do with those values once you receive them is up to you. For example, if you wanted to watch for changes in the “LordMerc” key, your callback function might look like this:

if (key === "LordMerc") {
    console.dir("LordMerc key was updated:", oldValue, newValue)
}

Obviously I am not the best person to ask about this library, but hopefully I’ve deduced it correctly from the screenshot, and hopefully @0x6e7367 (or someone else with experience with the library) will be able to give you a more accurate and correct answer.

2 Likes

Aye, I appreciate the help. I just saw that he included coverage of OnUpdate, albeit I know it’s deprecated and not really trustworthy. Wanted to see if that’s the same case even using it outside of roblox.

1 Like