반응형

 

 

 

 

 

 

 

 

V Rising Dedicated Server 자주 하는 질문 모음

 

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

유튜브 채널을 운영하면서 많은 구독자님들의
다양한 질문을 받고,
답변해드리고 있습니다. 

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

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

Ver. 2024-05-28

 


Q : 서버 구축과 관련한 여러 유용한 웹사이트를 알려주세요

공식 사이트 
기술 참고 사이트 (비공식) 
브이라이징 다른 구축시리즈, 테크팀 유튜브 영상

 


Q : 서버 운영을 위한 시스템 요구사항이 어떻게 되나요 ?

요구 항목 요구 스펙
CPU 최소 2Core, 최대 4Core
메모리 최소 4GB, 최대 16GB
디스크 용량 50GB 권고 

 


Q : 테크팀채널의 '브이라이징' 사설서버  강의 영상은 어떤 것들이 있었나요 ?

 


Q : 브이라이징 게임의 사설서버 구축 방법에는 어떤 것들이 있나요 ?

방법 설명
WindowsOS + SteamClient 제일 쉽지만 반드시 SteamID가 로그인 되어 있어야 함
WindowsOS + SteamCMD 조금 어렵지만 SteamID 로그인 필요 없음
LinuxOS + Docker Docker를 이용하여 리눅스+클라우드 구축 가능
시놀로지 NAS + Docker 구축 가정의 NAS장비 + 도커를 이용한 구축
테크팀 채널에서 제공하는 호스팅 서비스 테크팀 관리 서비스 (유료)

 


Q : 브이라이징 게임은 어떤 엔진으로 만들어 졌나요 ?

  • UNITY 엔진을 이용하여 개발 되었습니다.
  • UNITY 엔진을 이용한 게임의 경우 리눅스 서버 구축을 공식적으로 지원하지 않습니다. 
  • Wine + Linux + Docker 기술을 활용하면 리눅스에서도 서버 구축이 가능합니다. 

 


Q : V-Rising 사설 서버 구동기는 어떤 OS를 지원하나요 ?

  • 공식적으로 윈도우OS만 지원합니다.
  • 리눅스를 공식지원하지 않지만 3rd Party 프로그램과 Docker(도커)를 통해 구축이 가능합니다. 

 


Q : 하나의 사설서버에,  최대 몇명까지 동시 접속 가능한가요 ? 

  • 정식 출시 v1.0 기준, 최대 128 명입니다. 

 


Q : 도커란 무엇있고 왜 사용하는 것인가요 ? 

  • 리눅스에 브이라이징 서버를 구축하기 위해서는 별도의 에뮬레이팅 프로그램과 기타 복잡한 설정이 필요합니다.
  • 이러한 설치 과정을 누구나 쉽게 할 수 있도록 패키징화하여 이미지 형태로 제공하는 것을 컨테이너(도커)라고 부릅니다.
  • 컨테이너(도커)를 이용하여 누구나 쉽게 패키징된 프로그램을 이용하여 프로그램을 설치, 관리할 수 있습니다.
  • 컨테이너(도커)와 관련된 이해는 유튜버 얄팍한 코딩님의 동영상을 추천합니다.
  • https://youtu.be/tPjpcsgxgWc?si=P3kBnAoc55dQHy-x
위 채널과, 테크팀 채널과는 아무런 이해관계가 없음을 밝힙니다

 


Q : 서버 구축과 관련하여, 테크팀 채널에서 가이드 다른  FAQ가 있나요 ?

 


Q : 개방해야 하는 방화벽, 포트포워딩 포트번호는 어떻게 되나요 ?

  • UDP : 9876, 9877

 


Q : 브이라이징 사설서버의 SteamApp ID는 어떻게 되나요 ? 

  • APP ID : 1829350
  • Dedicated Server SteamDB 사이트 : 링크이동

 


Q : IPTime 외 다른 공유기를 사용중인데 포트포워딩 방법을 알려주세요 

 


Q : 방화벽 개방 명령어를 알려주세요

윈도우 OS 방화벽 개방 (파워쉘:관리자권한)
New-NetFirewallRule -DisplayName "Vrising" -Direction Inbound -LocalPort 9876,9877 -Protocol UDP -Action Allow

 

Linux OS 방화벽 개방 (일반환경:Ubuntu)
# 방화벽 개방 명령어
sudo iptables -I INPUT -p udp --dport 9876 -j ACCEPT
sudo iptables -I INPUT -p udp --dport 9877 -j ACCEPT


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


# 만약 netfilter 명령어가 없다고 에러날 경우, 명령어 설치
sudo apt install iptables-persistent -y

 

Linux OS 방화벽 개방 (구글클라우드:Ubuntu)
# 방화벽 개방 명령어
sudo iptables -I INPUT -p udp --dport 9876 -j ACCEPT
sudo iptables -I INPUT -p udp --dport 9877 -j ACCEPT


# GCP 방화벽 설정은 VM을 리부팅하면 모두 초기화 됩니다.
# 반드시 VM 리부팅 후에는 위 2줄의 명령어를 다시 수행해주세요 
# Root 권한으로 영구 저장하는 방법이 있으나, 난이도가 올라가므로 본 가이드에서는 생략 합니다.

 


Q : 실행 (RunServer.bat) 파일에서 사용할 수 있는 옵션에는 어떤 것들이 더 있나요 ? 

실행 옵션 사용예시 설명
-saveName "world1" 월드 디렉토리의 이름
-serverName "My V Rising Server" 출력될 서버의 이름
-persistentDataPath ".\save-data" Save 파일 및 환경설정 파일 저장 위치
-maxConnectedUsers 10 최대 접속 가능 인원
-maxConnectedAdmins 4 최대 접속 가능 관리자 인원
-address "127.0.0.1" 바인딩할 서버 IP
-gamePort 9876 게임 데이터 트래픽 전송 포트
-queryPort 9877 서버가 리스팅을 위해 사용되는 쿼리포트

 


Q : 내 서버에 관리자를 지정할 수 있는 방법은 어떻게 되나요 ? 

adminlist.txt 파일에 관리자로 지정하고 싶은 사용자의 Steam64 ID를 넣습니다. 
  • adminlist.txt 파일의 예 
76561197960287930
76561198026449175
adminlist.txt 파일의 위치 
  • 윈도우 - SteamClient
{로컬파일위치}\save-data\Settings
  • 윈도우 - SteamCMD
{서버디렉토리}\steamapps\common\VRisingDedicatedServer\save-data\Settings
  • 리눅스 - 도커
/path/on/host/persistentdata/Settings/
  • 시놀로지나스 - 도커 

도커환경의 설정파일 위치




Q : Ban 플레이어는 어떻게 지정하나요 ? 

banlist.txt 파일에 Steam64ID를 넣습니다. 
  • banlist.txt 파일의 예 
76561197960287920
76561198026440594
banlist.txt 파일의 위치
  • 윈도우 - SteamClient
{로컬파일위치}\save-data\Settings
  • 윈도우 - SteamCMD
{서버디렉토리}\steamapps\common\VRisingDedicatedServer\save-data\Settings
  • 리눅스 - 도커
/path/on/host/persistentdata/Settings
  • 시놀로지나스 - 도커

도커환경의 설정파일 위치

 


Q : 자신의 Steam64 ID는 어떻게 확인하나요 ? 

 


Q : 게임 서버 환경설정은 어떤게 있나요  ? 

  • 브이라이징에서 게임환경 설정을 관리하는 파일은 아래 2가지 입니다.
파일이름 파일의 목적
ServerGameSettings.json 게임 플레이와 관련된 상세 내용 정의
(예 : PvP설정, 게임난이도, 하루의 길이 등..)
ServerHostSettings.json 게임 서버 구동과 관련된 상세 내용 정의
(예 : ServerFPS, 월드이름, 패스워드 등..)

 


Q : 위에 소개한 JSON 파일들의 위치는 어떻게 되나요 ?

  • 윈도우 - SteamClient
{로컬파일위치}\save-data\Settings
  • 윈도우 - SteamCMD
{서버디렉토리}\steamapps\common\VRisingDedicatedServer\save-data\Settings
  • 리눅스 - 도커
/path/on/host/persistentdata/Settings/
  • 시놀로지나스 - 도커 

도커 환경에서 환경설정 파일 위치

 


