이 가이드는 Legion Hosting에서 Foundry 전용 서버를 설정하는 방법, 시작 변수 구성, 서버 설정 파일 편집, 월드 생성 설정, 서버 접속, 그리고 세이브 및 백업 관리 방법을 다룹니다. Foundry는 플레이어가 자원을 채굴하고, 자동화된 생산 라인을 구축하며, 절차적으로 생성된 월드 전반에 걸쳐 거대한 공장을 확장하는 복셀 기반 공장 건설 게임입니다. 관리자 제어, 플레이어 관리 및 문제 해결에 대해서는 Foundry 관리자 및 서버 관리를 참조하세요.
1. 첫 시작
- GPanel에 로그인하고 Foundry 서버를 선택합니다.
- Startup 탭으로 이동하여 구성 가능한 변수를 확인합니다(섹션 2의 표 참조).
- SERVER_NAME을 서버 이름으로 설정합니다. 이 이름은 Steam 서버 브라우저에 표시됩니다.
- 접근을 제한하려면 SRV_PW를 설정합니다. 공개 서버로 운영하려면 비워 둡니다.
- 월드 생성을 제어하려면 선택적으로 MAP_SEED를 설정합니다. 무작위 시드를 사용하려면 비워 둡니다.
- Console 탭으로 돌아가 Start를 클릭합니다.
- 콘솔이 서버 시작을 확인할 때까지 기다립니다. 첫 실행 시 서버가 월드를 생성하고 초기 구성 파일을 만들기 때문에 몇 분 정도 걸릴 수 있습니다.
App.cfg 또는 기타 구성 파일을 편집해야 하는 경우, 서버를 한 번 시작하여 로딩이 끝나도록 한 다음 편집하기 전에 중지하세요. 첫 실행 전에는 파일이 존재하지 않습니다.
2. GPanel 시작 변수
다음 변수는 GPanel Startup 탭에서 사용할 수 있습니다. 이 변수들은 시작할 때마다 서버에 전달됩니다.
| 변수 | 필수 | 설명 |
|---|---|---|
SERVER_NAME |
예 | Steam 서버 브라우저에 표시되는 이름입니다. |
SRV_PW |
아니요 | 플레이어가 참여하기 위해 입력해야 하는 선택적 비밀번호입니다. 공개 서버로 운영하려면 비워 둡니다. |
MAX_PLAYERS |
아니요 | 동시 접속 가능한 최대 플레이어 수입니다. 기본값은 32입니다. |
MAP_SEED |
아니요 | 월드 생성 시드 번호입니다. 동일한 시드를 사용하면 동일한 지형을 재생성할 수 있습니다. 무작위 월드를 생성하려면 비워 둡니다. |
WORLD_NAME |
아니요 | 월드/세이브 폴더의 이름입니다. 기본값은 MyFoundry입니다. 이 값을 변경하면 새 월드가 생성됩니다. |
PUBLIC_SERVER |
아니요 | 서버가 Steam 서버 브라우저에 표시되는지 여부입니다. true 또는 false로 설정합니다. 기본값은 true입니다. |
3. 서버 구성 파일
시작 변수가 제공하는 것 이상의 고급 설정을 위해 서버 구성 파일을 직접 편집할 수 있습니다. 변경하기 전에 서버를 중지하세요.
파일 위치
App.cfg
GPanel의 Files 탭을 사용하거나 SFTP로 연결하여 이 파일을 엽니다. 파일은 한 줄에 하나의 설정이 들어가는 간단한 key=value 형식을 사용합니다. 파일이 존재하지 않으면 서버를 한 번 시작했다가 중지하여 생성하세요.
App.cfg를 읽습니다. 서버가 실행 중일 때 변경한 사항은 다음 재시작 전까지 적용되지 않습니다.
App.cfg의 주요 설정
| 설정 | 기본값 | 설명 |
|---|---|---|
server_name |
My Server |
Steam 서버 브라우저에 표시되는 서버 이름입니다. |
server_password |
(비어 있음) | 서버에 참여하기 위해 필요한 비밀번호입니다. 비어 있으면 공개를 의미합니다. |
server_world_name |
MyFoundry |
월드/세이브 폴더 이름입니다. 각 고유한 이름은 자체 세이브 데이터를 가진 별도의 월드를 생성합니다. |
server_max_players |
32 |
서버에서 허용되는 최대 동시 플레이어 수입니다. |
server_is_public |
true |
서버가 Steam 서버 브라우저에 목록으로 표시되는지 여부를 제어합니다. |
server_port |
3724 |
게임 포트입니다. GPanel에서 관리되므로 지원팀의 지시가 없는 한 변경하지 마세요. |
server_query_port |
27015 |
서버 브라우저 목록에 사용되는 Steam 쿼리 포트입니다. GPanel에서 관리됩니다. |
map_seed |
(무작위) | 절차적 월드 생성을 위한 시드 번호입니다. 임의의 정수 값을 사용합니다. 동일한 시드는 항상 동일한 지형 배치를 생성합니다. |
autosave_interval |
300 |
초 단위 자동 저장 간격입니다. 기본값은 300(5분)입니다. 자동 저장을 비활성화하려면 0으로 설정합니다. |
pause_server_when_empty |
true |
접속한 플레이어가 없을 때 게임 월드를 일시 정지합니다. 공장을 24시간 계속 가동하려면 false로 설정합니다. |
구성 예시
server_name=My Legion Factory
server_password=
server_world_name=MyFoundry
server_max_players=16
server_is_public=true
server_port=3724
server_query_port=27015
map_seed=48293175
autosave_interval=300
pause_server_when_empty=true
server_port와 server_query_port는 GPanel에서 할당하며 할당된 포트와 일치해야 합니다. 이를 변경하면 플레이어가 접속할 수 없게 되고 서버가 브라우저에 표시되지 않습니다.
4. 월드 생성
Foundry는 복셀 지형을 만들기 위해 절차적 월드 생성을 사용합니다. 월드는 시드 번호로부터 생성되며, 이는 지형, 광맥, 바이옴의 배치를 결정합니다.
맵 시드
App.cfg의map_seed값 또는MAP_SEED시작 변수를 임의의 정수로 설정합니다.- 동일한 시드를 사용하면 항상 동일한 월드 배치가 생성되므로, 특정 월드를 다른 사람과 공유하거나 리셋 후 월드를 재생성하려는 경우에 유용합니다.
- 서버가 무작위 월드를 생성하도록 하려면 시드를 비워 두거나 완전히 생략합니다.
- 시드는 초기 월드 생성에만 영향을 줍니다. 기존 월드의 시드를 변경해도 효과가 없으므로, 새 시드를 적용하려면 새 월드를 생성해야 합니다(
server_world_name변경).
월드 이름과 여러 월드
server_world_name 설정은 서버가 사용하는 세이브 폴더를 결정합니다. 서로 다른 월드 이름 간에 전환하여 여러 월드를 유지할 수 있습니다.
- 각 고유한
server_world_name은 자체 세이브 데이터, 공장 상태, 플레이어 진행 상황을 가진 별도의 월드를 생성합니다. - 월드를 전환하려면 서버를 중지하고,
App.cfg에서server_world_name을 변경한 다음, 재시작합니다. - 이전 월드는 보존되며 해당 이름으로 다시 전환하여 다시 불러올 수 있습니다.
비어 있을 때 일시 정지
pause_server_when_empty 옵션은 접속한 플레이어가 없을 때 공장이 계속 작동할지 여부를 제어합니다.
- true (기본값) — 모든 플레이어가 접속을 끊으면 월드가 일시 정지됩니다. 공장은 생산을 멈추고 자원 소비도 중단됩니다. 서버 리소스를 절약하고 게임 상태를 예측 가능하게 유지하는 데 좋습니다.
- false — 공장이 24시간 계속 가동됩니다. 생산 라인이 계속되고 자원이 누적되며, 아무도 플레이하지 않아도 월드가 진행됩니다. 서버 리소스 사용량이 증가할 수 있습니다.
5. 접속 방법
옵션 A — Steam 서버 브라우저
- Foundry를 실행합니다.
- 메인 메뉴에서 Multiplayer를 선택합니다.
- Join Game을 클릭하여 서버 브라우저를 엽니다.
- 검색창을 사용하여 이름으로 서버를 찾습니다.
- 서버를 선택하고 Join을 클릭합니다. 비밀번호가 설정되어 있으면 입력합니다.
옵션 B — 직접 접속
- Foundry를 실행합니다.
- 메인 메뉴에서 Multiplayer를 선택합니다.
- Direct Connect 옵션을 선택합니다.
- GPanel의 Network 탭에서 서버의 IP 주소와 포트를 입력합니다:
<your-server-ip>:<port> - 요청 시 서버 비밀번호를 입력하고 Connect를 클릭합니다.
6. 세이브 관리
자동 저장
서버는 App.cfg의 autosave_interval에 지정된 간격으로 자동 저장합니다(기본값: 300초/5분마다). Foundry 자동 저장은 비침습적이며 대부분의 공장 규모에서 눈에 띄는 지연을 일으키지 않습니다.
세이브 파일 위치
세이브 파일은 App.cfg의 server_persistent_data_override_folder에 지정된 경로로 서버에 저장됩니다. 기본 경로는 다음과 같습니다:
serverfiles/
이 디렉터리에는 지형 수정, 배치된 구조물, 공장 기계, 컨베이어 벨트, 플레이어 인벤토리를 포함한 전체 월드 상태가 들어 있습니다.
SFTP를 통한 수동 백업
- 모든 데이터가 디스크에 기록되도록 GPanel에서 서버를 중지합니다.
- SFTP로 서버에 연결합니다. 지침은 SFTP로 파일 업로드하는 방법을 참조하세요.
- 월드의 전체 세이브 디렉터리(예:
serverfiles/)를 다운로드합니다. - 백업을 컴퓨터의 안전한 위치에 보관합니다.
세이브 복원
- GPanel에서 서버를 중지합니다.
- SFTP로 연결하여
serverfiles/디렉터리로 이동합니다. - 백업된 월드 디렉터리를 업로드하여 기존 것을 대체합니다.
- 폴더 이름이
App.cfg의server_world_name과 일치하는지 확인합니다. - GPanel에서 서버를 시작합니다. 서버가 복원된 세이브를 불러옵니다.
7. 성능 팁
Foundry는 공장 건설 게임이며, 서버 성능은 공장 복잡도에 직접적인 영향을 받습니다. 공장이 커짐에 따라 다음 팁을 염두에 두세요.
- 공장 복잡도: 많은 수의 기계, 컨베이어 벨트, 물류 네트워크는 서버 틱 부하를 증가시킵니다. 지연이 발생하면 생산 체인을 통합하거나 최적화하는 것을 고려하세요.
- 청크 로딩: 서버는 로드된 모든 청크를 처리합니다. 맵 전반에 걸쳐 활성 공장 영역이 많을수록 시뮬레이션해야 할 청크가 많아집니다. 공장을 컴팩트하게 유지하면 서버가 추적해야 하는 청크 수가 줄어듭니다.
- 플레이어 수: 접속한 플레이어가 많을수록 각 플레이어 주변에 더 많은 청크가 로드됩니다. 플레이어가 많아 성능이 저하되면
server_max_players를 줄이는 것을 고려하세요. - 자동 저장 빈도: 대형 월드에서 매우 빈번한 자동 저장(60초 미만)은 주기적인 끊김을 유발할 수 있습니다. 기본값인 300초는 일반적으로 괜찮지만 필요하면 늘릴 수 있습니다.
- 비어 있을 때 일시 정지:
pause_server_when_empty=true를 활성화하면 아무도 플레이하지 않을 때 불필요한 시뮬레이션을 방지하여, 활발한 플레이 세션 동안 일관된 성능을 유지하는 데 도움이 됩니다.
관련 문서
도움이 필요하신가요?
여기에서 다루지 않은 Foundry 서버 문제가 발생하면, 지원 티켓을 열고 서버 IP, 문제에 대한 설명, GPanel 콘솔의 관련 오류 메시지를 포함해 주세요.