Skip to content

FischSc-maker/Celestial

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Celestial

A decompiler for vLuaU in luau, Roblox scripting language, as its in beta dont expect much from it

WARNING: THIS CANNOT EXECUTE IN ANY OTHER LANGUAGES ONLY IN LUAU

This was made for educational purposes only and does not intend to harm anyone

Changelogs:

Added support for BREAK and NOP opcodes

Warning

Possibly the forgloop opcode support wont come, sorry for this

Next update may feature:

While and repeat loops decompilation with partial or full support

Features:

Upvalue decompiling
Function decompiling
Global decompiling
Numerical For loop decompiling (FULL SUPPORT: Gives light errors or variable naming error)
etc.

Known errors:

Cannot decompile while and repeat loops, May cause some errors since its in beta

Usage:

local decompile = require("Decompile")
local bytecode = "bytecodestring" -- this is an example this will not work
local code = decompile(bytecode)

Sandbox usage:

Please install luau and vLuaU Compiler. You can get it from here (No need to install luau if you have studio)

local str = [[
-- script here
print("Hello, World!")
]]

local compile = require(script.compiler).luau_compile
local decompile = require(script.decompiler)
local bytecode = compile(str)
print("Original bytecode: "..bytecode)
print("Decompiled bytecode: "..decompile(bytecode))

Enviromental usage:

local decompile = require(script.Decompile)
local bytecode = getscriptbytecode(scriptPath --[[Replace with script path smth like game.ReplicatedFirst or smth like that]]) -- this will generate real bytecode
local code = decompile(bytecode) -- returns the code from that bytecode