Q : 환경 설정파일의 상세 변수 값과 관련한 공식 자료가 있나요 ?

 


Q : 'ServerHostSettings.json' 파일의 상세 파라미터를 알려주세요 

항목 사용의 예 설명
Name "TechTimServer" 서버의 이름을 정의 함
Description "Welcome" 서버 리스트에서 표시될 간단한 서버 설명
Port 27015 게임 데이터 전송용 UDP 포트
QueryPort 27016 스팀서버 리스트에 표시될 쿼리 정보 전송
Address 10.20.0.3 서버에 특정 IP 할당
HideIPAddress true, false EOS에서 서버 IP를 보여줄지 정함 
*EOS : Epic Online Service
MaxConnectedUsers 40 서버에 접속할 수 있는 최대 플레이어
*최대값 128
MaxConnectedAdmins 4 최대 접속 가능한 어드민 플레이어 
*서버가 꽉차도 접속 가능함
ServerFps 30 목표로 하는 서버 FPS 수치
*FPS : Frame Per Second
LowerFPSWhenEmpty true, false 사용자가 없을 때, 낮은 FPS 수치 사용 여부
LowerFPSWhenEmptyValue 10 위 값을 true 했을때, 목표하는 FPS 수치
Password MyPassword 서버 접속 패스워드 
Secure true, false VAC 보호기능을 사용할지 여부 
*VAC : Valve Anti-Cheat 
*Steam에서 밴당한 사용자는 내 서버도 접속 불가됨
ListOnEOS true, false 내 서버를 EOS 리스트에 출력할지 여부
ListOnSteam true, false 내 서버를 스팀 리스트에 출력할지 여부
GameSettingsPreset StandardPvP 개발사에서 사전 정의한 설정 프리셋 사용
*게임환경설정을 쉽게 할 수 있도록 개발사에서 미리 정의 해놓음
*아래 폴더에서 프리셋 JSON 파일을 확인할 수 있음
VRisingServer_Data/StreamingAssets/GameSettingPresets
GameDifficultyPreset Difficulty_Normal 개발사에서 사전 정의한 설정 프리셋 사용
* 아래 폴더에서 프리셋 JSON 파일을 확인할 수 있음
VRisingServer_Data/StreamingAssets/GameDifficultyPresets
SaveName MyOpenWorld 게임내 월드이름과, 저장될 폴더의 이름
AutoSaveCount 20 자동저장 파일의 최대 보관 수량 
AutoSaveInterval 120 자동저장 시간 (초)
AutoSaveSmartKeep - -
LanMode true, false LAN 모드로 서버를 기동할지 여부
ResetDaysInterval 14 초기화 주기 
*0로 설정할 경우 기능을 Off 함
DayOfReset Monday 초기화 요일 지정

 


Q : 'ServerGameSettings.json' 파일의 상세 파라미터를 알려주세요 

  • 굵게 처리된 부분은 기본 값 입니다.
  • 항목이 너무 많은 관계로 작성 및 번역에 시간이 소요되고 있습니다. 
항목 사용 가능 값 설명

GameDifficulty 
[게임 난이도]
0 캐쥬얼
1 일반
2 잔인
GameModeType
[PVP, PVE설정]
PvP PK허용
PvE PK 비허용
CastleDamageMode
[성이 손상되는 시간 설정]
Always 건물이 계속해서 데미지 받음
Never 건물이 데미지 받지 않음
TimeRestricted 특정 시간에만 데미지 허용
SiegeWeaponHealth
[공성무기 체력]
VeryLow 500
Low 1000
Normal 1500
High 2000
VeryHigh 2500
PlayerDamageMode
[플레이어 to 플레이어 데미지 방식]
*PVE 설정에서는 작동하지 않음
Always 항상 다른 플레이어에게
데미지를 줄 수 있음
TimeRestricted 제한된 시간에만 데미지를 줄 수 있음
CastleHeartDamageMode
[적의 성심 데미지 모드 ]
CanBeDestroyedOnlyWhenDecaying 심장이 부패 했을 때만 파괴 가능
CanBeDestroyedByPlayers 플레이어 파괴 가능
CanBeSeizedOrDestroyedByPlayers '키'아이템을 통해 성심을 파괴/장악 가능
PvPProtectionMode
[처음 서버 접속 후, PVP 보호되는 시간]
Disabled 0
VeryShort 900
Short 1800
Medium 3600
Long 7200
DeathContainerPermission
[사망캐릭터 루팅 권한]
Anyone 누구나 루팅 가능
ClanMembers 사망자 본인 or 클랜캐릭터
OnlySelf 사망자 본인만
RelicSpawnType
[월드에 존재할 수 있는 영혼조각의 수]
Unique 서버내 타입별 1개만 존재
Plentiful 보스 학살처치마다 지속 생성
CanLootEnemyContainers
[적 플레이어 상자 약탈 가능여부]
true 허용
false 금지
BloodBoundEquipment
[사망시 아이템 드롭 여부]
true 드롭됨
false 드롭되지 않음
TeleportBoundItems
[아이템과 함께 텔레포팅 가능 여부]
true 아이템 비허용
false 아이템 허용
BatBoundItems
[특정 아이템으로 박쥐 변신 방지]
true 변신 허용
false 변신 금지
AllowGlobalChat
[글로벌 챗 활성화]
true 허용
false 금지
AllWaypointsUnlocked
[모든 게이트 활성화]
true 개방
false 비개방
FreeCastleRaid
[적 성심을 공격할때, 재료가 필요함]
true 재료 필요
false 재료 불필요
FreeCastleClaim
[성을 가지기 위한 자원필요]
true 자원 필요
false 자원 불필요
FreeCastleDestroy
[적 성심을 파괴하는데 재료가 필요]
true 자원 불필요
false 자원 필요
InactivityKillEnabled
[설정기간 후, 비활성화 캐릭터 죽임]
true 죽음
false 죽지 않음
InactivityKillTimeMin
[장비 레벨에 따른, 비활성 캐릭터
최소 죽음유예시간]
0 별도 시간 없음
99999999 원하는 만큼 설정 (초)
InactivityKillTimeMax
[장비 레벨에 따른, 비활성 캐릭터
최대 죽음유예시간]
0 별도 시간 없음
99999999 원하는 만큼 설정 (초)
InactivityKillSafeTimeAddition
[장비 레벨에 따른, 성(Castle)에서
비활성 캐릭터 추가 죽음유예시간]
0 별도 시간 없음
99999999 원하는 만큼 설정 (초)
InactivityKillTimerMaxItemLevel
[비활성 캐릭터 죽음 유예기간을
설정하는 장비 최대 레벨]
0 없음
99999999 원하는 만큼 설정 (레벨)
StartingProgressionLevel - -
DisableDisconnectedDeadEnabled
[연결 끊긴 사용자의 사망 설정]
true 사망함
false 사망하지 않음
DisableDisconnectedDeadTimer
[연결이 끊긴 사용자의 사망 타이머]
60 원하는 만큼 설정 (초)
DisconnectedSunImmunityTime - -
InventoryStacksModifier
[아이템을 하나로 합치는 스택의 크기]
1.0 0.25(최소) ~ 5(최대)
DropTableModifier_General
[체스트 및 적 처리를 통해 얻는 드랍률]
1.0 0.25(최소) ~ 5(최대)
DropTableModifier_Missions
[퀘스트 보상 드랍률]
1.0 0.25(최소) ~ 5(최대)
MaterialYieldModifier_Global
[채집을 통해 얻는 드랍률]
1.0 0.25(최소) ~ 5(최대)
BloodEssenceYieldModifier
[적 처치 후 얻는 피의 양]
1.0 0.25(최소) ~ 5(최대)
JournalVBloodSourceUnitMaxDistance
[추적거리]
25  
PvPVampireRespawnModifier
[PVP사망시 부활 시간]
1.0 0(최소) ~ 5(최대)
CastleMinimumDistanceInFloors
[성심, 층간 유지되어야 하는 타일의 수(거리)]
2 1(최소) ~ 10(최대)
ClanSize
[단일 클랜에 가입되는 최대 인원]
4 1(최소) ~ 10(최대)
BloodDrainModifier
[플레이어가 지속 소모하는 피의 양]
1.0 0(최소) ~ 5(최대)
*숫자가 클수록 많이 소비함
DurabilityDrainModifier
[데미지로 잃게되는 내구도 크기]
1.0 0(최소) ~ 5(최대)
GarlicAreaStrengthModifier
[마늘에 대한 디버프 강도]
1.0 0(최소) ~ 5(최대)
*숫자가 높을 수록 강하게 디버프됨
HolyAreaStrengthModifier
[신성과 관련한 디버프 강도]
1.0 0(최소) ~ 5(최대)
*숫자가 높을 수록 강하게 디버프됨
SilverStrengthModifier
[은에 대한 디버프 강도]
1.0 0(최소) ~ 5(최대)
*숫자가 높을 수록 강하게 디버프됨
SunDamageModifier
[대양에 대한 디버프 강도]
1.0 0(최소) ~ 5(최대)
*숫자가 높을 수록 강하게 디버프됨
CastleDecayRateModifier
[피가 없을 경우, 성이 파괴되는 속도]
1.0 0(최소) ~ 5(최대)
*숫자가 높을 수록 강하게 디버프됨
CastleBloodEssenceDrainModifier
[성이 소비하는 피의 양]
1.0 0(최소) ~ 5(최대)
*숫자가 높을 수록 강하게 디버프됨
CastleSiegeTimer
[플레이어가 성을 포위 할 수 있는 시간]
420 0(최소) ~ 1800(최대)
CastleUnderAttackTimer
[성이 공격받을 수 있는 최대 시간]
60 0(최소) ~ 180(최대)
CastleRaidTimer
[성의 레이드 시간]
600 정보없음
CastleRaidProtectionTime
[성 레이드 보호 시간]
1800 정보없음
CastleExposedFreeClaimTimer
[정보 없음]
정보 없음 정보 없음
CastleRelocationCooldown
[성 이전 쿨타임]
600 정보 없음
CastleRelocationEnabled
[성 이전 가능 여부]
true 이전 가능
false 이전 불가
AnnounceSiegeWeaponSpawn
[공성무기 배치시 서버에 알림]
true 알림
false 알리지 않음
ShowSiegeWeaponMapIcon
[공성무기를 지도에 아이콘 표시함]
true 표시함
false 표시하지 않음
BuildCostModifier
[건축 비용]
1.0 0(최소) ~ 10(최대)
*숫자가 높을 수록 비싸집니다
RecipeCostModifier
[제작 비용]
1.0 0(최소) ~ 10(최대)
*숫자가 높을 수록 비싸집니다
CraftRateModifier
[제작 속도]
1.0 0.1(최소) ~ 10(최대)
*숫자가 높을 수록 빨라집니다
ResearchCostModifier
[연구 비용]
1.0 0.1(최소) ~ 10(최대)
*숫자가 높을 수록 비싸집니다
RefinementCostModifier
[정제/제련 비용]
1.0 0.1(최소) ~ 10(최대)
*숫자가 높을 수록 비싸집니다
RefinementRateModifier
[정제/제련 속도]
1.0 0.1(최소) ~ 10(최대)
*숫자가 높을 수록 빨라집니다
ResearchTimeModifier
[연구 속도]
1.0 0.1(최소) ~ 10(최대)
*숫자가 높을 수록 빨라집니다
DismantleResourceModifier
[건물 해체시 회수되는 자원]
0.75 0(최소) ~ 1(최대)
ServantConvertRateModifier
[인간이 하수인이 되는 시간]
1.0 0.1(최소) ~ 20(최대)
RepairCostModifier
[건물 수리비]
1.0 0(최소) ~ 10(최대)
Death_DurabilityFactorLoss
[사망시 내구도 패널티]
0.25 0(최소) ~ 1.0(최대)
*숫자가 높을 수록 내구도 손실이 큼
Death_DurabilityLossFactorAsResources
[사망시 받은 내구도가 재료로 드롭됨]
1.0 0(최소) ~ 1.0(최대)
*숫자가 높을수록 많이 드롭됨
StarterEquipmentId
[시작시 지급되는 장비 ID]
(예)
-376135143
-376135143 (레벨 30 상자)
StarterResourcesId
[시작시 재료 ID]
(예)
-696202180
-696202180 (레벨 30 상자)
VBloodUnitSettings
[vBlood 유닛 항목 설정]
"VBloodUnitSettings": [
      {
        "UnitId": -1905691330,
        "UnitLevel": 16, 
        "DefaultUnlocked": false
      }
]
UnitID : 유닛 ID
UnitLevel : 1(최소) ~ 100(최대)
DefaultUnlocked : 잠금여부(true/false)
[링크참조]
UnlockedAchievements
[달성과제/업적 해지]
"UnlockedAchievements": [
    -1770927128,
    436375429,
    -1400391027,
    -2071097880
  ],
