Hướng dẫn này bao gồm cách cấu hình máy chủ chuyên dụng Garry's Mod của bạn được lưu trữ với Legion Hosting, bao gồm các thiết lập máy chủ, bộ sưu tập Workshop, các gamemode phổ biến, thiết lập DarkRP, FastDL và cách kết nối.
Mục Lục
- Game Server Login Token (GSLT)
- Cấu Hình server.cfg
- Các Gamemode Phổ Biến
- Bộ Sưu Tập Workshop
- Thiết Lập DarkRP
- Thiết Lập FastDL
- Kết Nối Với Máy Chủ Của Bạn
1. Game Server Login Token (GSLT)
Steam yêu cầu một Game Server Login Token cho các máy chủ Garry's Mod công khai. Nếu không có một mã, máy chủ của bạn sẽ không xuất hiện trong trình duyệt máy chủ và có thể bị hạn chế.
- Vào steamcommunity.com/dev/managegameservers và đăng nhập.
- Dưới mục Create a new game server account, nhập App ID
4000(Garry's Mod) và một ghi chú để nhận diện máy chủ. - Nhấp Create và sao chép mã được tạo.
- Thêm mã vào dòng khởi động hoặc
server.cfgcủa bạn bằng cách sử dụng biếnsv_setsteamaccount(xem bên dưới).
2. Cấu Hình server.cfg
Tệp cấu hình máy chủ chính nằm tại:
garrysmod/cfg/server.cfg
Kết nối qua SFTP, điều hướng đến đường dẫn đó, và mở hoặc tạo server.cfg. Dưới đây là một cấu hình khởi đầu được khuyến nghị kèm giải thích cho từng thiết lập chính.
// ── Identity ──────────────────────────────────────────
hostname "My GMod Server" // Server name shown in browser
sv_password "" // Leave blank for public; set a password to make it private
// ── Slots & Network ───────────────────────────────────
maxplayers 32 // Maximum concurrent players (up to your plan limit)
sv_region 255 // 255 = worldwide
// ── Gamemode ──────────────────────────────────────────
// Set the active gamemode. Common values: sandbox, darkrp, terrortown, prop_hunt, murder
sv_gamemode "sandbox"
// ── Downloads ─────────────────────────────────────────
// FastDL base URL (see FastDL section below)
sv_downloadurl "https://yourcdn.example.com/garrysmod/"
// Allow clients to download custom content from the server directly (slower fallback)
sv_allowupload 1
sv_allowdownload 1
// ── Steam ─────────────────────────────────────────────
sv_setsteamaccount "YOUR_GSLT_TOKEN_HERE"
// ── Misc ──────────────────────────────────────────────
sv_cheats 0
sv_lan 0 // 0 = internet server; 1 = LAN only
server.cfg, hoặc sử dụng exec server.cfg trong bảng điều khiển máy chủ cho hầu hết các thiết lập. Một số thiết lập (ví dụ maxplayers) yêu cầu khởi động lại hoàn toàn.
Tham Khảo Các Thiết Lập server.cfg Chính
| ConVar | Giá Trị Ví Dụ | Mô tả |
|---|---|---|
hostname | "My GMod Server" | Tên hiển thị trong trình duyệt máy chủ |
sv_password | "" hoặc "secret" | Mật khẩu máy chủ; để trống để công khai |
maxplayers | 32 | Giới hạn số slot người chơi đồng thời |
sv_gamemode | "darkrp" | Tên thư mục gamemode đang hoạt động |
sv_downloadurl | "https://cdn.example.com/gmod/" | URL gốc FastDL cho việc tải xuống của client |
sv_setsteamaccount | "ABCDEF..." | Steam GSLT để liệt kê công khai |
sv_lan | 0 | 0 = internet, 1 = chỉ LAN |
sv_cheats | 0 | Bật/tắt các lệnh gian lận |
3. Các Gamemode Phổ Biến
Garry's Mod hỗ trợ nhiều gamemode của cộng đồng. Những gamemode phổ biến nhất được liệt kê bên dưới. Mỗi gamemode phải được cài đặt dưới dạng một addon (xem phần Workshop) và sau đó được đặt trong server.cfg bằng cách sử dụng sv_gamemode.
| Gamemode | Giá trị sv_gamemode | Mô tả |
|---|---|---|
| Sandbox | sandbox | Trải nghiệm GMod mặc định; xây dựng, sinh prop, sử dụng công cụ. Được bao gồm theo mặc định. |
| DarkRP | darkrp | Gamemode nhập vai với nghề nghiệp, kinh tế và luật lệ. Gamemode GMod phổ biến nhất. |
| Trouble in Terrorist Town (TTT) | terrortown | Suy luận xã hội — Kẻ Phản Bội đối đầu Người Vô Tội. Được bao gồm cùng GMod. |
| Prop Hunt | prop_hunt | Trốn tìm sử dụng prop làm vật ngụy trang. |
| Murder | murder | Một kẻ sát nhân săn lùng người vô tội; những người ngoài cuộc phải xác định kẻ giết người. |
4. Bộ Sưu Tập Workshop
Cách dễ nhất để quản lý các addon trên một máy chủ chuyên dụng là thông qua một bộ sưu tập Steam Workshop. Điều này cho phép bạn duy trì một bộ sưu tập duy nhất trên Steam và để máy chủ tự động tải xuống và cập nhật tất cả các addon khi khởi động.
Bước 1 — Tạo Một Bộ Sưu Tập Workshop
- Mở Garry's Mod Workshop và đăng ký các addon bạn muốn.
- Vào hồ sơ Steam của bạn, nhấp Workshop Items, sau đó Collections, rồi nhấp Create Collection.
- Thêm tất cả các addon mong muốn vào bộ sưu tập, công bố nó dưới dạng Public, và ghi lại ID bộ sưu tập từ URL của nó (ví dụ
steamcommunity.com/sharedfiles/filedetails/?id=123456789).
Bước 2 — Thêm Vào Tham Số Khởi Động
Trong GPanel, vào tab Startup của máy chủ và thêm hoặc cập nhật các tham số sau:
+host_workshop_collection 123456789
+workshop_addons 123456789
Thay 123456789 bằng ID bộ sưu tập thực tế của bạn. Cả hai tham số thường được sử dụng cùng nhau: host_workshop_collection buộc client tải xuống bộ sưu tập, và workshop_addons nạp các addon ở phía máy chủ.
STEAM_API_KEY thành một key được tạo tại steamcommunity.com/dev/apikey.
Bước 3 — Cài Đặt Addon Thủ Công (Phương Án Thay Thế)
Bạn cũng có thể cài đặt các addon thủ công bằng cách tải chúng lên qua SFTP đến:
garrysmod/addons/
Mỗi addon nên được đặt trong thư mục con riêng của nó, ví dụ garrysmod/addons/darkrp/. Xem hướng dẫn tải lên qua SFTP để biết chỉ dẫn.
5. Thiết Lập DarkRP
DarkRP là gamemode Garry's Mod phổ biến nhất và yêu cầu hai addon hoạt động cùng nhau: gamemode cơ sở và một addon chỉnh sửa để tùy biến.
Các Addon Bắt Buộc
| Addon | Mục Đích | Workshop ID |
|---|---|---|
| DarkRP | Gamemode lõi. Đặt trong garrysmod/gamemodes/darkrp/ |
2975506321 |
| DarkRPModification | Cấu hình tùy chỉnh của máy chủ bạn (nghề nghiệp, lô hàng, v.v.). Đặt trong garrysmod/addons/darkrpmodification/ |
2975625920 |
gamemodes/, không phải trong addons/. DarkRPModification thì đặt trong addons/. Đặt sai các đường dẫn này là lỗi thiết lập DarkRP phổ biến nhất.
Đặt Gamemode
Trong server.cfg, đặt:
sv_gamemode "darkrp"
Tùy Biến DarkRP (DarkRPModification)
Tất cả việc tùy biến được thực hiện bên trong garrysmod/addons/darkrpmodification/lua/darkrp_config/. Các tệp chính:
| Tệp | Nó kiểm soát điều gì |
|---|---|
settings.lua | Thiết lập DarkRP toàn cục (tiền khởi đầu, khoảng thời gian trả lương, giới hạn prop, v.v.) |
jobs.lua | Định nghĩa các nghề tùy chỉnh (cảnh sát, thị trưởng, kẻ buôn ma túy, v.v.) với model, lương và quyền |
shipments.lua | Định nghĩa các lô hàng của người bán súng và nội dung của chúng |
entities.lua | Các thực thể có thể mua tùy chỉnh (máy in tiền, phòng thí nghiệm meth, v.v.) |
categories.lua | Tổ chức danh mục menu F4 |
Ví Dụ: Thêm Một Nghề Tùy Chỉnh
Trong jobs.lua bên trong DarkRPModification, hãy thêm một khối như sau:
TEAM_MEDIC = DarkRP.createJob("Medic", {
color = Color(0, 200, 100),
model = {"models/player/Group01/Female_04.mdl"},
description = [[You are a medic. Heal the injured citizens of the city.]],
weapons = {"weapon_medkit"},
command = "medic",
max = 3,
salary = 75,
admin = 0,
vote = false,
hasLicense = false,
category = "Citizens",
})
Sau khi lưu, hãy khởi động lại máy chủ. Nghề mới sẽ xuất hiện trong menu F4.
6. Thiết Lập FastDL
Theo mặc định, client tải nội dung tùy chỉnh (addon, map, âm thanh) trực tiếp từ máy chủ game của bạn, điều này chậm và bị giới hạn bởi băng thông của máy chủ. FastDL cho phép client tải tệp từ một máy chủ web (HTTP/HTTPS) thay vào đó, giúp thời gian tham gia nhanh hơn nhiều.
Cách FastDL Hoạt Động
- Bạn lưu trữ một bản sao của thư mục nội dung
garrysmod/(hoặc chỉ các tệp đã thay đổi) trên một máy chủ web. - Bạn đặt
sv_downloadurltrongserver.cfgđể trỏ đến URL gốc của máy chủ web đó. - Client theo URL đó để tải tệp ở tốc độ HTTP đầy đủ thay vì thông qua giao thức game.
Định Dạng Tệp — Nén
Engine của Valve hỗ trợ các tệp nén .bz2 cho FastDL. Đối với mỗi tệp mà client cần tải xuống (ví dụ maps/rp_downtown_v4c_v2.bsp), bạn có thể tùy chọn đặt một phiên bản .bz2 bên cạnh nó. Client sẽ ưu tiên phiên bản nén nếu có.
Cấu Hình sv_downloadurl
Trong server.cfg:
sv_downloadurl "https://yourcdn.example.com/garrysmod/"
URL phải kết thúc bằng một dấu gạch chéo và cấu trúc thư mục bên dưới nó phải phản chiếu cấu trúc thư mục garrysmod/ trên máy chủ game. Ví dụ, nếu một map nằm tại garrysmod/maps/rp_downtown.bsp trên máy chủ, thì URL FastDL nên phục vụ nó tại https://yourcdn.example.com/garrysmod/maps/rp_downtown.bsp.
Buộc Client Tải Tệp Xuống
Để buộc client tải một tệp qua FastDL, bạn phải thêm nó vào một tệp resource.lua. Hãy tạo hoặc chỉnh sửa garrysmod/lua/autorun/server/resource.lua:
-- Force clients to download specific files
resource.AddFile("maps/rp_downtown_v4c_v2.bsp")
resource.AddFile("sound/mycustomsound.wav")
resource.AddSingleFile("materials/mycustommaterial.vmt")
7. Kết Nối Với Máy Chủ Của Bạn
Để tìm địa chỉ IP và cổng của máy chủ, hãy kiểm tra tab Network trong GPanel, hoặc xem hướng dẫn Cách Tìm IP và Cổng Máy Chủ Của Bạn.
Phương Pháp 1 — Kết Nối Trực Tiếp Trong GMod
- Mở Garry's Mod và nhấp Find Multiplayer Game.
- Nhấp Legacy Browser, sau đó chọn tab Favourites.
- Nhấp Add a Server, nhập IP và cổng máy chủ của bạn (ví dụ
123.45.67.89:27015), và nhấp Add this address to favourites. - Chọn máy chủ trong danh sách yêu thích của bạn và nhấp Connect.
Phương Pháp 2 — Trình Duyệt Máy Chủ Steam
- Trong Steam, nhấp View → Game Servers.
- Nhấp nút + và nhập IP và cổng máy chủ của bạn.
- Nhấp Add this address to favourites, sau đó nhấp đúp vào nó để kết nối.
Phương Pháp 3 — Kết Nối Trực Tiếp Bằng Bảng Điều Khiển
- Bật bảng điều khiển nhà phát triển trong GMod Options nếu nó chưa được bật.
- Nhấn ~ để mở bảng điều khiển và gõ:
connect YOUR_SERVER_IP:PORT
Bài Viết Liên Quan
- Thiết Lập Quản Trị Garry's Mod (ULX) — Cài đặt ULX/ULib, cấp quyền admin, quản lý quyền
- Khắc Phục Sự Cố Garry's Mod — Mất texture, lỗi Workshop, vấn đề DarkRP, và nhiều hơn nữa
- Cách Tải Tệp Lên Qua SFTP
- Cách Tìm IP và Cổng Máy Chủ Của Bạn