Counter-Strike 2 (CS2) Modded Dedicated Server
หากคุณกำลังมองหาเวอร์ชัน CS: GO คุณยังสามารถเข้าถึงได้ที่นี่
เกี่ยวกับ
เซิร์ฟเวอร์เฉพาะ Modded Counter-Strike 2 (CS2) Modded ที่คุณสามารถเปลี่ยน Mod ที่ใช้งานได้บนเซิร์ฟเวอร์จากแชทหรือคอนโซลเซิร์ฟเวอร์ แผนที่ได้รับการกำหนดค่าล่วงหน้าต่อโหมดเกมและเปลี่ยนเมื่อโหมดเกมเปลี่ยนไป
แต่ละโหมดเกมมีมือที่เต็มไปด้วยแผนที่ที่ตั้งไว้ล่วงหน้าดังนั้นคุณจึงพร้อมที่จะไปและมันง่ายที่จะเพิ่มมากขึ้น
- 1v1 (พร้อม arenas) (จำเป็นต้องใช้คีย์ไอน้ำ API)
- DeathMatch (จำเป็นต้องใช้คีย์ไอน้ำ API)
- การแข่งขัน (โดยใช้ Matchzy)
- การฝึกฝน (บันทึกการขว้างปา ฯลฯ )
- การปฏิบัติก่อน
- กงเมะ
- เอากลับ
- ประหารชีวิต
- Wingman (อนุญาตให้ผู้เล่นมากกว่า 4 คน) (จำเป็นต้องใช้คีย์ไอน้ำ API)
- KZ (จำเป็นต้องใช้คีย์ไอน้ำ API)
- BHOP (จำเป็นต้องใช้คีย์ไอน้ำ API)
- SURF (จำเป็นต้องใช้คีย์ไอน้ำ API)
- Scoutzknivez (จำเป็นต้องใช้คีย์ไอน้ำ API)
- Mini Games (จำเป็นต้องใช้คีย์ไอน้ำ API)
- Deathrun (จำเป็นต้องใช้คีย์ไอน้ำ API)
- รูปแบบหลักสูตร (ทดสอบผู้เล่นที่มีกับดักที่แตกต่างกัน, KZ, Surf, BHOP) (จำเป็นต้องใช้คีย์ไอน้ำ API)
- Battle Royale (จำเป็นต้องใช้คีย์ไอน้ำ API)
- ซ่อน N SEEW (จำเป็นต้องใช้คีย์ไอน้ำ API)
- ฟุตบอล (จำเป็นต้องใช้คีย์ไอน้ำ API)
ทุกครั้งที่คุณต้องการบูตเซิร์ฟเวอร์คุณควรเรียกใช้ gcp.sh
(ถ้าบน Google Cloud) หรือ install.sh
(บน Linux) และจะทำให้แน่ใจ แพตช์ล่าสุดจาก mod นี้ (การอัปเดตใด ๆ ที่ฉันกดขึ้น)
เห็นได้ชัดว่าการเปลี่ยนแปลงใด ๆ ที่คุณได้ทำกับไฟล์ใน mod นี้จะถูกเขียนทับดังนั้นฉันจึงได้สร้างโฟลเดอร์ "ไฟล์ที่กำหนดเอง" ซึ่งคุณสะท้อนเนื้อหาของ game/csgo/
โฟลเดอร์และไฟล์ใด ๆ ที่คุณต้องการปรับแต่ง ในจุดเดียวกันและพวกเขาจะเขียนทับไฟล์เริ่มต้น mods เสมอ อ่านเพิ่มเติมเกี่ยวกับที่นี่
การตั้งค่าอย่างรวดเร็วง่าย ๆ :
- สร้างกฎไฟร์วอลล์ของคุณ
- จัดเตรียมเซิร์ฟเวอร์ของคุณบน Google Cloud
- SSH เข้าสู่เซิร์ฟเวอร์
- ติดตั้ง mod
- สร้างไฟล์ที่กำหนดเองของคุณสำหรับชื่อโฮสต์ผู้ดูแลระบบ ฯลฯ
- ตรวจสอบให้แน่ใจว่าคุณได้ทำตามขั้นตอนในการสร้างเซิร์ฟเวอร์ออนไลน์หรือเซิร์ฟเวอร์ LAN
- ฆ่าเซิร์ฟเวอร์ถ้ากำลังทำงาน
./stop.sh
และเริ่มต้นอีกครั้ง gcp.sh
(ถ้าบน Google Cloud) หรือ install.sh
(บน Linux)
เซิร์ฟเวอร์ของคุณควรเปิดใช้งาน!
เพื่อตรวจสอบว่าทุกอย่างทำงานได้อย่างถูกต้องเรียกใช้คำสั่งต่อไปนี้ในคอนโซลเซิร์ฟเวอร์:
-
meta list
และคุณควรเห็น CounterStrikeSharp
ในเอาต์พุต -
css_plugins list
และคุณควรเห็นปลั๊กอินสองสามตัวในเอาต์พุต
หากคุณเห็นเนื้อหาในทั้งสอง; ทุกอย่างทำงาน
สำคัญ
การใช้ RCON ในขณะที่เชื่อมต่อกับเซิร์ฟเวอร์ไม่ทำงาน ดูการสนทนาที่นี่ งานปัจจุบันคือ:
- ฉันได้รวม CS2RCON ซึ่งอนุญาตให้ผู้ดูแลระบบใช้! RCON ในการแชท
- คุณสามารถตัดการเชื่อมต่อจากเซิร์ฟเวอร์และใช้
rcon_address IP:PORT
ในคอนโซลและคุณสามารถใช้คำสั่ง RCON - ใช้โปรแกรม RCON ภายนอกซึ่งใช้โปรโตคอล RCON เช่นนี้
สิ่งที่เป็นประโยชน์ที่ควรรู้:
- เมนูผู้ดูแลระบบเข้าถึง
- เปลี่ยนโหมดเกม
- เปลี่ยนแผนที่
- คำสั่งผู้เล่น
การลุกขึ้นวิ่ง:
- ทำงานบน Google Cloud
- ทำงานบน Linux
- ทำงานใน Docker
- ทำงานบน Windows
ติดตั้ง mods
mod | รุ่น | ทำไม |
---|
Metamod: แหล่งที่มา | 2.0.0-1315 | ตั้งอยู่ระหว่างเกมและเครื่องยนต์และช่วยให้ปลั๊กอินสามารถสกัดกั้นการโทรที่ไหลระหว่าง |
counterstrikesharp | 287 | พยายามใช้เลเยอร์สคริปต์. NET Core ที่ด้านบนของปลั๊กอินแหล่งข้อมูล Metamod ช่วยให้นักพัฒนาสามารถสร้างปลั๊กอินที่โต้ตอบกับเซิร์ฟเวอร์เกมในภาษาที่ทันสมัย (C#) |
cs2_execafter | 1.0.0 | ดำเนินการคำสั่งหลังจากเหตุการณ์เซิร์ฟเวอร์ (เช่น onmapstart) หรือการหน่วงเวลา |
CS2 ลบอาวุธแผนที่ | 1.0.1 | ลบอาวุธออกจากแผนที่ใน CS2 เป็น mp_weapons_allow_map_placed 0 ไม่ทำงาน |
CS2_DAMAGEINFO | 2.3.4 | แสดงจำนวนความเสียหายที่ผู้เล่นได้สร้างความเสียหายให้กับ HP และชุดเกราะของเหยื่อรวมถึงกลุ่มฮิตที่พวกเขาตี |
GameModeManager | 1.0.50 | ปลั๊กอินเซิร์ฟเวอร์ Counter-Strike 2 อย่างง่ายที่ช่วยให้ผู้ดูแลระบบจัดการโหมดเกมและกลุ่มแผนที่ |
เขย่าโหวต | 1.8.5-custombuild | ปลั๊กอินการโหวตแผนที่ CS2 โดยทั่วไปทำด้วยความรักตั้งแต่เริ่มต้น |
คู่กัน | 0.8.6 | Matchzy เป็นปลั๊กอินสำหรับ CS2 สำหรับการทำงานและการจัดการการฝึกซ้อม/pugs/scrims/matches ด้วยการกำหนดค่าที่ง่าย! |
MapConfigurator | 1.0.2 | ช่วยให้คุณสร้างไฟล์การกำหนดค่าที่ไม่ซ้ำกันได้อย่างรวดเร็วและง่ายดายสำหรับแต่ละแผนที่บนเซิร์ฟเวอร์ของคุณ |
simpleadmin | 0.1.2 | เพิ่มฟังก์ชั่นผู้ดูแลระบบพื้นฐาน |
CS2RCON | 1.2.0 | นี่คือการใช้งานพื้นฐานของปลั๊กอิน RCON สำหรับ CS2 โดยใช้ countrikesharp เนื่องจาก RCON ไม่ทำงานในขณะที่เชื่อมต่อกับเซิร์ฟเวอร์ |
Sharptimer | 0.2.5 | Sharptimer เป็น surf/kz/bhop/mg/deathrun/etc cs2 ปลั๊กอิน |
กงเมะ | 1.1.2 | โหมด Gungame บนเคาน์เตอร์ Strike Sharp |
K4-arenas | 1.5.2 | ปลั๊กอินทั้งหมดในเวทีเดียวที่คุณสามารถใช้เพื่อเล่นเกมประเภทบันได รองรับแผนที่ทั้งหมด 2v2/3v3/etc |
CS2 retakes | 20.0.16 | การใช้งาน CS2 ของการ retakes ขึ้นอยู่กับเวอร์ชันสำหรับ CS: ไปโดย Splewis |
CS2 retakes แบ่งปัน | 20.0.16 | ห้องสมุดที่ใช้ร่วมกันสำหรับการคืนค่า CS2 |
cs2 instadefuse | 2.0.0 | อนุญาตให้ CT สามารถคลี่คลายระเบิดได้ทันทีเมื่อไม่มีอะไรสามารถป้องกันการตีพิมพ์ได้ เขียนใน C# สำหรับ CounterStrikesharp |
CS2 retakes allocator | 2.3.15 | การจัดสรรอาวุธขั้นสูงสำหรับ B3NONE/CS2-RETAKES |
CS2 Whitelist | 1.0.0 | จำกัด การเข้าถึงเซิร์ฟเวอร์สำหรับสมาชิก SteamID/พนักงานที่ระบุไว้ใน Whitelist ยังไง? |
CS2 ดำเนินการ | 1.0.6 | การใช้งาน CS2 ของการดำเนินการ ขึ้นอยู่กับเวอร์ชันสำหรับ CS: ไปโดย Splewis |
โฆษณา CS2 | 1.0.8 | อนุญาตให้คุณแสดงโฆษณาในการแชท/กึ่งกลาง/แผง ยังไง? |
CS2 Deathmatch | 1.2.2 | ปลั๊กอิน Deathmatch CS2 ที่กำหนดเอง (รวมถึงจุดวางไข่ที่กำหนดเอง, MultiCFG, การเลือกปืน, การป้องกันการวางไข่ ฯลฯ ) |
OpenPrefireprac | 0.1.41 | แนวทางปฏิบัติเบื้องต้นหลายประการเกี่ยวกับแผนที่การแข่งขันและสนับสนุนการฝึกฝนผู้เล่นหลายคนพร้อมกัน |
cs2-customvotes | 1.1.3 | ปลั๊กอินสำหรับ Counter-Strike 2 เพื่อสร้างคะแนนโหวตที่กำหนดเองสำหรับการตั้งค่า |
ผู้ดูแล Deathrun | 0.0.8 | Manager Deathrun สำหรับ Counterstrikesharp Framework CS2 |
ประกาศ broadcaster | 0.5 | ข้อความที่มีเงื่อนไข, oncommand, onplayerconnect, onroundstart และ timermsgs |
CS2FunMatchPlugin | 1.1.1 | โหมดสนุกแบบสุ่มทุกรอบ |
แบ่งปันความรัก
หากคุณชื่นชมโครงการโปรดใช้เวลาในการแสดงที่เก็บข้อมูล
ติดตามข่าวสารล่าสุด
สมัครรับการแจ้งเตือนการเปิดตัวและติดตามข้อมูลล่าสุดเกี่ยวกับคุณสมบัติและแพตช์ล่าสุด:
ไฟล์ที่กำหนดเอง
บันทึก
การอ้างอิงใด ๆ ไปยังเส้นทางจะเป็นรากของการติดตั้งเสมอ ซึ่งโดยทั่วไปใน Linux จะเป็น /home/steam/cs2/
และบนหน้าต่างที่คุณเคยสกัดซิป
ตัวอย่างเช่นบน linux: /custom_files/addons/counterstrikesharp/configs/admins.json
Path คือ /home/steam/cs2/custom_files/addons/counterstrikesharp/configs/admins.json
/game/csgo/addons/counterstrikesharp/configs/admins.json
PATH เต็มคือ /home/steam/cs2/game/csgo/addons/counterstrikesharp/configs/admins.json
การเปลี่ยนแปลงใด ๆ ที่คุณทำกับไฟล์ใน mod นี้จะถูกเขียนทับเมื่อสคริปต์อัปเดตถูกเรียกใช้ ฉันได้สร้างโฟลเดอร์ /custom_files/
ในรูทของโครงการที่คุณสะท้อนเนื้อหาของ csgo/
โฟลเดอร์และไฟล์ใด ๆ ที่คุณต้องการปรับแต่ง ไฟล์
ดังนั้นสิ่งนี้สามารถใช้ในการตั้งค่าชื่อโฮสต์เซิร์ฟเวอร์เป็นสิ่งที่คุณต้องการตั้งค่า RCON หรือ ServerPassword หรือตั้งค่าผู้ดูแลระบบของเซิร์ฟเวอร์
คุณสามารถดูตัวอย่างของสิ่งที่ฉันใช้บนเซิร์ฟเวอร์ของฉันใน /custom_files_example/
ไดเรกทอรีซึ่งตั้งค่าชื่อโฮสต์ภาพเซิร์ฟเวอร์และผู้ดูแลระบบ
ตัวอย่างเช่น; หากคุณต้องการเพิ่มตัวเองเป็นผู้ดูแลระบบไฟล์นั้นจะอยู่ที่ /game/csgo/addons/counterstrikesharp/configs/admins.json
ดังนั้นในการปรับแต่งของคุณคุณจะคัดลอกไฟล์นั้นไปที่ /custom_files/addons/counterstrikesharp/configs/admins.json
และเพิ่มตัวเองเป็นผู้ดูแลระบบที่ด้านล่าง จากนั้นเมื่อสคริปต์อัปเดตจะดำเนินการจะคัดลอกไฟล์ที่กำหนดเองของคุณที่ /custom_files/addons/counterstrikesharp/configs/admins.json
และเขียนทับไฟล์ mod เริ่มต้นที่ /game/csgo/addons/counterstrikesharp/configs/admins.json
หากคุณต้องการเปลี่ยนชื่อเซิร์ฟเวอร์หรือทำการเปลี่ยนแปลงใด ๆ กับการตั้งค่า mod ใด ๆ ให้ใช้ /cfg/custom_MOD.cfg
ในขณะที่ดำเนินการในตอนท้ายและสามารถเขียนทับการตั้งค่าใด ๆ ได้ ดังนั้นหากคุณต้องการเปลี่ยนชื่อเซิร์ฟเวอร์สำหรับ Gungame คุณจะคัดลอก /game/csgo/cfg/custom_dm.cfg
เป็น /custom_files/cfg/custom_dm.cfg
และเขียน hostname "shipREKT GunGame +Deathmatch +Turbo"
คุณต้องการและไฟล์นี้จะเขียนทับ /game/csgo/cfg/custom_dm.cfg
ในแต่ละครั้งที่ gcp.sh
install.sh
win.bat
สคริปต์เรียกใช้และการตั้งค่าเหล่านี้จะทำงานในตอนท้ายเมื่อคุณโหลด Gungame Mod
สร้างไฟล์กำหนดค่าแบบไดนามิกในโฟลเดอร์ปลั๊กอิน
หากปลั๊กอินสร้างไฟล์กำหนดค่าในโฟลเดอร์ปลั๊กอินที่ DLL คือ (เช่น: /game/csgo/addons/counterstrikesharp/plugins/disabled/Advertisement/advertisement.json
) มันจะถูกลบเมื่อเซิร์ฟเวอร์เริ่มเป็นโฟลเดอร์ addons
ลบเพื่อให้แน่ใจว่าปลั๊กอินเก่าจะถูกลบออกหากฉันลบออก คุณต้องคัดลอกไฟล์นี้และการเปลี่ยนแปลงของคุณไปยัง /custom_files/
โฟลเดอร์ของคุณดังนั้นมันจะรวมกลับเข้ามาคุณจะใส่ไฟล์ตัวอย่างใน /custom_files/addons/counterstrikesharp/plugins/disabled/Advertisement/advertisement.json
และทุกครั้งที่เซิร์ฟเวอร์เซิร์ฟเวอร์ เริ่มต้นจะรวมกลับเข้ามาและคุณจะมีการเปลี่ยนแปลง
ในการสร้างไดเรกทอรีนี้คุณสามารถเรียกใช้สคริปต์ gcp.sh
(ถ้าบน Google Cloud), install.sh
Stript.sh บน Linux หนึ่งครั้งหรือบนสคริปต์ win.bat
บน Windows ที่คุณดึง mod zip และนี่คือที่ที่คุณจะกำหนดเอง การดัดแปลง
การสร้างเซิร์ฟเวอร์ออนไลน์
หากคุณกำลังโฮสต์เซิร์ฟเวอร์ออนไลน์คุณต้องสร้างโทเค็นล็อกอินเกม Steam เซิร์ฟเวอร์ของคุณจะไม่ทำงานออนไลน์หากไม่มีสิ่งนี้ ใส่ค่านี้ในตัวแปรสภาพแวดล้อม STEAM_ACCOUNT
คุณต้องสร้างคีย์การอนุญาตซึ่งจะช่วยให้เซิร์ฟเวอร์ของคุณดาวน์โหลดแผนที่จากเวิร์กช็อป ใส่ค่านี้ในตัวแปรสภาพแวดล้อม API_KEY
ดูตัวแปรสภาพแวดล้อมที่มีอยู่ทั้งหมด
คุณต้องเชื่อมต่อกับเซิร์ฟเวอร์จาก IP สาธารณะไม่ใช่ LAN IP แม้ว่าคุณจะอยู่ในเครือข่ายเดียวกัน สคริปต์บันทึก Starting server on XXX.XXX.XXX.XXX:27015
การสร้างเซิร์ฟเวอร์ LAN
ตั้งค่าตัวแปรสภาพแวดล้อม LAN
เป็น 1
คุณต้องสร้างคีย์การอนุญาตซึ่งจะช่วยให้เซิร์ฟเวอร์ของคุณดาวน์โหลดแผนที่จากเวิร์กช็อป ใส่ค่านี้ในตัวแปรสภาพแวดล้อม API_KEY
ดูตัวแปรสภาพแวดล้อมที่มีอยู่ทั้งหมด
ตัวแปรสภาพแวดล้อม
มีให้ผ่านตัวแปรสภาพแวดล้อมเท่านั้น
บน Windows ตั้งค่าเหล่านี้ใน win.ini
สำคัญ | ค่าเริ่มต้น | มันคืออะไร |
---|
API_KEY | changeme | ในการดาวน์โหลดแผนที่จากเวิร์กช็อปเซิร์ฟเวอร์ของคุณต้องการเข้าถึง Steam Web API เพื่อให้สิ่งนี้คุณต้องมีคีย์การอนุญาตที่คุณสามารถสร้างได้ที่นี่ |
IP | - | ไม่จำเป็น อนุญาตให้ตั้งค่า IP เซิร์ฟเวอร์ มีประโยชน์หากเซิร์ฟเวอร์ CS2 จำเป็นต้องถูกผูกไว้กับที่อยู่ IP เฉพาะ |
PORT | 27015 | พอร์ตเซิร์ฟเวอร์ |
TICKRATE | 128 | เซิร์ฟเวอร์ tickrate mm คือ 64, faceit คือ 128 |
MAXPLAYERS | 32 | ขีด จำกัด ผู้เล่นสูงสุด |
CUSTOM_FOLDER | custom_files | โฟลเดอร์ของการปรับเปลี่ยนของคุณเองไปยัง mod ที่สะท้อน CSGO/ โครงสร้างและเขียนทับไฟล์โหมด เพิ่มเติมเกี่ยวกับที่นี่ |
RCON_PASSWORD | changeme | รหัสผ่าน rcon ไปยังเซิร์ฟเวอร์ควบคุมจากคอนโซลยังกำหนดค่าจากระยะไกล |
STEAM_ACCOUNT | - | ในการโฮสต์เซิร์ฟเวอร์ออนไลน์คุณต้องสร้างโทเค็นล็อกอินเกมไอน้ำ เซิร์ฟเวอร์ของคุณจะไม่ทำงานออนไลน์หากไม่มีสิ่งนี้ |
SERVER_PASSWORD | - | หากคุณต้องการเซิร์ฟเวอร์ป้องกันรหัสผ่าน |
LAN | 0 | หากเซิร์ฟเวอร์เป็นเซิร์ฟเวอร์ LAN เท่านั้น |
EXEC | on_boot.cfg | กำหนดค่าไฟล์เพื่อเรียกใช้เมื่อเซิร์ฟเวอร์บูท หากสลับเกมเกมขอแนะนำให้ทำการหน่วงเวลาดูตัวอย่าง on_boot.cfg ไฟล์ |
DUCK_DOMAIN | - | (Linux เท่านั้น) โดเมน Duck DNS หากคุณต้องการใช้บริการฟรีเพื่อรับโดเมนสำหรับเซิร์ฟเวอร์ของคุณแทน IP |
DUCK_TOKEN | - | (Linux เท่านั้น) Duck DNS Access Token เพื่ออัปเดตโดเมนเมื่อ Server Boots |
เล่นแผนที่เวิร์กช็อป/คอลเลกชัน
ในการดาวน์โหลดแผนที่จากเวิร์กช็อปเซิร์ฟเวอร์ของคุณต้องการเข้าถึง Steam Web API เพื่อให้สิ่งนี้คุณจะต้องมีคีย์การอนุญาตที่คุณสามารถสร้างได้ที่นี่และตั้งค่า API_KEY
เป็นคีย์
คำสั่งคอนโซลสำหรับการโฮสต์แผนที่เวิร์กช็อปคือ host_workshop_map fileid
โดยที่ fileid
คือหมายเลขที่เกิดขึ้นหลังจากนั้น ?id=
ใน URL เวิร์กช็อปตัวอย่างเช่น https://steamcommunity.com/sharedfiles/filedetails/
คำสั่งคอนโซลสำหรับการโฮสต์คอลเลกชันเวิร์กช็อปคือ host_workshop_collection collectionid
ที่ collectionid
เป็นหมายเลขที่เกิดขึ้นหลังจากนั้น ?id=
ใน URL เวิร์กช็อปตัวอย่างเช่น https://steamcommunity.com/sharedfiles/filedetails/?id=109290469444 คำสั่งนี้จะดาวน์โหลดแผนที่ทั้งหมดในคอลเลกชันและสร้าง mapgroup จากพวกเขาจากนั้นโฮสต์
การตั้งค่าแผนที่สำหรับโหมดเกมที่แตกต่างกัน
คัดลอกไฟล์ /game/csgo/gamemodes_server.txt
ตามขั้นตอนไฟล์ที่กำหนดเอง ( /custom_files/gamemodes_server.txt
) และเพิ่มแผนที่ที่คุณต้องการต่อเกม เกมส่วนใหญ่อยู่ภายใต้ไม่เป็นทางการ แต่ฉันได้สร้างกลุ่มที่ไม่ซ้ำกันสำหรับแต่ละโหมดดังนั้นการเพิ่มแผนที่ของคุณเองนั้นง่ายโดยการอัปเดตไฟล์นี้
ไม่จำเป็นต้องใช้ แต่คุณควรเพิ่ม fileID ลงใน /game/csgo/subscribed_file_ids.txt
ตามขั้นตอนไฟล์ที่กำหนดเอง ( /custom_files/subscribed_file_ids.txt
) ดังนั้นเซิร์ฟเวอร์จะทำให้ทันสมัยอยู่เสมอ
หากคุณมี Python คุณสามารถใช้เครื่องมือของเราที่มีอยู่เพื่อเพิ่มแผนที่ไปยังกลุ่มแผนที่เกมที่กำหนดเองของคุณกลุ่ม: python scripts/add-map.py <group_name> <map_name> [workshop_id] --custom
อ้างถึง scripts/add-map.py
สำหรับข้อมูลเพิ่มเติม
ทำงานบน Google Cloud
สร้างกฎไฟร์วอลล์
gcloud compute firewall-rules create source
--allow tcp:27015-27020,tcp:80,udp:27015-27020
สร้างอินสแตนซ์
ตรวจสอบให้แน่ใจว่าคุณมีการตั้งค่าทั้งหมดสำหรับตัวแปรสภาพแวดล้อมของคุณ
หากคุณมีปัญหากับเซิร์ฟเวอร์ที่ไม่ได้จัดการโหลดคุณอาจต้องการพิจารณาเครื่องที่ได้รับการปรับแต่ง c2-standard-4
gcloud beta compute instances create <instance-name>
--maintenance-policy=TERMINATE
--project=<project>
--zone=australia-southeast1-c
--machine-type=n2-standard-2
--network-tier=PREMIUM
--metadata=RCON_PASSWORD=changeme,STEAM_ACCOUNT=changeme,API_KEY=changeme,DUCK_DOMAIN=changeme,DUCK_TOKEN=changeme,startup-script="echo "Delaying for 30 seconds..." && sleep 30 && cd / && /gcp.sh"
--no-restart-on-failure
--scopes=https://www.googleapis.com/auth/devstorage.read_only,https://www.googleapis.com/auth/compute.readonly,https://www.googleapis.com/auth/logging.write,https://www.googleapis.com/auth/monitoring.write,https://www.googleapis.com/auth/servicecontrol,https://www.googleapis.com/auth/service.management.readonly,https://www.googleapis.com/auth/trace.append
--tags=source
--image-family=ubuntu-2204-lts
--image-project=ubuntu-os-cloud
--boot-disk-size=60GB
--boot-disk-type=pd-standard
--boot-disk-device-name=<instance-name>
SSH ไปยังเซิร์ฟเวอร์
gcloud compute ssh <instance-name>
--zone=australia-southeast1-c
ติดตั้ง mod
sudo su
cd / && curl --silent --output "gcp.sh" "https://raw.githubusercontent.com/kus/cs2-modded-server/master/gcp.sh" && chmod +x gcp.sh && bash gcp.sh
หากการติดตั้งหยุดชั่วคราวเป็นเวลานานให้รีสตาร์ทเซิร์ฟเวอร์และทำอีกครั้ง
หยุดเซิร์ฟเวอร์
gcloud compute instances stop <instance-name>
--zone australia-southeast1-c
เริ่มเซิร์ฟเวอร์
gcloud compute instances start <instance-name>
--zone australia-southeast1-c
ลบเซิร์ฟเวอร์
gcloud compute instances delete <instance-name>
--zone australia-southeast1-c
กดไฟล์ไปยังเซิร์ฟเวอร์จากเครื่องท้องถิ่น
ตัวอย่างเช่นแผนที่:
On local:
gcloud config set project <project>
cd /path/to/folder
gcloud compute scp de_kus.vpk root@<instance-name>:/home/steam/cs2/game/csgo/maps --zone australia-southeast1-c
On server SSH:
cd /home/steam/cs2/game/csgo/maps
chown steam:steam de_kus.vpk
chmod 644 de_kus.vpk
ดาวน์โหลดจากเซิร์ฟเวอร์
gcloud compute scp root@<instance-name>:/home/steam/cs2/gamecsgo/cfg/comp.cfg ~/Desktop/
ปิด VM เวลา 03:30 น. ทุกวัน
SSH เข้าสู่ VM
เปลี่ยนเป็นรูท sudo su
ตรวจสอบเขตเวลาเซิร์ฟเวอร์ของคุณกำลังทำงานอยู่ใน sudo hwclock --show
เปิดไฟล์ crontab nano /etc/crontab
ผนวกไปที่ส่วนท้ายของไฟล์ crontab 30 3 * * * root shutdown -h now
บันทึก CTRL + X
ทำงานบน Linux
ตรวจสอบให้แน่ใจว่าคุณมี พื้นที่ว่าง 60GB
ตรวจสอบให้แน่ใจว่าคุณมีการตั้งค่าทั้งหมดสำหรับตัวแปรสภาพแวดล้อมของคุณ
หากตั้งค่าเซิร์ฟเวอร์อินเทอร์เน็ต:
ตั้งค่าตัวแปรสภาพแวดล้อม STEAM_ACCOUNT
เป็นโทเค็นการเข้าสู่ระบบเซิร์ฟเวอร์เกมของคุณ
ตรวจสอบให้แน่ใจว่าคุณพอร์ตไปข้างหน้าบนเราเตอร์ TCP ของคุณ: 27015
และ UDP: 27015
และ 27020
เพื่อให้ผู้เล่นสามารถเชื่อมต่อจากอินเทอร์เน็ต
คุณต้องเชื่อมต่อกับเซิร์ฟเวอร์จาก IP สาธารณะไม่ใช่ LAN IP แม้ว่าคุณจะอยู่ในเครือข่ายเดียวกัน สคริปต์บันทึก Starting server on XXX.XXX.XXX.XXX:27015
หากตั้งค่าเซิร์ฟเวอร์ LAN:
ตั้งค่าตัวแปรสภาพแวดล้อม LAN
เป็น 1
sudo su
export RCON_PASSWORD="changeme"
export API_KEY="changeme"
export STEAM_ACCOUNT=""
export SERVER_PASSWORD=""
export PORT="27015"
export TICKRATE="128"
export MAXPLAYERS="32"
cd / && curl --silent --output "install.sh" "https://raw.githubusercontent.com/kus/cs2-modded-server/master/install.sh" && chmod +x install.sh && bash install.sh
เพื่อตรวจสอบว่าทุกอย่างทำงานได้อย่างถูกต้องเรียกใช้คำสั่งต่อไปนี้ในคอนโซลเซิร์ฟเวอร์:
-
meta list
และคุณควรเห็น CounterStrikeSharp
ในเอาต์พุต -
css_plugins list
และคุณควรเห็นปลั๊กอินสองสามตัวในเอาต์พุต
หากคุณเห็นเนื้อหาในทั้งสอง; ทุกอย่างทำงาน
เมื่อคุณเข้าร่วมเซิร์ฟเวอร์คุณสามารถเปลี่ยนโหมดเกมได้
ทำงานใน Docker
ทดสอบบน Windows 11 ด้วยการรวม WSL2 เป็นแบ็กเอนด์
ตรวจสอบให้แน่ใจว่ามีการติดตั้ง Docker และพื้นที่ดิสก์ประมาณ 40 GB นั้นฟรี
คุณสามารถดาวน์โหลด repo นี้และแยกไปยังที่ที่คุณต้องการเซิร์ฟเวอร์ของคุณ (เช่น C: server cs2-modded-server) หรือใช้ git และ clone repo git clone https://github.com/kus/cs2-modded-server.git
และเรียกใช้เซิร์ฟเวอร์ของคุณจากด้านใน วิธีนี้คุณสามารถ GIT PULL UPDATES ได้
หากตั้งค่าสำหรับเซิร์ฟเวอร์อินเทอร์เน็ต:
ตั้งค่าตัวแปร 'steam_account' ใน '.env'-file ในรูทถ้าที่เก็บ สำหรับแผนที่เวิร์กช็อปตั้งค่า 'API_KEY' ใน '.ENV'-FILE
สร้างภาพนักเทียบท่า:
docker build -t cs2-modded-server .
เรียกใช้เซิร์ฟเวอร์
docker compose up
ทำงานบน Windows
ตรวจสอบให้แน่ใจว่าคุณมี พื้นที่ว่าง 60GB
คุณสามารถดาวน์โหลด repo นี้และแยกไปยังที่ที่คุณต้องการเซิร์ฟเวอร์ของคุณ (เช่น C:Servercs2-modded-server
) หรือใช้ git และ clone repo git clone https://github.com/kus/cs2-modded-server.git
และเรียกใช้เซิร์ฟเวอร์ของคุณจากด้านใน วิธีนี้คุณสามารถ git pull
UPDATES ได้
คำแนะนำต่อไปนี้ทั้งหมดจะใช้ตำแหน่งโฟลเดอร์ repo เป็นรูท
สร้างโฟลเดอร์ steamcmd
และดาวน์โหลด Steamcmd และแยกออกภายใน steamcmd
ดังนั้นคุณควรมี steamcmdsteamcmd.exe
ในการดาวน์โหลดแผนที่จากเวิร์กช็อปเซิร์ฟเวอร์ของคุณต้องการเข้าถึง Steam Web API หากต้องการอนุญาตให้เปิด win.ini
และตั้งค่า cs_api_key
เป็นปุ่ม Steam Web API ของคุณ
หากตั้งค่าเซิร์ฟเวอร์อินเทอร์เน็ต:
เปิด win.ini
ตั้งค่า IP
เป็น IP สาธารณะของคุณ
ตั้ง STEAM_ACCOUNT
Token Login Game Sever ของคุณ
ตั้งค่า API_KEY
ให้กับคีย์ API ของคุณ (จำเป็นต้องเล่นแผนที่เวิร์กช็อป)
ตรวจสอบให้แน่ใจว่าคุณพอร์ตไปข้างหน้าบนเราเตอร์ TCP ของคุณ: 27015
และ UDP: 27015
และ 27020
เพื่อให้ผู้เล่นสามารถเชื่อมต่อจากอินเทอร์เน็ต
คุณต้องเชื่อมต่อกับเซิร์ฟเวอร์จาก IP สาธารณะไม่ใช่ LAN IP แม้ว่าคุณจะอยู่ในเครือข่ายเดียวกัน
หากตั้งค่าเซิร์ฟเวอร์ LAN:
เปิด win.ini
ตั้ง LAN
เป็น 1
ตั้งค่า API_KEY
ให้กับคีย์ API ของคุณ (จำเป็นต้องเล่นแผนที่เวิร์กช็อป)
เพิ่ม Admins
เรียกใช้ win.bat
ยอมรับการเชื่อมต่อทั้งแบบส่วนตัวและสาธารณะใน Windows Firewall
เพื่อตรวจสอบว่าทุกอย่างทำงานได้อย่างถูกต้องเรียกใช้คำสั่งต่อไปนี้ในคอนโซลเซิร์ฟเวอร์:
-
meta list
และคุณควรเห็น CounterStrikeSharp
ในเอาต์พุต -
css_plugins list
และคุณควรเห็นปลั๊กอินสองสามตัวในเอาต์พุต
หากคุณเห็นเนื้อหาในทั้งสอง; ทุกอย่างทำงาน
เมื่อคุณเข้าร่วมเซิร์ฟเวอร์คุณสามารถเปลี่ยนโหมดเกมได้
คำถามที่พบบ่อย
คำสั่งผู้เล่น
! rtv
ผู้เล่นสามารถเริ่มโหวตเพื่อเปลี่ยนแผนที่ใน mod ปัจจุบันโดยพิมพ์ !rtv
ในการแชท
! GameMode
ผู้เล่นสามารถเริ่มโหวตเพื่อเปลี่ยนโหมดเกมโดยการพิมพ์ !gamemode
ในการแชท
นอกจากนี้คุณยังสามารถเริ่มโหมดโหมดเกมที่เฉพาะ !bhop
!prac
พิมพ์ !comp
!wingman
, !dm
,! !gg
, !kz
!1v1
!executes
!awp
,! !aim
!retake
!prefire
,! !surf
, !minigames
,! !deathrun
,! !course
, !scoutzknivez
,! !hns
, !br
,! !soccer
, !1.6
แผนที่ใดที่กำหนดค่าไว้ล่วงหน้าในแต่ละโหมด?
mg_active
| de_ancient Changlevel de_ancient |
| de_anubis Changlevel de_anubis |
| de_inferno Changlevel de_inferno |
| de_mirage Changlevel de_mirage |
| de_nuke Changlevel de_nuke |
| de_dust2 Changlevel de_dust2 |
| de_vertigo Changlevel de_vertigo |
|
MG_COMP
| cs_italy Changlevel cs_italy |
| cs_office Changlevel CS_OFFICE |
| de_vertigo Changlevel de_vertigo |
| de_ancient Changlevel de_ancient |
| de_anubis Changlevel de_anubis |
| de_dust2 Changlevel de_dust2 |
| de_inferno Changlevel de_inferno |
| de_mirage Changlevel de_mirage |
| de_nuke Changlevel de_nuke |
| de_overpass Changlevel de_overpass |
| de_vertigo Changlevel de_vertigo |
| de_assembly Changlevel de_assembly |
| de_cbble host_workshop_map 3329387648 |
| de_cache host_workshop_map 3070244931 |
| de_pipeline host_workshop_map 3079872050 |
| de_biome host_workshop_map 3075706807 |
| MP_RAID host_workshop_map 3070346180 |
| de_mutiny host_workshop_map 3070766070 |
| cs_assault host_workshop_map 3070594412 |
| de_ruins_d_prefab host_workshop_map 3072352643 |
| cs_militia host_workshop_map 3089953774 |
| de_aztec host_workshop_map 3070960099 |
| de_akiba host_workshop_map 3108513658 |
| cs_insertion2 host_workshop_map 3236615060 |
| de_train host_workshop_map 3070284539 |
| de_mills Changlevel de_mills |
| de_thera Changlevel de_thera |
| de_season host_workshop_map 3073892687 |
|
mg_wingman
| cs_italy Changlevel cs_italy |
| cs_office Changlevel CS_OFFICE |
| de_vertigo Changlevel de_vertigo |
| de_ancient Changlevel de_ancient |
| de_anubis Changlevel de_anubis |
| de_dust2 Changlevel de_dust2 |
| de_inferno Changlevel de_inferno |
| de_mirage Changlevel de_mirage |
| de_nuke Changlevel de_nuke |
| de_overpass Changlevel de_overpass |
| de_vertigo Changlevel de_vertigo |
| ar_shoots Changlevel ar_shoots |
| ar_baggage Changlevel ar_baggage |
| gd_rialto host_workshop_map 3085490518 |
| de_safehouse host_workshop_map 3070550406 |
| de_lake host_workshop_map 3070563536 |
| de_bank host_workshop_map 3070581293 |
| de_shortdust host_workshop_map 3070612859 |
| de_assembly Changlevel de_assembly |
| de_cbble host_workshop_map 3329387648 |
| de_cache host_workshop_map 3070244931 |
| de_pipeline host_workshop_map 3079872050 |
| de_biome host_workshop_map 3075706807 |
| MP_RAID host_workshop_map 3070346180 |
| de_mutiny host_workshop_map 3070766070 |
| cs_assault host_workshop_map 3070594412 |
| de_ruins_d_prefab host_workshop_map 3072352643 |
| de_train host_workshop_map 3070284539 |
| de_sakura host_workshop_map 3082340867 |
| de_memento Changlevel de_memento |
| Skatepark host_workshop_map 3309665004 |
| de_palais host_workshop_map 3257582863 |
|
mg_dm
| cs_italy Changlevel cs_italy |
| cs_office Changlevel CS_OFFICE |
| de_vertigo Changlevel de_vertigo |
| de_ancient Changlevel de_ancient |
| de_anubis Changlevel de_anubis |
| de_dust2 Changlevel de_dust2 |
| de_inferno Changlevel de_inferno |
| de_mirage Changlevel de_mirage |
| de_nuke Changlevel de_nuke |
| de_overpass Changlevel de_overpass |
| de_vertigo Changlevel de_vertigo |
| ar_shoots Changlevel ar_shoots |
| ar_baggage Changlevel ar_baggage |
| gd_rialto host_workshop_map 3085490518 |
| de_safehouse host_workshop_map 3070550406 |
| de_lake host_workshop_map 3070563536 |
| de_bank host_workshop_map 3070581293 |
| de_shortdust host_workshop_map 3070612859 |
| ar_pool_day Changlevel ar_pool_day |
| fy_iceworld host_workshop_map 3070238628 |
| Daymare host_workshop_map 3072640420 |
| AIM_THEOREM host_workshop_map 3070348309 |
| de_assembly Changlevel de_assembly |
| de_cbble host_workshop_map 3329387648 |
| de_cache host_workshop_map 3070244931 |
| de_pipeline host_workshop_map 3079872050 |
| de_biome host_workshop_map 3075706807 |
| dm_desk host_workshop_map 3077599381 |
| fun_bounce host_workshop_map 3088183343 |
| 1V1AIM_MAP_LONGDUSTVERSION_D host_workshop_map 3082605693 |
| ar_churches_s2r host_workshop_map 3070291913 |
| แมคโดนัลด์ host_workshop_map 31344666699 |
| AIM_AG_TEXTURE_CITY_ADVANCED host_workshop_map 3082113929 |
| traningoutside host_workshop_map 3080973179 |
| shipment_version_1_0 host_workshop_map 3086555291 |
| AIM_AG_TEXTURE2 host_workshop_map 3074961197 |
| AIM_AG_TEXTURE_JUNGLE host_workshop_map 3095778105 |
| cs2_bloodstrike host_workshop_map 3071890065 |
| GG_SIMPSONS_VS_FLANDERS_V2 host_workshop_map 3109232789 |
| de_akiba host_workshop_map 3108513658 |
| cs_facingworlds-99 host_workshop_map 3112806723 |
| de_train host_workshop_map 3070284539 |
| de_sakura host_workshop_map 3082340867 |
| de_memento Changlevel de_memento |
| de_mills Changlevel de_mills |
| de_thera Changlevel de_thera |
| de_palais host_workshop_map 3257582863 |
| school_d_environment_prefab host_workshop_map 3343693110 |
|
mg_gg
| ar_shoots Changlevel ar_shoots |
| ar_baggage Changlevel ar_baggage |
| ar_pool_day Changlevel ar_pool_day |
| de_assembly Changlevel de_assembly |
| fy_iceworld host_workshop_map 3070238628 |
| Daymare host_workshop_map 3072640420 |
| แมคโดนัลด์ host_workshop_map 31344666699 |
| AIM_THEOREM host_workshop_map 3070348309 |
| de_safehouse host_workshop_map 3070550406 |
| de_lake host_workshop_map 3070563536 |
| de_bank host_workshop_map 3070581293 |
| fun_bounce host_workshop_map 3088183343 |
| 1V1AIM_MAP_LONGDUSTVERSION_D host_workshop_map 3082605693 |
| ar_churches_s2r host_workshop_map 3070291913 |
| AIM_AG_TEXTURE_CITY_ADVANCED host_workshop_map 3082113929 |
| traningoutside host_workshop_map 3080973179 |
| shipment_version_1_0 host_workshop_map 3086555291 |
| AIM_AG_TEXTURE2 host_workshop_map 3074961197 |
| AIM_AG_TEXTURE_JUNGLE host_workshop_map 3095778105 |
| cs2_bloodstrike host_workshop_map 3071890065 |
| GG_SIMPSONS_VS_FLANDERS_V2 host_workshop_map 3109232789 |
| school_d_environment_prefab host_workshop_map 3343693110 |
|
mg_1v1
| AIM_REDLINE_FP host_workshop_map 3070253400 |
|
mg_bhop
| bhop_at_night host_workshop_map 3077211069 |
| bhop_ragnarok host_workshop_map 3077153735 |
| bhop_zunron host_workshop_map 3077475505 |
| bhop_1derland host_workshop_map 3077596014 |
| bhop_whiteshit host_workshop_map 3078523849 |
| bhop_cherryblossom host_workshop_map 3082038560 |
| bhop_arcturus host_workshop_map 3088973190 |
| bhop_kiwi_cwfx host_workshop_map 3095219437 |
|
mg_kz
| only_up host_workshop_map 3074758439 |
| kz_dima host_workshop_map 3343029934 |
| ewii_challenge host_workshop_map 3170668869 |
| kz_hub host_workshop_map 3070220367 |
| HellcaseCyrilchallenge host_workshop_map 3145779590 |
| kz_checkmate host_workshop_map 3070194623 |
| kz_victoria host_workshop_map 3086304337 |
| kz_rc_stonehenge host_workshop_map 3072219045 |
| KZ_SXB2_CXZ host_workshop_map 3083714192 |
| KZ_RC_TWOTOWERS host_workshop_map 3083509404 |
| kz_simplyhard host_workshop_map 3078311932 |
| kz_nomibo host_workshop_map 3077122656 |
| kz_sxb2_biewan host_workshop_map 3076000218 |
| kz_ggsh host_workshop_map 3072744536 |
| kz_ltt host_workshop_map 3072699538 |
|
mg_surf
| surf_kitsune host_workshop_map 3076153623 |
| surf_utopia_njv host_workshop_map 3073875025 |
| Surf_beginner host_workshop_map 3070321829 |
| surf_mesa_revo host_workshop_map 3076980482 |
| surf_deathstar host_workshop_map 3080544577 |
| Surf_rookie host_workshop_map 3082548297 |
| surf_benevolent host_workshop_map 3098972556 |
| พื้นผิว host_workshop_map 3088413071 |
|
mg_minigames
| mg_skeet_multigames_v7 host_workshop_map 3082120895 |
| mg_lego_course_2 host_workshop_map 3202752274 |
| mg_warmcup_headshot host_workshop_map 3076765511 |
|
mg_battleroyale
| br_electrified host_workshop_map 3330484099 |
| br_stacks host_workshop_map 3297489255 |
| br_flood host_workshop_map 3267454508 |
| Minecraft host_workshop_map 3186779271 |
|
mg_deathrun
| Deathrun_playground host_workshop_map 3164611860 |
| Deathrun_egypt host_workshop_map 3311285877 |
| Deathrun_civilization host_workshop_map 3188021118 |
| Deathrun_iceworld_cs2 host_workshop_map 3083325292 |
|
mg_course
| CR_DEVISLAND_P1_V1 host_workshop_map 3076483842 |
| mg_switch_course_v2 host_workshop_map 3070439729 |
| cr_minecraft_jb_v2 host_workshop_map 3070896876 |
| mg_metro_course_v1 host_workshop_map 3070463151 |
| mg_alley_course_v2 host_workshop_map 3070455802 |
| mg_glave_course_v2 host_workshop_map 3070445185 |
| mg_office_course_v3 host_workshop_map 3070459211 |
| mg_metal_course_v2 host_workshop_map 3070464208 |
| mg_acrophobia_run_v2 host_workshop_map 3070463620 |
| mg_metro_course_s2 host_workshop_map 3071040020 |
| mg_circle_course_v3 host_workshop_map 3070434475 |
| mg_simpsons_course_v2 host_workshop_map 3070447697 |
| mg_sonic_course_v2 host_workshop_map 3070452642 |
| mg_sky_realm_v3 host_workshop_map 3070451616 |
|
mg_scoutzknivez
| Scoutzknivez_pure_cs2 host_workshop_map 3073929825 |
| ar_dizzy host_workshop_map 3070553020 |
|
mg_hns
| Infernohideandseek host_workshop_map 3097563690 |
| seek_town_bs host_workshop_map 3074479691 |
| Winterday_bs host_workshop_map 3070951079 |
| minus_denhet host_workshop_map 3070541369 |
| hs_lake host_workshop_map 3071094345 |
|
mg_soccer
| ฟุตซอล host_workshop_map 3293224257 |
| KA_SOCCER_2009 host_workshop_map 3070198374 |
|
mg_awp
| awp_bhop_rocket host_workshop_map 3142070597 |
|
mg_aim
| AIM_MAP host_workshop_map 3084291314 |
| freebet_aim_map host_workshop_map 3146122036 |
| fy_pool_day host_workshop_map 3070923343 |
| AIM_AK-COLT_CS2 host_workshop_map 3078701726 |
| AIM_USP host_workshop_map 3085962528 |
| AIM_DEAGLE host_workshop_map 3075996446 |
|
mg_prefire
| de_ancient Changlevel de_ancient |
| de_dust2 Changlevel de_dust2 |
| de_inferno Changlevel de_inferno |
| de_mirage Changlevel de_mirage |
| de_overpass Changlevel de_overpass |
| de_anubis Changlevel de_anubis |
| de_nuke Changlevel de_nuke |
|
mg_casual16
| as_oilrig host_workshop_map 3104677430 |
| cs_assult_classic host_workshop_map 3215705579 |
| de_aztec_classic host_workshop_map 3213800338 |
| de_dust_classic host_workshop_map 3078095785 |
| de_dust2_classic host_workshop_map 3201205818 |
| cs_italy_classic host_workshop_map 3212419403 |
| cs_militia_classic host_workshop_map 3144773563 |
| de_nuke_classic host_workshop_map 3205793205 |
| cs_office_classic host_workshop_map 3216844784 |
| de_survivor_classic_m host_workshop_map 3217247541 |
|
mg_45
| de_vertigo_45 host_workshop_map 3276886893 |
| de_anubis_silly host_workshop_map 3245985233 |
| de_overpass_45 host_workshop_map 3270066070 |
| de_nuke_silly host_workshop_map 3245245780 |
| de_mirage45 host_workshop_map 3270516952 |
|
ฉันจะเชื่อมต่อกับ RCON จากระยะไกลได้อย่างไร?
ดาวน์โหลด SourceAdMintool (แหล่งที่มา) สำหรับระบบปฏิบัติการของคุณ (คุณสามารถอ่านได้ที่นี่) และคลิก Servers > Add Servers
และใส่ใน <IP>:27015
และเมื่อคุณเห็นเซิร์ฟเวอร์แสดงในรายการลงด้านล่างซ้ายใน RCON ของคุณ รหัสผ่านและคลิกเข้า Login
และคุณควรจะสามารถดำเนินการคำสั่งจากกล่องข้อความด้านล่างเช่น exec dm.cfg
คุณต้องเชื่อมต่อกับเซิร์ฟเวอร์จาก IP สาธารณะหากโฮสต์เซิร์ฟเวอร์ออนไลน์ไม่ใช่ LAN IP แม้ว่าคุณจะอยู่ในเครือข่ายเดียวกัน สคริปต์บันทึก Starting server on XXX.XXX.XXX.XXX:27015
เมนูผู้ดูแลระบบ
ผู้ดูแลระบบได้รับการจัดการโดย CounterStrikesharp โดยใช้เฟรมเวิร์กผู้ดูแลระบบ คุณกำหนดผู้ดูแลระบบและธงของพวกเขาและปลั๊กอินส่วนใหญ่ใช้เฟรมเวิร์กนี้
หากต้องการดูตัวอย่างของผู้ดูแลระบบของฉันคุณสามารถดูไฟล์นี้/custom_files_example/addons/counterstrikesharp/configs/admins.json ในการตั้งค่าผู้ดูแลระบบของคุณบนเซิร์ฟเวอร์ของคุณเองให้ใช้ไฟล์นี้เป็นข้อมูลอ้างอิงและใช้ระบบไฟล์ที่กำหนดเองเพื่อให้มีเวอร์ชันของคุณเอง
ตรวจสอบให้แน่ใจว่าไฟล์ .json
ของคุณถูกต้องโดยใช้เว็บไซต์นี้
หากคุณเพิ่มผู้ดูแลระบบอย่างถูกต้องคุณควรเห็น Loaded admin data with X admins.
ในบันทึกเซิร์ฟเวอร์เมื่อเริ่มต้น
หากคุณแก้ไขเซิร์ฟเวอร์ในขณะที่เซิร์ฟเวอร์อยู่บนคุณสามารถเรียกใช้ css_admins_reload
และ css_groups_reload
เพื่อโหลดผู้ดูแลระบบใหม่และดูผู้ดูแลระบบด้วย css_admins_list
และ css_groups_list
ใช้คีย์หมายเลขเพื่อใช้งานเมนูแทนการพิมพ์! 1 ในการแชท
หากคุณไม่ต้องการพิมพ์แชท! หมายเลขทุกครั้งที่คุณต้องการใช้รายการเมนู คุณสามารถใช้เคล็ดลับนี้เพื่อผูกคำสั่งที่สอดคล้องกัน! หมายเลขกับคีย์หมายเลข ดังนั้นเมื่อคุณกด 1 มันจะเลือก 1 ตัวเลือก:
หมายเหตุ: นี่คือสมมติว่าคุณกำลังใช้การผูกมาตรฐาน คุณสามารถเปลี่ยนตามการตั้งค่าของคุณเอง
bind "1" "slot1; css_1"
bind "2" "slot2; css_2"
bind "3" "slot3; css_3"
bind "4" "slot4; css_4"
bind "5" "slot5; css_5"
bind "6" "slot6; css_6"
bind "7" "slot7; css_7"
bind "8" "slot8; css_8"
bind "9" "slot9; css_9"
bind "0" "slot10; css_0"
เปลี่ยนแผนที่
ผู้ดูแลระบบสามารถพิมพ์ !maps
ในการแชทและจะนำเมนูของแผนที่ทั้งหมดสำหรับ mod ปัจจุบัน เมื่อเลือกแผนที่จะเปลี่ยนแผนที่ทันที
ในตอนท้ายของแผนที่ (หากเวลาหมดหรือเป็นไปตามเงื่อนไขการชนะ) การลงคะแนนจะแสดงเพื่อเลือกแผนที่จาก mod ปัจจุบัน
การเปลี่ยนการตั้งค่า
ผู้ดูแลระบบสามารถพิมพ์ !settings
ในการแชทและจะนำเมนูของการตั้งค่าทั้งหมดที่คุณสามารถเปิดใช้งานหรือปิดการใช้งานได้ เช่น: กระต่าย, โหมดสนุก ฯลฯ
การเปลี่ยนโหมดเกม
ผู้ดูแลระบบสามารถพิมพ์ !modes
ในการแชทและจะนำเมนูของโหมดเกมทั้งหมดขึ้นมา เพียงเลือกหนึ่งแล้วจะเปลี่ยนไปใช้โหมดเกมนั้นและเปลี่ยนเป็นแผนที่เริ่มต้นสำหรับโหมดเกมนั้น
แผนที่ใน !maps
จะอัปเดตไปยังโหมดเกมใหม่เมื่อมีการเปลี่ยนแปลง
นอกจากนี้คุณยังสามารถเปลี่ยนเป็นโหมดเกมได้โดยตรงด้วยคำสั่ง RCON ผ่านการแชท IE !rcon exec dm
จะเปลี่ยนเป็น DeathMatch
นี่คือคำสั่งแชทที่มีอยู่ทั้งหมดเพื่อเปลี่ยนโหมดเกม:
สั่งการ | โหมดเกม |
---|
!rcon exec 1v1 | 1v1 (อนุญาตให้ผู้เล่นมากกว่า 2 คน) |
!rcon exec aim | จุดมุ่งหมาย |
!rcon exec ar | การแข่งขันอาวุธ (วาล์ว) |
!rcon exec awp | AWP เท่านั้น |
!rcon exec bhop | แผนที่กระต่ายฮอป |
!rcon exec br | Battle Royale |
!rcon exec comp | การแข่งขันโดยใช้การจับคู่ |
!rcon exec course | ทดสอบผู้เล่นที่มีกับดักที่แตกต่างกัน KZ, Surf, Bhop |
!rcon exec dm | ความตาย |
!rcon exec dm-valve | Deathmatch (วาล์ว) |
!rcon exec executes | ประหารชีวิต |
!rcon exec gg | เกมปืน |
!rcon exec hns | ซ่อน n แสวงหา |
!rcon exec kz | Kreedz ปีนเขา |
!rcon exec minigames | มินิเกม |
!rcon exec deathrun | มรณะ |
!rcon exec prac | ฝึกซ้อม (Grenade Lineups ฯลฯ ) |
!rcon exec prefire | การปฏิบัติก่อน |
!rcon exec retake | การยึดใหม่ |
!rcon exec scoutzknivez | Scoutzknivez |
!rcon exec soccer | ฟุตบอล |
!rcon exec surf | การเล่นกระดานโต้คลื่น |
!rcon exec wingman | Wingman (อนุญาตให้ผู้เล่นมากกว่า 4 คน) |
!rcon exec 45 | การแข่งขันด้วยแผนที่ 45 องศา |
ไม่แนะนำให้เปลี่ยนระหว่างเกมหลายครั้งและจะดีกว่าถ้าคุณรีสตาร์ทเซิร์ฟเวอร์ CS2 ในระหว่าง
หากต้องการดูคำสั่งอื่น ๆ ที่พร้อมใช้งานปลั๊กอินที่ด้านบนของหน้า
rcon ไม่ทำงาน
การใช้ RCON ในขณะที่เชื่อมต่อกับเซิร์ฟเวอร์ไม่ทำงาน ดูการสนทนาที่นี่ งานปัจจุบันคือ:
- ฉันได้รวม CS2RCON ซึ่งอนุญาตให้ผู้ดูแลระบบใช้! RCON ในการแชท
- คุณสามารถตัดการเชื่อมต่อจากเซิร์ฟเวอร์และใช้
rcon_address IP:PORT
ในคอนโซลและคุณสามารถใช้คำสั่ง RCON - ใช้โปรแกรม RCON ภายนอกซึ่งใช้โปรโตคอล RCON เช่นนี้
หากยังไม่ทำงานให้แน่ใจว่าคุณลองเชื่อมต่อจาก CS2 นอกเกมผ่านคอนโซล:
คุณต้องเชื่อมต่อกับเซิร์ฟเวอร์จาก IP สาธารณะหากโฮสต์เซิร์ฟเวอร์ออนไลน์ไม่ใช่ LAN IP แม้ว่าคุณจะอยู่ในเครือข่ายเดียวกัน สคริปต์บันทึก Starting server on XXX.XXX.XXX.XXX:27015
rcon_address ip:port
rcon_password " password "
rcon say " hi "
และตรวจสอบพอร์ต CS2 ใช้บน OS ของคุณเช่น Ubuntu sudo lsof -i -P -n | head -n 1; sudo lsof -i -P -n | grep cs2
เซิร์ฟเวอร์ของฉันหมดพื้นที่แล้ว!
แผนที่เวิร์กช็อปใช้พื้นที่มากมาย! หากคุณต้องการลบแผนที่เวิร์กช็อปทั้งหมดของคุณเพื่อให้เซิร์ฟเวอร์สามารถทำงานได้อีกครั้ง (จะดาวน์โหลดแผนที่ที่คุณต้องการเล่น) หยุดเซิร์ฟเวอร์ลบ workshop
และเริ่มเซิร์ฟเวอร์อีกครั้ง:
Linux:
cd /home/steam/cs2/game/bin/linuxsteamrt64/steamapps
ls -lah # You should see a workshop folder
du -sh workshop # To get the size of it
rm -rf workshop # Delete the workshop folder
Windows:
- เรียกดูที่ที่คุณกำลังเรียกใช้เซิร์ฟเวอร์ของคุณจาก
- เปิด
game/bin/win64/steamapps/
และคุณควรดูโฟลเดอร์เวิร์กช็อป - ลบโฟลเดอร์เวิร์กช็อป
ฉันจะเพิ่มบอทเพิ่มเติมได้อย่างไร?
โดยค่าเริ่มต้นบอทจะเปิดใช้งานใน DeathMatch, Gungame, Gungame FFA, Retake, Scoutsknives และ Wingman
ค่าเริ่มต้นถูกตั้งค่าเพื่อเพิ่ม 1 บอทหากมีเพียง 1 คนที่อยู่ในเซิร์ฟเวอร์และถ้ามีมนุษย์ 2 คนขึ้นไปจะไม่มีบอท
คุณสามารถเขียนทับการตั้งค่าสำหรับบอทโดยการสร้าง "ไฟล์ที่กำหนดเอง" สำหรับไฟล์นี้ custom_bots.cfg
หากคุณคัดลอก custom_bots.cfg และใส่ไว้ใน custom_files/cfg/
directory ( /home/steam/cs2/custom_files/cfg/
ในการตั้งค่า linux เริ่มต้น) และคุณสามารถแก้ไขและเปลี่ยน say bot_quota
เป็น 10
หากคุณต้องการผู้เล่น 10 คนที่ ตลอดเวลา When the server starts (on Linux and Windows) it will merge this file into the game cfg and it will execute every time bots.cfg
executes.
You can also just login to RCON rcon_password yourpassword
and use rcon bot_add_ct
and rcon bot_add_t
.
If you want to remove bots you use rcon bot_kick
.
Why can't I set the server to start automatically with a mod loaded
Because the way the server is setup with several mods it's not possible. You can't use +exec
in the server launcher as that executes to quick before SourceMod is loaded. You can monitor the server once it's started (via RCON) and then load a mod ie exec dm.cfg
.
Manually updating Metamod:Source and CounterStrikeSharp
If you are on a unix based system, you can run scripts/check-updates.sh
which will check the current versions of each plugin installed in this repo vs what the latest is, this makes it easier than going through each one manually.
Go to the Releases page for Metamod:Source and CounterStrikeSharp and download the latest. You need to merge the addons
folder from the zips into the /game/csgo/addons
of this repo. This is easy to do with unix based systems with rsync:
First open terminal and cd
into the folder where you unzipped the zips ie: cd ~/Downloads
then update the command below with the full path to the repo and run it:
rsync -rhavz --exclude "._*" --exclude ".DS_Store" --partial --progress --stats ./addons/ /Users/kus/dev/personal/counter-strike/cs2-modded-server/game/csgo/addons/
If you are on Windows, from the CounterStrikeSharp with runtime zip, you need to copy the api
, bin
, dotnet
folders from the /addons/counterstrikesharp
folder to game/csgo/addons/windows/counterstrikesharp
in this repo.
Enable advertisements
If you want to enable a whitelist on your server load the plugin by putting this css_plugins load "plugins/disabled/Advertisement/Advertisement.dll"
in one of your .cfg
files.
If you want it to load on every mod on your server, you can put it in your /custom_files/cfg/custom_all.cfg
file.
The config file is located at /game/csgo/addons/counterstrikesharp/plugins/disabled/Advertisement/advertisement.json
which you would put in /custom_files/addons/counterstrikesharp/plugins/disabled/Advertisement/advertisement.json
so it is not overwritten .
Enable Whitelist so only a list of people can play
If you want to enable a whitelist on your server load the plugin by putting this css_plugins load "plugins/disabled/WhiteList/WhiteList.dll"
in one of your .cfg
files.
If you want it to load on every mod on your server, you can put it in your /custom_files/cfg/custom_all.cfg
file.
The whitelist file is located at /game/csgo/addons/counterstrikesharp/plugins/disabled/WhiteList/whitelist.txt
which you would put in /custom_files/addons/counterstrikesharp/plugins/disabled/WhiteList/whitelist.txt
so it is not overwritten .
Failed to open libtier0.so
Failed to open libtier0.so (/home/steam/cs2/bin/libgcc_s.so.1: version 'GCC_7.0.0' not found (required by /lib/i386-linux-gnu/libstdc++.so.6))
This is because Valve ships their own copies of those libraries. As modern systems will have newer versions, you can safely delete the listed file from the server install. Do not delete the file in the system path (usually lib or lib32)*.
cd /home/steam/cs2/bin/
and rm libgcc_s.so.1
and restart the server.
ใบอนุญาต
See LICENSE
for more details.