해지를 원하는 업적의 Value 값을
넣으면 해지됨 
[링크참조]
UnlockedResearchs "UnlockedAchievements": [
     495424062,
     -1292809886,
     -1262194203
],
495424062 : 티어1 연구
-1292809886 : 티어2 연구
-1262194203 : 티어3 연구
GameTimeModifiers
DayDurationInSeconds
[하루의 길이]
1080 60(최소) ~ 86400(최대) / 초
DayStartHour
[해뜨는 시간]
9 0 ~ 25
DayStartMinute
[해뜨는 분]
0 0 ~ 60
DayEndHour
[해 지는 시간]
17 0 ~ 25
DayEndMinute 0 0 ~ 60
BloodMoonFrequency_Min
[블러드문 발생 확률 최소 값]
10 1(최소) ~ 255(최대)
BloodMoonFrequency_Max
[블러드문 발생 확률 최대 값]
18 1(최소) ~ 255(최대)
BloodMoonBuff
[블러드문 동안 얻게되는 추가 스피드]
0.2 0.1(최소) ~ 1(최대)
VampireStatModifier [벰파이어에 대한 설정]
MaxHealthModifier
[뱀파이어 최대 체력]
1.0 0.1(최소) ~ 5(최대)
PhysicalPowerModifier
[멀티 플레이어 물리력]
1.0 0.1(최소) ~ 5(최대)
SpellPowerModifier
[멀티 플레이어 마법력]
1.0 0.1(최소) ~ 5(최대)
ResourcePowerModifier
[리소스 오브젝트에 대한 데미지]
1.0 0.1(최소) ~ 5(최대)
SiegePowerModifier
[공성무기 데미지]
1.0 0.1(최소) ~ 5(최대)
DamageReceivedModifier
[벰파이어가 받는 데미지]
1.0 0.1(최소) ~ 5(최대)
ReviveCancelDelay
[부활 취소 딜레이]
5.0 최소, 최대값 없음 
(변경하지 않는 것을 권고함)
UnitStatModifiers_Global [일반 유닛에 대한 설정]
MaxHealthModifier
[일반 유닛 체력]
1.0 0.1(최소) ~ 5(최대)
PowerModifier
[일반 유닛 물리력]
1.0 0.1(최소) ~ 5(최대)
LevelIncrease
[일반 유닛 레벨 증가]
1.0 0.1(최소) ~ 5(최대)
UnitStatModifiers_VBlood [보스에 대한 설정]
MaxHealthModifier
[보스의 최대 체력]
1.0 0.1(최소) ~ 5(최대)
PowerModifier
[보스의 물리력]
1.0 0.1(최소) ~ 5(최대)
LevelIncrease
[보스의 레벨 증가]
1.0 0.1(최소) ~ 5(최대)
EquipmentStatModifiers_Global [장비에 관한 설정]
MaxHealthModifier
[장비 최대 체력]
1.0 0.1(최소) ~ 5(최대)
ResourceYieldModifier
[리소스 자원 수율]
1.0 0.1(최소) ~ 5(최대)
PhysicalPowerModifier
[장비 물리력]
1.0 0.1(최소) ~ 5(최대)
SpellPowerModifier
[장비 마법력]
1.0 0.1(최소) ~ 5(최대)
SiegePowerModifier
[공성 병기의 물리력]
1.0 0.1(최소) ~ 5(최대)
MovementSpeedModifier
[장비 이동 속도]
1.0 0.1(최소) ~ 5(최대)
CastleStatModifiers_Global [소유할 수 있는 성/무덤/해충 둥지 설정]
TickPeriod
[보유산 성이, 얼마나 자주 부식될지 주기]
5 최소, 최대값 없음 
SafetyBoxLimit
[하나의 성에 존재할 수 있는 안전박스 수량]
1 0(최소) ~ 20(최대)
EyeStructuresLimit (자료없음) (자료없음)
TombLimit
[하나의 성에 존재할 수 있는 무덤 수량]
12 1(최소) ~ 20(최대)
VerminNestLimit
[하나의 성에 존재할 수 있는 해충둥지 수량]
4 1(최소) ~ 20(최대)
PrisonCellLimit
[감옥 수량]
16 (자료 없음)
HeartLimits-Level1-FloorLimit
[성심레벨1-영토 타일 제한]
50 9(최소) ~ 250(최대)
HeartLimits-Level1-ServantLimit
[성심레벨1-서번트 제한]
4 1(최소) ~ 20(최대)
HeartLimits-Level1-BuildLimits
[성심레벨1-건축물간 거리 제한]
2 (자료 없음)
HeartLimits-Level1-HeightLimit
[성심레벨1-건축 높이 제한]
3 (자료 없음)
HeartLimits-Level2-FloorLimit
[성심레벨2-영토 타일 제한]
140 9(최소) ~ 250(최대)
HeartLimits-Level2-ServantLimit
[성심레벨2-서번트 제한]
5 1(최소) ~ 20(최대)
HeartLimits-Level2-BuildLimits
[성심레벨2-건축물간 거리 제한]
2 (자료 없음)
HeartLimits-Level2-HeightLimit
[성심레벨2-건축 높이 제한]
3 (자료 없음)
HeartLimits-Level3-FloorLimit
[성심레벨3-영토 타일 제한]
240 9(최소) ~ 250(최대)
HeartLimits-Level3-ServantLimit
[성심레벨3-서번트 제한]
6 1(최소) ~ 20(최대)
HeartLimits-Level3-BuildLimits
[성심레벨3-건축물간 거리 제한]
2 (자료 없음)
HeartLimits-Level3-HeightLimit
[성심레벨3-건축 높이 제한]
3 (자료 없음)
HeartLimits-Level4-FloorLimit
[성심레벨4-영토 타일 제한]
360 9(최소) ~ 250(최대)
HeartLimits-Level4-ServantLimit
[성심레벨4-서번트 제한]
7 1(최소) ~ 20(최대)
HeartLimits-Level4-BuildLimits
[성심레벨4-건축물간 거리 제한]
2 (자료 없음)
HeartLimits-Level4-HeightLimit
[성심레벨4-건축 높이 제한]
3 (자료 없음)
HeartLimits-Level5-FloorLimit
성심레벨5-영토 타일 제한
550 9(최소) ~ 250(최대)
HeartLimits-Level5-ServantLimit
[성심레벨5-서번트 제한]
8 1(최소) ~ 20(최대)
HeartLimits-Level5-BuildLimits
[성심레벨5-건축물간 거리 제한]
2 (자료 없음)
HeartLimits-Level5-HeightLimit
[성심레벨5-건축 높이 제한]
3 (자료 없음)
CastleLimit
[성심의 갯수]
2 1(최소) ~ 5(최대)
NetherGateLimit
[지옥문 제한]
4 (자료 없음)
ThroneOfDarknessLimit
[어둠의 앙좌 제한]
1 (자료 없음)
PlayerInteractionSettings
TimeZone    
VSPlayerWeekdayTime-StartHour    
VSPlayerWeekdayTime-StartMinute    
VSPlayerWeekdayTime-EndHour    
VSPlayerWeekdayTime-EndMinute    
VSPlayerWeekendTime-StartHour    
VSPlayerWeekendTime-StartMinute    
VSPlayerWeekendTime-EndHour    
VSPlayerWeekendTime-EndMinute    
VSCastleWeekdayTime-StartHour    
VSCastleWeekdayTime-StartMinute    
VSCastleWeekdayTime-EndHour    
VSCastleWeekdayTime-EndMinute    
VSCastleWeekendTime-StartHour    
VSCastleWeekendTime-StartMinute    
VSCastleWeekendTime-EndHour    
VSCastleWeekendTime-EndMinute    
TraderModifiers
StockModifier    
PriceModifier    
RestockTimerModifier    
WarEventGameSettings
Interval    
MajorDuration    
MinorDuration    
WeekdayTime-StartHour    
WeekdayTime-StartMinute    
WeekdayTime-EndHour    
WeekdayTime-EndMinute    
WeekendTime-StartHour    
WeekendTime-StartMinute    
WeekendTime-EndHour    
WeekendTime-EndMinute    
ScalingPlayers1-PointsModifier    
ScalingPlayers1-DropModifier    
ScalingPlayers2-PointsModifier    
ScalingPlayers2-DropModifier    
ScalingPlayers3-PointsModifier    
ScalingPlayers3-DropModifier    
ScalingPlayers4-PointsModifier    
ScalingPlayers4-DropModifier    

 


