반응형

시작하며

서문 
  • 본 가이드는 YouTube 채널 “테크팀” 에서 제작 되었으며, 테크팀 채널의 영상내용에 최적화 되어있습니다.
  • 본가이드의 오류발견시 아래 주소로 제보 부탁 드립니다.

 

테크팀 채널 공식 유튜브 강의 영상


서버 구축 참고 자료들

공식 사이트 

 

참고 사이트 

 

도커이미지 관련 

 


서버 구축의 기본 정보 사항 

서버 요구사항 
  • 정확한 서버 요구 스펙은 확인 중입니다. 

 

사용할 방화벽 포트 
  • UDP : 7777, 27015

 


사전 작업 : 방화벽 개방 + 포트포워딩 

윈도우 방화벽 개방 
  • 파워쉘 관리자 권한 실행 

 

방화벽 개방 명령어 수행
New-NetFirewallRule -DisplayName "AbioticFactor" -Direction Inbound -LocalPort 7777,27015 -Protocol UDP -Action Allow

 

공유기 포트포워딩 
  • 포트포워딩 메뉴로 진입 : IP타임 기준 'NAT/라우터 관리' → '포트포워드 설정'

 

  • 포트포워딩 진행 완료 

 

IP Time 이외 포트포워딩은 ?  (아래 링크 참조)

 


 


본작업 → 방법론1 : SteamClient 를 이용한 구축 

특장점
  • 가장 편하게 설치 및 운영을 할 수 있습니다. (GUI 기반)
  • 반드시 프로그램을 구동하기 위해서는 SteamID를 이용하여 로그인을 해야 합니다. 
  • 공용 PC에서는 보안상 사용하기 어려운 방법입니다. 

 

서버 프로그램 설치 
  • 라이브러리 → 도구 체크

 

  • 서버 검색 + 설치 진행

 

서버 기동 스크립트 제작 
  • 사설서버 설치 디렉토리 접근

 

  • 다음 위치로 이동함 
AbioticFactor\Binaries\Win64

 

  • 서버 기동 배치 파일을 생성함 

 

  • 서버 기동 명령어 삽입 [아래 양식 참조] → 붉은색 부분은 자신의 환경으로 변경하여 사용합니다. 
AbioticFactorServer-Win64-Shipping.exe -log -newconsole -useperfthreads -NoAsyncLoadingThread -MaxServerPlayers=6 -PORT=7777 -QueryPort=27015 -ServerPassword=YourServerPassword -SteamServerName="Your Server Name"

RunServer.bat 파일 수정의 예

 

  • 그밖에 RunServer.bat에서 함께 사용할 수 있는 구동 파라미터들은 "자주하는 질문 게시판"을 참조하면 자세히 나와 있습니다. 

 

서버 구동 
  • RunServer.bat 파일을 더블클릭하여 서버를 기동합니다. 

bat 파일을 수행하여 서버 기동
서버가 기동 완료 되었습니다.
서버 검색 확인
접속 확인

 

  • 서버 접속이 완료 되고 나면, 월드 세이브 디렉토리가 생성이 되었습니다. 
  • 기본 세팅으로 게임을 즐기기 위해서는 더 이상 추가 작업은 없습니다.
  • 환경설정을 커스트마이징 하고 싶다면, 아래 스탭을 추가로 진행하세요 
  • 사설서버 구동기를 종료 합니다. 

 

그밖에 추가 작업 (옵션)

서버 커스토마이징 (SandboxSettings.ini)
  • 공식 사이트에서 SandboxSetting.ini 파일을 다운로드 합니다 : 링크이동

파일 다운로드

 

  • ini 파일을 옮길, 서버 디렉토리로 접근

서버 디렉토리로 이동

  • 폴더 위치 
{로컬파일보기위치}\AbioticFactor\Saved\SaveGames\Server\Worlds\Cascade\

ini 파일을 올바른 장소에 옮겨 놓습니다.
원하는 내용으로 수정함

  • SandboxSettings.ini 파일의 상세 파라미터 항목은 자주하는질문 포스팅을 확인하세요 

 

관리자 권한 및 밴유저 등록 (Admin.ini)
  • 아래 위치의 파일을 수정하여, 관리자 및 밴 유저를 등록할 수 있습니다. 
{서버디렉토리}\steamapps\common\Abiotic Factor Dedicated Server\AbioticFactor\Saved\SaveGames\Server\Admin.ini

Admin.ini 파일
파일 내부 구조

 

 


본작업 방법론 2 : SteamCMD를 이용한 구축

특장점
  • 배치 파일을 이용한 방법으로, 방법론 1번 보다는 약간 난이도가 있습니다.
  • 스팀 로그인이 필요 없으므로, 공용PC 혹은 별도의 서버 구축방법에 자주 사용 됩니다. 
  • 스크립팅을 포함한 자유로운 서버 운영이 가능하여 테크팀 채널에서 권고하는 서버 구축 방법 입니다. 

 

SteamCMD 다운로드 및 설치 준비 
  • 사설 서버 디렉토리 생성 
  • 가급적 C:\ 최상단 , D:\ 최상단을 선택하여 폴더를 만듭니다.
  • 생성하는 폴더는 한글을 사용해서는 안됩니다.

 

설치용 배치파일 / 업데이트용 배치파일 준비 

 

  • 다운로드한 SteamCMD.zip 파일을 압축해제하여 나오는 exe 파일을 서버 폴더로 옮김

다운로드 한 파일을, 설치 폴더로 옮긴다.

 

서버 설치 
  • 텍스트 파일을 2개 만들고 각각 Install.bat, RunServer.bat 로 이름을 변경합니다. 
  • 생성한 파일을 우클릭 하여 "편집" 모드로 들어간다음 아래 구문을 삽입합니다. 

 

  • Install.bat 
steamcmd.exe +login anonymous +app_update 2857200 +quit

 

  • RunServer.bat : 붉은색은 자신의 환경에 맞춰 변경하세요 
## 1 : Server Update Check 
steamcmd.exe +login anonymous +app_update 2857200 +quit

## 2 : Run Server 
cd .\steamapps\common\Abiotic Factor Dedicated Server\AbioticFactor\Binaries\Win64
AbioticFactorServer-Win64-Shipping.exe -log -newconsole -useperfthreads -NoAsyncLoadingThread -MaxServerPlayers=6 -PORT=7777 -QueryPort=27015 -ServerPassword=YourServerPassword -SteamServerName="Your Server Name"

 

  • 먼저 수정 완료한 install.bat 파일을 더블클릭하여 서버를 설치 합니다. 

서버 설치가 진행됨

  • 그다음 RunServer.bat 파일을 수행하여 서버를 최초 1회 구동합니다 → 월드 디렉토리를 생성하기 위함 

서버를 최초 1회 기동함

  • 자신이 만든 서버에 최초 1회 접근 

서버 검색 확인
접속 확인

 

  • 서버 접속이 완료 되고 나면, 월드 세이브 디렉토리가 생성이 되었습니다. 
  • 기본 세팅으로 게임을 즐기기 위해서는 더 이상 추가 작업은 없습니다.
  • 환경설정을 커스트마이징 하고 싶다면, 아래 스탭을 추가로 진행하세요 
  • 사설서버 구동기를 종료 합니다. 

 


그밖에 추가 작업 (옵션)

서버 커스토마이징 (SandboxSettings.ini)
  • 공식 사이트에서 SandboxSetting.ini 파일을 다운로드 합니다 : 링크이동

파일 다운로드

 

  • 다운로드 한 ini 파일을 자신의 월드 디렉토리 안으로 이동 시킵니다.
  • 파일을 옮겨야 할 위치
{사설서버디렉토리}\steamapps\common\Abiotic Factor Dedicated Server\AbioticFactor\Saved\SaveGames\Server\Worlds\Cascade\

ini 파일을 올바른 장소에 옮겨 놓습니다.
원하는 내용으로 수정함

  • SandboxSettings.ini 파일의 상세 파라미터 항목은 자주하는질문 포스팅을 확인하세요 

 

관리자 권한 및 밴유저 등록 (Admin.ini)
  • 아래 위치의 파일을 수정하여, 관리자 및 밴 유저를 등록할 수 있습니다. 
{서버디렉토리}\steamapps\common\Abiotic Factor Dedicated Server\AbioticFactor\Saved\SaveGames\Server\Admin.ini

Admin.ini 파일
파일 내부 구조

 

 

이상, 에이바이오틱 팩터 서버 구축(윈도우) 편이였습니다.
많은 도움이 되셨으면 합니다. 

이상 테크팀 채널이였습니다 
감사합니다.

 

 

 

 

반응형
반응형

시작하며

서문 
  • 본 가이드는 YouTube 채널 “테크팀” 에서 제작 되었으며, 테크팀 채널의 영상내용에 최적화 되어있습니다.
  • 본가이드의 오류발견시 아래 주소로 제보 부탁 드립니다.

 

참고자료 (URL)
  • 도커데스크탑 공식 사이트 : 링크이동
  • 본 가이드에서 참고하는 도커 이미지 사이트 : 링크이동

 

서버 요구사항 
  • 테스트 결과 CPU 4 Threads, Mem 16GB는 있어야 원활히 동작합니다. 
  • 테스트 결과 멀티 쓰레드를 원활히 지원합니다 (8Core-16Threads 원활히 지원)

 

사용할 방화벽 포트 
  • UDP 60002  :  스타듀벨리 기본 포트 
  • TCP 60001 : 도커 이미지에서 원격 관리용으로 사용하는 포트 

 

공식 가이드 [유튜브 영상 가이드]

 


사전 작업(1) : 스팀 계정 만들기 + 스팀가드 설정

아래와 같은 사전 작업이 완료 되어 있어야 합니다.
1. 구글 클라우드 회원 가입 (링크이동)
2. Steam 회원 가입  SteamGuard 등록 

 


사전 작업(2) : GIT, GITLFS 설치

GIT 설치 

설치는 Next만 클릭

 

GITLFS 설치 

 


사전 작업(3) : 도커 데스크탑 설치

Step01 : 도커 데스크탑 다운로드
  • 도커 데스크탑 사이트로 이동하여 프로그램을 설치 합니다 : 링크이동

 

Step02 : 도커 데스크탑 설치 
  • 아래 2개의 항목 모두를 체크하고 Next

설치 진행 중

 


사전 작업(4) : 포트포워딩 구성

공유기 접근 
  • 포트포워딩 메뉴로 진입 : IP타임 기준 'NAT/라우터 관리' → '포트포워드 설정'

포트포워딩 메뉴로 진입 완료

 

포워딩 진행완료 

포트포워딩 완료

 

IP Time 이외 포트포워딩은 ?  (아래 링크 참조)

 


사전작업(5) : 윈도우 방화벽 개방

파워쉘 실행 : 관리자 권한으로 실행

 

방화벽 개방 명령어 수행
New-NetFirewallRule -DisplayName "StardewValley" -Direction Inbound -LocalPort 60002 -Protocol UDP -Action Allow
New-NetFirewallRule -DisplayName "StardewValley" -Direction Inbound -LocalPort 60001 -Protocol TCP -Action Allow

 


게임엔진 설치 (도커 구성)

터미널 실행 
  • 서버 설정 파일을 저장할 위치로 이동 
  • C: or D: 를 추천 합니다. (Path 중간 or 디렉토리에 한글 이름이 있을 경우 오류가 발생 됩니다) 주소 표시줄에 'cmd'를 입력하여 터미널을 실행 합니다. 

터미널 실행 확인

 

Git Cloning 
  • 아래 명령어를 수행하여 Git 소스코드를 Cloning 합니다.
git clone https://github.com/pinduzera/stardew-multiplayer-docker.git

파일이 Cloning된 것을 확인할 수 있다

 

도커 이미지 사용 포트변경 
  • Cloning 디렉토리 안 'docker-compose-steam.yml' 파일을 메모장으로 열어 편집함 
  • 제일 아래 2가지 항목을 수정함 
  • (아래) 변경전 기본 값
    ports:
      # VNC
      - 5902:5900
      # NOVNC WEB
      - 5801:5800
      # Game  
      - 24642:24642/udp

 

  • (아래) 변경후 기본 값
    ports:
      # VNC
      - 5902:5900
      # NOVNC WEB
      - 60001:5800  <-------------------[변경]
      # Game  
      - 60002:24642/udp  <--------------[변경]

 

