로조는 Roblox 프로젝트에 "파일 시스템 우선" 접근 방식을 취하는 커뮤니티 도구입니다. 이 도구는 귀하의 컴퓨터에서 서버를 실행하여 Studio 플러그인과 통신하여 디스크의 파일을 Studio 데이터 모델로 동기화하며, 이러한 파일로부터 장소 및 모델 파일을 생성할 수 있습니다. 프로젝트가 디스크에 있으면 Git, 자신의 편집기 및 CI를 사용할 수 있습니다.
로조를 사용하는 방법은 게임을 얼마나 관리할지에 따라 다릅니다:
- 부분 관리: 로조가 귀하의 코드를 관리하며, Git이 진실의 출처입니다. 장소와 자산은 Roblox에 남아 있으며, 아티스트는 Team Create 및 패키지를 사용하여 이를 편집합니다. Git을 사용하는 대부분의 팀에 대해 이 방법을 추천합니다.
- 완전 관리: 로조가 모델과 이미지를 포함한 전체 게임을 관리합니다. Git은 모든 것의 진실의 출처이며, CI가 귀하의 장소를 빌드하고 게시합니다.
이와 Studio 네이티브 워크플로우를 비교하려면 파일 기반 워크플로우 비교를 참조하세요.
로조 설치
로조 바이너리를 수동으로 다운로드하고 실행할 수 있지만, 이 방법은 팀의 다른 사람들이 서로 다른 로조 버전을 사용하는 위험이 있습니다. 더 나은 솔루션은 로킷과 같은 도구 체인 관리자를 사용하는 것입니다. 이는 구성 파일과 저장소 및 버전 목록을 사용하여 설치 및 업그레이드 프로세스를 기계 간에 일관되게 만듭니다.
로킷은 프로젝트 내의 패키지보다는 기본 개발 환경을 관리하므로 nvm과 더 유사하지만 npm과의 비교는 완벽하지 않습니다. 간단한 rokit.toml 파일은 다음과 같습니다:
[tools]
rojo = "rojo-rbx/rojo@7.6.1"
wally = "upliftgames/wally@0.3.2"
lune = "lune-org/lune@0.10.4"그런 다음 rokit install로 이러한 도구를 설치합니다. 전역 rokit.toml 파일 외에도, 로킷은 프로젝트별 파일을 지원하므로 서로 다른 프로젝트에 대해 로조, 왈리 또는 기타 도구의 서로 다른 버전을 쉽게 사용할 수 있으며, 전체 팀이 동일한 버전을 유지할 수 있습니다.
도구가 새 버전을 출시하면, .toml 파일에서 버전 번호를 명시적으로 올리고, 로킷을 사용하여 업그레이드를 수행하고, 새 버전을 테스트한 후 문제가 발생하면 다운그레이드합니다. 명령 및 설치 지침은 로킷을 참조하세요.
로조 실행
로킷으로 로조를 설치한 후, 실제로 설치한 것은 로조 서버입니다. 다음 단계는 Roblox Studio용 로조 플러그인을 설치하는 것입니다.
크리에이터 스토어에서 설치하거나 다음 명령으로 로컬로 설치할 수 있습니다:
rojo plugin install그런 다음 새 게임의 프로젝트 구조를 생성하고 빌드합니다:
rojo init my-new-experience
cd my-new-experience
rojo build -o my-new-experience.rbxl또는 기존 게임을 포팅할 수 있습니다. 어떤 방법을 선택하든 프로젝트가 생기면 로조 서버를 시작합니다:
rojo serveRoblox Studio에서 방금 빌드한 .rbxl 파일을 열고, 로조 플러그인을 열고, 이제 실행 중인 서버에 연결합니다. 이 시점에서 선호하는 텍스트 편집기에서 변경을 시작하고 이러한 변경이 Studio로 자동으로 동기화되는 것을 볼 수 있습니다.


로조 프로젝트는 파일에 대한 특정 명명 요구 사항, 다양한 구성 옵션 및 몇 가지 제한 사항이 있으며, 이 모든 것은 로조 문서에서 다룹니다.
로조 문제 해결
| 문제 | 해결 방법 |
|---|---|
| 로조가 동기화에 실패하거나 다른 기기에서 다르게 동작합니다. | 팀원들이 서로 다른 로조 또는 플러그인 버전을 사용하고 있습니다. rokit.toml에서 버전을 고정하고 rokit install을 실행하세요. |
| 코드가 잘못된 위치에 동기화되었습니다. | 로조가 나열한 장소에만 동기화하도록 프로젝트 파일에 servePlaceIds를 추가하세요. |
| 로조가 아티스트가 추가한 콘텐츠를 삭제했습니다. | 로조와 아티스트가 사용하는 서비스에서 $ignoreUnknownInstances를 true로 설정하세요. |