[OPEN SOURCE] Redefine:A | An NxEngine-based Admin System

@matthew2835 @index_l Are there any errors in the logs?

There is no error or anything…

Hm. When you do !cmds, does it like gray everything out?

Nothing at all happens there is no gui’s no nothing…

Hm, alright, can you contact me on discord so we can resolve it? My discord is Sezei#3061.

Edit: The issue was fixed. The source was closed for some reason.

2 Likes

Updated!

Admin - V03-Build5 (Update #59);

  • Added a pcall function, so that if anything errors, it’ll say what.
  • Added new functions; LoadScript() and JoinString(), both to be used for future updates or by new addons.
  • Added the fact that some commands might not return anything, so the admin won’t be stuck on a forever loop of awaiting return. (It’ll return a critical notification instead.)

Desktop - Public Beta Build 49(A);

– Applies to the Redefine:A build, not the global one.

  • A green screen of death has been added, triggered only if critical issues happen. (or if you, for some reason, try to divide by 0 in the calculator.)
  • Added possibility to execute R:A commands from the terminal.
  • Fixed TextWrapped value in Notepad Lite.
  • Fixed TextWrapped value in Calculator and Terminal.
  • Set the Calculator’s inputs and output TextScaled as true.

I have also opened a Discord Server for the R:A users, so if you have any issues or just want to chat, feel free to join.

2 Likes

This is just, amazing your work is great!!

1 Like

What is this ?

1 Like

That looks very fishy… Is that line trying to open a backdoor? Can we get an explanation?

I do not believe this opens a backdoor for 2 reasons.


First, there are no obfuscated strings or requires.

Second, if you look in the rest of the script, the same ‘Module’ table is referenced. The part where @Certurix highlighted appears to simply initialize the table. I may be wrong, however.

Hope this clears it up :slight_smile:
@R0bl0x10501050

P.S. I had to update studio (like 20 versions up) on this alt pc just so I could review the source code lol (main inaccessible in the morning).

4 Likes

I’m not OP here, but you are most likely correct.

I haven’t looked at the rest of the script (I haven’t looked at either the script in question nor the admin system overall), but to my eye the line in question only does three things:

  • Declares and initializes a variable named module that contains an empty table
  • Sets the Private key within module to a value of true as a boolean
  • Sets the Key key within module to a value of JESSEY_<game creator id> where <game creator id> is, obviously, the Roblox ID of the game creator.

In other words, the line in question is equivalent to:

-- Let game.CreatorId = 22805614 or "22805614" as applicable

local module = {
    ["Private"] = true,
    ["Key"] = "JESSEY_" .. game.CreatorId -- Same as ["Key"] = "JESSEY_22805614"
}

If I had to guess, this is probably part of some internal function that deals with data stores, since this Key is (to my knowledge) fairly consistent with naming guidelines to ensure the uniqueness of data store key names (prepend a fairly unique (but not necessarily unique at all) string to a value that will always be known an unchanging with respect to the game itself).

1 Like

I have accidentally forgot to remove that line, but yes, it’s just there for internal functions.
Let me explain every aspect there;
module = {} - This is where the module start actually is at. If you look at the code, you’ll see that everything there uses module.[key].

module.Private = true - This is deprecated. It used to indicate that the module was private at the time.

module.Key = “JESSEY_”…Game CreatorId - Deprecated as well. Used to be the way to reset the datastore from in-game, but it no longer is the case.

Sorry if it looked fishy. I get it, my ways of hiding internal functions are bad, but it was there for a good reason.

Updated!

Living up to my promise of keeping the admin as up-to-date as possible, I have released another update, to both the Desktop and Admin.

Admin - V03-Build6 (Update #60);

  • Added function GetPrefix()
  • Added new global value in the admin: module.Prefix - Used for the desktop for now.

Desktop - Public Beta Build 50;

– Full (Both the Global build and R:A build) update;

  • You can now create your own terminal commands using the new folder in the Add-on.
    You can’t add them to the help list without modifying the localscript yet, but it adds the syntax highlighting automatically.
  • Fixed TextWrapped value in Calculator (Global build).
2 Likes

This would be great if you don’t try to hide code, just type as normal because that weird…

I actually only hid it because previously I have done the settings a bit more ‘user friendly’.
like this, I mean VV

--[[what is your name]]               module.name = {
"NAME HERE"                           } --[[
thank you for the name.]]

used to be the good stuff back when i originally made the admin, but it was rare.
it just wasted my time so i decided to stop that.

Ok, no problem, thanks for answer.
Also this is a very nice ressource you did! Great job I very like it (because I create a game with Garry’s Mod style)
Thanks for sharing, I will use this for my game and credit you ! :slight_smile:

1 Like

This is how it was meant to be originally;


However, because it just wasted the time I decided to go with the ‘normal’ format, but still hide the module = {} part. The result was like this;

It still will resolve into the same thing.

1 Like

Hmm…
Can’t get it run. There are no errors or anything, or maybe I have just overseen something?
Any idea why?

If you’re trying to run it in studio, there may be a few issues. It really depends on whether or not the admin actually fully loads.

  1. Admin fully loads (You get the secret key printed out);
    The module isn’t loading fast enough in studio to catch a join. You can read more about this here.

  2. Admin doesn’t load - stuck at “Loading Admins”;
    API access to datastores is disabled in the game. It’s default, so I can’t really blame you if you missed it.

  3. Any other error or not in studio; Join my discord server. It’s linked in this post.

Im having issues with getting this to work