러스트 개인서버 만들기

러스트 개인서버 사설서버 만들기 윈도우용 안내

거북선인 2020. 2. 24. 09:14

러스트 개인서버 사설서버 만들기 윈도우용 안내

 

 

 

[권장 사양]

The Rust server can be taxing on your host but maybe not as much as you would think. As a baseline a 3 square km (default gen size) map freshly generated will run at close to 2 gigabytes of ram. After some stress testing and 150k entities later, can use 6+ gigabytes of memory. So I would suggest having at least 7 gigs allocated per server.

 

여의도 면적 정도 약 3km²(3키로 평방미터)의 맵을 구성하는데 2GB RAM이 필요하다고 되어있으며,

대형 사이즈 약 150km²(150키로 평방미터)의 맵을 구성시에 6GB RAM이 필요하다고 대충 알고 계시어요

 

하지만, 위 예시는 권장사양이니..

좀더 여유있는 상태를 권장합니다.

 

추가적으로 윈도우 운영체제를 사용하실 경우, 

Windows Server 버전으로 설치해주시는게 좋습니다.

 

 

[ 1단계 ]

 

SteamCMD 설치 및 업데이트 

SteamCMD는 Steam 관련 파일과 Rust 서버가 설치 및 업데이트되는 

메커니즘을 설치하는 데 사용되는 명령 줄 콘솔입니다. 

 

일단은 서버용 파일을 받아야합니다.

 

* Windows 용 SteamCMD를 다운로드 하십시오 

https://steamcdn-a.akamaihd.net/client/installer/steamcmd.zip 

 

steamcmd.zip
다운로드

 

 

[ 2단계 ]

 

이제 서버를 설치할 폴더를 만들고 지정해 주어야합니다.

특수문자, 공백, 한글이 들어갈 경우 오류가 발생하니 주의하시고

 

설치를 원하시는 곳에 2개의 폴더를 만들어 줍니다.

예) 'C:' 하위에 'SteamCMD' 와 'RustServer' 폴더를 각각 생성

 

 

1. 다운로드 된, steamcmd.zip 압축을 풀고, C:\SteamCMD에 복사합니다.

2. SteamCMD.exe를 실행합니다. (*관리자권한으로 실행하셔야 합니다.)

  실행시키시면 아래 이미지처럼 자동으로 업데이트가 완료될때까지 기다리시면 됩니다.

 

 

 

 

 

[ 3단계 ]

 

RUST 서버 설치 : 

실행시킨 SteamCMD.exe에 아래 명령어를 한줄씩 입력합니다.

 

login anonymous 

 

force_install_dir "C:\RustServer\"

 

app_update 258550

 

quit

 

 

여기까지가 하셨다면 러스트 서버의 기본 파일들이 설치되었습니다.

설치 위치는 위에서 지정한 'C:\RustServer' 에 설치되어 있습니다.

 

 

 

[ 4단계 ]

 

설치된 RUST 서버를 실행해보자

 

갑자기 서버가 종료되었을시에 자동으로 시작하기 위하여, 

일단은 스크립트를 만들어 실행시키는 것을 추천드립니다.

 

스크립트를 만드는 방법은 

C:\RustServer 위치에 RustServer.txt 라는 파일을 만드신 후, 

확장자만 '.txt' 에서 '.bat' 로 변경해주시면 됩니다.

 

- 스트립트 [ RustServer.bat ] 파일을 오른쪽 클릭 

- 편집을 선택

- 아래 내용을 복사해서 붙여넣기

그리고 {} 안의 내용을 자신의 환경에 맞게 변경해 주어야 합니다. 

 

 

----------------------------------------------------------------------------------------
@echo off

 

:start

 

 

 

C:\SteamCMD\steamcmd.exe +login anonymous +force_install_dir C:\RustServer\ +app_update 258550 +quit

 

 

 

RustDedicated.exe -batchmode +server.port 28015 +server.level "{Procedural Map}" +server.seed {원하시는시드} +server.worldsize {맵크기} +server.maxplayers {플레이어수}  +server.hostname "{서버명}" +server.description "{서버 설명}" +server.url "{홈페이지 URL}" +server.headerimage "{서버 이미지 URL}" +server.identity "Rust-Server" +rcon.port 28016 +rcon.password {비밀번호} +rcon.web 1

 

 

goto start

 

---------------------------------------------------------------------------

 

 

위 과정을 순차적으로 해왔다면 

이제 서버가 종료되더라도 자동적으로 재시작되는 서버가 완성된 것입니다.

 

 

 

[ 5단계 ]

 

위 {}안의 내용 변경에 대한 설명

아래 없는 설명은 변경 안하시는것을 추천드립니다.

 

 

 

+server.port : 

