C# Version

C++ Version

WeAreDevs Exploit API C#

WeAreDevs API v1 code example

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

Sends left button click signal.


Sends left mouse button down signal.


Sends left mouse button up signal.


Sends right button click signal.


Sends right mouse button down signal.


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()


  • Vector2 From
  • Vector2 To
  • Color3 Color
  • float Thickness
  • float Transparency


  • string Text
  • Vector2 Position
  • float Size
  • Color3 Color
  • bool Center
  • bool Outline
  • float Transparency
  • Vector2 TextBounds [readonly]


  • Vector2 Position
  • Vector2 Size
  • Color3 Color
  • float Thickness
  • bool Filled
  • float Transparency


  • Vector2 Position
  • float Radius
  • Color3 Color
  • float Thickness
  • bool Filled
  • float Transparency
  • int NumSides


  • 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

Example: emptystack

Alias for "settop 0"

settop <top> Example: settop 0
pushboolean <bool> Example: pushboolean false

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