환경 변수 변경 
  • 마찬가지로 'docker-compose-steam.yml' 파일의 상단 환경변수를 수정함
STEAM_USER={당신의SteamID}
STEAM_PASS={당신의SteamID비번}
STEAM_GUARD={당신의SteamGuard값}

 

도커 빌드 (Docker Build) 
  • 스팀(도커) 이미지가 있는 폴더를 열어 'CMD'를 올바른 위치로 실행함
  • 아래와 같은 명령어를 사용하여 Docker를 Build 함 
docker compose -f docker-compose-steam.yml up

도커가 빌드된다, 시간은 대략 3~4분 소요됨

  • 중간에 로그인 승인하라는 메시지가 휴대폰 (스팀가드)를 통해 전송된다, 반드시 승인을 클릭 

 

구동 완료 
  • 아래와 같은 메시지가 출력된다면 모든 작업이 완료 됨 
  • 서버를 동작시키는 동안에는 아래 터미널 창을 종료해서는 안됩니다. 

 


게임 방 생성 

서버 GUI 접속 
  • 웹브라우저 실행 : 크롬 추천
  • http://{자신의IP}:60001 로 접속함 (공인IP / 127.0.0.1 / localhost 모두 입력 가능)
  • 기본 패스워드 : insecure

https 가 아닌, http를 사용해야 함

 

멀티플레이를 위한 방(Farm) 생성

Co-Op을 눌러 멀티 플레이로 진입

 

Host -> New Farm을 눌러 방을 생성

 

Starting Cabins, Layout, Name등을 설정하고 OK를 눌러 방을 개설

 

방생성 끝
  • 모든 작업이 완료되었습니다

 


서버 접속 테스트

클라이언트 실행 & 멀티방 접속

스타듀밸리 클라이언트 실행 --> 협동플레이 클릭

 

참가하기 -> LAN 게임 참가하기를 클릭
공유 받은 공인 IP를 넣습니다
Cabin을 선택합니다
플레이할 캐릭터 설정
게임 접속 확인 : 방장캐릭터가 서있습니다, 더미 캐릭터입니다. 무시하세요

 

반응형
반응형

국내개발사 : 작두 스튜디오의 작품 " Night of Dead : 죽음의 밤"

 


시작하며

서문 
  • 본 가이드는 YouTube 채널 “테크팀” 에서 제작 되었으며, 테크팀 채널의 영상내용에 최적화 되어있습니다.
  • 본가이드의 오류발견시 아래 주소로 제보 부탁 드립니다.

 

방화벽 포트 
  • UDP 27015 : Game Query Port
  • UDP 7777 : Game Client Port (Unreal Engine Port)

 

기타 정보 
  • 최대 멀티플레이 가능 인원 : [확인중]
  • SteamApp ID : 1420710 
  • 지원 OS 플랫폼 : 윈도우, 리눅스 

 

유용한 사이트 

 


사전작업 

방화벽 개방
  • PowerShell : 관리자 권한으로 실행 
New-NetFirewallRule -DisplayName "NightOfDead" -Direction Inbound -LocalPort 7777,27015 -Protocol UDP -Action Allow

 

포트포워딩 (아래 유튜버 영상참조)

 


게임 서버 설치

SteamCMD 설치

C:\에 게임서버 디렉토리르 생성하고, steamcmd.exe 파일을 옮긴다

 

게임엔진 설치
  • "새 텍스트 문서.txt" 파일 생성

텍스트 파일을 생성

 

  • 새 텍스트 문서.txt --> install.bat 파일로 변경

 

  • Install.bat 파일 편집

 

  • 설치 구문 삽입
steamcmd.exe +login anonymous +app_update 1420710 +quit

 

  • 게임 설치

설치에 대략 3~4분 정도 소요됨

 


서버 환경 설정

ServerSettings.ini
  • 파일 위치
{서버디렉토리}\steamapps\common\Night of the Dead Dedicated Server

 

  • 옵션 설명
//- - - - - - - - - - - - - - - - - - - - - - - -
//- Night of the Dead
//- ServerSettings.ini
//- Default settings:


//- - - - - - - - - - - - - - - - - - - - - - - -
//- SERVER SETTINGS
[ServerSettings]

//- The name of your server as seen on the listing
ServerName=My Host Name

//- The password required to enter the server. Leave blank for no password
Password=

//- Limit the number of players in the game at one time
MaxPlayers=10


//- - - - - - - - - - - - - - - - - - - - - - - -
//- SYSTEM SETTINGS
[SystemSettings]

//- The name of the save game file
SaveName=worldsave

//- Password to the admin tools in-game. (Server Info button)
IngameAdminPassword=123

//- Auto-save feature. It's advised to leave this set to zero on a dedicated server
SaveIntervalHour=0

//- MOTD popup when you enter the game. Can also be left blank and set in-game instead
DefaultMessageOfTheDay=Welcome!


//- - - - - - - - - - - - - - - - - - - - - - - -
//- GAME SETTINGS
[GameSettings]

//- The game difficulty. Must be set to Custom in order to change a lot of settings below.
//- Peaceful / Easy / Normal / Hard / Survival / Challenge / Legend / Custom
Difficulty=Normal


//- - - - - - - - - - - - - - - - - - - - - - - -
//- GAME SETTINGS / GENERAL
[GameSettings/General]

//- These settings are binary. 0 for off and 1 for on:

//- The game mode: PvE or PvP. 0=PvP, 1=PvE
MODSelect=1

//- 1 will disable the waves. 0 to turn them back on. This applies to day waves as well
NoWave=0

//- Activate Building Forbidden Area. Prevents people from building near important sites.
NoSpawnBuildingBlocker=0

//- 1 stops zombies from respawning. 0 to respawn them
NoZombieRespawn=0

//- Should trees, rocks, mushrooms respawn? 1 to respawn
NaturalObjectRespawn=1

//- Should cars, loot boxes, etc. respawn? 1 to respawn
SyntheticObjectRespawn=1

//- Generators don't break when set to 1
NoGeneratorTrouble=1

//- No Research Lost Upon Dying when set to 1
NoDeathResearchDrop=1

//- Drop what you're carrying when you exit when you set this to 1
DropItemsOnExit=0

//- Can't injure a team mate
NoTeamKill=1

//- Disables the ending so that people can't do the escape quest using this game
NoEnding=1

//- Building decays after 5 days of inactivity
UsePlayerBuildingCorrode=0

//- Limits number of zombies that a wave will produce at one time.
//- valid values: 50 / 100 / 200 / 400 / 800 / 2000. default = 200
Limit Wave Zombie Amount=200


//- - - - - - - - - - - - - - - - - - - - - - - -
//- GAME SETTINGS / BASIC
[GameSettings/Basic]

//- * THE SETTINGS BELOW ONLY WORK WHEN DIFFICULTY IS SET TO CUSTOM *
//- These settings are in a range from 0 - 100:

//- Light Zombie HP
NormalZombieHealth=17

//- Heavy Zombie HP
SpecialZombieHealth=17

//- Giant Zombie HP
GiantZombieHealth=17

//- Zombie Damage
ZombieDamage=18

//- Zombie Movement Speed
ZombieMovementSpeed=35

//- World Zombie Spawn Amount
WorldZombieSpawn=17

//- Wave Zombie HP
WaveZombieHealth=25

//- Light Zombie Amount
WaveNormalZombieAmount=44

//- Heavy Zombie Amount
WaveSpecialZombieAmount=17

//- Giant Zombie Amount
WaveGiantZombieAmount=21

//- Animal HP
AnimalHealth=17

//- Animal Attack Damage
AnimalDamage=18

//- These settings are in minutes (times per day). 60 = 1 hour:

//- Light Zombie Respawn Time; valid settings: 30 / 60 / 120 / 180 / 240
WorldNormalZombieRespawnTime=120

//- Heavy Zombie Respawn Time; valid settings: 120 / 300 / 600 / 900 / 1200
WorldSpecialZombieRespawnTime=600

//- Giant Zombie Respawn Time; valid settings: 120 / 300 / 600 / 900 / 1200
WorldGiantZombieRespawnTime=600


//- - - - - - - - - - - - - - - - - - - - - - - -
//- GAME SETTINGS / ADVANCED
[GameSettings/Advanced]

//- * THE SETTINGS BELOW ONLY WORK WHEN DIFFICULTY IS SET TO CUSTOM *

//- No EXP Lost Upon Dying ; 0 = disable, 1 = enable
NoExperienceLoss=0

//- No Items Drop Upon Dying ; 0 = disable, 1 = enable
NoDeathItemDrop=0

//- Dont drop what you have equipped when you die ; 0 = disable, 1 = enable
NoDeathEquipmentItemDrop=1

//- Research Data Consumption ; value = 0 - 100
ResearchDataConsumption=50

//- Fish Speed ; value = 0 - 100
FishSpeed=66

//- Building HP ; value = 0 - 100
BuildingHit=90

//- Trap Attack Damage ; value = 0 - 100
TrapDamage=66

//- Materials Return Rate After Building Destruction ; value = 0 - 100
ResourcesReturnedAfterBuildingDestroyed=30

//- Fish Power ; value = 0 - 100
FishingGaugeDecrease=40

//- High-Grade Equipment Drop Rate ; value = 0 - 100
SuperiorOrHigherEquipmentGainMultiplier=40

//- Gain EXP Amount; 1 / 2 / 3 / 4 / 5
AmountOfExperienceGained=1

//- Item Obtained Amount; 1 / 2 / 3
ResourceAcquisition=1

//- Initial Food Amount; 0 / 1 / 2 / 5 / 10 / 12 / 15
InitialFoodAmount=5

//- Natural Objects Respawn Time; 240 / 360 / 480 / 720 / 840 / 960
NaturalObjectRespawnTime=480

//- Synthetic Objects Respawn Time; 240 / 360 / 480 / 720 / 840 / 960
SyntheticObjectRespawnTime=480

//- Farm Resource Production Amount; 1 / 1.25 / 1.5 / 1.75 / 2
FarmResourceOutput=1

//- Machine Resource Production Amount; 0.5 / 1 / 1.5 / 2
MachineResourceOutput=1

//- Animal Trap Time; 0.5 / 1 / 1.5 / 2 / 2.5
AnimalTrapTime=1

//- Farm Resource Production Time; 0.5 / 1 / 1.5
FarmResourceProductionTime=1

//- Machine Resource Production Time; 0.5 / 1 / 1.5
MachineResourceProductionTime=1

//- Power Generated; 0.5 / 1 / 1.5 / 2 / 2.5
ElectricGeneration=1

//- Power Consumption; 0.5 / 1 / 1.5
ElectricConsumption=1

//- Power Limit; 0.5 / 1 / 1.5 / 2 / 2.5
ElectricOvercurrentLimit=1

//- Standby Power; 0.5 / 1 / 1.5
ElectricStandbyPower=1


//- - - - - - - - - - - - - - - - - - - - - - - -
//- GAME SETTINGS / DETAILS
[GameSettings/Detail]

//- * THE SETTINGS BELOW ONLY WORK WHEN DIFFICULTY IS SET TO CUSTOM *

//- In minutes, how long do you want 1 game day to be? ; 60 / 120 / 180 / 240 / 300 / 360 / 420
OneDayTime=120

//- unlocks all building modules in this game without having to do quests, for all players
UnlockAllBuilding=0

//- Death is permanent if you set this to 1
Hardcore=0

 

서버 구동
  • 서버 실행 파일 위치 
{사설서버구축위치}\steamapps\common\Night of the Dead Dedicated Server

서버 구동 완료

 

반응형
반응형

 


시작하며

서문 
  • 본 가이드는 YouTube 채널 “테크팀” 에서 제작 되었으며, 테크팀 채널의 영상내용에 최적화 되어있습니다.
  • 본가이드의 오류발견시 아래 주소로 제보 부탁 드립니다.

 