Q : 서버 세이브 파일의 위치는 어떻게 되나요 ? 

  • 윈도우-싱글게임
%USERPROFILE%\AppData\LocalLow\Stunlock Studios\VRisingServer\Saves
  • 윈도우 - SteamClient
{서버설치위치}\save-data\Saves\v3
  • 윈도우 - SteamCMD
{서버설치위치}\save-data\Saves\v3
  • 리눅스 - 도커
/path/on/host/persistentdata/Saves/v3/
  • 시놀로지나스 - 도커 
docker/vrising/persistentdata/Saves/v3/




Q : SteamCMD를 이용하여 설치하면 아래와 같은 에러메시지가 발생됩니다.

에러 메시지 내용
ILocalize::AddFile() failed to load file "public/steambootstrapper_english.txt".
ILocalize::AddFile() failed to load file "public/steambootstrapper_koreana.txt".
[  0%] !!! Fatal Error: %appname% cannot run from a folder path with non-ASCII characters on this version of Windows. Please re-install %appname% to the default folder, or install on Windows 7 or later.
src\steamexe\main.cpp (966) : Unable to access Steam files due to incompatible path

에러메시지 스크린 샷

원인 및 해결 방법
  • SteamCMD 디렉토리나, 중간 경로에 한글이 있습니다. 한글을 영문으로 바꾸세요 (예 : '새폴더', '뻐꾸기)
  • 가급적이면 C:\ , D:\ 에 영문으로 이뤄진 폴더를 만들어 설치를 진행하세요 

 


Q : 브이라이징 서버에 패치가 있었습니다. 내 서버에 어떻게 적용 하나요 ?

윈도우 서버
  • 동작중인 서버를 종료하고, RunServer.bat 파일을 기동하면 자동 업데이트 됩니다. 
리눅스 서버
  • 도커를 내렸다가, 다시 기동하면 자동 업데이트 됩니다. 
시놀로지 나스
  • 도커를 내렸다가, 다시 기동하면 자동 업데이트 됩니다. 

 


Q :  도커는 어떻게 다시 시작 하나요 ?

서버 기동 (리눅스)
  • 도커 프로세스 확인 
sudo docker ps -a

컨테이너 ID 확인

  • 도커(서버) 기동
sudo docker start {컨테이너ID}

서버 기동 (백그라운드로 동작중)

 


Q : V Rising 서버는 RCON을 지원하나요 ? 

  • 네, 공식 지원 합니다. 
  • ServerHostSettings.json 파일에 RCON 부분을 아래와 같이 Enable 하여 사용할 수 있습니다.
"Rcon": {
  "Enabled": true,
  "Password": "somepassword",
  "Port": 25575
}

 


Q :  RCON에 관련한 정보를 공유 해주세요 

  • RCON Port  : 25575(TCP)
  • RCON Tool : rclon-cli 
  • 사용 가능한 RCON 명령어
명령어 파라미터 상세설명
help    
announce <메시지> 서버에 연결된 모든 사용자에게 메시지 전송함
announcerestart <number> 서버 리부팅을 알리는 메시지를 x분 후에 
서버에 접속한 모든 사용자에게 알림
shutdown <message times> 
<message>
정해진 스케쥴에 서버를 종료함
cancelshutdown [message] 메시지와 함께, 서버 종료 취소
name <name> 서버 이름 변경
description <description> 서버 설명 변경
password [password] | --clear 패스워드를 지정하거나, 없앰
version   서버 버전 보기
time   서버 시간 보기

 


Q : 시스템 구성에 문제가 없는데 제 서버에 접속이 되지 않습니다.

  • 사용하시는 OS의 방화벽 개방 여부를 가장 먼저 확인하세요
  • 방화벽 설정이 정상이라면, 아주 높은 확율로 포트포워딩 이슈일 가능성이 높습니다.
  • 질문자 본인은 공유기가 하나라고 생각하지만 2중 공유기 운영일 가능성이 높습니다 
  • 근처 컴퓨터 수리점을 방문하시거나, 테크팀 공식 디스코드 채널로 오셔서 유료 원격 기술지원을 받으실 수도 있습니다.

 


Q : 리눅스(클라우드)에 구축한 서버에, 어떻게 파일을  업로드 / 다운로드 하나요 ?

 


Q : 구글 클라우드를 이용하여 게임을 잘하고 있다가 갑자기  프로세스가 종료 됩니다

  • 서버 스펙이 부족하여 서버가 꺼지는 경우가 많습니다. 특별히 메모리 이슈로 인한 꺼짐현상이 가장 많습니다.
  • 서버 스펙을 더 올리셔야 합니다. (아래 영상을 참조하여 스펙을 키우세요)
  • https://youtu.be/0QTA7qMoaic?si=TyixAUhZ1kIfk0b6

 


Q : 제 개인 컴퓨터를 끄면 서버도 꺼지나요 ??

  • 리눅스 + 클라우드를 이용하여 구축하셨다면, 개인PC를 뜬다고해도 서버는 24시간 동작합니다.
  • 여러분들의 PC위에 서버를 윈도우 형태로 구축하셨다면, PC를 끄게되면 당연히 서버도 꺼집니다.
  • 윈도우 서버 구축 영상 시리즈 기준, 지속적인 서비스를 위해서는 여러분들의 PC를 24시간 돌려야 합니다.
  • 전기료는 600W 파워 기준으로, 대략 산술적으로 계산했을때 5~12만원 사이정도 나옵니다. (누진세 별도)
  • 24시간 돌리고 싶다면 클라우드, 혹은 호스팅을 고려해보세요

 


Q: 구글 클라우드 SSH 접속 인증에 실패했다고 뜨면서 접속이 되지 않습니다.

  • 구글 클라우드가 가지고 있는 약간의 고질병(?) 입니다.
  • 모든 전자제품, 자동차제품에 모델마다 특유의 고질병이 있는 것처럼, 구글 또한 이런 부분이 존재 합니다.
  • 접속이 될때까지 재시도 하시거나, PC를 리부팅해서 캐쉬를 지우고 다시 시도해보세요
  • 또는 디스크 용량이 꽉찰경우 SSH 기능이 작동 되지 않을 수 있습니다.

인증 에러 화면의 예

 


Q : 제 서버가, 게임속 멀티메뉴에서 나타나지 않습니다. 

  • 'ServerHostSettings.json' 파일에서, 아래 항목의 값을 True로 변경합니다.
  "ListOnSteam": true,
  "ListOnEOS": true,

 

  • 윈도우 서버라면 RunServer.bat, ServerHostSettings.json에서 지정된 서버이름을 정확히 일치 시킵니다.
## RunServer.bat
 -serverName "MyServer" 


## ServerHostSetting.json
  "Name": "MyServer",
  • 리눅스(도커) 환경이라면 도커 명령와, ServerHostSettings.json에서 지정된 서버의 이름을 정확히 일치 시킵니다. 
## 도커환경
-e SERVERNAME="MyServer" \


## ServerHostSetting.json
  "Name": "MyServer",

설정이 잘 되면, 서버가 리스팅 됩니다.

 

반응형
반응형

VRising 사설 서버 구축하기

 

V-Rising이 2024년 5월 스팀 정식 출시 되었습니다.
Ver 1.0 이 출시됨에 따라 테크팀 채널에서 이를 
오라클 클라우드(유료) + 도커
기술을 사용하여 24시간 동작하는 
사설서버를 만드는 방법에 대해 가이드 합니다. 

바로 시작합니다 ~! 

 


시작하며

서문 

 


서버 구축 참고 자료들 

공식 사이트 
기술 참고 사이트 (비공식) 
테크팀 자료 
  • V Rising 서버 구축 자주하는 질문들 : 링크이동
브이라이징 다른 구축시리즈, 테크팀 유튜브 영상

 


서버 구축의 기본 정보 사항 

서버 요구사항 
요구 항목 요구 스펙
CPU 최소 2Core, 최대 4Core
메모리 최소 4GB, 최대 16GB
디스크 용량 50GB 권고 
방화벽 포트 UDP : 9876, 9877
SteamApp ID 1829350

 


사양에 따른 예측 견적 

  • 예측 견적 1 → 1 OCPU(=2vCPU), 16GB MEM, 50GB SSD, 1 공인IP

 

  • 예측 견적 2 → 1 OCPU(=2vCPU), 16GB MEM, 50GB SSD, 1 공인IP

 


Step 1 : OCI VCN, 방화벽, VM 생성

유튜브 공식 영상 참조

 


Step 2 : OS 작업

APT Update
sudo apt update

 

Linux 방화벽 개방 
  • 2개의 UDP 포트를 방화벽 개방함
  • VM을 리부팅 할 경우 방화벽 설정이 초기화 됩니다. (재부팅시, 다시 수행하세요)
sudo iptables -I INPUT -p udp --dport 9876 -j ACCEPT
sudo iptables -I INPUT -p udp --dport 9877 -j ACCEPT
  • 만약 iptables가 없다는 에러 메시지가 출력된다면 아래 명령어로 설치
sudo apt install iptables
  • 방화벽 저장
sudo netfilter-persistent save

 

Docker 설치 
  • 도커 설치
sudo apt install docker.io -y
  • 설치 확인
sudo docker version

 

컨테이너(도커) 이미지 Build
  • 컨테이너 생성 : 아래쪽 '서버이름'은 변경하여 사용하세요 
  • 윈도우-메모장을 이용하여 아래 내용을 복사 & 붙여넣기 하여, 수정 후 이용
sudo docker run -d --name='vrising' \
--net='bridge' \
--restart=unless-stopped \
-e TZ="Asia/Seoul" \
-e SERVERNAME="서버이름" \
-v '/path/on/host/server':'/mnt/vrising/server':'rw' \
-v '/path/on/host/persistentdata':'/mnt/vrising/persistentdata':'rw' \
-p 9876:9876/udp \
-p 9877:9877/udp \
'trueosiris/vrising'

도커를 이용한 서버 빌드업이 시작됨 : 3~5분 정도 소요됨

 

게임 엔진 기동 확인
  • 컨테이너(도커) 이미지 기동 상태 확인
sudo docker ps

도커 (서버) 기동 확인

 

게임 클라이언트 접속테스트

게임 실행 > 플레이
온라인 플레이 클릭
'모든 서버 표시' 클릭
'직접 연결' 클릭
자신의 GCP VM 공인 IP를 넣습니다.
연결 중
서버 접속 확인

 


특별한 설정 없이 바닐라(순정) 상태로
게임을 즐기실 분은
여기까지가 작업의 전부 입니다. 
아래쪽 부터는 환경 설정 및 심화 학습입니다. 

 


Step 3 : 환경 설정 

도커 (서버) 종료 → 환경 설정을 위해서는 동작중인 서버를 종료해야 합니다. 
  • 도커 프로세스 확인 : 자신의 Container ID를 확인 합니다. 
sudo docker ps

본 데모의 경우 '442bf28b3442' 인 것을 확인

  • 도커 프로세스 종료 
sudo docker stop {컨테이너ID}

프로세스 종료

  • 종료 되었는지 확인
sudo docker ps

동작중인 도커 프로세스가 없는 것을 확인

 

설정 파일의 위치와 종류
  • 파일의 위치는 아래와 같습니다. 
cd /path/on/host/persistentdata/Settings
  • json 형태의 설정 파일이 2개 존재 하며, 각각의 사용 목적은 다음과 같습니다. 
파일이름 파일의 목적
ServerGameSettings.json 게임 플레이와 관련된 상세 내용 정의
(예 : PvP설정, 게임난이도, 하루의 길이 등..)
ServerHostSettings.json 게임 서버 구동과 관련된 상세 내용 정의
(예 : ServerFPS, 월드이름, 패스워드 등..)

 

파일 편집 
  • NANO 편집기를 사용한 ServerGameSetting.json 파일을 수정 할 경우
sudo nano ServerGameSettings.json
  • nano 편집기를 사용한 ServerHostSettings.json 파일을 수정 할 경우
sudo nano ServerHostSettings.json
ctrl + x
y
엔터

 

서버 기동 
  • 도커 프로세스 확인 
sudo docker ps -a

컨테이너 ID 확인

  • 도커(서버) 기동
sudo docker start {컨테이너ID}

서버 기동 (백그라운드로 동작중)

 

만약 컨테이너가 잘 동작중인지
눈으로 로그를 추적하고 싶다면 ? 

 

  • 컨테이너 로그 추적
sudo docker logs -f {컨테이너ID}

실 시간으로 로그를 추적 할 수 있음

  • 로그 추적 종료
ctrl + c

 


이상 V Rising 서버 구축 가이드 였습니다. 
추가로 궁금하신 사항은 테크팀 공식 디스코드 채널로 방문해주세요 

 

테크팀's server Discord 서버에 가입하세요!

나만의 게임서버를 구축하고, 지인들과 함께 즐기기 위한 기술 가이드 | 멤버 2983명

discord.com

 

반응형
반응형

테크팀 V-Rising 사설서버 구축하기 : Synology NAS

 

시작하며

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

 

YouTube 구축 공식 영상 

유튜브 공식 영상을 먼저 시청하세요

 


서버 구축 참고 자료들 

공식 사이트 
기술 참고 사이트 (비공식) 
테크팀 자료 
  • V Rising 서버 구축 자주하는 질문들 : 링크이동
브이라이징 다른 구축시리즈, 테크팀 유튜브 영상

 


구축 시작 ~!


스탭 1 : 공유기 포트포워딩 

공유기 포트포워딩 메뉴로 진입 : 아래와 같이 포트포워딩함 

시놀로지IP 와 9876,9877을 포트포워딩 합니다.

 

"혹시 다른 공유기 브랜드를 사용하시나요 ?? "
"아래 영상 링크를 참조하세요"

 

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

 


스탭 2 : Synology NAS Container 기능 설치 

이미 설치 되어 있다면 스탭 2번은 건너뛰고, 스탭 3으로 이동
자신의 NAS 모델이 컨테이너(도커)를 지원하는지 확인 
 

Can I Run Docker on My Synology NAS?

Trustworthy expert guide to your Synology NAS.

mariushosting.com

 

컨테이너(도커) 설치 

패키지 센터 진입

  • 구형 모델은 '도커'로 검색해야 합니다.
  • 신형 모델은 '도커' 혹은 '컨테이너'로 검색해야 합니다. 

'도커' 혹은 '컨테이너'로 검색하여 나오는 패키지를 설치함
설치가 완료 되었다면 '열기'를 눌러 메뉴로 진입

 

도커 기능이 잘 설치 된 것을 확인할 수 있음

 


스탭 3 : 도커 설치를 위한 사전 FileStation 준비작업

디렉토리 생성
도커 설치 이후, 파일 스테이션에 접근하면 'docker'라는 폴더가 생긴 것을 볼 수 있음

파일 스테이션으로 들어갑니다 → 'docker' 폴더가 생성된 것을 확인
폴더 생성으로 들어갑니다.
'vrising' 폴더 생성
생성된 'vrising' 폴더 안에서 다시 '폴더 생성'을 클릭 합니다.
'server' 폴더 생성
'persistentdata' 생성

"파일스테이션" → 데이터 저장용 폴더, 최종 확인
  • docker : 도커 프로그램을 설치하면 자동으로 생성됨 
    • vrising : 게임을 위해 'vrising' 폴더를 만들었음 
      • persistentdata : 나중에 환경설정 파일을 저장하기 위한 폴더
      • server : 게임 엔진 프로그램이 설치될 데이터 

최종 디렉토리 구성 형태

 

사전 작업이 완료 되었습니다. 
본 구축으로 들어가겠습니다. 

 


스탭 4 : V Rising Docker Build Up

레지스트리 검색 
여러가지 도커 이미지가 시중에 있으며, 본 가이드에서는 "trueosiris/vrising" 를 사용합니다.

'trueosiris/vrising' 으로 검색함
검색된 레지스트리를 '다운로드' 합니다.
태그 항목을 'latest'로 맞추고 '선택'클릭
이미지가 다운로드 되는 것을 확인할 수 있음
이미지를 선택 후 '실행' 클릭
'Docker 호스트와 동일한 네트워크 사용' 체크 후 다음
컨테이너의 이름을 지정하고 → '고급 설정' 클릭
추가를 2번 눌러 'TZ', 'SERVERNAME' 환경 변수를 넣습니다 → '저장'

  • 추가한 환경 변수
환경변수 입력 값 비고
TZ Asia/Seoul Asia/Seoul 그대로 사용하세요
SERVERNAME TechTimServer 여러분의 서버이름으로 수정하여 사용하세요 

 

'고급설정'이 완료 되었으므로 '다음' 클릭
볼륨 작업을 위해 '폴더 추가' 클릭
먼저 'docker' → 'vrising' → 'server'를 선택함
폴더 추가 → 앞서 생성한 폴더 2개를 매핑 → '다음'

  • 맵핑되는 폴더는 아래와 같습니다.
파일/폴더
(FileStation에서 만들었던 폴더 선택)
마운트 경로
(수정하지 말고 그대로 복사 붙여넣기 하세요)
/docker/vrising/server /mnt/vrising/server
/docker/vrising/persistentdata /mnt/vrising/persistentdata

 

컨테이셔 설정 정보 마지막 확인
설치가 자동으로 진행되고 모니터링을 위해 '컨테이너' → 'vrising' 더블클릭
터미널에서 서버가 설치 되고 있는 것을 확인할 수 있음 : 대략 5분 소요됨

 

 


 

스탭 5 : 최종 연동 테스트

게임 실행 후 멀티메뉴로 접근

'플레이' 클릭

 

'온라인 플레이' 클릭
'모든 서버 표시' 클릭
'직접 연결'을 클릭
자신의 공인IP를 입력함

 

 

자신의 공인IP는 네이버에서
"내IP"로 검색하면 확인가능합니다. 

 

네이버에서 자신의 공인IP 검색
자신의 공인IP를 입력함
정상 접근 확인

 

"축하 드립니다. 
여기까지가 바닐라(순정) 구축의 전부 입니다. 
별도의 환경설정이 필요 없으신 분들은 
여기까지만 메뉴얼을 참조하시고 서버를 운영하시면 됩니다. 

이 후부터는 심화 과정으로써 
여러가지 환경설정을 변경하고 싶다면 이어서
강의를 보시면 됩니다. "


심화과정 : 환경설정 

컨테이너(서버) 종료 
환경설정을 위해서는 운영중인 서버를 종료 해야 합니다. 

컨테이너 선택 → 마우스 우클릭 → '작업' → '중지'
'Settings' 파일안에 환경설정과 관련된 4가지 파일이 있습니다.

파일 수정 및 적용 방법 

수정을 원하는 파일을 다운로드 → 편집기로 수정 후 → 다시 업로드 합니다.

 

파일의 종류와 목적
파일 이름 사용 목적
adminlist.txt 서버에서 관리자로 활동할 유저의 Steam64 ID를 입력한다 
banlist.txt 밴처리하여 서버 접근을 차단할 유저의 Steam64 ID를 입력한다
ServerGameSettings.json 게임 플레이와 관련한 상세한 파라미터 값을 설정한다 (예 : 데미지, 체력 등..)
ServerHostSettings.json 게임 서버의 IT 환경과 관련한 상세한 파리미터 값을 설정한다 (예: 서버이름, 포트번호 등..)

 

파일설정과 관련한 상세한 파라미터 참조 
  • 테크팀 V-Rising 자주하는 질문 포스팅을 참조하세요 : 링크이동

 


심화과정 : 세이브데이터 

세이브 데이터의 위치

파일 스테이션 → persistentdata → Saves → v3 → 자신의 월드로 이동하면 세이브 파일이 있습니다.

 

주기적으로 월드 파일을 백업 받거나, 
반대로 이미 가지고 있는 파일을 업로드하면 이어서 서버를 플레이 할 수 있습니다. 

 

"모든 심화 작업이 완료 되었다면
이제 서버를 올리시면 됩니다."

 

컨테이너 기동 

컨테이너 선택 → 마우스 우클릭 → '작업' → '시작점'
서버 동작중 ~!

 


이상 V Rising 서버 구축 가이드 였습니다. 
추가로 궁금하신 사항은 테크팀 공식 디스코드 채널로 방문해주세요 

 

테크팀's server Discord 서버에 가입하세요!

나만의 게임서버를 구축하고, 지인들과 함께 즐기기 위한 기술 가이드 | 멤버 2995명

discord.com

 

반응형
반응형

 

 

 

 

구글 무료티어를 사용한 브이라이징 사설 서버 구축 하기

 

V-Rising이 2024년 5월 스팀 정식 출시 되었습니다.
Ver 1.0 이 출시됨에 따라 테크팀 채널에서 이를 
Google Cloud 무료티어 + Ubuntu Linux + Docker 
기술을 사용하여 24시간 동작하는 
사설서버를 만드는 방법에 대해 가이드 합니다. 

바로 시작합니다 ~! 

 


시작하며

서문 

 


서버 구축 참고 자료들 

공식 사이트 
기술 참고 사이트 (비공식) 
테크팀 자료 
  • V Rising 서버 구축 자주하는 질문들 : 링크이동
브이라이징 다른 구축시리즈, 테크팀 유튜브 영상

 


서버 구축의 기본 정보 사항 

서버 요구사항 
요구 항목 요구 스펙
CPU 최소 2Core, 최대 4Core
메모리 최소 4GB, 최대 16GB
디스크 용량 50GB 권고 
방화벽 포트 UDP : 9876, 9877
SteamApp ID 1829350

 


구글 클라우드 작업

구글 클라우드 회원 가입
 

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

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

cloud.google.com

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

 


" 그럼 구축 시작! "


Step 1 : GCP 방화벽 개방 + VM 생성

영상을 참조하여 GCP 방화벽 개방 + VM 생성 진행

 


Step 2 : OS 작업

APT Update
sudo apt update

 

Linux 방화벽 개방 
  • 2개의 UDP 포트를 방화벽 개방함
  • VM을 리부팅 할 경우 방화벽 설정이 초기화 됩니다. (재부팅시, 다시 수행하세요)
sudo iptables -I INPUT -p udp --dport 9876 -j ACCEPT
sudo iptables -I INPUT -p udp --dport 9877 -j ACCEPT
  • 만약 iptables가 없다는 에러 메시지가 출력된다면 아래 명령어로 설치
sudo apt install iptables

 

Docker 설치 
  • 도커 설치
sudo apt install docker.io -y
  • 설치 확인
sudo docker version

 

컨테이너(도커) 이미지 Build
  • 컨테이너 생성 : 아래쪽 '서버이름'은 변경하여 사용하세요 
  • 윈도우-메모장을 이용하여 아래 내용을 복사 & 붙여넣기 하여, 수정 후 이용
sudo docker run -d --name='vrising' \
--net='bridge' \
--restart=unless-stopped \
-e TZ="Asia/Seoul" \
-e SERVERNAME="서버이름" \
-v '/path/on/host/server':'/mnt/vrising/server':'rw' \
-v '/path/on/host/persistentdata':'/mnt/vrising/persistentdata':'rw' \
-p 9876:9876/udp \
-p 9877:9877/udp \
'trueosiris/vrising'

도커를 이용한 서버 빌드업이 시작됨 : 3~5분 정도 소요됨

 

게임 엔진 기동 확인
  • 컨테이너(도커) 이미지 기동 상태 확인
sudo docker ps

도커 (서버) 기동 확인

 

게임 클라이언트 접속 테스트 

게임 실행 > 플레이
온라인 플레이 클릭
'모든 서버 표시' 클릭
'직접 연결' 클릭
자신의 GCP VM 공인 IP를 넣습니다.
연결 중
서버 접속 확인

 


특별한 설정 없이 바닐라(순정) 상태로
게임을 즐기실 분은
여기까지가 작업의 전부 입니다. 
아래쪽 부터는 환경 설정 및 심화 학습입니다. 

 


Step 3 : 환경 설정 

도커 (서버) 종료 → 환경 설정을 위해서는 동작중인 서버를 종료해야 합니다. 
  • 도커 프로세스 확인 : 자신의 Container ID를 확인 합니다. 
sudo docker ps

본 데모의 경우 '442bf28b3442' 인 것을 확인

  • 도커 프로세스 종료 
sudo docker stop {컨테이너ID}

프로세스 종료

  • 종료 되었는지 확인
sudo docker ps

동작중인 도커 프로세스가 없는 것을 확인

 

설정 파일의 위치와 종류
  • 파일의 위치는 아래와 같습니다. 
cd /path/on/host/persistentdata/Settings
  • json 형태의 설정 파일이 2개 존재 하며, 각각의 사용 목적은 다음과 같습니다. 
파일이름 파일의 목적
ServerGameSettings.json 게임 플레이와 관련된 상세 내용 정의
(예 : PvP설정, 게임난이도, 하루의 길이 등..)
ServerHostSettings.json 게임 서버 구동과 관련된 상세 내용 정의
(예 : ServerFPS, 월드이름, 패스워드 등..)

 

파일 편집 
  • NANO 편집기를 사용한 ServerGameSetting.json 파일을 수정 할 경우
sudo nano ServerGameSettings.json
  • nano 편집기를 사용한 ServerHostSettings.json 파일을 수정 할 경우
sudo nano ServerHostSettings.json
ctrl + x
y
엔터

 

서버 기동 
  • 도커 프로세스 확인 
sudo docker ps -a

컨테이너 ID 확인

  • 도커(서버) 기동
sudo docker start {컨테이너ID}

서버 기동 (백그라운드로 동작중)

만약 컨테이너가 잘 동작중인지
눈으로 로그를 추적하고 싶다면 ? 

sudo docker logs -f {컨테이너ID}

실 시간으로 로그를 추적 할 수 있음

  • 로그 추적 종료
ctrl + c

 


이상 V Rising 서버 구축 가이드 였습니다. 
추가로 궁금하신 사항은 테크팀 공식 디스코드 채널로 방문해주세요 

 

테크팀's server Discord 서버에 가입하세요!

나만의 게임서버를 구축하고, 지인들과 함께 즐기기 위한 기술 가이드 | 멤버 2998명

discord.com

 

 

 

 

 

 

 

 

 

 

 

반응형
반응형

 

 

 

시작하며

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

 

YouTube 구축 공식 영상

 


서버 구축 참고 자료들 

공식 사이트 
기술 참고 사이트 (비공식) 
테크팀 자료 
  • V Rising 서버 구축 자주하는 질문들 : 링크이동
브이라이징 다른 구축시리즈, 테크팀 유튜브 영상

본 가이드는 정식출시된 1.0 버전을 기준으로 작성 되었습니다.

구축 시작 ~! 


스탭 1 : 윈도우 방화벽 개방 

파워쉘을 '관리자' 권한으로 실행합니다. 

시작버튼을 우클릭 하여 파워쉘을'관리자' 권한으로 실행합니다.

 

아래) 파워쉘 명령어를 사용하여 방화벽 개방 
New-NetFirewallRule -DisplayName "Vrising" -Direction Inbound -LocalPort 9876,9877 -Protocol UDP -Action Allow

