Banners by SOD4BR34D
Madpoint83 Creation For Developers allows anyone to make their game even cooler with our products.
Some of our products include APIs that you can use for additional functionality in your game.
This post will mainly explain how to use those APIs.
Our Products:
- Server Defender (Release: 03/12/2016) (Learn more)
- Game Stats Viewer (Release: 26/03/2020)
- Explorer (Release: 15/04/2020)
More coming soon.
Release: Release: April 4, 2020
Explorer
The Madpoint83 Creation Explorer is an open-sourced product that will be used in a currently unannounced future product.
This explorer allows you to view your game as if you are viewing it through the Explorer in Roblox Studio.
Our explorer also allows you to delete instances, besides that you can also Fire and Invoke events that are in your game. If you invoke an event you will get the actual response in the Developer Console.
The Explorer is the ultimate tool for a developer.
Security
Explorers are dangerous that is why you are required to make a “SecurityModule”.
You have to script this SecurityModule yourself.
Requirements for a SecurityModule:
- Has to be a ModuleScript,
- Has to be named “SecurityModule”,
- Needs to have a function named “CheckClearance”,
- must return a boolean,
- Has to be a child of ServerStorage.
Some ideas on what you can connect this SecurityModule to:
- Admin Commands,
- Group Ranks.
Do not worry if you accidentally forgot to make one or if you do not know how to make one.
If no SecurityModule is present we will generate the default module that only gives the game creator access to use the explorer.
How can we help you make a SecurityModule?
Here are a few of our SecurityModules that you might want to use:
- Gives game owner access: SecurityModule.rbxm (737 Bytes)
- Gives access based on username: SecurityModule.rbxm (882 Bytes)
- Gives access based on userids: SecurityModule.rbxm (879 Bytes)
- Gives access based on group ranks: SecurityModule.rbxm (978 Bytes)
Take inspiration from these SecurityModules to make your own.
What if my SecurityModule completely fails?
- Make your SecurityModule return a false Boolean as often as possible, you would rather want a few requests to be blocked than a few unauthorized requests to be allowed.
We have also added a few security measures ourselves:
- Besides the SecurityModule a unique code is created per server. This code is required for the explorer to work. If this code is incorrect nothing will go wrong. This code is located on the Server and will only be transferred to clients that are allowed to use the explorer via the SecurityModule.
- The explorer has checks on the server to see if requests are valid, certain objects cannot be deleted. These objects are: Instances added by Roblox, Instances on the Server and Descendants of game.Player.
Documentation
ExplorerAPI
wait(1) – this gives the explorer to start up as it is not in the game by default.
local ExplorerAPI = game:GetService("ReplicatedStorage")["Madpoint83Creation_ForDevelopers"]["ExplorerAPI"]
1 | IsOpen (Server > Client)
ExplorerAPI["IsOpen"]:InvokeClient(Player)
Will return whether or not the Explorer is open for the specified player.
PARAMETERS:
Player | Player instance (in game.Players) that you want to request data for.
RETURNS:
Boolean | true = Explorer is open, false = Explorer is closed
2 | Close (Server > Client)
ExplorerAPI["Close"]:FireClient(Player)
Will close the explorer for the specified player.
PARAMETERS:
Player | Player instance (in game.Players) that you want to close the explorer for.
RETURNS:
Void | No return
3 | Open (Server > Client)
ExplorerAPI["Open"]:FireClient(Player)
Will open the explorer for the specified player.
NOTE:
The explorer gui is being transferred to the client (if allowed by SecurityModule) before this is fired.
If fired without permission may result in an error. That is why we recommend using the same SecurityModule before firing this event.
PARAMETERS:
Player | Player instance (in game.Players) that you want to close the explorer for.
RETURNS:
Void | No return
How to open the explorer for everyone that has access (FULL CODE)
require(4901898063) -- Inserts the explorer
--
game.Players.PlayerAdded:Connect(function(Plr)
wait(1) -- Gives the explorer some time to start up in-case it's the first player.
local ExplorerAPI = game:GetService("ReplicatedStorage")["Madpoint83Creation_ForDevelopers"]["ExplorerAPI"]
ExplorerAPI["Open"]:FireClient(Plr)
end)
The Explorer should be inserted into the game the moment the server starts.
The explorer is present in the PlayerGui for all the players that have permission to use the explorer according to the SecurityModule.
Once arrived in the PlayerGui the explorer is closed and needs to be opened.
You have to do this via the API described in the documentation.
Server Defender:
For the Server Defender FAQ please view this post
Game Stats Viewer:
Q: How often do the statsistics update?
Answer: This is based on how popular the game is and how likely the stats are about to change. If a game has 0 players it is not likely the player amount will change very soon, the update time is once per 60 seconds. For games with more than 5 players and less than 15 the stats are being updated every 30 seconds. For games with more than 15 players, the stats are being updated every 15 seconds.
Q: How do I get the GameId of my game?
Answer: GameId is not the same as a PlaceId. To get the GameId of your game open Roblox Studio and run “print(game.GameId)” in the Command bar. Open the Output and the code that has appeared there is your GameId.
Explorer:
Q: Can I test the explorer in Roblox Studio?
Answer: Yes, the Explorer works in Roblox Studio.
Q: Can I test the explorer before installing it into my own game?
Answer: We understand you want to test a product before using it, that is why we have created a place where the Explorer is available for everyone.
Test the Explorer here
Q: Can I sync my SecurityModule with my admin commands?
Answer: Yes, you can sync your SecurityModule with anything as long as you know how to script it. If you do not know how to script your own SecurityModule take a look at our pre-build SecurityModules located in this post: Explorer > Security > How can we help you make a security module?
Server Defender:
Explorer:
Is there anything missing or do you still have questions?
Contact us with one of the options below!
Contact us on Twitter | Ask our Group members