유튜브 강의 영상

 

참고자료 

 

서버 요구사항 
  • 최소 : 2vCPU, 16GB MEM, 10GB SSD
  • 권장 : 4vCPU, 32GB MEM, 20GB SSD 

 

방화벽 포트 
  • UDP 7777

 

기타 정보 
  • 최대 멀티플레이 가능 인원 : 10명 
  • SteamApp ID : 808040 
  • 지원 OS 플랫폼 : 윈도우, 리눅스 

 


사전작업 : 방화벽 + 포트포워딩 개방

윈도우 방화벽 개방 
  • 스팀클라이언트 사용시, 방화벽은 자동으로 개방되므로 본 강의에서는 별도 방화벽 개방 스탭은 없습니다. (생략)

 

포트포워딩 설정
IPTime 포트포워딩은 영상을 참조하세요

 


게임엔진 설치

스몰랜드 Dedicated 엔진 설치 
  • 라이브러리 --> 도구를 체크

도구를 체크함

 

  • 스몰랜드 사설서버 확인

설치를 진행함
모두 기본 값으로 두고, '설치'를 선택함
설치 진행중, 대략 1분 정도 소요

 

(서버) 환경설정
  • 설치 디렉토리로 이동함 

설치된 게임 우클릭 -> 관리 -> 로컬파일 보기로 이동함
서버 환경 설정을 위해 우리가 편집할 파일
start-server.bat 파일을 선택하여 '우클릭' -> 편집을 선택
원하는 입맛데로, 서버 환경설정을 편집 : 본데모에서는 서버 이름만 변경함

 

  • 자세한 서버 환경 변수는 아래 내용 참조 
환경변수 설명
set SERVERNAME 표시될 서버의 이름
set WORLDNAME 저장될 월드의 이름
set PASSWORD 서버 접속 패스워드, 사용하지 않을 경우 공란
set FRIENDLYFIRE 0 = PVE, 1 = PVP
set PEACEFULMODE 몹 선공 여부 ( 0 = 선공, 1 = 선공 안함 )
set KEEPINVENTORY 사망시 아이템 유지 ( 0 = 아이템 드롭, 1 = 아이템 유지 )
set NODETERIORATION 건물이 서서이 부패 ( 0 = 무한, 1 = 부패 )
set PRIVATE 서버를 공개/비공개 운영 ( 0 = 공개, 1 = 비공개 )
set LENGTHOFDAYSECONDS 하루의 길이(초), 기본 값 1800은 30분
set LENGTHOFSEASONSECONDS 계절의 길이, 기본 값 10800은 3시간
set CREATUREHEALTHMODIFIER 수집한 크리처의 에너지 (20~300 설정 가능, 기본값 100)
set CREATUREDAMAGEMODIFIER 수집한 크리처의 최초 받는 데미지 (20~300, 기본값 100)
set NOURISHMENTLOSSMODIFIER 허기짐 데미지 (0~100, 기본값 100)
set FALLDAMAGEMODIFIER 낙하 데미지 (50~100, 기본값 100)

 

서버 실행

서버 구동 확인 : 서버 구동에 대략 10초 정도 소요됨

 

서버가 구동되는 동안, 서버 터미널은 종료하면 안됩니다.
서버를 이런식으로 24시간 켜두셔야 합니다

 


최종 접속 테스트

게임(클라이언트) 실행

플레이 클릭
캐릭터 선택
합류 선택후, 멀티 메뉴로 이동
Public -> 자신의 서버 이름 넣기 -> 검색된 자신의 서버를 더블 클릭
합류 중
서버 접속 확인

 

최초 서버 접속 시도중 1~2회 정도는 타임아웃이 발생될 수 있습니다.
만약 3회이상 타임아웃이 발생된다면 높은 확률로 포트포워딩 이슈입니다.
디스코드로 오셔서 유료 기술지원(원격)을 신청하세요 

 


수고하셨습니다. 이렇게 오늘은 윈도우 OS + 스팀클라이언트를 활용하여 
24시간 구동하는 스몰랜드(Smalland) 서버를 구축해 보았습니다.

구축간 궁금하시거나, 어려운 사항들은 공식 디스코드로 오셔서
다양한 기술지원을 받으시기 바랍니다. 

감사합니다. ^^

반응형
반응형

 

시작하며

서문 
  • 본 가이드는 YouTube 채널 “테크팀” 에서 제작 되었으며, 테크팀 채널의 영상내용에 최적화 되어있습니다.
  • 본가이드의 오류발견시 아래 주소로 제보 부탁 드립니다.

 

유튜브 영상은 제작 중

 

참고자료 

 

서버 요구사항 
  • 최소 : 2vCPU, 16GB MEM, 10GB SSD
  • 권장 : 4vCPU, 32GB MEM, 20GB SSD 

 

방화벽 포트 
  • UDP 7777

 

기타 정보 
  • 최대 멀티플레이 가능 인원 : 10명 
  • SteamApp ID : 808040 
  • 지원 OS 플랫폼 : 윈도우, 리눅스 

 


방화벽 + 포트포워딩 개방

윈도우 방화벽 개방 
  • 파워쉘 '관리자 권한실행' 

 

  • 방화벽 개방 명령어 수행
New-NetFirewallRule -DisplayName "Smalland" -Direction Inbound -LocalPort 7777 -Protocol UDP -Action Allow

파워쉘 실행하여 방화벽 개방

 

포트포워딩 진행

 

테크팀 영상을 참조하여 포트포워딩 진행
IPTime 외 다른 공유기의 경우 상단의 디스코드에 접속하여
밴더별 포트포워딩을 참조

 


게임엔진 설치

SteamCMD 설치 
  • 게임엔진 설치를 위한 폴더 생성 

필자의 경우 "Smalland" 라는 폴더를 만들었음

 

 

게임엔진 설치
  • Install.bat 파일을 생성 

 

만약 확장자가 보이지 않는 다면 ??? 

폴더 '보기' 에서 '파일확장명' 을 체크하면 확장명까지 모두 볼 수 있음

 

  • Install.bat 파일 편집하기 

 

  • Install.bat 파일에, 아래 스크립팅을 삽입한다 
steamcmd.exe +login anonymous +app_update 808040 +quit

 

  • 스크립팅 1회 실행 및 서버 설치 [대략2~3분 소요]

서버 설치중, 설치가 완료되면 터미널은 자동 종료됨
설치가 완료되면, 서버폴더 안에 여러가지 파일이 생성된 것을 볼 수 있음

 


게임 서버 환경 설정

  • 환경설정 파일 위치
{스팀CMD폴더}\steamapps\common\SMALLANDSurviveTheWildsDedicatedServer

 

  • 환경설정 파일 편집 : "start-server.bat"

start-server.bat 파일을 우클릭하여 편집함
환경변수를 원하는 모양으로 편집함

 

  • 환경변수들 
환경변수 설명
set SERVERNAME 표시될 서버의 이름
set WORLDNAME 저장될 월드의 이름
set PASSWORD 서버 접속 패스워드, 사용하지 않을 경우 공란
set FRIENDLYFIRE 0 = PVE, 1 = PVP
set PEACEFULMODE 몹 선공 여부 ( 0 = 선공, 1 = 선공 안함 )
set KEEPINVENTORY 사망시 아이템 유지 ( 0 = 아이템 드롭, 1 = 아이템 유지 )
set NODETERIORATION 건물이 서서이 부패 ( 0 = 무한, 1 = 부패 )
set PRIVATE 서버를 공개/비공개 운영 ( 0 = 공개, 1 = 비공개 )
set LENGTHOFDAYSECONDS 하루의 길이(초), 기본 값 1800은 30분
set LENGTHOFSEASONSECONDS 계절의 길이, 기본 값 10800은 3시간
set CREATUREHEALTHMODIFIER 수집한 크리처의 에너지 (20~300 설정 가능, 기본값 100)
set CREATUREDAMAGEMODIFIER 수집한 크리처의 최초 받는 데미지 (20~300, 기본값 100)
set NOURISHMENTLOSSMODIFIER 허기짐 데미지 (0~100, 기본값 100)
set FALLDAMAGEMODIFIER 낙하 데미지 (50~100, 기본값 100)

 

  • 기타 "Additional Configuration"은 모두 기본 값으로 두고 진행함 

 


서버 구동 및 최종 접속 테스트

서버 구동
  • 서버 실행 : "start-server.bat" 파일 실행 

 

접속 테스트 
  • 게임 실행 및 멀티 메뉴 접속

플레이 접근
캐릭터 생성

 

 

수고하셨습니다. 이렇게 오늘은 윈도우 OS를 활용하여 
24시간 구동하는 스몰랜드(Smalland) 서버를 구축해 보았습니다.

구축간 궁금하시거나, 어려운 사항들은 공식 디스코드로 오셔서
다양한 기술지원을 받으시기 바랍니다. 

감사합니다. ^^

 

반응형
반응형

안녕하세요 테크팀 입니다.

유튜브 채널을 운영하면서 정말 많은 유저분들의 다양한 질문을 받고

답변해드리고 있습니다. 

그중 가장 많이 질문하고, 또 답변 드린 사항을 정리하여 안내드립니다.

본 포스팅은 주기적으로 업데이트 됩니다. 

Ver. 2024-04-19


Q : 사설 서버 운영을 위한 스펙은 어떻게 되나요 ??

  • 공식적으로 밝히고 있는 스펙은 없습니다. 
  • 테크팀 자체적으로 테스트 해본 결과 아래와 같은 사양을 권고 드립니다. 
  • 4vCPU / 16GB Mem / 20GB Disk

 


Q : 사용되는 방화벽 포트는 어떤 것들이 있나요 ? 

  • UDP : 7777

 


Q : 서버 구축을 지원하는 OS는 어떤 것들이 있나요 ?

  • Windows, Linux 를 모두 지원합니다. 

 


Q : 시놀로지 나스 + 도커 형식으로 구축할 수 있나요 ?

  • 가능합니다. (영상 준비중)

 


Q : 스몰랜드는 어떤 게임엔진을 사용하여 개발 되었나요 ? 

  • 개발사 자료에 따르면 언리얼 엔진4를 이용하여 개발 되었습니다. 

 


Q : 제조사별 포트포워딩 하는 방법이 있을까요 ??

  • 아래 다른 유튜버분의 자료를 공유 드립니다.
  • 해당 영상과, 테크팀 채널은 아무런 금전적 이해 관계가 없음을 밝힙니다.  순수한 기술 공유입니다.

 

반응형
반응형

안녕하세요 테크팀 입니다. 

유튜브 채널을 운영하면서 정말 많은 유저분들의 다양한 질문을 받고

답변해드리고 있습니다. 

그중 가장 많이 질문하고, 또 답변 드린 사항을 정리하여 안내드립니다.

본 포스팅은 주기적으로 업데이트 됩니다. 

Ver. 2024-03-30


Q : 테라테크월드의 서버 구축 지원 플랫폼은 어떻게 되나요 ?

  • 공식적으로 지원하는 플랫폼은 Windows Only 입니다.
  • 추후 Linux + Container 형태의 3rd Party 이미지들이 나오겠지만 공식적인 이미지는 아닙니다.

 


Q : 테라테크월드의 Dedicated Server SteamID는 어떻게 되나요 ?

  • 2533070

 


Q : Dedicated Server에서 사용되는 방화벽 포트는 어떻게 되나요 ?

  • UDP 7777

 


Q : 환경설정 파일의 위치와 이름은 어떻게 되나요 ?

  • 파일 위치와 이름은 아래와 같습니다.
{스팀CMD폴더}\steamapps\common\TTW_Dedicated_Server\dedicated_server_config.json

 


Q  : 서버 스펙 알려주세요, 어느정도 사양이 필요할까요 ?

  • 현재 확인 중 
     

Q : 기술 참고 URL 공유

 


Q : 패치 후, 가장 최신의 Build ID는 어디서 확인할 수 있나요 ?

 


Q : 세이브 디렉토리는 어떻게 되나요?

  • 아래 위치를 참조하여 주기적으로 백업 받으세요
{스팀CMD폴더}\steamapps\common\TTW_Dedicated_Server\TT2\Saved\WorldSaves\Autosave_Server_{16진수이름}.tera

 

 

 

 

