Nano | The Non-intrusive Admin Panel

I’ve fixed this, I had to recode it entirely because apparently in a recent update or something roblox has changed the permission level to change DisplayName from Server (Identity 2) to Core (Identity 4) so you can no longer change it with a script, bummer… It will be fixed and pushed with the next update :smiley: (it only changes the name shown above the player’s character unfortunately)

1 Like

you should take a gif of the tweens ngl

also great stuff i think ill use this in my game

There have been a few newer ‘candidate’ builds for BETA_PRE2, which are as follows;

Beta2 Candidates 2 and 3

@ShhhhhhhhhhhBro

+ New MCheat module thanks to ShhhhhhhhhhhBro. (Mentioned above)
Now using .self and better code readability.

! Fixed the Ban command.
It was broken. I don't even know what to say.

! Fixed the Time asset not being recognised by the Server. (Always returns "")
It now always returns a number, rather than an empty string.
Beta2 Candidate 4
+ New UI assets for the Game Settings UI.
Yes.

+ New warn() system.
It now shows the error code as well as an explanation for the error.

! Credits section will now prioritise people who contributed more commands before alphabetically sorting the other contributors.
now gigs is no longer above the system creators because of a single command lol

! Updated loader with a few fixes to some commands.
Get the new loader, NOW!

- Removed unnecessary warnings that occasionally happened.
Primarily because of the Notifications queue.
Beta2 Candidate 5
+ Added MetaPlayer as an argument for commands; You can now use 'MetaPlayer' instead of 'Player' to gain better access to the player's functions.
player:Kill(), anyone? .-.

+ Added 'Mute' and 'Unmute' events for the players.
A reason to use the MetaPlayer module.

+ Added AccentColor influence on the "Open Game Settings" button in the client.
pink open game settings button? :flushed:

! Fixed Nano breaking if AccentColor.Forced is selected to be true for whatever reason.
The asset was missing I guess. Hey, at least now it's easier to change the color itself.

! New loader technique is now used.
Roblox fights with free model devs now. >:L
2 Likes

100% this is just me I reckon - sorry, I must be as blind as a bat, I can’t see anything in your Post, Settings, or Main Script that tells me how I could open the GUI? Just wanted to ask what key-bind or message, or whatever it is! :sweat_smile:

Also, when I try to run a chat command, I receive this error:

required_asset_9215279390.MainModule.MetaPlayer:122: attempt to index nil with 'Muted'

What have I done wrong now?

Sorry again.

Hey, thanks for reporting the issue with the MetaPlayer module, I may have skipped that part. (it has been fixed)

In regards to opening the UI, you should be able to see this button at the bottom left side of your screen.
image

Clicking it will open the menu. If you don’t see it, check your settings module to see if your player flag is in there.

In your case, the player flag would be something like this (if it’s not there);
{UserId = 882959246; FlagGroup = "Game Owner"};

seems easy to add commands, I already have, but it seems that the sliders are having a bit of a problem, the text label above it wont change and only stays as “Label” and the maximum amount stays at 100 no matter what I put it at in the script, this also occurs for already existing commands like Speed

Sometimes, this admin system kicks me for no reason. reason: you have been kicked for suspected cheat
last time seen cheating: Abnormal ping. if this can’t be fixed then can you tell me how to disable it

Thanks for the reports, I’ll answer each of them separately;

@proudCdthekitten I’ve found the bug and the patch will be released some time soon, so stay tuned for that. (The maximum value was not ported to the NanoWorks framework properly for some reason, sorry!)

@SilverProKills The built-in anticheat gets triggered if it finds player with a very high ping, aka 500ms or more. If you are using a Wifi connection, try moving closer to the router. If it still isn’t solved, send me a DM on either the forums or join one of our discord servers listed in the topic. (if you’re 13+, that is.)

As of now, there isn’t really a way to disable MCheat since it was deemed rather accurate, so I’ll think of something and might update the post.

Update: I’ve raised the ping check to 600ms and made the reasoning more clear. If it still kicks you, please let me know. As for the slider report, I have ported it correctly into the framework now. Let me know if it still doesn’t work for you.

Alright, I’ll see about it. I’ll let you know if it doesn’t work.

Once again, a lot of updates (or, ‘candidate’ builds) have been released for BETA_PRE2. I’ll just summarize all of the edits at once without going into each version individually to save all o’ us’ time.

