What goes where?
maps/<map>_server_exclusive.bsp -> Workshop and garrysmod/maps/
lua/autorun/server/*.lua -> garrysmod/lua/autorun/server/
data/bspmarket/*.json -> garrysmod/data/bspmarket/
English translation for convenience. The German version is authoritative: Kundendoku (Deutsch). Also available in French.
Server-Exclusive binds your protected Workshop BSP to a private server package. Map-relevant point/logic entities load only after a valid licence check. It is an additional protection layer, not absolute copy protection.
Only the protected *_server_exclusive.bsp from the ZIP. Never upload the unprotected original BSP. The licence file, entity JSON and both Lua scripts stay private on your authorised server. Without that package, extracted map content is not loaded.
maps/<map>_server_exclusive.bsp -> Workshop and garrysmod/maps/
lua/autorun/server/*.lua -> garrysmod/lua/autorun/server/
data/bspmarket/*.json -> garrysmod/data/bspmarket/
The map is still protected: fingerprint, audit, obfuscation (incl. brush removal), signed licence check and server package remain active. Without targetnames, however, the Lua cannot functionally restrict specific doors, triggers or entities.
Active: The Lua signs requests with HMAC-SHA256 and verifies the signed server response. If bspmarket.de is briefly unreachable, the script uses the local grace cache until the configured period expires.
Limitation: The per-licence key resides in the server Lua. For live use we recommend a functional test first and then external Lua obfuscation, e.g. with your own obfuscation workflow.