반응형
반응형

안녕하세요 테크팀 입니다. 

유튜브 채널을 운영하면서 정말 많은 유저분들의 다양한 질문을 받고

답변해드리고 있습니다. 

그중 가장 많이 질문하고, 또 답변 드린 사항을 정리하여 안내드립니다.

본 포스팅은 주기적으로 업데이트 됩니다. 

Ver. 2024-03-30


Q : 러스트 사설 서버 운영을 위한 스펙은 어떻게 되나요 ??

  • 아래와 같습니다.

 


Q : 러스트 사설 서버가 사용하는 방화벽 포트를 알려주세요

  • TCP : 28015,28016,28017
  • UDP : 28015,28016,28017

 


Q : 러스트 사설 서버의 Steam ID는 어떻게 되나요 ?

  • 258550

 


Q : 러스트 사설 서버의 최종 업데데이트 런처 ID는 어떻게 확인하나요 ?

 


Q : 자신의 steamid3 은 어디서 확인 가능한가요 ??

  • https://steamid.io/ 사이트에서 SteamID를 넣으면 SteamID3으로 변환하여 알려줍니다.

 


Q : SteamID3 을 확인하려니 SteamID를 물어봅니다. SteamID는 어디서 확인하나요 ?

 


Q : 서버 구축은 완료 했는데 서버에 어떻게 접속하나요 ?

  • 게임을 실행합니다.
  • 메인 메뉴에서 'F1' 키를 눌러 콘솔을 띄웁니다.
  • 아래 명령어를 수행하여 서버에 접속합니다.
connect <서버IP>:28015
예: connect 10.0.0.1:28015

 


Q : 서버의 데이터는 어떤 위치에 저장 되나요 ?

  • 서버의 기본 맵/유저 데이터 저장 위치
{사설서버디렉토리}\steamapps\common\rust_dedicated\server
  • 서버의 플러그인 저장 위치
{사설서버디렉토리}\steamapps\common\rust_dedicated\oxide
  • 위 2개의 폴더를 주기적으로  압축하여 백업 받고, 별도의 위치에 저장해 놓습니다.

 


Q : 세이브파일 백업하기 

압축 프로그램 다운로드 & 설치
  • 주기적인 압축 진행을 위해 반디집을 사용합니다.
  • 반디집이 없다면 먼저 윈도우 시스템에 설치 하세요 : https://kr.bandisoft.com/bandizip/dl/
  • 다운로드가 완료된다면 설치 진행하세요 : Next 만 클릭하여 설치 완료 함

 

백업 스크립트 생성
  • SteamCMD가 설치되어 있는 디렉토리에 아래와 같이 backup.bat 파일을 생성합니다.
Bandizip.exe c ./%date%_%time%.zip ./steamapps/common/rust_dedicated/server
  • backup.bat 파일을 주기적으로 실행하여 서버 파일을 백업 받습니다.

 


Q : Plugin 적용하는 방법이 궁금해요 

필수 프로그램 다운로드
  • 파일 다운로드 : Oxide.Rust.Zip 파일을 사이트에서 다운로드 받습니다.
  • 다운로드 링크 ⇒ https://umod.org/games/rust

 

  • 파일 압축해제
  • 압촉을 해제하여 나온 “Managed” 폴더 안의 모든 데이터를 Dedicated Server의 같은 이름의 “Managed” 폴더 안으로 옮깁니다.
  • Dedicated Server의 Managed 폴더 위치
{사설서버디렉토리}\steamapps\common\rust_dedicated\RustDedicated_Data\Managed
  • 파일 북사가 완료되고 게임서버를 실행하면 “oxide” 폴더가 새로 생성 됩니다.
  • 위치는 아래와 같습니다
{사설서버디렉토리}\steamapps\common\rust_dedicated\oxide

 

Mods(Plugin) 적용하기
{사설서버디렉토리}\steamapps\common\rust_dedicated\oxide\plugins\
  • 게임엔진을 재시작 하여 적용합니다.

반응형

반응형

 

 


 

문서 개정 이력

날짜 제목 상세
2024-14-12 초안 작성 최초 메뉴얼 포스팅
2025-01-26 내용추가 일부 항목 추가 및 오탈자 수정

 


 

테크팀 채널 소개 합니다.

테크팀 채널은 누구나 친구들과 함께 즐길 수 있는 사설서버를 구축하기 위한 강의를 제공하기 위해 만들어졌습니다. 
아래와 같은 다양한 공식 자료를 확인하실 수 있습니다.
제목 링크이동
테크팀 유튜브 채널 링크이동
테크팀 디스코드 서버 링크이동
테크팀 게임사설 서버 (T2Server) 링크이동
테크팀 게임사설 서버 디스코드 링크이동

 


 

Q : 윈도우 PC의 사설 IP는 어떻게 확인하나요 ? 

윈도우키 + R 눌러 실행창을 띄우고 → CMD 를 입력하여 터미널 창을 띄웁니다.

 

명령어를 수행하여 IP를 확인 합니다. 
ipconfig

ipconfig 수행
ipv4 항목에서 IP를 확인 합니다.

 


 

Q : FileZilla 설치 도중, 3rd Party 설치 동의 화면이 나오고 "Next"를 누르면 그냥 꺼지면서 설치가 되지 않습니다

  • 질문자 분의 PC 설정 중에 방화벽/바이러스/기타 프로그램등의 설정에 의해서 차단되는 현상입니다.
  • 순수 클라이언트 버전을 다운로드 받아 설치해보세요
  • 다운로드 링크 클릭

 


 

Q : MobaXterm을 이용하여 파일을 드래그 앤 드롭해도 전송이 이뤄지지 않습니다.  (아무런 에러메시지도 없어요)

  • 파일 전송모드를 기본 (SFTP)에서, SCP로 변경하여 시도 합니다.
  • 포터블로 사용중이라면 삭제하고 Install 버전으로 다시 설치하여 수행합니다.

반응형
반응형

시작하며

서문 
  • 본 가이드는 YouTube 채널 “테크팀” 에서 제작 되었으며, 테크팀 채널의 영상내용에 최적화 되어있습니다.
  • 본가이드의 오류발견시 아래 주소로 제보 부탁 드립니다.

 

[ 테크팀 공식 영상 ]


참고자료 

 

서버 요구사항 
  • 확인중 

 

방화벽 포트 
  • UDP 7777

 


설치 진행 

방화벽 개방 
  • PowerShell 실행 : "관리자권한"으로 실행함 
  • 방화벽 개방 명령어 수행 
New-NetFirewallRule -DisplayName "TTW" -Direction Inbound -LocalPort 7777 -Protocol UDP -Action Allow

 

포트포워딩 진행 
  • 테크팀 공식 영상 및 디스코드 채널을 참조하여 포트포워딩을 진행함 

 

SteamCMD 설치 

 

  • 다운로드하기 : 웹사이트에서 아래 부분을 클릭하여 다운로드를 진행함 

 

설치 파일 생성 
  • 설치 및 실행을 위한 2개의 파일을 생성함 ( Install.bat  / Start.bat )

2개의 파일을 생성함

 

  • Install.bat 
steamcmd.exe +login anonymous +app_update 2533070 +quit

 

  • Start.bat
## 서버 업데이트 구문 ##
steamcmd.exe +login anonymous +app_update 2533070 +quit

## 서버 실행 구문 ##
cd .\steamapps\common\TTW_Dedicated_Server
start TT2Server.exe TT2Server -log

 

설치 진행 
  • Install.bat를 실행하여 Dedicated Server를 설치 진행함 

Install.bat 파일을 수행하여 설치 진행 중
파일 설치 완료

 


게임 실행

(옵션) 게임 환경 설정 
  • 아래 위치의 파일을 수정하여 자신의 서버 환경으로 변경함 
{스팀CMD폴더}\steamapps\common\TTW_Dedicated_Server\dedicated_server_config.json

 

  • dedicated_server_config.json 양식
{
  "Port": 7777,  
  "SlotCount": 6,     <--- 8이 최대치
  "Password": ""
}

 

 

게임 실행
  • Start.bat 파일을 수행하여 게임을 실행함

서버 실행 화면

 

자신의 공인 IP 주소를 넣고 "발사" 선택
정상 접근 확인

 

오늘 포스팅에서는 테라테크월드 서버를 구축하는 방법에 대해서 알아봤습니다.

다음 포스팅에서도 더 좋은 게임과 가이드로 다시 돌아오도록 하겠습니다.

 

반응형
반응형

서문 :

  • 본 가이드는 YouTube 채널 “테크팀” 에서 제작 되었으며, 테크팀 채널의 영상내용에 최적화 되어있습니다.
  • 본가이드의 오류발견이나, 수정신청은 아래 링크로 제보 부탁 드립니다.

 

[ 테크팀 공식 강의 영상 ]


참고자료

일반사이트 

 

포지 엔진 사이트 

 


사전작업

윈도우 방화벽 개방
  • 윈도우 파워쉘을 ‘관리자 권한’으로 실행 후 아래 명령어로 방화벽 오픈
New-NetFirewallRule -DisplayName "Minecraft" -Direction Inbound -LocalPort 25565 -Protocol TCP -Action Allow

 

포트포워딩
  • 자신이 사용하고 있는 공유기에 접근하여 ‘포트포워딩’ 메뉴로 진입 25565 포트를 포트포워딩 진행
  • 그밖에 통신사별 포트포워딩 자료는 테크팀 디스코드 참조 [ 링크이동 ]

 

자바(Java) 설치
  • 자바 다운로드(OpenJDK 18) : 링크이동
  • 기존에 설치된 자바는 삭제 하세요 

다운로드하여 "Next"만 눌러 설치 진행

 

  • Java 설치 확인 : 명령어 터미널 실행 (CMD)
java -version
## 정상적인 결과 값의 예 ##
openjdk version "18.0.2.1" 2022-08-18
OpenJDK Runtime Environment Temurin-18.0.2.1+1 (build 18.0.2.1+1)
OpenJDK 64-Bit Server VM Temurin-18.0.2.1+1 (build 18.0.2.1+1, mixed mode, sharing)

 


서버설치

포지(Forge) 1.19.2 설치 
 

Minecraft Forge downloads

Downloads for Minecraft Forge for Minecraft 1.19.2 Recommended: 43.3.0 Latest: 43.3.8

files.minecraftforge.net

반응형

 

  • install.bat 파일 생성 ⇒ install.bat 파일을 생성하여 Forge 설치 파일과 같이 배치함

 

  • install.bat 파일 수정
java -jar ./forge-1.19.2-43.3.0-installer.jar --installServer
pause

## jar 파일명은 다운로드 받은 이름과 정확히 일치해야 합니다.
## 가끔 forge URL 이슈로 설치가 되지 않는 경우가 있습니다. 이경우 일정 시간을 가지고 다시 시도 하세요 !!!

 

  • Forge 엔진 설치 확인

 

Mode Pack 서버파일 적용
  • 모드팩 다운로드 : 링크이동
  • 최신버전 혹은 원하는 버전을 선택하여 다운로드 진행함

 

  • 모드팩 설치 ⇒ 다운로드한 Zip 파일을 압축해제 하여 Forge 디렉토리로 옮김

 


서버 운영

서버 환경설정
  • 메모리 설정 ⇒ 설치 폴더안 ‘variables.txt’ 파일을 열어 아래와 같이 수정함
MINECRAFT_VERSION=1.19.2
MODLOADER=Forge
MODLOADER_VERSION=43.3.5
LEGACYFABRIC_INSTALLER_VERSION=0.11.1
FABRIC_INSTALLER_VERSION=1.0.0
QUILT_INSTALLER_VERSION=0.9.1
MINECRAFT_SERVER_URL=https://piston-data.mojang.com/v1/objects/f69c284232d7c7580bd89a5a4931c3581eae1378/server.jar
JAVA_ARGS="-Xmx4G -Xms4G"  <----------------------메모리 용량으로 변경하여 저장 후 빠져나감
JAVA="java"

 