파워 쉘을 통한 방화벽 개방 장면

 


스탭2 : 공유기 포트포워딩 설정 

공유기 포트포워딩 메뉴로 진입 

공유기 포트포워딩 설정의 화면

 

"혹시 다른 공유기 브랜드를 사용하시나요 ?? "
"아래 영상 링크를 참조하세요"

 

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

 


본 작업에 들어가기전 안내!!!

윈도우에 V-Rising을 설치하는 방법에는 2가지가 있습니다.

1. SteamClient를 이용하는 방법 : 쉬운설치 + 스팀로그인 필요
2. SteamCMD를 이용하는 방법 (추천) : 조금더 어려운 설치 + 스팀로그인 불 필요 

두 가지 모두 소개시켜 드릴테니 자신이 좋아하하는 방법으로 진행하세요 


스탭3-1 : "SteamClient"를 이용한 서버 엔진 설치 

Dedicated Server 엔진 설치 

SteamClient > '라이브버리' > '게임', '도구' 모두 체크함
'v rising' 으로 검색하여 Dedicated Server 프로그램을 찾는다

 

엔진 설치

'설치'를 클릭하여 게임 엔진을 설치 합니다.
기본 값으로 그대로 두고 '설치' 클릭
설치 용량이 얼마 되지 않아 금방 설치 됨

 