Added Stuff
+ Added Ping Delta check to MiniCheat (if ping difference between last check and current ping is higher than 150ms, this triggers the delta score.)
+ Added click effect on a lot of the UIs being used.
+ Added more info on player hover.
+ Code readability optimisations.
+ Added command-send debounce. (Negatable by adding permission 'Nano.NoDebounce')
Fixes and other, more technical changes
+ Added GetPlayerDataFromId.
+ Added function format(originstring:string, replacementdata:table{[old:string] = new:string}) to the MainModule.
! The client is now relying on the server to catch a command error.
! Fixed string flaggroups.
! Fixed a few errors related to Nano Sounds and NanoWorks.
! Fixed Targeting Mode spamming. (somehow we didn't think someone would spam it .-.)
! Fixed permission negating.
! Dropdowns now affect the inner command size.
! Wrapped RunIntro with task.spawn()
! MiniCheat is now a bit more lenient as the cost of more time to deduce score. (Score to kick is now 15 (was 10), time to deduce score is now 240 seconds (was 120)).
! Fixed Shutdown in BaseCommands to show who actually shut the server down.
! Ported most of the UI assets into the NanoWorks framework. (not yet of a library level doe :L)
! Enhanced MetaPlayer functions to use player.self rather than check if player is in-game.

As always, if you have issues arising with Nano, DM us (@0bBinary or @Cytronix) on either Devforums or join our discords;

SME Discord; SME Community (Redefine:A | Nano)
Axelius Discord; Discord

dev note: at this rate it almost feels like nano will not get beta 2 lol

Yo, this is an amazing project, thank you and everyone who made it and worked on it.

I was thinking about using it in my game, but I have 2 questions:
1- You said something about not inserting malicious scripts into the environment; can you explain it a bit more? I’m making a game and want to make sure that I’m staying on the safe side.
2- When I read the settings module, it said that I can place a token in there. Is there any way to get the token right now? And if so, is it paid or free?

Thanks,
Shield

Hey there, both are good questions so I’ll explain them both;


1 - Nano (or NxEngine in general) has a unique way of loading modules/commands: It will take the returned value and insert that value into itself. This can be seen in the source where I simply put a module and it would already work with Nano as a table value in it; The exceptions for it would be when the module has a wrapper function, namely _NanoWrapper, which is expected to give the actual stuff Nano would need to use.

This pretty much gives a ‘lego’-like system, where everything can be swappable easily by forking an existing module into the ‘Functions’ folder of the loader.

The reason why I mentioned not inserting malicious scripts is basically because of that same _NanoWrapper I mentioned: A simple modulescript that does env = nil, and the entire system would be gone.

Thankfully it doesn’t read modulescripts after the initial load, which is why it has more of an immunity regarding those kind of stuff as long as you didn’t insert malicious modules into it beforehand (pre-init).


2 - The token is something that will be used in the future in order to allow Game → API → Platform integration, hence I have planned ahead and put it before we even started working on it. The plan for it right now is to make it free, but it might be changed to take a small fee if something won’t work with the amount of players. (Note; If it won’t be free, it’ll be open-source so you could host it yourself.)

1 Like

Hey there, apologies for the late post (as always :P);

The beta versions have reached the 3rd phase, where we focus on separating the Chat and UI while adding more Datastore options, including the already mentioned Token API. As always, all changes are visible in the GitHub project so I won’t spam the thread with more of those ‘added stuff’ and ‘fixes’ posts.

You’re everywhere, aren’t you Binary :joy:

Anyway, amazing resource, nice work!

1 Like

Hey everyone, sorry for the long wait for the people who aren’t in our discord servers (neither the support one nor the community one);

We have recently finished all of the tasks in our Beta Phase 3 to-do list, so I thought we might as well update the people who aren’t officially part of the community;

To make things short, Phase 3 added features such as our CloudAPI integration, as well as updating datastores, fixing up the permission systems, patching up the ants that got stepped on (yes im looking at you @AC_Hold), and of-course overall drip boost.

You can check the full list of changes in our github [optional ofc], but we’d appreciate even more if we could get more feedback on the system rather than sitting silently until we find the issue ourselves which is NOT a fun experience ;c so we can patch / add stuff easier and know what the community thinks about the updates overall.

Another thing I want to mention is we are going on a small mental hiatus; Meaning no updates to Nano for a while, unless one needs immediate attention. (…now that i mention it, i havent tested the security of the system for a while so any reports of possible vulnerabilities will be appreciated…)

1 Like

Is there an Open-Source Version of this Admin Panel? I’d like to make my own.

Yeah, the panel itself is already open source, you can get the module here.

1 Like

Thanks! (character Limit hehehehe)

Can i delete the Whole Gui and make another one? Or no?

If you want to make a new UI from scratch, you’ll need to rescript everything within it to function correctly, including the LocalScript, NanoWorks and the other modules such as SaLT.