서버실행
  • ‘start.ps1’ 파일을 우클릭하여 ‘PowerShell에서 실행’ 수행한다

 

  • License 동의 ⇒ ‘I agree’를 쳐서 동의진행

 

서버 종료
  • 서버 종료를 원할 경우 터미널 창을 ‘X’ 눌러 종료하거나, Stop 명령어 사용
stop

 

 

반응형
반응형

시작하며 

  • 본 가이드는 YouTube 채널 “테크팀” 에서 제작 되었으며, 테크팀 채널의 영상내용에 최적화 되어있습니다.
  • 본가이드의 오류발견시 아래 주소로 제보 부탁 드립니다.

 

YouTube 영상은 업로드 예정

 


참고자료

웹사이트

 

프로그램 데모 화면 미리 보기 

예제1 : 서버 접속자가 보유한 팰 전체 리스트 보기

 

예제2 : 서버 접속자 리스트 및 보유 팰

 

예제3 : 접속자 별 보유 팰의 상세 정보

 

 

사전 정보 
  • 추가로 개방되어야 할 방화벽 포트 : 원할 경우 변경 가능
TCP : 8080

 

  • PalWorldSettings.ini 파일에 반드시 아래 정보가 설정되어 있어야 동작 합니다.
1. RCON Enable 설정이 반드시 True로 잡혀 있어야 함 
2. 관리자 패스워드 설정이 반드시 있어야 함

 


리눅스 사설 서버 위에 구축

방화벽 추가 개방
  • 구글 클라우드에서 방화벽 개방  ( TCP 8080 )

TCP 8080 을 추가합니다.

 

  • 리눅스 OS에서 방화벽 개방

SSH 접근

 

  • 리눅스 OS에서 방화벽 개방
## 방화벽 개방 ##
sudo iptables -I INPUT -p tcp --dport 8080 -j ACCEPT

## 방화벽 저장 ##
sudo netfilter-persistent save

## 방화벽 설정 확인 ##
sudo iptables -nL

 

파일 다운로드
 

Releases · zaigie/palworld-server-tool

[中文|English|日本語]基于.sav存档解析和RCON优雅地用可视化界面管理幻兽帕鲁专用服务器。/ Through parse .sav and RCON, visual interface management PalWorld dedicated server. - zaigie/palworld-server-tool

github.com

리눅스 다운로드를 위해 '링크 주소 복사' 를 눌러 URL을 카피함

 

  • 홈 디렉토리로 이동
cd ~

 

  • 다운로드 진행
wget https://github.com/zaigie/palworld-server-tool/releases/download/v0.6.1/pst_v0.6.1_linux_x86_64.tar.gz

wget 으로 다운로드

 

  • 다운로드한 파일 확인
ls -l

파일 리스트 확인

 

  • 압축해제 
gzip -d <파일명>

gzip -d pst_v0.6.1_linux_x86_64.tar.gz

gzip 압축 해제

 

  • tar 해제 
tar -xvf <파일명>

tar -vf pst_v0.6.1_linux_x86_64.tar

tar 해제

 

  • 파일 확인 및 pst 폴더 이동
ls -l
cd linux_x86_64

ls -l

 

최초 Inital 실행 및 환경 변수 선언
  • nano 편집기로 config.yaml 파일 수정 
nano config.yaml

 

  • config.yaml 파일 원본 양식
web:
  password: ""
  port: 8080
  tls: false
  cert_path: ""
  key_path: ""
  public_url: ""
rcon:
  address: "127.0.0.1:25575"
  password: ""
  is_palguard: false
  timeout: 5
  sync_interval: 60
save:
  path: "/path/to/your/Pal/Saved"
  decode_path: ""
  sync_interval: 120
  backup_interval: 14400
manage:
  kick_non_whitelist: false

 

  • 아래와 같이 수정
  • 반드시 절대 경로를 모두 입력해야 합니다.
web:
  password: ""
  port: 8080
  tls: false
  cert_path: ""
  key_path: ""
  public_url: ""
rcon:
  address: "127.0.0.1:25575"
  password: "12341234"        <--- PalWorldSettings.ini에 있는 관리자 비밀번호 
  is_palguard: false
  timeout: 5
  sync_interval: 60
save:
  path: "/home/ubuntu/Steam/steamapps/common/PalServer/Pal/Saved/SaveGames/0/A860A46533464E0A934425B7A17121C1/Level.sav"
  decode_path: ""
  sync_interval: 120
  backup_interval: 14400
manage:
  kick_non_whitelist: false

 

실행 및 최종 확인
  • screen 실행
screen

 

  • pst 실행 
./pst

 

  • 스크린 빠져나가기 
ctrl + a + d

 

  • 웹브라우저 실행 후 접속 테스트
http://<VM공인IP>:8080


예 - http://123.123.123.123:8080

웹프라우저를 통한 정상 접근 확인

 

반응형

 

반응형
반응형

시작하며 

  • 본 가이드는 YouTube 채널 “테크팀” 에서 제작 되었으며, 테크팀 채널의 영상내용에 최적화 되어있습니다.
  • 본가이드의 오류발견시 아래 주소로 제보 부탁 드립니다.

 

 

[ 테크팀 공식 영상 ]

 


참고자료

웹사이트

 

프로그램 데모 화면 미리 보기 

예제1 : 서버 접속자가 보유한 팰 전체 리스트 보기

 

예제2 : 서버 접속자 리스트 및 보유 팰

 

예제3 : 접속자 별 보유 팰의 상세 정보

 

 

사전 정보 
  • 추가로 개방되어야 할 방화벽 포트 : 원할 경우 변경 가능
TCP : 8080

 

  • PalWorldSettings.ini 파일에 반드시 아래 정보가 설정되어 있어야 동작 합니다.
1. RCON Enable 설정이 반드시 True로 잡혀 있어야 함 
2. 관리자 패스워드 설정이 반드시 있어야 함

 

반응형

 


윈도우 사설 서버 위에 구축

윈도우 방화벽 추가 개방
  • 파워쉘을 관리자 모드로 실행 
New-NetFirewallRule -DisplayName "PalWorld-ServerTool" -Direction Inbound -LocalPort 8080 -Protocol TCP -Action Allow

 

포트포워딩
  • 8080 포트를 자신의 PC로 포트포워딩 진행함 [ 각 제조사 공유기에 맞게 설정 진행합니다 ] 

자신의 공유기에서 포트포워디을 진행함

 

파일 다운로드
 

Releases · zaigie/palworld-server-tool

[中文|English|日本語]基于.sav存档解析和RCON优雅地用可视化界面管理幻兽帕鲁专用服务器。/ Through parse .sav and RCON, visual interface management PalWorld dedicated server. - zaigie/palworld-server-tool

github.com

윈도우용 파일 다운로드
윈도우 PST 파일 구성의 예

 

  • pst_v_0.x.x 폴더의 이름을 pst로 변경한다 (권고)
  • pst 폴더를 PalWorld Dedicated Server 디렉토리로 옮긴다 

팰월드 엔진 디렉토리에 'pst' 폴더를 옮겨 놓는다

 

환경 설정 구성
  • pst 폴더내부에 있는 환경설정 파일을 수정합니다.
  • config.yaml 파일 수정 (원본 양식)
web:
  password: ""                      
  port: 8080  						
  tls: false						
  cert_path: ""						
  key_path: ""						
  public_url: ""					
rcon:
  address: "127.0.0.1:25575"		
  password: ""						
  is_palguard: false				
  timeout: 5						
  sync_interval: 60					
save:
  path: "Level.sav파일의 절대 경로"	
  decode_path: ""					
  sync_interval: 120				
  backup_interval: 14400				
manage:
  kick_non_whitelist: false

 

  • config.yaml 파일 : 수정예제
  • 윈도우 시스템이라도 디렉토리 표현은 \ 이 아닌 / 으로 표현해야 함 (이것 때문에 한참 Trouble Shooting 했습니다)
web:
  password: ""
  port: 8080
  tls: false
  cert_path: ""
  key_path: ""
  public_url: ""
rcon:
  address: "127.0.0.1:25575"
  password: "12341234"     <--- PalWorldSettings.ini에 있는 관리자 비밀번호 
  is_palguard: false
  timeout: 5
  sync_interval: 60
save:
  path: "../steamapps/common/PalServer/Pal/Saved/SaveGames/0/6CF106DFD08C40A48E0E944C0F634140/Level.sav"
  decode_path: ""
  sync_interval: 120
  backup_interval: 14400
manage:
  kick_non_whitelist: false

 

PST 구동
  • (1번) PalWorld Dedciated Server 구동 

 

  • (2번) PST Server 구동 

 

실행 및 최종 확인
  • 접속 주소 
## 자신의 서버 PC에서 바로 접속 ## 
http://127.0.0.1:8080



## 외부 사용자가 접속할 경우 ##
http://<공인IP>:8080

예 - http://123.123.123.123:8080

공인 IP를 사용한 접속의 예

 

반응형
반응형

시작하며

서문
  • 본 가이드는 YouTube 채널 “테크팀” 에서 제작 되었으며, 테크팀 채널의 영상내용에 최적화 되어있습니다.
  • 본가이드의 오류발견시 아래 주소로 제보 부탁 드립니다.

[ 강의 영상 ]

 


참고자료

기술 자료제작에 참고한 사이트 

 

모드 다운로드 사이트 

 


모드의 종류

동작위치에 따른 모드 분류
  • Client Side Mod : 클라이언트만 설치하여 사용됨 ( IE : 미니맵 )
  • Server Side Mod : 서버에만 설치하여 사용됨 → 거의 없음
  • Client & Server Mod : 클라이언트, 서버 둘다 설치 하여 사용됨 → 대부분이 이 방식으로 운영됨
  • 따라서 본 가이드에서 모든 모드는, 서버+클라이언트 설치를 기본 전제로 설명합니다

 

구성 환경에 따른 모드 종류
  • pak 모드 : pak 확장자를 가지고 있는 단일 파일 모드
  • script 모드(=Lua모드) : 대부분의 모드가 여기에 속하며 script 폴더를 포함하는 모드
반응형

UE4SS 설치

모드를 구동하기 위해서는 "UE4SS"가 서버/클라이언트 모두 필수적으로 설치되어 있어야 합니다. 
 

Releases · UE4SS-RE/RE-UE4SS

Injectable LUA scripting system, SDK generator, live property editor and other dumping utilities for UE4/5 games - UE4SS-RE/RE-UE4SS

github.com

 

  • 압축해제 

 

UE4SS 설치하기 
  • 다운로드 받은 파일을 압축해제하고 모든 파일을 아래 디렉토리에 붙어 넣기 합니다. 
## 파일 위치 ## 
{SteamCMD}\steamapps\common\PalServer\Pal\Binaries\Win64

붙여넣기한 화면의 예

 

필수파일 수정
  • 압축 디렉토리 내부에 존재하는 ‘UE4SS-settings.ini’ 파일을 열어 아래 항목을 수정 합니다.
## 파일 위치 ##
{SteamCMD}\steamapps\common\PalServer\Pal\Binaries\Win64\UE4SS-settings.ini
## 수정 부분 ##
bUseUObjectArrayCache = false   <---- 'False'로 변경합니다. 기본 값은 True로 되어있습니다.

 

모드 다운로드 
  • 모드 제공사이트에서 원하는 Mod를 다운로드 받습니다.

 

모드 설치 위치 
  • .pak 모드 : pak 확장자를 가지고 있는 단일 파일 모드
{SteamCMD}\steamapps\common\PalServer\Pal\Content\Paks

 

  • script 모드(=Lua모드) : 대부분의 모드가 여기에 속하며 script 폴더를 포함하는 모드
{SteamCMD}\steamapps\common\PalServer\Pal\Binaries\Win64\Mods

 

mods.txt 파일 수정 (Script, Lua 모드 전용)
  • 파일 위치 
{steamapps}\common\PalServer\Pal\Binaries\Win64\Mods\mods.txt

 

  • mods.txt 파일 수정 : 설치한 모드 디렉토리 명을 적어주고 ‘ 1 ‘ 로 표기함 → 1은 사용한다는 뜻 0은 사용하지 않는 다는 뜻
