Skip to content

Lock up
your Lua.

Everyone who joins your Garry's Mod server downloads your client-side code, and anyone can open it and copy it. With Manifest, that file holds one line. Your code is in a locked pack that players' games can run but nobody can just open and read.

cl_hud.lua, as a player opens it on their PC
1local bar = Material("vgui/white")23local function DrawHealth(ply, x, y)4  local hp = math.Clamp(ply:Health(), 0, 100)5  surface.SetDrawColor(30, 30, 30, 220)6  surface.DrawRect(x, y, 240, 24)7  surface.SetDrawColor(200, 60, 50)8  surface.SetMaterial(bar)9  surface.DrawTexturedRect(x, y, hp * 2.4, 24)10end1112-- Your money, in the top corner.13local function DrawMoney(ply, x, y)14  local cash = ply:GetNWInt("money", 0)15  draw.SimpleText("$" .. cash, "HudLarge", x, y)16end1718hook.Add("HUDPaint", "my_hud", function()19  local ply = LocalPlayer()20  if not IsValid(ply) then return end21  DrawHealth(ply, 24, ScrH() - 48)22  DrawMoney(ply, 24, 24)23end)
1local f = _d96717e0 or include("d96717e0.lua") return f(debug.getinfo(1, "S").source, ...)
Without ManifestWith Manifest

Every player gets a copy of your code.

When someone joins, Garry's Mod downloads your client-side Lua files to their PC. Anyone can open those files and copy them.

files on a player's PCexample
cl_hud.luareadable
cl_f4menu.luareadable
sh_config.luareadable
vgui/inventory.luareadable
+ every other client-side file on your server

One locked pack.

Manifest locks all your client-side Lua into one pack. Players' games can still run it, but the files on their PC can't just be opened and read. You don't need to set up each addon.

server console (example)
[Manifest] 214 client files: 214 in the pack, 0 left out, 0 skipped (not from your addons)
[Manifest] Protection is on

To be honest about the limits: code has to run on a player's PC, so someone determined can still get it out. Manifest makes that much harder. Your server-side code never leaves your server, so Manifest doesn't touch it.

Players can join faster too, because they download one pack instead of hundreds of files. [benchmark placeholder]