Add admin distribution editor
This commit is contained in:
@@ -16,11 +16,23 @@ npm run admin
|
||||
|
||||
- 프로필 추가 / 수정 / 삭제 / 복제
|
||||
- `modpack`, `map`, `server-pack` 종류별 입력 폼
|
||||
- `distribution.json`, 맵 ZIP, 서버 번들 ZIP 업로드
|
||||
- `distribution.json` 업로드 / 새로 만들기 / 직접 편집
|
||||
- 맵 ZIP, 서버 번들 ZIP 업로드
|
||||
- 저장 시 아래 두 파일을 동시에 갱신
|
||||
- `admin/data/catalog.json`
|
||||
- `app/assets/launcher/catalog.json`
|
||||
|
||||
## distribution 편집
|
||||
|
||||
- `distribution 파일` 칸에서 JSON 업로드 가능
|
||||
- `JSON 편집` 버튼으로 현재 연결된 로컬 `distribution.json` 수정 가능
|
||||
- `새로 만들기` 버튼으로 샘플 템플릿에서 새 `distribution.json` 생성 가능
|
||||
- 저장된 distribution 파일은 아래에 생성됩니다.
|
||||
|
||||
- `admin/data/distributions/`
|
||||
|
||||
- 접속주소 필드는 관리자 사이트에서 다루지 않습니다. 런처 내부 접속 흐름과 분리해서 프로필 자료만 관리합니다.
|
||||
|
||||
## 업로드 동작
|
||||
|
||||
업로드 버튼으로 올린 파일은 아래에 저장됩니다.
|
||||
@@ -43,6 +55,6 @@ npm run admin
|
||||
|
||||
## 추천 운영 방식
|
||||
|
||||
1. 관리자 사이트에서 프로필과 자료 경로를 입력
|
||||
1. 관리자 사이트에서 프로필과 자료 파일을 입력
|
||||
2. 로컬 런처에서 실제 표시와 실행 확인
|
||||
3. 이후 필요하면 업로드 경로를 공개 URL 기반으로 확장
|
||||
|
||||
@@ -19,9 +19,7 @@
|
||||
"kind": "modpack",
|
||||
"description": "설명",
|
||||
"details": "설치 페이지 상세 패널에 표시할 긴 설명",
|
||||
"distributionUrl": "https://example.com/launcher/distribution.json",
|
||||
"defaultServerAddress": "example.com:25565",
|
||||
"allowCustomServerAddress": true
|
||||
"distributionUrl": "admin/data/distributions/my-modpack.distribution.json"
|
||||
},
|
||||
{
|
||||
"id": "my-map",
|
||||
@@ -29,10 +27,9 @@
|
||||
"kind": "map",
|
||||
"description": "싱글플레이 월드",
|
||||
"details": "월드와 플레이 방식에 대한 상세 설명",
|
||||
"distributionUrl": "https://example.com/launcher/vanilla-map-distribution.json",
|
||||
"distributionUrl": "admin/data/distributions/my-map.distribution.json",
|
||||
"worldArchiveUrl": "https://example.com/worlds/my-map.zip",
|
||||
"worldDirectoryName": "My Map",
|
||||
"allowCustomServerAddress": false
|
||||
"worldDirectoryName": "My Map"
|
||||
},
|
||||
{
|
||||
"id": "my-server-pack",
|
||||
@@ -40,14 +37,13 @@
|
||||
"kind": "server-pack",
|
||||
"description": "클라이언트 + 로컬 서버 번들",
|
||||
"details": "서버 실행 방법, 권장 인원, 접속 방식 등 상세 설명",
|
||||
"distributionUrl": "https://example.com/launcher/server-pack-client-distribution.json",
|
||||
"distributionUrl": "admin/data/distributions/my-server-pack.distribution.json",
|
||||
"serverBundleUrl": "https://example.com/serverpacks/my-server-pack.zip",
|
||||
"serverDirectoryName": "my-server-pack",
|
||||
"serverLaunchCommand": "java -jar server.jar nogui",
|
||||
"serverPort": 25565,
|
||||
"tunnelCommand": "playit-cli --port ${port}",
|
||||
"tunnelAddressRegex": "([a-zA-Z0-9.-]+:\\d+)",
|
||||
"allowCustomServerAddress": true
|
||||
"tunnelAddressRegex": "([a-zA-Z0-9.-]+:\\d+)"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -60,9 +56,7 @@
|
||||
- `kind`: `modpack`, `map`, `server-pack`
|
||||
- `description`: 표시 설명
|
||||
- `details`: 설치 페이지 상세 패널에 표시할 긴 설명
|
||||
- `distributionUrl`: Helios distribution.json URL 또는 로컬 경로
|
||||
- `defaultServerAddress`: 기본 자동 접속 주소
|
||||
- `allowCustomServerAddress`: 사용자가 라이브러리에서 주소를 덮어쓸 수 있는지 여부
|
||||
- `distributionUrl`: Helios distribution.json URL 또는 로컬 경로. 관리자 사이트에서 직접 만들거나 업로드 가능
|
||||
- `worldArchiveUrl`: `kind: map` 일 때 사용할 월드 ZIP 또는 로컬 경로
|
||||
- `worldDirectoryName`: 게임 `saves/` 아래에 설치될 월드 폴더 이름
|
||||
- `serverBundleUrl`: `kind: server-pack` 일 때 사용할 서버 ZIP 또는 로컬 디렉터리/경로
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user