Stop searching, "How to make a roblox exploit" on Google. Stop waiting for exploit developers to fix their stuff. In this day and age, anyone can easily create an exploit using our API. The WeAreDevs Exploit API powers some of the popular exploits. Custom commands can easily be implemented with plain Lua scripts. Massive power is introduced with a full-featured Lua executor and a Lua C executor. It's completely free and interruptions are none! No adware, key systems, or any other form of heavy advertising. Feel free to sell it, give it out to friends, make YouTube videos, or create something for yourself.
This API has grown largely in capability from when the project was first released. Crashes are rare. Memory management is reliable. It can execute complicated scripts such as Dex Explorer and script hubs like OwlHub. It can run loadstrings. HttpGet() is bypassed, meaning it can return content from any website. There's very little work you need to do on your end. We'll take care of the disgustingly complicated weekly unpatches, so you can put all your focus on the user interface. For a slightly more detailed list of possibilities, just read the documentation below.
If you need any help with the API, feel free to create a help thread on the forum.
Full fledged example: https://github.com/WeAreDevs-Official/Exploit-Template-with-WRDAPI
API Last modified: August 3, 2021
Doc Last modified: August 3, 2021
API Methods
List of methods and valid parameters(Given you used the naming convention above)
ExploitAPI() | Create the ExploitAPI() object to call the following methods from |
LaunchExploit() | Before doing anything, you will need to launch the exploit. This will check if it's patched, inject the necessary tools, etc. |
SendLuaScript(string_LuaScript) | Takes in a string and executes the string as a Lua script |
SendLuaCScript(string_LuaCScript) | Takes in a string and executes the string as a Lua C script. Refer to the Lua C Parser documentation |
isAPIAttached() | Returns true if the module is attached, false otherwise. |
Custom Lua Environment
To get around some of the RLua limits, we added custom methods that we felt were needed to the Lua environment.
Unique Custom Functions | |
set_fps_cap(int) | Set a custom FPS limit. The game engine's default is 60. |
hookfunction((function)old, (function)hook) | Hooks function 'old', replacing it with the function 'hook'. The old function is returned. |
Simulated Mouse Control | |
MouseMoveRel(int x, int y) |
Moves mouse cursor x pixels left/right and y pixels up/down from the current position. Aliases: mousemoverel, MouseMoveRelative, mousemoverelative
|
MouseScroll(int y) |
Simulates mouse to scroll up/down by y pixels. Aliases: mousescroll
|
MouseButton1Click() |
Sends left button click signal. |
MouseButton1Press() |
Sends left mouse button down signal. |
MouseButton1Release() |
Sends left mouse button up signal. |
MouseButton2Click() |
Sends right button click signal. |
MouseButton2Press() |
Sends right mouse button down signal. |
MouseButton2Release() |
Sends right mouse button up signal. |
Console Library | |
rconsoleprint(string text) | Opens a console which displays the specified text plainly. |
rconsolewarn(string text) | Opens a console which displays the specified text as a warning. |
rconsoleerr(string text) | Opens a console which displays the specified text as an error. |
rconsolename(string text) | Sets the name |
Drawing Library
Example Script
newSquare = Drawing.new("Square")
newSquare.Position = Vector2.new(0,0)
newSquare.Size = Vector2.new(50,50)
newSquare.Color = Color3.new(0, 1, 0)
newSquare.Thickness = 16
newSquare.Rounding = 0
newSquare.Filled = true
newSquare.Transparency = 0.5
Drawing Canvas
Drawing.new(string ClassName) | Creates a new Drawing object based on the given class name and returns it. |
Drawing.clear() | Clears the Drawing canvas. |
Drawing Classes
Base - All Drawing classes inherit these properties and functions.
- bool Visible
- int ZIndex
- void Remove()
Line
- Vector2 From
- Vector2 To
- Color3 Color
- float Thickness
- float Transparency
Text
- string Text
- Vector2 Position
- float Size
- Color3 Color
- bool Center
- bool Outline
- float Transparency
- Vector2 TextBounds [readonly]
Square
- Vector2 Position
- Vector2 Size
- Color3 Color
- float Thickness
- bool Filled
- float Transparency
Circle
- Vector2 Position
- float Radius
- Color3 Color
- float Thickness
- bool Filled
- float Transparency
- int NumSides
Triangle
- Vector2 PointA
- Vector2 PointB
- Vector2 PointC
- Color3 Color
- float Thickness
- bool Filled
- float Transparency
Remade RLua Functions | |
game:HttpGet(string url) |
Fetches text from the given URL. game:HttpGet() wraps this so there is URL bypass. Aliases: httpget
|
Included Known Libraries | |
Lua BitOp "bit lib" | http://bitop.luajit.org/ |
Debug | More information |
Note that the Lua environment implements custom wrapping for: getrawmetatable, loadstring, HttpGet, setreadonly, isreadonly, getrenv, getgenv. This is done to improve execution capability.
Lua C Parser in SendLuaCScript()
Documentation specific to the Lua C parser as used in the SendLuaCScript() function. This is an opinionated design specific to the WRD API. It is used to interact with the wrapped Lua C API. Learn more about Lua C here.
Example Script
getglobal print
pushstring Hello world!
pcall 1 0 0
Example Call
SendLuaCScript("getglobal print\npushstring Hello world!\npcall 1 0 0")
Available Functions | |
getglobal <global> | Example: getglobal game |
getfield <index> <field> | Example: getfield -1 Workspace |
setfield <index> <field> | Example: setfield -2 Position |
pushvalue <index> | Example: pushvalue -6 |
pushstring <string> | Example: pushstring Hello world! |
pushnumber <index> | Example: pushnumber 100 |
pcall <nargs> <nresults> <errfunc> | Example: pcall 1 0 0 |
call <nargs> <nresults> | Example: call 1 0 |
emptystack |
Example: emptystack Alias for "settop 0" |
settop <top> | Example: settop 0 |
pushboolean <bool> | Example: pushboolean false |
gettop |
Example: gettop Print's the top of the stack's index to the WRD API console |
pushnil | Example: pushnil |
next <index> | Example: next -2 |
pop <number> | Example: pop 5 |
insert <index> | Example: insert -2 |
createtable <narr> <nrec> | Example: createtable 0 3 |
settable <index> | Example: settable -3 |
tonumber <index> |
Example: tonumber -1 Prints the index's number value to the WRD API console |
tostring <index> |
Example: tonumber -1 Prints the index's string value to the WRD API console |
touserdata <index> |
Example: touserdata -2 Print's the memory address of the index to the WRD API console |