## mods.txt 작성의 예 ## 
## MapUnlocker 모드를 추가했을 경우 ##


CheatManagerEnablerMod : 1
ActorDumperMod : 0
ConsoleCommandsMod : 1
ConsoleEnablerMod : 1
SplitScreenMod : 0
LineTraceMod : 0
BPModLoaderMod : 1
BPML_GenericFunctions : 1
jsbLuaProfilerMod : 0

MapUnlocker : 1    <------------- 추가한 모드의 디렉토리 이름을 작성하고 '1' 로 설정 

; Built-in keybinds, do not move up!
Keybinds : 1

 

반응형
반응형

시작하며

  • 본 가이드는 YouTube 채널 “테크팀” 에서 제작 되었으며, 테크팀 채널의 영상내용에 최적화 되어있습니다.
  • 본가이드의 오류발견이나, 수정신청은 아래 링크로 제보 부탁 드립니다.

 


참고자료 

 


서버 요구사항 

반응형

구글 클라우드 작업

구글 클라우드 회원 가입
 

클라우드 컴퓨팅 서비스 | Google Cloud

데이터 관리, 하이브리드 및 멀티 클라우드, AI와 머신러닝 등 Google의 클라우드 컴퓨팅 서비스로 비즈니스 당면 과제를 해결하세요.

cloud.google.com

  • 회원가입에 사용되는 신용카드 정보는 개인 정보 확인을 위해 사용될 뿐 청구되지 않습니다.
  • 90일간 300$를 사용할 수 있습니다. 
  • 금액을 다 소진하거나, 90일이 지나면 무료회원기간이 종료되며 유료 회원전환 여부를 묻습니다. 
  • 별도의 액션을 취하지 않으면 무료 회원으로 남고, 구글에서 모든 자원을 회수합니다. 
  • 이후 필요하지 않는 계정은 탈퇴 처리 하여 깔끔하게 삭제합니다. 

 

구글 클라우드 방화벽 개방 
  • 클라우드에서 방화벽은 총 2곳에서 개방합니다. 
    • 클라우드 콘솔(GCP)에서 개방 (본 챕터) 
    • 리눅스 OS 에서 개방 (아래에서 설명)
  • 메인메뉴 -> VCP 네트워크 -> VCP 네트워크 메뉴로 이동합니다. 

방화벽 이름을 지정합니다
대상 : "네트워크의 모든 인스턴스", 소스IPv4범위 : "0.0.0.0/0" 입력
TCP / UDP : 28015,28016,28017 6개 포트를 입력하고 만들기

 

VM 배포 

이름 : 아무거나&nbsp; &nbsp;/&nbsp; &nbsp;리전 : 서울&nbsp; &nbsp;/&nbsp; &nbsp;영역 : 아무거나 선택

  • 게임 서버 스펙에 정확한 정답은 없으나, 가성비 모델 N2 / N2D를 추천합니다.

  • 표준에서 N2D-4vCPU-16GB를 추천하며, 추후 메모리 혹은 CPU가 모자르면 더 높은 사양으로 변경하는 것을 추천

  • OS 버전을 선택할 때 반드시 X86 이미지를 선택해야 합니다.
  • Ubuntu 22.04 ARM을 선택하면 안됩니다. 

만들기를 눌러 VM을 생성합니다.

 

SSH Key 등록 
  • MobaXterm 다운로드 

https://mobaxterm.mobatek.net/download.html

 

MobaXterm free Xserver and tabbed SSH client for Windows

The ultimate toolbox for remote computing - includes X server, enhanced SSH client and much more!

mobaxterm.mobatek.net

 

  • MobaXterm 설치 

무료 버전을 다운로드 하여 Next 만 눌러 설치를 진행함

  • SSH Key Pair 생성

'Generate' 를 눌러 생성 프로세스를 진행

 

  • SSH Key 등록 (구글 클라우드)

생성한 Public Key값을 복사함
복사한 키 값을 넣고 저장함

 

  • VM SSH 세션 등록

 


Linux OS 작업 

방화벽 개방
  • apt update
sudo apt update

 

  • Linux OS 방화벽 개방
sudo iptables -I INPUT -p tcp --dport 28015 -j ACCEPT
sudo iptables -I INPUT -p tcp --dport 28016 -j ACCEPT
sudo iptables -I INPUT -p tcp --dport 28017 -j ACCEPT
sudo iptables -I INPUT -p udp --dport 28015 -j ACCEPT
sudo iptables -I INPUT -p udp --dport 28016 -j ACCEPT
sudo iptables -I INPUT -p udp --dport 28017 -j ACCEPT

sudo netfilter-persistent save

 

  • (옵션) netfilter-persistent 명령어 없다고 뜰 경우 : 설치 진행
sudo apt install netfilter-persistent

  

  • 방화벽 개방 확인
sudo iptables -nL

 

게임 엔진 설치
  • SteamCMD 설치 
sudo apt update

sudo add-apt-repository multiverse; sudo dpkg --add-architecture i386; sudo apt update

sudo apt install steamcmd

 

  • SDK 64 설치
mkdir -p ~/.steam/sdk64/

steamcmd +login anonymous +app_update 1007 +quit

cp ~/Steam/steamapps/common/Steamworks\ SDK\ Redist/linux64/steamclient.so ~/.steam/sdk64/

 

  • 게임엔진 설치
steamcmd +login anonymous +app_update 258550 validate +quit

 


게인엔진 구동 

게임 엔진 구동 
  • 게임 설치 디렉토리로 이동
cd ~/Steam/steamapps/common/rust_dedicated

 

  • start.sh 만들기
nano start.sh

 

  • 아래 내용을 start.sh 에 삽입 : 자신의 환경에 맞춰 변경하여 사용함 
#!/bin/sh
./RustDedicated -batchmode \
+server.port 28015 \
+server.level "Procedural Map" \
+server.seed 1234 \
+server.worldsize 4000 \
+server.maxplayers 10 \
+server.hostname "Your Server Name" \
+server.description "Description shown on server connection window." \
+server.url "http://yourwebsite.com" \
+server.headerimage "http://yourwebsite.com/serverimage.jpg" \
+server.identity "server1" \
+rcon.port 28016 \
+rcon.password YourPassWord \
+rcon.web 1
## nano 저장하고 빠져나가기 ##

ctrl + x 
y 
엔터

 

  • (옵션) 파라미터 값 상세 설명 
Setting Function Notes
-batchmode Tells the server to run without a GUI  
+server.port 28015 Sets the port people will use to connect to the game 28015 is default. This port is UDP.
+server.level "Procedural Map" Sets the type of map.  
+server.seed 1234 Sets the random seed for how the map is generated This number can be any value 0-2147483647
+server.worldsize 4000 Sets the world size. The larger the map, the more disk space and memory you need. Use 1000 to 6000
+server.maxplayers 10 Sets the max number of players connecting at one time The more players, the faster your computer CPU needs to be
+server.hostname "Tom Server" Sets a server name Name of server as shown on the client server list
+server.description "Awesome!" Sets a description for your server Description shown on server connection window, for example you could show the size or intent of the server.
+server.url "http://mysite.com" If you have your own website, you can set it here. You can omit this.
+server.headerimage "http://mysite.com/serverimage.jpg" Sets the picture for the server You can omit this.
+server.identity "server1" This is the internal name of the server. This example name will be used to create a "C:\Rust\MyServer\server1" directory for all of your server files.
+rcon.port 28016 Set the remote connect port. RCON clients connect to this for admin configuration/control. This port is TCP
+rcon.password letmein Sets the remote connect password for remote administration. Change this value!!!
+rcon.web 1 Sets the type of remote connect method. rcon.web 1 is suggested.
-logfile <name> All console output goes into this file. using date/time in the filename is suggested.

 

  • start.sh 파일 권한 변경하기 
chmod 755 ./start.sh

 


서버 운영 관련 

게임엔진 On 
  • screen 유틸리티 실행 : 1번만 실행
  • 이미 실행되어 있다면 추가로 돌릴 필요 없음
screen

 

  •  엔진 시작하기 
cd ~/Steam/steamapps/common/rust_dedicated
sh ./start.sh

 

게임엔진 종료
  • screen 재접속 
## 스크린 리스트 및 번호 확인
screen -ls 

## 특정 스크린으로 들어가기 ##
screen -r <세션번호>

 

  • 엔진 종료
ctrl + c

 

게임엔진 Update
  • screen 재접속
## 스크린 리스트 및 번호 확인
screen -ls 

## 특정 스크린으로 들어가기 ##
screen -r <세션번호>

 

  • 엔진 종료
ctrl + c

 

  • 엔진 업그레이드 
cd ~
steamcmd +login anonymous +app_update 258550 validate +quit

 


클라이언트 실행 + 접속 연결

  • 게임 클라이언트를 실행하여 'F1' 키를 눌러 콘솔창을 띄운다 
  • 아래 명령어를 사용하여 접속 시도 
connect <공인IP>:28015

## 예 ##
connect 192.168.0.100:28015

 

 

 

반응형
반응형

시작하며 

서문
  • 본 가이드는 YouTube 채널 “테크팀” 에서 제작 되었으며, 테크팀 채널의 영상내용에 최적화 되어있습니다.
  • 본가이드의 오류발견이나, 수정신청은 아래 링크로 제보 부탁 드립니다. 

 


참고자료

기술사이트

 

기타 유틸리티 사이트

 

서버 요구사항
CPU 4코어 이상
Memory 16 GB 이상
Disk 8GB 이상
OS Windows 2019 이상 권고 (Linux는 공식 지원하지 않음 - 에뮬레이팅 필요)
Port TCP/UDP 7777, 7779(Option) 27015

 


사전 작업

방화벽 개방
  • 윈도우 파워쉘을 ‘관리자 권한’으로 실행 후 아래 명령어로 방화벽 오픈
New-NetFirewallRule -DisplayName "ArkSurvival" -Direction Inbound -LocalPort 7777,7778,27015 -Protocol TCP -Action Allow
New-NetFirewallRule -DisplayName "ArkSurvival" -Direction Inbound -LocalPort 7777,7778,27015 -Protocol UDP -Action Allow

 

포트포워딩 
  • 자신이 사용하고 있는 공유기에 접근하여 ‘포트포워딩’ 메뉴로 진입 7777, 7778, 27015 포트를 포트포워딩 진행

서버 설치 

SteamCMD 다운로드
 

스팀CMD - Valve Developer Community

스팀 콘솔 클라이언트 또는 스팀CMD 는 스팀 클라이언트의 콘솔 버전입니다. 이 프로그램의 주된 용도는 콘솔 인터페이스를 사용하여 스팀에서 사용할 수 있는 다양한 게임 전용 서버를 설치하

developer.valvesoftware.com

zip 파일을 다운로드함

 

게임 설치
  • install.bat 만들기 
steamcmd.exe +login anonymous +app_update 2430930 +quit
  • start.bat 만들기
## 서버 업데이트 구문 ##
steamcmd.exe +login anonymous +app_update 2430930 +quit

## 서버 실행 구문 ##
cd .\steamapps\common\PalServer
start ArkAscendedServer.exe TheIsland_WP?listen?SessionName=<servername>?Port=7777?QueryPort=27015?ServerPassword=<serverpassword> -WinLiveMaxPlayers=50 -log

 

추가 환경 설정

 

반응형

운영관련

서버 백업
  • 아래 디릭토리의 파일을 주기적으로 압축 보관합니다.
ShooterGame/Saved

[작성중]

반응형
반응형

시작하며
  • 본 가이드는 YouTube 채널 “테크팀” 에서 제작 되었으며, 테크팀 채널의 영상내용에 최적화 되어있습니다.
  • 본가이드의 오류발견이나, 수정신청은 아래 주소로 제보 부탁 드립니다.

[ 테크팀 영상 ]


서비스 종료

Minecraft 서비스 종료
  • 서버 스펙을 조정하기 위해서는 기존 VM을 PowerOff 하셔야 합니다. PowerOff전 반드시 게임 서비스를 먼저 안전하게 종료하세요
  • 명령어를 사용하여 안전하게 서비스를 종료 합니다
stop

 

