MORDHAU Guide

간단한 모드하우(Mordhau) 서버 구축(Linux) for MORDHAU

간단한 모드하우(Mordhau) 서버 구축(Linux)

Overview

간단하게 모드하우(Mordhau) 서버를 구축해봅시다.

SteamCMD 다운로드 및 서버 설치

※ 이 가이드는 Debian 및 CentOS 기준으로 작성되었습니다.
 Debian 계열 – Debian, Ubuntu, Linux Mint 등등
 RHEL 계열 – RHEL, CentOS, Scientific Linux 등등
 다른 계열의 리눅스에서는 그에 맞는 명령어로 의존성 패키지들을 설치하면 될것입니다.

1. SteamCMD를 설치하기에 앞서 SteamCMD에 대한 의존성 패키지 설치

 Debian 계열
  $ sudo apt-get install lib32gcc1

 RHEL 계열
  $ sudo yum install libstdc++.i686

2. 서버를 실행할 유저 등록

 $ sudo useradd -m steam

3. steam 유저로 로그인

 $ sudo su – steam

4. SteamCMD 파일 다운로드 & 압축 풀기
 ※ 주소 중간에 ㅁ 제거
 $ curl -sqL “[link] | tar zxvf –

5. 서버 설치 스크립트 파일 만들기

 $ touch mordhau_update

6. 스크립트 파일에 밑 내용 추가
 
 ※ vim에디터나 nano에디터 혹은 다른 편한 에디터로 열어도 됩니다.
 $ vi mordhau_update 또는 $ nano mordhau_update를 이용해서 내용 추가

@ShutdownOnFailedCommand 1 @NoPromptForPassword 1 force_install_dir ./mordhau app_update 629800 validate quit

7. SteamCMD 실행

 $ ./steamcmd.sh

8. 로그인

 Steam> login [스팀 아이디] [스팀 비밀번호] [스팀가드 5자리]

9. 서버 설치 스크립트 파일 실행 및 서버 설치

 Steam> runscript mordhau_update

10. SteamCMD 종료

 Steam> quit

11. steam 유저 로그아웃

 $ exit

12. 서버에 대한 의존성 패키지들 설치

 Debian 계열
  $ sudo apt-get install -y libfontconfig1 libpangocairo-1.0-0 libnss3 libgconf2-4 libxi6 libxcursor1 libxss1 libxcomposite1 libasound2 libxdamage1 libxtst6 libatk1.0-0 libxrandr2

 RHEL 계열
  $ sudo yum install -y pango.i686 fontconfig.i686 fontconfig-devel.i686 glibc.i686 libstdc++.i686 nss.i686 GConf2.i686 libXi.i686 libXcursor.i686 libXScrnSaver.i686 libXcomposite.i686 alsa-lib.i686 libXdamage.i686 libXtst.i686 atk.i686 libXrandr.i686

서버 설정

/home/steam/mordhau/Mordhau/Saved/Config/LinuxServer/Game.ini

[/script/mordhau.mordhaugamesession]
MaxSlots=[최대 플레이어 수]

ServerName=[서버 이름]
게임 내 서버 브라우저에 나타나는 서버 이름

ServerPassword=[서버 비밀번호]
설정하면 접속 시 비밀번호 입력해야됨. 비워두면 공개서버

AdminPassword=[어드민 비밀번호]
서버 내에서 이 비밀번호로 로그인 하면 어드민 권한을 가지게 됨

Admins=[STEAMID64 번호1]
Admins=[STEAMID64 번호2]
Admins=[STEAMID64 번호3]
예) Admins=76561198038680677

이곳에 등록된 유저들은 어드민 로그인 없이 자동 로그인 권한을 가짐

BannedPlayers=[STEAMID64 번호1]
BannedPlayers=[STEAMID64 번호2]
BannedPlayers=[STEAMID64 번호3]

이곳에 등록된 유저들은 서버 접속 불가능

[/script/mordhau.mordhaugamemode]
PlayerRespawnTime=5.000000
플레이어 리스폰 시간