서버 구동기 만들기 

서버 우클릭 > 관리 > '로컬 파일 탐색' 을 눌러 서버 설치 디렉토리로 접근합니다.
디렉토리 안에 존재하는 'start_server_example.bat' 파일을 복사 하고
붙여넣기 하여 복제본 생성함
'start_server_example - 복사본.bat' 이 생성됨
생성된 복사본을 우클릭 하여 > '이름 바꾸기' 를 진행합니다.
파일의 이름을 'RunServer.bat'로 변경했습니다.

 

구동기 편집

'RunServer.bat'파일을 우클릭 하여 > '편집'으로 들어 갑니다

 

스크립팅 구문 수정 
붉은색 부분을 자신의 스타일로 변경함 
@echo off
REM Copy this script to your own file and modify to your content. This file can be overwritten when updating.
set SteamAppId=1604030
echo "Starting V Rising Dedicated Server - PRESS CTRL-C to exit"

@echo on
VRisingServer.exe -persistentDataPath .\save-data -serverName "My V Rising Server" -saveName "world1" -logFile ".\logs\VRisingServer.log"

파일 수정의 예

 

이 상태에서 RunServer.bat 파일을 더블클릭하면
서버가 구동됩니다. (바닐라 : 순정상태)
더욱 상세한 옵션 조정을 원하시는 분은 아래 
'환경설정' 스탭도
참조하시길 바랍니다. 

 