GCP VM Power Off
  • 서버 프로그램을 종료하였다면 VM(OS)도 종료합니다.
  • Console 화면에서 작업할 서버를 선택 후 종료(PowerOff) 합니다.

  • 인스턴스 중지 확인 

 

스펙 변경

원하는 VM 이름을 클릭하여 상세페이지 진입합니다.

반응형
스펙조정 메뉴 진입

 

CPU 시리즈 선택
  • 원하는 CPU 시리즈를 선택합니다.
  • [Tips] : 마인크래프트 같은 경우 클럭수가 높은 CPU를 사용하기 보다, 저렴한 CPU를 여러개 사용하는 편이 성능 향상에 더욱 유리합니다. 따라서 비싼 CPU 1개 보다는 저렴한 CPU 2~3개를 병렬 운영하는 것을 권장 드립니다.
  • 본 가이드에서는 기존 선택되어 있는 E2를 그대로 선택하여 사용하겠습니다. 다른 CPU 타입을 원할 경우 선택하여 변경합니다.

 

Core 개수 및 Memory 양 조정
  • 원하는 CPU / Memory를 “사전 설정” 된 항목에서 선택 합니다.
  • 본 가이드(데모)에서는 “표준” ⇒ “e2-standard-4” 를 선택하겠습니다. 기존 VM은 2vCPU, 8G MEM을 용하였으며, 변경된 VM은 4vCPU, 16G MEM으로 재조정 되었습니다.

  • 만약 Custom CPU 개수와 MEMORY 수량을 사용자가 원하는 모양으로 자유롭게 정하고 싶을 경우 “커스텀” 메뉴를 선택합니다.
  • 커스텀 메뉴는 사용자가 원하는 CPU와 메모리를 자유롭게 변경하는 것이 가능합니다. 따라서 원하는 사양에 맞춰 조금 더 최적화 하는 것이 가능합니다.

 

설정 적용
  • 화면 가장 아래쪽에 있는 “저장” 버튼을 눌러 저장하고 빠져나갑니다.

 


변경 스펙 확인

클라우드 콘솔에서 변경된 스펙 확인
  • 여러분들이 지정한 변경된 스펙으로 잘 변경 되었는지 확인하겠습니다.
  • “저장”버튼을 누르고 나오는 메인화면에서 아래쪽에 “머신구성” 항목에서 변경된 스펙을 확인 할 수 있습니다.

 

서버 스펙 변경확인 (VM-OS 안에서 확인하기)
  • 서버(VM) 재시작
  • 서버(VM)을 선택 하고 “시작/재개” 버튼을 눌러 서버를 재시작 합니다. (변경된 스펙에 맞춰 서버가 기동 됩니다)

 

SSH Console 시작
  • 명령어를 실행하여 스펙이 잘 적용되었는지 확인하기 위해 “SSH Terminal”을 실행합니다.
  • 설치된 MobaXterm을 이용해서 VM으로 접근해도 됩니다.

  • 명령어를 실행하여 CPU 정보를 파악 합니다. (본 데모는 기존 2vCPU에서 4vCPU로 변경되었습니다)
cat /proc/cpuinfo |grep processor


## 실행 결과 ## 

processor       : 0
processor       : 1
processor       : 2
processor       : 3
  • 정상적으로 0~3 (총 4개) CPU가 할당 된 것을 볼 수 있습니다.
  • 아래 명령어를 사용하여 MEMORY도 확인합니다 (본 데모는 기존 8GB MEM에서 16GB MEM으로 변경되었습니다)
cat /proc/meminfo 



## 실행 결과 ##
MemTotal:       16369468 kB     <------------ 총 할당된 메모리 : 16GB
MemFree:        15791652 kB
MemAvailable:   15862920 kB
Buffers:           14156 kB
Cached:           303980 kB

    - 중간 생략 -

Hugepagesize:       2048 kB
Hugetlb:               0 kB
DirectMap4k:       70456 kB
DirectMap2M:     3072000 kB
DirectMap1G:    15728640 kB
  • 스펙 조정이 완료 되었다면 게임 엔진을 다시 시작하고 서비스를 이어 나갑니다.

 


결론 / 정리

  • 오늘 강의를 통해서 구글 클라우드에 여러분들이 배포하신 VM의 스펙을 조정해 보았습니다.
  • 클라우드의 가장 큰 장점은 언제든 내가 원하는 스펙으로 스펙을 조정하고 비용을 최적화 할 수 있다는 점입니다.
  • 처음에는 서비스를 작게 시작하여 시장의 반응을 살피고 이후 서버가 커진다면 스펙을 확장하여 여러분의 서버 스펙과 비용사이의 운영을 최적화 시키시길 바랍니다. ^^

 

반응형
반응형

시작하며

서문 :

  • 본 가이드는 YouTube 채널 “테크팀” 에서 제작 되었으며, 테크팀 채널의 영상내용에 최적화 되어있습니다.
  • 본가이드의 오류발견이나, 수정신청은 아래 링크로 제보 부탁 드립니다.

[ 공식 영상 ]


참고자료 

영상 제작에 참고한 자료들 [ 공식자료 ]

외국 자료 [ 3rd party ]

외국자료 [ Docker ] ⇒ 공식적으로 인슈라우디드는 ‘리눅스’를 지원하지는 않습니다.

외국자료 [ WinGSM ]

외국자료 [ Linux - InstallServer.sh ]

 


서버요구사항

4~6인 사양 : 개발사 권고

  • CPU : CPU Intel Core i7 with 3.2 GHz or equivalent AMD / 6코어 (12 쓰레드)
  • Memory : 16 GB ← 개인적으로 테스트 해봤을 때, 16GB는 너무 아슬아슬 합니다. 32GB를 추천합니다.
  • Disk : 게임엔진을 위한 30GB 공간

16인 사양 : 개발사 권고

  • CPU : CPU Intel Core i7 with 3.7 GHz or equivalent AMD / 8 코어 (16 쓰레드)
  • Memory : 16 GB ← 개인적으로 테스트 해봤을 때, 16GB는 너무 아슬아슬 합니다. 32GB를 추천합니다.
  • Disk : 게임엔진을 위한 30GB 공간

 


사전작업

  • 기본적으로 SteamCMD를 돌리면 자동으로 exe파일에 대한 방화벽이 개방됩니다.
  • 사용자 환경에 의해 자동 개방이 되지 않을 경우 아래와 같이 수동 개방합니다.

 

방화벽

  • PowerShell을 “관리자모드”로 실행하여 아래 명령어를 수행합니다.
  • 방화벽 개방 명령어 실행
New-NetFirewallRule -DisplayName "Enshrouded Server" -Direction Inbound -LocalPort 15636,15637 -Protocol TCP -Action Allow 

New-NetFirewallRule -DisplayName "Enshrouded Server" -Direction Inbound -LocalPort 15636,15637 -Protocol UDP -Action Allow

 

포트포워딩

  • 공식 동영상 참조 - 05:13 참조
반응형

설치시작

Steam CMD 설치

  • 압축해제 후 폴더를 만들어 ‘steamcmd.exe’ 파일을 원하는 폴더에 옮겨 놓습니다.

 

install.bat 만들기

  • install.bat 파일을 steamcmd.exe 디렉토리와 동일한 곳에 생성 후 아래와 같은 명령어를 삽입 합니다.
steamcmd.exe +login anonymous +app_update 2278520 +quit

 

  • ‘install.bat’ 파일을 실행하여, 최초 1회 설치파일을 다운로드 받습니다.

 

start.bat 파일 생성하기

  • 최초 1회 서버 구동하기
  • steamcmd.exe와 같은 폴더에 start.bat 파일을 생성하고 아래와 같이 입력 합니다.
  • 서버 구동이 잘 되는 것을 확인 하였으면, 서버 구동기 프로그램을 종료합니다.
## 서버 업데이트 구문 ##
steamcmd.exe +login anonymous +app_update 2278520 +quit

## 서버 실행 구문 ##
cd .\steamapps\common\EnshroudedServer
start enshrouded_server.exe

 

환경 설정 파일 수정

  • 파일 위치 (아래 위치 참조) : 파일을 편집하여 Customizing 합니다.
{SteamCMD디렉토리}\steamapps\common\EnshroudedServer\enshrouded_server.json

 

  • enshrouded_server.json 파일의 형태
{
	"name": "Enshrouded Server",     <<------ 서버 이름
	"password": "",                  <<------ 서버 패스워드 
	"saveDirectory": "./savegame",   <<------ 세이브 파일 위치 
	"logDirectory": "./logs",        <<------ 서버 로그 파일
	"ip": "0.0.0.0",                 <<------ 서버 IP (기본값 유지)
	"gamePort": 15636,               <<------ 서버 IP (기본값 유지)
	"queryPort": 15637,              <<------ 서버 IP (기본값 유지)
	"slotCount": 16                  <<------ 서버 최대 접속 플레이어 수 
	"userGroups": [
		{
			"name": "Admin",
			"password": "Adminuo()[fa1",
			"canKickBan": true,
			"canAccessInventories": true,
			"canEditBase": true,
			"canExtendBase": true,
			"reservedSlots": 0
		},
		{
			"name": "Friend",
			"password": "Friendv4wYGB0I",
			"canKickBan": false,
			"canAccessInventories": true,
			"canEditBase": true,
			"canExtendBase": false,
			"reservedSlots": 0
		},
		{
			"name": "Guest",
			"password": "Guestt6O0-UWo",
			"canKickBan": false,
			"canAccessInventories": false,
			"canEditBase": false,
			"canExtendBase": false,
			"reservedSlots": 0
		}
	]
}
  • 수정 완료 했다면 “start.bat” 파일을 실행하여 서버 최종 구동

 

" 이상 SteamCMD를 사용한 인슈라오디드 구축 가이드였습니다 "

 

 

 

 

반응형
반응형

시작하며

  • 본 가이드는 YouTube 채널 “테크팀” 에서 제작 되었으며, 테크팀 채널의 영상내용에 최적화 되어있습니다.
  • 본가이드의 오류발견이나, 수정신청은 아래 주소를 이용하여 제보 부탁 드립니다. 

[ 공식 영상 ]


참고자료

[ 개발사 공식 링크 ]


[ 3rd Party 가이드 ]


[ 도커 자료 ]


[ 기타 ] 

 


서버요구사항

[ 4 ~ 6 인 사양 ]

  • CPU : CPU Intel Core i7 with 3.2 GHz or equivalent AMD / 6코어 (12 쓰레드)
  • Memory : 16 GB
  • Disk : 게임엔진을 위한 30GB 공간

[ 16인 사양 ]

  • CPU : CPU Intel Core i7 with 3.7 GHz or equivalent AMD / 8 코어 (16 쓰레드)
  • Memory : 16 GB
  • Disk : 게임엔진을 위한 30GB 공간

 


사전작업

WindowsGSM 프로그램 준비

  • 사이트 주소 : https://windowsgsm.com/products/windowsgsm-desktop
  • 게임엔진을 설치할 아무 폴더를 만들고 거기에 다운로드 받은 WindowsGSM을 넣습니다.
  • ‘WindowsGSM.exe’ 파일을 더블 클릭하면 파일셋이 생성되며 별도의 Installation 과정은 없습니다.

 

방화벽 개방

  • WindowsGSM을 사용할 경우 방화벽이 자동 개방 되므로 별도의 수동 개방은 필요하지 않습니다.
  • (옵션) 하지만 필요할 경우를 대비하여 파워쉘 ‘관리자’ 모드로 아래와 같은 명령어를 이용해 수동으로 개방할 수도 있습니다.
New-NetFirewallRule -DisplayName "EnshroudedServer" -Direction Inbound -LocalPort 15636,15637 -Protocol TCP -Action Allow
New-NetFirewallRule -DisplayName "EnshroudedServer" -Direction Inbound -LocalPort 15636,15637 -Protocol UDP -Action Allow

 

포트포워딩 [ 유저 통곡의 벽 ]

  • 유튭 영상참조 ( 공식 영상 참조하세요 )
반응형

 


게임엔진설치 (Dedicated Server Install)