러스트 클라이언트의 접속 포트입니다. 

(기본 28015 이며, 다른 포트로 변경하셔도 됩니다.)

 

+server.level : 

사용할 맵의 종류입니다. 러스트 맵에는 "Procedural Map", "Barren",

 ”HapisIsland”, ”SavasIsland”, “SavasIsland_koth” 가 있습니다.

 

 

 

+server.seed : 

Procedural Map과 Barren Map의 종류를 선택하는 것으로 

0 ~ 2147483647 사이에서 선택하시면 됩니다.

 

+server.worldsize : 

맵의 크기를 지정하는 것으로 1000 ~ 6000 사이입니다.

 

+server.maxplayers : 

동시접속 최대 인원을 설정합니다.

 

+server.hostname : 

서버의 이름을 설정합니다.

 

+server.description : 

서버의 설명입니다.

 

+server.url : 

서버의 Web페이지 주소입니다.

 

+server.headerimage : 

서버의 이미지 URL 주소입니다. 512 * 256px의 JPG 이미지 파일 주소를 입력하시면됩니다.

 

+rcon.password : 

관리자로 접속할 비밀번호입니다.

 

 

 

 

 

이제 러스트를 실행하시면, 

서버 목록 중 Community 부분에 자신의 서버명이 뜨는 것을 확인 할 수 있습니다.

 

 

 

 

 

이 설치에 관한 정보는 Rustafied 페이지에 가시면 자세하게 보실 수 있습니다.

https://www.rustafied.com/how-to-host-your-own-rust-server 

 

그외 좀더 퍼팩트한 설명은 

https://translate.googleusercontent.com/translate_c?depth=1&hl=ko&prev=search&rurl=translate.google.com&sl=en&sp=nmt4&u=https://docs.google.com/document/d/110UCeMNogcBZrtq1NXVgFMcISbHyX51SIdoM-zPrGFA/edit%3Fpli%3D1&xid=17259,15700022,15700186,15700190,15700256,15700259,15700262,15700265,15700271,15700283&usg=ALkJrhhEvzN7OIcQ4H5nXYDQf9mbeISzoA 

 

 

한국인 러스트 게임 영상

https://fallout-kr.ga/bbs/board.php?bo_table=Overwatch

 

 

 

 

 

 

 

 

 

 

How to Set Up a Rust Server

- Originally “How to Set Up a Rust Experimental Server” -

 

MlPPCFy.png

Click the logo if you’re looking for an excellent hosting service

 for your Rust and gaming needs!

 

This tutorial is meant for Windows-based hosting. 

All files and instructions will follow procedures meant for Windows operations.

 

What you’ll need:

 

Installing SteamCMD:

2015-12-06_17-19-03.png

  1. Create a folder for SteamCMD. 
  2. Download SteamCMD.zip.
  3. Extract the contents of the zip file into the folder just created.
  4. Run steamcmd.exe to install the rest of the needed files.

 

Obtaining Rust Experimental Server Files:

  1. Download MistaD’s Server Installer.zip.
  2. Extract the contents of the zip file into the SteamCMD folder we created earlier..
  3. Now open up rust_installer.txt and look for the line saying “force_install_dir”.
  4. Change “C:\Rust Server” to your desired location.
    1. There’s an error in this line. If your file path contains spaces, you must surround the path with quotes! Example:2015-12-07_19-07-44.png
  5. After you have edited “force_install_dir,” save the file. 
  6. Run MistaD’s Server Installer.bat and let it do its magic.
  7. If successful, it should look like this on the inside of the folder you installed to:

Running your new server:

  1. Create a new .bat file in your Rust Server folder (How to make a .bat file). Name it start.bat.
  2. Put this inside of it: 2015-12-07_19-14-25.png
  3. Change SERVER_NAME, SERVER_PORT, and MAX_PLAYERS to what you desire.
  4. All server.* console variable commands work here as well.
  5. Save it, run it.
  6. Your server will take some time to start up, but that’s normal.

 

How to connect by IP:

  1. Once in Rust, hit F1 on your keyboard to open the console.
  2. Type connect [IP]:[PORT], replacing [IP] and [PORT] with the information of your server.
  3. If you’re hosting this on your local machine, it should be connect 127.0.0.1:[PORT].
  4. Finally, you can disconnect  if something goes wrong through the console: disconnect.

 

Adding more startup parameters:

  1. Edit start.bat with Notepad.
  2. Refer to this link for a list of proper startup commands.
    1. Here is an example command line:

RustDedicated.exe -batchmode +server.hostname "My Rust Server" +server.maxplayers 100 +server.description "This server has not set a description." +server.headerimage "https://upload.wikimedia.org/wikipedia/en/6/6d/Rust_videogame_logo.png" +server.identity "my_server_identity" +server.worldsize 4000 +server.level "Procedural Map"

  1. Choose the command you want.
  2. Following the appropriate syntax, append “+[command] [parameters]” to the end of the line.
  3. Save and run.

 