BallistaRespawnTime=30.000000
발리스타 리스폰 시간

CatapultRespawnTime=30.000000
투석기 리스폰 시간

HorseRespawnTime=30.000000
말 리스폰 시간

DamageFactor=1.000000
데미지 배율

TeamDamageFactor=0.500000
팀데미지 배율

MapRotation=[맵 이름1]
MapRotation=[맵 이름2]
MapRotation=[맵 이름3]

서버 맵 로테이션

※필수 아님 – Tickrate 변경
/home/steam/mordhau/Engine/Config/BaseEngine.ini
/home/steam/mordhau/Mordhau/Config/DefaultEngine.ini

[/script/engine.player]
ConfiguredInternetSpeed=8000000
ConfiguredLanSpeed=8000000

[/script/onlinesubsystemutils.ipnetdriver]
MaxClientRate=240000
MaxInternetClientRate=240000
NetServerMaxTickRate=60
※ NetServerMaxTickRate 추천값 : 60, 120

서버 실행

1. steam 유저로 로그인

 $ sudo su – steam

2. 백그라운드에서 서버 실행

 $ nohup ./mordhau/MordhauServer.sh &

이렇게 실행하고 Ctrl + C를 눌러서 빠져나오면 끝입니다.

※ 포트 변경시

 $ nohup ./mordhau/MordhauServer.sh Port=7777 PeerPort=7778 QueryPort=27015 BeaconPort=15000 &

위의 숫자들을 알맞게 수정

서버 종료시에는

 $ ps -x

를 쳐서 서버의 [pid]를 알아낸 후

 $ sudo kill -9 [pid]
 (해당 pid를 가진 모드하우 서버만 종료됨)

혹은

 $ sudo killall MordhauServer-Linux-Shipping
 (실행중인 모든 모드하우 서버가 종료됨)

이 명령어로 서버를 끄면 됩니다.

자동 서버 재시작

파일을 만듭니다. (ubuntu라는 계정 이용)
 $ touch ~/mordhauserver.sh

실행권한 부여
 $ sudo chmod +x ~/mordhauserver.sh

mordhauserver.sh 내용 추가 (포트 변경 시 MordhauServer.sh 뒤에 구문 붙여주세요.)

#!/bin/sh killall MordhauServer-Linux-Shipping su steam -c “nohup /home/steam/mordhau/MordhauServer.sh &” renice -n -20 -u steam ps aux | grep mordhau

자동 스케줄 등록
 $ sudo crontab -e

내용 추가

# 초 분 시 일 월 명령어 # 오전 6시에 서버 재시작 0 6 * * * /home/ubuntu/mordhauserver.sh

cron 데몬 실행 및 부팅 시 자동시작 등록

※ Debian 계열
 $ sudo systemctl restart cron.service
 $ sudo systemctl enable cron.service

※ RHEL 계열
 $ sudo systemctl restart crond.service
 $ sudo systemctl enable crond.service

서버 리부팅시 자동으로 서버 시작 (둘 중에 하나만)

1.
/etc/rc.local 파일 열어서 내용 추가

/home/ubuntu/mordhauserver.sh

2.
crontab -e 에 밑 구문 추가

@reboot /home/ubuntu/mordhauserver.sh

기타

  • 작성자의 리눅스 배포판 : Ubuntu Server 16.04 LTS, CentOS Linux release 7.6.1810 (Core)
  • 7777, 7778, 27015, 15000 UDP 포트를 개방해야 합니다.
  • 서버 업데이트 시, 서버 설치때와 같이 steam계정으로 들어가서 steamcmd실행 후 로그인한 뒤 runscript mordhau_update 해주시면 됩니다. 주의할점은 어떤 패치에서는 설정파일이 초기화되니 설정 확인해주세요.
  • 필요시 방화벽에 예외 등록을 해야합니다.
  • 영어 가이드[mordhau.com]
  • Windows 가이드
  • 모드하우 메인 포럼 네이버 카페[cafe.naver.com]
SteamSolo.com