스탭4 : 환경설정

설정 파일의 위치와 종류 
  • 설정 파일은 아래 위치에 존재하고 있습니다.  
{서버설치디렉토리}\VRisingServer_Data\StreamingAssets\Settings
  • 파일의 종류는 아래와 같습니다. 
파일이름 파일의 목적
ServerGameSettings.json 게임 플레이와 관련된 상세 내용 정의
(예 : PvP설정, 게임난이도, 하루의 길이 등..)
ServerHostSettings.json 게임 서버 구동과 관련된 상세 내용 정의
(예 : ServerFPS, 월드이름, 패스워드 등..)
  • 환경 설정의 상세 변수 값 설명은 : V Rising 자주하는 질문 포스팅을 참조하세요 (작성 중)

 

ServerHostSettings.json 파일에서 자신의 IP 서버명을 RunServer.bat와 동일하게 맞춰준다
ServerGameSettings.json 파일의 예

 

스탭5 : 서버 구동기 생성 및 서버 구동

서버 기동 

앞 스텝에서 만들었던 'RunServer.bat' 파일을 더블클릭하여 서버를 기동 합니다.
보안 경고가 나오면 '엑세스 허용'을 누릅니다.
위와 같이 출력되면 모든 서버 구동이 완료되었음

 

스탭6 : 최종 연동 테스트 