Other notes:

  1. If your server doesn’t show up in the server list, here are two reasons (among many) that could be the cause:
    1. Your ports are not open/forwarded.
      1. In this case, simply open UDP ports 28015-28016 on your Windows Firewall and through your network’s panel.
    2. The server list simply isn’t displaying your server yet. Wait a bit.
  2. Add server.seed [SEED] to your start.bat to change your seed. Looking for a good seed? Check this out.
  3. RustDedicated.exe has been known to fail at closing when you force exit the console window too soon during start up. Make sure you terminate the process if it still appears to be running in the background.



 

List of known RCon/Console commands:

Note: UID stands for User ID - this refers to someone’s SteamID64 key.

Note 2: Do not execute the commands in red. They either won’t do anything, aren’t complete, or will break something on your server.

Note 3: If you send a command that can have parameters, but you do not specify any parameters, the command may still work but will substitute that missing parameter with a default value.

Note 4: Wow more notes. Remember that these commands can be entered using the server’s console window or RCon (when that comes around).

Note 5: Lol, I don’t think this ends. Also know that parameters with quotes require quotes and ones with braces can just be the number/boolean/whatever itself.

Note 6: Some commands don’t work completely or aren’t fully implemented.

 

kick <UID> “Player name” “Reason”

kickall <Invalid parameter, just put “”> “Reason”

ban “Player name” “Reason”

banid <UID> “Player name” “Reason”

status ; Print out information of all currently connected clients.

say ”Message” ; Sends a message in chat.

users ; Show user info for players on server.

banlist ; List of banned users.

banlistex ; List of banned users - shows reasons and usernames.

listid ; List of banned users, by UID.

`

event.run ; Sends an airdrop from a random direction to drop crates at (0,0,0).

 

[It’s best if you set this stuff through the command line and not through the console.]

server.port <Number (Default 28015)> ; Sets the connection port of the server. 

server.maxplayers <Number (Default 500)> ; Sets the maximum amount of players that can join.

server.hostname “Server name” ; Sets the server name.

server.identity “Identity” ; Sets the server’s identity; this is used for the folder name of the server data.

server.level “Map name” ; Sets the server’s map.

server.seed <Number (Default 123456)> ; Sets the server’s map generation seed.

[This stuff you can execute as normal.]

server.saveinterval <Number (Default 60)> ; Sets the server’s the auto-save interval.

server.secure <true/false (Default true)> ; If true, EAC will kick banned or unregistered users upon joining.

server.tickrate <Number (Default 30)> ; Uhh… sets the tick rate?

server.start ; Uhh… starts your server? Wait, isn’t it already running?

server.stop “Reason” ; Stops yours server with a specified reason.

server.writecfg ; Creates a server.cfg in your server’s \<identity>\cfg\ folder… but know that these cfgs don’t actually load.

 

inventory.give “Item name” <Amount> ; Gives yourself an item. Only works on RCon?

 

gc.collect ; Recollects unused memory and unloads unused assets.

 

construct.frameminutes ; How many minutes before a placed frame gets destroyed.

 

chat.enabled <true/false (Default true)> ; Enables/disables chat.

chat.serverlog <true/false (Default true)> ; If true, chat will be logged to the console.

 

effects.aa <true/false (Default true)> ; Sets anti-aliasing.

effects.ao <true/false (Default true)> ; Sets ambient occlusion.

effects.lensdirt <true/false (Default true)> ; Sets lens dirt.

effects.motionblur <true/false (Default true)> ; Sets motion blur.

effects.shafts <true/false (Default true)> ; Sets light shafts.

effects.vignet <true/false (Default true)> ; Sets vignet (??).

effects.color <true/false (Default true)> ; Sets visibility of color (??).

effects.reflect <true/false (Default true)> ; Sets water reflection (??).

 

fps.graph <true/false (Default true)> ; Displays the fps graph on screen.

 

terrain.quality <Number (Default 1)> ; Sets the terrain quality.

 

objects ; Lists all objects in the world.

wakeup ; Forces your avatar to wakeup.

textures ; Lists all loaded textures.

spectate ; Kills your avatar and goes into spectator mode.

sleep ; Forces your avatar to go to sleep.

quit ; Writes the cfg file, and stops the server/game.

colliders ; Displays how many colliders exist in the world separated by enabled and disabled ones.

kill ; Commits suicide.

(List provided by Ignitas at Facepunch and modified by myself, MistaD)


Please visit http://forum.rustessentials.com/ if you have any questions or concerns.