คู่มือนี้ครอบคลุมวิธีกำหนดค่าเซิร์ฟเวอร์เฉพาะ Garry's Mod ของคุณที่โฮสต์กับ Legion Hosting รวมถึงการตั้งค่าเซิร์ฟเวอร์ คอลเลกชัน Workshop เกมโหมดยอดนิยม การตั้งค่า DarkRP, FastDL และวิธีเชื่อมต่อ
สารบัญ
- Game Server Login Token (GSLT)
- การกำหนดค่า server.cfg
- เกมโหมดยอดนิยม
- คอลเลกชัน Workshop
- การตั้งค่า DarkRP
- การตั้งค่า FastDL
- การเชื่อมต่อกับเซิร์ฟเวอร์ของคุณ
1. Game Server Login Token (GSLT)
Steam กำหนดให้ต้องมี Game Server Login Token สำหรับเซิร์ฟเวอร์ Garry's Mod สาธารณะ หากไม่มี เซิร์ฟเวอร์ของคุณจะไม่ปรากฏในเบราว์เซอร์เซิร์ฟเวอร์และอาจถูกจำกัด
- ไปที่ steamcommunity.com/dev/managegameservers และเข้าสู่ระบบ
- ภายใต้ Create a new game server account ป้อน App ID
4000(Garry's Mod) และบันทึกช่วยจำเพื่อระบุเซิร์ฟเวอร์ - คลิก Create และคัดลอกโทเค็นที่สร้างขึ้น
- เพิ่มโทเค็นลงในบรรทัดเริ่มต้นหรือ
server.cfgของคุณโดยใช้ตัวแปรsv_setsteamaccount(ดูด้านล่าง)
2. การกำหนดค่า server.cfg
ไฟล์การกำหนดค่าเซิร์ฟเวอร์หลักอยู่ที่:
garrysmod/cfg/server.cfg
เชื่อมต่อผ่าน SFTP ไปยังพาธนั้น และเปิดหรือสร้าง server.cfg ด้านล่างนี้คือการกำหนดค่าเริ่มต้นที่แนะนำพร้อมคำอธิบายสำหรับแต่ละการตั้งค่าสำคัญ
// ── 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 หรือใช้ exec server.cfg ในคอนโซลเซิร์ฟเวอร์สำหรับการตั้งค่าส่วนใหญ่ การตั้งค่าบางอย่าง (เช่น maxplayers) ต้องรีสตาร์ตเต็มรูปแบบ
การอ้างอิงการตั้งค่า server.cfg สำคัญ
| ConVar | ค่าตัวอย่าง | คำอธิบาย |
|---|---|---|
hostname | "My GMod Server" | ชื่อที่แสดงในเบราว์เซอร์เซิร์ฟเวอร์ |
sv_password | "" หรือ "secret" | รหัสผ่านเซิร์ฟเวอร์ เว้นว่างไว้สำหรับสาธารณะ |
maxplayers | 32 | ขีดจำกัดช่องผู้เล่นพร้อมกัน |
sv_gamemode | "darkrp" | ชื่อโฟลเดอร์เกมโหมดที่ใช้งานอยู่ |
sv_downloadurl | "https://cdn.example.com/gmod/" | URL ฐาน FastDL สำหรับการดาวน์โหลดของไคลเอนต์ |
sv_setsteamaccount | "ABCDEF..." | Steam GSLT สำหรับการแสดงรายการสาธารณะ |
sv_lan | 0 | 0 = อินเทอร์เน็ต, 1 = LAN เท่านั้น |
sv_cheats | 0 | เปิด/ปิดคำสั่งโกง |
3. เกมโหมดยอดนิยม
Garry's Mod รองรับเกมโหมดของชุมชนมากมาย เกมโหมดที่ได้รับความนิยมมากที่สุดแสดงไว้ด้านล่าง แต่ละเกมโหมดต้องติดตั้งเป็นแอดออน (ดูที่ ส่วน Workshop) จากนั้นตั้งค่าใน server.cfg โดยใช้ sv_gamemode
| เกมโหมด | ค่า sv_gamemode | คำอธิบาย |
|---|---|---|
| Sandbox | sandbox | ประสบการณ์ GMod เริ่มต้น สร้าง สร้างพร็อพ ใช้เครื่องมือ รวมอยู่โดยค่าเริ่มต้น |
| DarkRP | darkrp | เกมโหมดสวมบทบาทที่มีอาชีพ เศรษฐกิจ และกฎหมาย เป็นเกมโหมด GMod ที่ได้รับความนิยมมากที่สุด |
| Trouble in Terrorist Town (TTT) | terrortown | การหักล้างทางสังคม — ผู้ทรยศ ปะทะ ผู้บริสุทธิ์ รวมอยู่กับ GMod |
| Prop Hunt | prop_hunt | เกมซ่อนหาโดยใช้พร็อพเป็นเครื่องพรางตัว |
| Murder | murder | ฆาตกรหนึ่งคนล่าผู้บริสุทธิ์ ผู้พบเห็นต้องระบุตัวฆาตกร |
4. คอลเลกชัน Workshop
วิธีที่ง่ายที่สุดในการจัดการแอดออนบนเซิร์ฟเวอร์เฉพาะคือผ่านคอลเลกชัน Steam Workshop ซึ่งช่วยให้คุณดูแลคอลเลกชันเดียวบน Steam และให้เซิร์ฟเวอร์ดาวน์โหลดและอัปเดตแอดออนทั้งหมดโดยอัตโนมัติเมื่อเริ่มต้น
ขั้นตอนที่ 1 — สร้างคอลเลกชัน Workshop
- เปิด Garry's Mod Workshop และสมัครรับแอดออนที่คุณต้องการ
- ไปที่โปรไฟล์ Steam ของคุณ คลิก Workshop Items จากนั้น Collections และคลิก Create Collection
- เพิ่มแอดออนทั้งหมดที่ต้องการลงในคอลเลกชัน เผยแพร่เป็น Public และจดบันทึก collection ID จาก URL ของมัน (เช่น
steamcommunity.com/sharedfiles/filedetails/?id=123456789)
ขั้นตอนที่ 2 — เพิ่มลงในพารามิเตอร์เริ่มต้น
ใน GPanel ไปที่แท็บ Startup ของเซิร์ฟเวอร์คุณ และเพิ่มหรืออัปเดตพารามิเตอร์ต่อไปนี้:
+host_workshop_collection 123456789
+workshop_addons 123456789
แทนที่ 123456789 ด้วย collection ID จริงของคุณ พารามิเตอร์ทั้งสองมักใช้ร่วมกัน: host_workshop_collection บังคับให้ไคลเอนต์ดาวน์โหลดคอลเลกชัน และ workshop_addons โหลดแอดออนฝั่งเซิร์ฟเวอร์
STEAM_API_KEY เป็นคีย์ที่สร้างขึ้นที่ steamcommunity.com/dev/apikey
ขั้นตอนที่ 3 — การติดตั้งแอดออนด้วยตนเอง (ทางเลือก)
คุณยังสามารถติดตั้งแอดออนด้วยตนเองได้โดยอัปโหลดผ่าน SFTP ไปยัง:
garrysmod/addons/
แต่ละแอดออนควรวางไว้ในโฟลเดอร์ย่อยของตัวเอง เช่น garrysmod/addons/darkrp/ ดูที่ คู่มือการอัปโหลด SFTP สำหรับคำแนะนำ
5. การตั้งค่า DarkRP
DarkRP เป็นเกมโหมด Garry's Mod ที่ได้รับความนิยมมากที่สุด และต้องใช้แอดออนสองตัวทำงานร่วมกัน: เกมโหมดพื้นฐานและแอดออนปรับแต่งสำหรับการกำหนดเอง
แอดออนที่จำเป็น
| แอดออน | วัตถุประสงค์ | Workshop ID |
|---|---|---|
| DarkRP | เกมโหมดหลัก วางไว้ใน garrysmod/gamemodes/darkrp/ |
2975506321 |
| DarkRPModification | การกำหนดค่าที่กำหนดเองของเซิร์ฟเวอร์คุณ (อาชีพ การจัดส่ง ฯลฯ) วางไว้ใน garrysmod/addons/darkrpmodification/ |
2975625920 |
gamemodes/ ไม่ใช่ ใน addons/ DarkRPModification อยู่ใน addons/ การใส่พาธเหล่านี้ผิดเป็นข้อผิดพลาดในการตั้งค่า DarkRP ที่พบบ่อยที่สุด
การตั้งค่าเกมโหมด
ใน server.cfg ตั้งค่า:
sv_gamemode "darkrp"
การปรับแต่ง DarkRP (DarkRPModification)
การปรับแต่งทั้งหมดทำภายใน garrysmod/addons/darkrpmodification/lua/darkrp_config/ ไฟล์สำคัญ:
| ไฟล์ | สิ่งที่ควบคุม |
|---|---|
settings.lua | การตั้งค่า DarkRP ส่วนกลาง (เงินเริ่มต้น ช่วงเวลาเงินเดือน ขีดจำกัดพร็อพ ฯลฯ) |
jobs.lua | กำหนดอาชีพที่กำหนดเอง (ตำรวจ นายกเทศมนตรี ผู้ค้ายา ฯลฯ) พร้อมโมเดล เงินเดือน และสิทธิ์ |
shipments.lua | กำหนดการจัดส่งของผู้ค้าปืนและเนื้อหาในนั้น |
entities.lua | เอนทิตีที่ซื้อได้ที่กำหนดเอง (เครื่องพิมพ์เงิน ห้องแล็บยาบ้า ฯลฯ) |
categories.lua | การจัดระเบียบหมวดหมู่เมนู F4 |
ตัวอย่าง: การเพิ่มอาชีพที่กำหนดเอง
ใน jobs.lua ภายใน DarkRPModification ให้เพิ่มบล็อกดังนี้:
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",
})
หลังจากบันทึก ให้รีสตาร์ตเซิร์ฟเวอร์ อาชีพใหม่จะปรากฏในเมนู F4
6. การตั้งค่า FastDL
โดยค่าเริ่มต้น ไคลเอนต์ดาวน์โหลดเนื้อหาที่กำหนดเอง (แอดออน แผนที่ เสียง) โดยตรงจากเซิร์ฟเวอร์เกมของคุณ ซึ่งช้าและจำกัดด้วยแบนด์วิดท์ของเซิร์ฟเวอร์คุณ FastDL ช่วยให้ไคลเอนต์ดาวน์โหลดไฟล์จากเว็บเซิร์ฟเวอร์ (HTTP/HTTPS) แทน ส่งผลให้เวลาในการเข้าร่วมเร็วขึ้นมาก
FastDL ทำงานอย่างไร
- คุณโฮสต์สำเนาของไดเรกทอรีเนื้อหา
garrysmod/(หรือเฉพาะไฟล์ที่เปลี่ยนแปลง) บนเว็บเซิร์ฟเวอร์ - คุณตั้งค่า
sv_downloadurlในserver.cfgให้ชี้ไปยัง URL ฐานของเว็บเซิร์ฟเวอร์นั้น - ไคลเอนต์ติดตาม URL นั้นเพื่อดาวน์โหลดไฟล์ด้วยความเร็ว HTTP เต็มที่แทนที่จะผ่านโปรโตคอลเกม
รูปแบบไฟล์ — การบีบอัด
เอนจินของ Valve รองรับไฟล์บีบอัด .bz2 สำหรับ FastDL สำหรับแต่ละไฟล์ที่ไคลเอนต์ต้องดาวน์โหลด (เช่น maps/rp_downtown_v4c_v2.bsp) คุณสามารถวางเวอร์ชัน .bz2 ไว้ข้าง ๆ ได้ด้วย ไคลเอนต์จะเลือกเวอร์ชันที่บีบอัดหากมี
การกำหนดค่า sv_downloadurl
ใน server.cfg:
sv_downloadurl "https://yourcdn.example.com/garrysmod/"
URL ต้องลงท้ายด้วยเครื่องหมายทับ และโครงสร้างไดเรกทอรีด้านล่างต้องสะท้อนโครงสร้างโฟลเดอร์ garrysmod/ บนเซิร์ฟเวอร์เกม ตัวอย่างเช่น หากแผนที่อยู่ที่ garrysmod/maps/rp_downtown.bsp บนเซิร์ฟเวอร์ FastDL URL ควรให้บริการที่ https://yourcdn.example.com/garrysmod/maps/rp_downtown.bsp
การบังคับให้ไคลเอนต์ดาวน์โหลดไฟล์
เพื่อบังคับให้ไคลเอนต์ดาวน์โหลดไฟล์ผ่าน FastDL คุณต้องเพิ่มลงในไฟล์ resource.lua สร้างหรือแก้ไข 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. การเชื่อมต่อกับเซิร์ฟเวอร์ของคุณ
หากต้องการค้นหาที่อยู่ IP และพอร์ตของเซิร์ฟเวอร์คุณ ให้ตรวจสอบแท็บ Network ใน GPanel หรือดูที่คู่มือ วิธีค้นหา IP และพอร์ตของเซิร์ฟเวอร์
วิธีที่ 1 — Direct Connect ใน GMod
- เปิด Garry's Mod และคลิก Find Multiplayer Game
- คลิก Legacy Browser จากนั้นเลือกแท็บ Favourites
- คลิก Add a Server ป้อน IP และพอร์ตของเซิร์ฟเวอร์คุณ (เช่น
123.45.67.89:27015) และคลิก Add this address to favourites - เลือกเซิร์ฟเวอร์ในรายการโปรดของคุณและคลิก Connect
วิธีที่ 2 — Steam Server Browser
- ใน Steam คลิก View → Game Servers
- คลิกปุ่ม + และป้อน IP และพอร์ตของเซิร์ฟเวอร์คุณ
- คลิก Add this address to favourites จากนั้นดับเบิลคลิกเพื่อเชื่อมต่อ
วิธีที่ 3 — Console Direct Connect
- เปิดใช้งานคอนโซลนักพัฒนาใน GMod Options หากยังไม่ได้เปิด
- กด ~ เพื่อเปิดคอนโซลและพิมพ์:
connect YOUR_SERVER_IP:PORT
บทความที่เกี่ยวข้อง
- การตั้งค่าผู้ดูแลระบบ Garry's Mod (ULX) — ติดตั้ง ULX/ULib ให้สิทธิ์ผู้ดูแล จัดการสิทธิ์
- การแก้ไขปัญหา Garry's Mod — พื้นผิวหาย ข้อผิดพลาด Workshop ปัญหา DarkRP และอื่น ๆ
- วิธีอัปโหลดไฟล์ผ่าน SFTP
- วิธีค้นหา IP และพอร์ตของเซิร์ฟเวอร์