Core Concepts
Advanced Routing
Fine-tune how Rogen builds the project tree
Updated
Init files
A folder with an init file (init.luau, index.ts) is routed as usual,
but Rogen leaves everything inside it alone.
Data and asset files
Rogen can't write direct paths for files like .json or .toml. It'll
tell you in the console when one of them needs to be wrapped in a folder.
Invisible Folders
Wrap a folder name in parentheses, like (inventory), to group files on disk without changing where they end up in Studio. Rogen leaves the folder out but keeps what's inside.
File Hoisting
To put a script at the root of its service, start its name with ^:
- File:
src/core/physics/server/^collision-service.ts - Result: placed directly in
ServerScriptService.
Advanced Marker Files
These empty files change how Rogen treats the folder they're in and everything below it.
.structureturns routing off, so the folder layout stays exactly as it is. Tag filtering still applies..syncstops Rogen from looking inside at all and syncs the folder as-is, with no routing or tag filtering..verbatimkeeps routing keywords in file names, soInputClientkeeps itsClient..unwrapkeeps the wrapper folders (server,clientandshared) out of Studio.