Windows GSM Plugin 설치

  • Enshrouded 게임은 신작으로 WindowsGSM의 기본게임 리스트에 포함되어 있지 않습니다. 따라서 추가를 해줘야 합니다.
  • WindowsGSM 에서 추가 게임 등록은 Plugin Import 작업으로 진행 가능합니다.
  • Enshrouded 플러그인을 먼저 다운로드 받습니다 ⇒ https://github.com/ohmcodes/WindowsGSM.Enshrouded/releases

 

  • WindowsGSM에서 플러그인을 추가 합니다. 

 

  • 게임 엔진 설치

  • 설치 용량은 대략 11GB 정도로 시간은 대략 3~4분 정도 소요됩니다.
  • 게임 디렉토리확인 [ WindowsGSM설치폴더\servers\{ID번호}

 

서버 설정

  • WindowsGSM 설정파일 (WindowsGSM.cfg) ⇒ WindowsGSM 자체 설정 파일
    ## WindowsGSM.cfg 파일 구성의 예 ##
    
    servergame="Enshrouded Dedicated Server [Enshrouded.cs]"
    servername="구독자님의 서버이름"
    serverip="192.168.0.000"
    serverport="15636"
    serverqueryport="15637"
    servermap="Dedicated"
    servermaxplayer="16"
    servergslt=""
    serverparam="-log"
    
    cpupriority="2"
    cpuaffinity="111111111111111111111111"
    
    autorestart="0"
    autostart="0"
    autoupdate="0"
    updateonstart="0"
    backuponstart="0"
    
    discordalert="0"
    discordmessage=""
    discordwebhook=""
    
    restartcrontab="0"
    crontabformat="0 6 * * *"
    
    embedconsole="0"
    autoscroll="1"
    
    autostartalert="1"
    autorestartalert="1"
    autoupdatealert="1"
    restartcrontabalert="1"
    crashalert="1"
    

 

  • ## 파일 위치 ## {귀하의WindowsGS폴더}\\servers\\1\\configs\\WindowsGSM.cfg
  • 인슈라오디드 설정 파일 (enshrouded_server.json) ⇒ 인슈라오디드 설정 파일
    ## enshrouded_server.json 파일 구성의 예 ##
    
    {
      "name": "귀하의서버이름",
      "password": "",   
      "saveDirectory": "./savegame",
      "logDirectory": "./logs",
      "ip": "192.168.0.160",
      "gamePort": "15636",
      "queryPort": "15637",
      "slotCount": "16"
    }
    

 

  • ## 파일 위치 ## {귀하의WindowsGS폴더}\\servers\\1\\serverfiles\\enshrouded_server.json

 

이상 테크팀 채널 공식 인슈라오디드 서버 구축 가이드 였습니다 

 

 

반응형
반응형

안녕하세요 테크팀 입니다. 

오늘 포스팅은 여러분들께서 구글 클라우드에 구축하신 VM에

MobaXterm을 사용하여 SSH 프로토콜을 사용하여

명령어 터미널 + 파일전송(SFTP)를 구성하는 방법에 대하여 가이드 합니다. 

본 포스팅의 내용을 동영상으로 보시길 원하는 분들은 아래 공식 영상을 참조하세요

https://youtu.be/yrL9RaLX4DY?si=zpSoTBRHp5gYYr69

 

먼저 프로그램을 다운로드 받아야 합니다. 

프로램의 이름은 모바엑스텀(MobaXterm)입니다. 

무료로 제공되는 오픈소스 툴이며 아래 링크를 통해 다운로드가 가능합니다. 

https://mobaxterm.mobatek.net/download.html

 

MobaXterm free Xserver and tabbed SSH client for Windows

The ultimate toolbox for remote computing - includes X server, enhanced SSH client and much more!

mobaxterm.mobatek.net

 

프로그램을 다운로드 받았다면 "Next"만 눌러 설치 해주세요 

설치가 완료되었다면 SSH Key-Pair를 만들어서 구글 클라우드에 등록 하겠습니다. 

Key Pair란 일종의 현관문 열쇄와 같은 개념입니다. 

클라우드에서는 ID / Password 방식의 로그인은 보안에 취약하므로

SSH Key를 이용한 접속을 권장합니다. 

 

자 그럼 키 발급부터 시작해 보겠습니다. 

MobaXterm의 상단 메뉴에서 Key Generation을 선택합니다.

Tools -> MoaKeyGen (SSH Key Generator)

메뉴를 클릭하면 아래와 같이 생성 메뉴가 뜹니다

Generate를 눌러 생성 시작

단 주의하실 사항은 반드시 아래 표시된 붉은 박스 영역에서

마우스를 움직여 주셔야 합니다. 가만히 있으면 생성되지 않습니다. 잼있죠 ? 

 

키 생성이 완료되고 나면 아래와 같이 Key 생성 내용이 출력되고 여기서

'Key Comment' 부분에 여러분의 구글 클라우드 ID를 넣습니다 (아래 그림)

자신의 구글 ID를 넣는다

ID를 넣었다면 생성된 Public / Private 키를 여러분들의 PC에 저장하여 안전하게 보관합니다.

 

지금까지 작업은 MobaXterm을 다운로드 받고

프로그램을 이용하여 키를 생성하여 여러분의 PC에 저장했습니다. 

이제 저장한 키를 구글 클라우드에 등록하여 VM 접속에 사용할 수 있도록 설정하겠습니다. 

구글 클라우드 콘솔에 접속하여 "Compute Engine" -> "메타데이터" 로 이동 합니다.

 

메타데이터 항목에서 "SSH키" -> "수정" 으로 들어갑니다.

 

"항목 추가"를 눌러 SSH 키 항목에 여러분들이 생성하신 Key 값을 붙여 넣기 합니다. 

생성한 키 값을 복사함

 

"짝짝짝" 이제 모든 작업이 완료 되었습니다. 

구글 클라우드에 잘 접속이 되는지 MobaXterm을 이용하여 접속 테스트 해보겠습니다.  

MobaXterm을 실행하고 'User Session'에서 우클릭하여 'New Session'을 선택 합니다

 

서버 접근 완료

축하 드립니다 서버에 정상적으로 접근 되었습니다. 

앞으로 VM 운영을 위해 구글 클라우드 콘솔에 접근할 필요 없이 

PC에서 MobaXterm만 실행하여 언제든 여러분들의 서버에 

명령어도 실행하고, 파일도 전송할 수 있게 되었습니다. 

반응형
반응형

 

 

 



문서 개정 이력

날짜 제목 상세
2025-05-20 리뉴얼 레이아웃 및 오류사항 수정

 

테크팀 채널 소개

테크팀 채널은 누구나 친구들과 함께 즐길 수 있는 사설서버를 구축하기 위한 강의를 제공하기 위해 만들어졌습니다. 
아래와 같은 다양한 공식 자료를 확인하실 수 있습니다.
제목 링크이동
테크팀 유튜브 채널 링크이동
테크팀 디스코드 링크이동
테크팀 매뉴얼 정리 링크이동

 


 

테크팀 영상 가이드

본 포스팅은 테크팀 구축 가이드에 최적화 되어 있습니다.

 


 

기술 참고 자료

 

기술 사이트 : 
그 밖에 좋은 사이트 : 
플러그인(모드) 사이트 : 
  • Oxide (legacy) modification for the game Rust : 링크이동

 


 

서버 요구사항 

 


 

윈도우 방화벽 개방 

윈도우 파워쉘을 "관리자 권한" 으로 실행 후 아래 명령어 수행 
New-NetFirewallRule -DisplayName "rust" -Direction Inbound -LocalPort 28015,28016,28017 -Protocol TCP -Action Allow
New-NetFirewallRule -DisplayName "rust" -Direction Inbound -LocalPort 28015,28016,28017 -Protocol UDP -Action Allow

 


 

포트포워딩

IPTime이 아닌 다른 공유기 브랜드별 포트포워딩 유튜브 자료
번호 브랜드 YouTube 링크
1 IP Time 공유기 링크이동
2 KT 공유기 링크이동
3 TP Link 공유기 링크이동
4 Next 공유기 링크이동
5 SK 브로드밴드 공유기 링크이동
6 LG U+ 공유기 링크이동
7 ASUS 공유기 링크이동

 


 

게임 서버엔진 설치 진행

 

SteamCMD - Valve Developer Community

The Steam Console Client or SteamCMD is a command-line version of the Steam Client. Its primary use is to install and update various dedicated servers available on Steam using a command-line interface. It works with games that use the SteamPipe content sys

developer.valvesoftware.com

링크를 눌러 다운로드 함

 

게임엔진 설치
  • 게임 엔진 디렉토리 생성 (C:\ or D:\), 다운로드 받은 파일의 압축을 해제 
  • 한글이 들어간 디렉토리 및 패스는 사용하시면 안됩니다. 
  • install.bat 파일 생성 및 편집 
steamcmd.exe +login anonymous +app_update 258550 +quit

 

  • start.bat 파일 생성 및 편집
## 서버 업데이트 구문 ##
steamcmd.exe +login anonymous +app_update 258550 +quit

## 서버 실행 구문 ##
cd .\steamapps\common\rust_dedicated
start RustDedicated.exe -batchmode +server.port 28015 +server.level "Procedural Map" +server.seed 1234 +server.worldsize 4000 +server.maxplayers 10  +server.hostname "Name of Server as Shown on the Client Server List" +server.description "Description shown on server connection window." +server.url "http://yourwebsite.com" +server.headerimage "http://yourwebsite.com/serverimage.jpg" +server.identity "server1" +rcon.port 28016 +rcon.password letmein +rcon.web 1 -logfile rustserverlog.txt

 

  • (참조) start.bat 명령어 파라미터 정리
Setting Function Notes
-batchmode Tells the server to run without a GUI  
+server.port 28015 Sets the port people will use to connect to the game 28015 is default. This port is UDP.
+server.level "Procedural Map" Sets the type of map.  
+server.seed 1234 Sets the random seed for how the map is generated This number can be any value 0-2147483647
+server.worldsize 4000 Sets the world size. The larger the map, the more disk space and memory you need. Use 1000 to 6000
+server.maxplayers 10 Sets the max number of players connecting at one time The more players, the faster your computer CPU needs to be
+server.hostname "Tom Server" Sets a server name Name of server as shown on the client server list
+server.description "Awesome!" Sets a description for your server Description shown on server connection window, for example you could show the size or intent of the server.
+server.url "http://mysite.com" If you have your own website, you can set it here. You can omit this.
+server.headerimage "http://mysite.com/serverimage.jpg" Sets the picture for the server You can omit this.
+server.identity "server1" This is the internal name of the server. This example name will be used to create a "C:\Rust\MyServer\server1" directory for all of your server files.
+rcon.port 28016 Set the remote connect port. RCON clients connect to this for admin configuration/control. This port is TCP
+rcon.password letmein Sets the remote connect password for remote administration. Change this value!!!
+rcon.web 1 Sets the type of remote connect method. rcon.web 1 is suggested.
-logfile <name> All console output goes into this file. using date/time in the filename is suggested.

 


 

클라이언트 접속

  • 게임 클라이언트를 실행하여 'F1' 키를 눌러 콘솔창을 띄운다 
  • 아래 명령어를 사용하여 접속 시도 
connect <공인IP>:28015

## 예 ##
connect 192.168.0.100:28015

 

 

 

반응형
반응형

==== [ 원본 영상 ] ====

 

스크린 세션 생성하기

  • screen 을 칠때마다 새로운 스크린 세션이 생성 됩니다.
screen

 

스크린 세션을 백그라운드로 돌려 놓으면서 빠져나가기 

  • Ctrl 키는 누르면서 a와d 키는 한번씩 누릅니다.
ctrl + a + d

 

생성된 스크린 세션 리스트 확인하기

screen -ls

 

반응형

 

스크린 세션 재접속 

screen -r {세션번호}

 

스크린을 백그라운드가 아닌, 종료(Termination)하면서 빠져나가기

  • screen으로 재접속 이후 ctrl + a + d 가 아닌, exit를 눌러 빠져나갑니다. 
screen -r {세션번호}
exit
반응형

+ Recent posts