게임 실행 후 멀티메뉴로 접근

'플레이' 클릭
'온라인 플레이' 클릭
'모든 서버 표시' 클릭
'직접 연결'을 클릭
자신의 공인IP를 입력함

 

자신의 공인IP는 네이버에서
"내IP"로 검색하면 확인가능합니다. 

 

네이버에서 자신의 공인IP 검색
자신의 공인IP를 입력함
서버 연결중
정상 접근 확인

 


스탭 3-2 : "SteamCMD"를 이용한 서버 엔진 설치 

사설서버 게임엔진을 설치할 디렉토리 생성 : 원하는 아무곳 선정 
단, 패스 혹은 디렉토리 이름에 한글이 들어가면 안됨 

설치 폴더를 만들고 반드시 "영어"로 폴더 이름을 생성해야 합니다.

 

SteamCMD 다운로드 : 다운로드 사이트 이동

위 링크를 클릭하여 SteamCMD 다운로드

 

SteamCMD Zip 파일을 압축해지하여, 서버 엔진 폴더에 옮겨 놓음 

다운로드한 SteamCMD.zip 파일을 압축해지하여 나온 exe 파일을 서버 디렉토리에 옮김

 

텍스트 파일 2개 생성 

폴더 빈공간 마우스 우클릭 > 새로만들기 > 텍스트문서

 

위 작업을 반복하여, 새 텍스트를 2개를 만듭니다.

 

파일 이름 변경 
Install.bat, RunServer.bat 파일로 이름을 변경함 

2개의 텍스트 파일을 우클릭하여, 각각 Install.bat, RunServer.bat 이름으로 변경합니다.

 

2개의 파일 생성 완료

 

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

윈도우 환경설정에 따라, 확장자가 보이지 않을 수 있음
보기 > 파일확장명 체크를 하면, 파일의 모든 확장자를 볼 수 있습니다.

 

Install.bat 명령어 구문 삽입 
steamcmd.exe +login anonymous +app_update 1829350 +quit

Install.bat 파일을 우클릭 > '편집'으로 들어가서 아래 구문을 삽입
Install.bat 파일 스크립팅 구문 삽입

 

RunServer.bat 명령어 구문 삽입
붉은색 부분은 여러분의 환경으로 변형하여 사용하세요
# Server Update Check
steamcmd.exe +login anonymous +app_update 1829350 +quit

@echo off
REM Copy this script to your own file and modify to your content. This file can be overwritten when updating. set SteamAppId=1604030
echo "Starting V Rising Dedicated Server - PRESS CTRL-C to exit"

@echo on
cd .\steamapps\common\VRisingDedicatedServer
VRisingServer.exe -persistentDataPath .\save-data -serverName "My V Rising Server" -saveName "world1" -logFile ".\logs\VRisingServer.log"

RunServer.bat 파일을 우클릭 > '편집'으로 들어가서 아래 구문을 삽입
스크립팅 삽입

 

서버 엔진 설치 : Install.bat 파일을 더블 클릭하여 서버를 설치함 

Install.bat 파일을 더블클릭하면 서버가 설치됨
게임엔진 설치화면의 예
서버 설치 확인

 

이 상태에서 RunServer.bat 파일을 더블클릭하면
서버가 구동됩니다. (바닐라 : 순정상태)
더욱 상세한 옵션 조정을 원하시는 분은 아래 
'환경설정' 스탭도 
참조하시길 바랍니다. 

 

스탭4 : 환경설정

설정 파일의 위치와 종류 
  • 설정 파일은 아래 위치에 존재하고 있습니다.  
{서버설치디렉토리}\VRisingServer_Data\StreamingAssets\Settings
  • 파일의 종류는 아래와 같습니다. 
파일이름 파일의 목적
ServerGameSettings.json 게임 플레이와 관련된 상세 내용 정의
(예 : PvP설정, 게임난이도, 하루의 길이 등..)
ServerHostSettings.json 게임 서버 구동과 관련된 상세 내용 정의
(예 : ServerFPS, 월드이름, 패스워드 등..)
  • 환경 설정의 상세 변수 값 설명은 : V Rising 자주하는 질문 포스팅을 참조하세요 (작성 중)

 

ServerHostSettings.json 파일에서 자신의 IP 서버명을 RunServer.bat와 동일하게 맞춰준다
ServerGameSettings.json 파일의 예

 

스탭5 : 서버 구동기 생성 및 서버 구동

RunServer.bat 파일 구동

RunServer.bat 를 더블클릭하여 서버를 기동함
서버 기동 확인

 

스탭6 : 최종 연동 테스트 

게임 실행 후 멀티메뉴로 접근

'플레이' 클릭
'온라인 플레이' 클릭
'모든 서버 표시' 클릭
'직접 연결'을 클릭
자신의 공인IP를 입력함

 

자신의 공인IP는 네이버에서
"내IP"로 검색하면 확인가능합니다. 

 

네이버에서 자신의 공인IP 검색
자신의 공인IP를 입력함
서버 연결중
정상 접근 확인

 


이상 V Rising 서버 구축 가이드 였습니다. 
추가로 궁금하신 사항은 테크팀 공식 디스코드 채널로 방문해주세요 

 

테크팀's server Discord 서버에 가입하세요!

나만의 게임서버를 구축하고, 지인들과 함께 즐기기 위한 기술 가이드 | 멤버 3014명

discord.com

 

 

 

반응형

+ Recent posts