SourceCoop เป็นม็อดความร่วมมือสำหรับเกม Source Engine ที่ทำให้แคมเปญสำหรับผู้เล่นเดี่ยวสามารถเล่นร่วมกันได้ ปัจจุบันรองรับแล้ว แบล็คเมซาและ Half-Life 2: เดธแมตช์
สารบัญ |
---|
คู่มือการติดตั้ง - ? การสนับสนุนแคมเปญ - การกำหนดค่า - ? มีส่วนร่วม - ? เครดิต |
- เคล็ดลับการทำงานของเซิร์ฟเวอร์ - ? เซิร์ฟเวอร์สาธารณะ |
กำลังพัฒนา - ?? รูปแบบสคริปต์แผนที่ EDT - การเขียนแผนที่ |
หากคุณเป็นคนที่กำลังมองหาการเล่นบนเซิร์ฟเวอร์ แสดงว่าคุณพร้อมและพร้อมที่จะเล่นแล้ว! เซิร์ฟเวอร์สหกรณ์สามารถพบได้ในเซิร์ฟเวอร์เบราว์เซอร์เช่นเดียวกับเซิร์ฟเวอร์อื่นๆ
ดาวน์โหลดเครื่องเล่น
เมื่อเข้าร่วมเซิร์ฟเวอร์ ผู้เล่นจะสามารถดาวน์โหลดไฟล์ที่จำเป็นที่สุดได้โดยอัตโนมัติ สำหรับแผนที่เวิร์กชอปแบบกำหนดเองใน Black Mesa ผู้เล่นจะต้องสมัครรับไอเท็มเวิร์กชอป Steam ด้วยตนเองก่อนที่จะเริ่มเกม คอลเลกชัน Steam Workshop อย่างเป็นทางการที่มีแผนที่ SourceCoop ที่รองรับทั้งหมดสามารถพบได้ที่นี่
หากคุณเป็นผู้ให้บริการเซิร์ฟเวอร์ที่ต้องการโฮสต์เซิร์ฟเวอร์สหกรณ์ของคุณเอง ให้ปฏิบัติตามวิธีการติดตั้งด้านล่างและส่งต่อพอร์ตที่จำเป็น:
การติดตั้งสคริปต์จะเข้าสู่กระบวนการติดตั้งไฟล์เซิร์ฟเวอร์และปลั๊กอินที่จำเป็นสำหรับการเรียกใช้เซิร์ฟเวอร์ที่ทำงานร่วมกันโดยอัตโนมัติ
?การกระจาย Linux
สคริปต์การติดตั้ง Linux ได้รับการทดสอบด้วยการแจกแจงต่อไปนี้:
- อูบุนตู
- เดเบียน
หากสคริปต์การติดตั้งไม่รองรับการแจกจ่าย Linux ที่คุณใช้อยู่ คุณสามารถแก้ไขสคริปต์และสร้างคำขอดึงได้ตามใจชอบ!
ดาวน์โหลดสคริปต์การติดตั้งที่เกี่ยวข้องสำหรับระบบของคุณ
รันคำสั่งต่อไปนี้ในเทอร์มินัลเพื่อเริ่มการติดตั้ง:
ไดเรกทอรีใหม่
ในการเรียกใช้สคริปต์ ไดเร็กทอรีต่อไปนี้จะถูกสร้างขึ้นภายในไดเร็กทอรีปัจจุบันของเทอร์มินัล:
- เซิร์ฟเวอร์เฉพาะ Black Mesa
- SteamCMD
- ไอน้ำ
Set-ExecutionPolicy - ExecutionPolicy Bypass - Scope Process
. / srccoop - bms - windows - install.ps1
chmod +x " ./srccoop-bms-linux-install.sh "
./srccoop-bms-linux-install.sh
หลังจากกระบวนการติดตั้งเสร็จสมบูรณ์ คุณสามารถเริ่มต้นเซิร์ฟเวอร์ได้โดยการรันคำสั่งต่อไปนี้ ตรวจสอบให้แน่ใจว่าพอร์ตที่จำเป็นได้รับการส่งต่อเพื่อให้ผู้เล่นสามารถเข้าร่วมเซิร์ฟเวอร์ได้!
cd " Black Mesa Dedicated Server "
. / srcds_coop.bat
cd " Black Mesa Dedicated Server "
./srcds_coop.sh
login " anonymous "
app_update 346680
quit
login " anonymous "
app_update 232370
quit
มีคำแนะนำแบบภาพทีละขั้นตอนสำหรับ Black Mesa ด้วย ไอน้ำ.
เพื่อให้ผู้เล่นสามารถเข้าร่วมเซิร์ฟเวอร์ได้ คุณจะต้องส่งต่อเฉพาะการส่งผ่านเกมเริ่มต้นพอร์ต TCP/UDP 27015
เท่านั้น พอร์ตอื่นๆ ทั้งหมดเป็นทางเลือก
ท่าเรือ | ประเภทไปข้างหน้า | คำอธิบาย |
---|---|---|
27015 | TCP/UDP | การส่งเกม ping และ RCON - สามารถเปลี่ยนแปลงได้โดยใช้ -port เมื่อเริ่มต้น |
27020 | ยูดีพี | การส่งสัญญาณ SourceTV - สามารถเปลี่ยนแปลงได้โดยใช้ +tv_port เมื่อเริ่มต้น |
27005 | ยูดีพี | พอร์ตไคลเอ็นต์ - สามารถเปลี่ยนแปลงได้โดยใช้ -clientport เมื่อเริ่มต้น |
26900 | ยูดีพี | Steam Port, ขาออก - สามารถเปลี่ยนแปลงได้โดยใช้ -sport เมื่อเริ่มต้น |
SourceCoop อนุญาตให้กำหนดค่าแผนที่สำหรับผู้เล่นคนเดียว โดยไม่ต้องถอดรหัสและแจกจ่ายซ้ำ เรียนรู้เพิ่มเติมเกี่ยวกับการสร้างของคุณเอง ในรูปแบบสคริปต์แผนที่ EDT
หากคุณได้สร้างการสนับสนุนความร่วมมือแบบเนทีฟสำหรับแผนที่ของคุณโดยรวมไฟล์ EDT แล้ว โปรดส่งคำขอดึงไปที่ README.md
ด้วยลิงก์ไอเท็มเวิร์กชอป Steam ของคุณ เพื่อให้เราสามารถแสดงมันออกมาได้!
สั่งการ | คำอธิบาย | แอดดอน |
---|---|---|
sm_coopmenu | แสดงเมนูสุ่ม | ฐาน |
sizeup | แสดงเมนูสุ่ม | ฐาน |
sm_thirdperson | พิมพ์ !thirdperson เพื่อเข้าสู่โหมดบุคคลที่สาม | บุคคลที่สาม |
sm_firstperson | พิมพ์ !firstperson เพื่อออกจากโหมดบุคคลที่สาม | บุคคลที่สาม |
stuck | คำสั่งปลดล๊อค | ไม่ติดขัด |
unstuck | คำสั่งปลดล๊อค | ไม่ติดขัด |
sm_skipintro | เริ่มการโหวตบทนำแบบข้าม | การลงคะแนนเสียง |
sm_restartmap | เริ่มการโหวตแผนที่ใหม่ | การลงคะแนนเสียง |
sm_changemap | แสดงเมนูสำหรับเปลี่ยนแผนที่ | การลงคะแนนเสียง |
sm_survival | เริ่มการลงคะแนนเสียงเอาชีวิตรอด | การลงคะแนนเสียง |
สั่งการ | คำอธิบาย | แอดดอน |
---|---|---|
sc_save | ส่งออกสถานะอุปกรณ์ของเครื่องเล่นที่บันทึกไว้ล่าสุดไปยังไฟล์ | ฐาน |
sc_load | นำเข้าข้อมูลที่บันทึกไว้จากไฟล์และพยายามจัดเตรียมผู้เล่นแต่ละคน | ฐาน |
sc_clear | เคลียร์อุปกรณ์ที่มีอยู่และจัดเตรียมผู้เล่นด้วยค่าเริ่มต้นของแผนที่ | ฐาน |
sourcecoop_dump | คำสั่งสำหรับการทิ้งเอนทิตีแผนที่ลงในไฟล์ | ฐาน |
sc_dump | คำสั่งสำหรับการทิ้งเอนทิตีแผนที่ลงในไฟล์ | ฐาน |
sc_mkconfigs | สร้างการกำหนดค่า edt เริ่มต้นสำหรับแผนที่ทั้งหมดในไดเรกทอรีแผนที่ซึ่งขาดหายไป | ฐาน |
sc_revive | บังคับให้ผู้เล่นเกิดใหม่ | ฟื้นคืนชีพ |
sc_reload_maps | โหลดรายการทั้งหมดในเมนูแผนที่โหวตจากที่เก็บข้อมูลอีกครั้ง | การลงคะแนนเสียง |
ชื่อ | ค่าเริ่มต้น | คำอธิบาย | แอดดอน |
---|---|---|---|
sourcecoop_version | เวอร์ชันของม็อด SourceCoop | ฐาน | |
sourcecoop_respawntime | 2.0 | ตั้งเวลาเกิดใหม่ของผู้เล่นเป็นวินาที | ฐาน |
sourcecoop_start_wait_period | 15.0 | จำนวนวินาทีสูงสุดที่ต้องรอนับตั้งแต่ผู้เล่นคนแรกเข้ามาเพื่อเริ่มแผนที่ | ฐาน |
sourcecoop_start_wait_mode | 2 | 0 = ตัวจับเวลาจะไม่ข้ามไป (ข้อยกเว้นคือแมปที่ไม่มี intro_type หรือชุดเอาต์พุตล่าช้า) 1 = เวลาจะถูกข้ามไปเมื่อผู้เล่นทุกคนเข้าสู่เกม 2 = ตัวจับเวลาจะถูกข้ามไปเมื่อจำนวนผู้เล่นตรงกับจำนวนผู้เล่นของแผนที่ก่อนหน้า | ฐาน |
sourcecoop_end_wait_period | 60.0 | จำนวนวินาทีสูงสุดที่จะรอนับตั้งแต่ผู้เล่นคนแรกทำให้เกิดการเปลี่ยนแปลงระดับ ความเร็วของตัวจับเวลาจะเพิ่มขึ้นทุกครั้งที่ผู้เล่นใหม่ผ่านด่าน | ฐาน |
sourcecoop_end_wait_factor | 1.0 | ควบคุมจำนวนผู้เล่นที่เสร็จสิ้นแล้วเพื่อเพิ่มความเร็วตัวจับเวลาการเปลี่ยนแปลงระดับ 1.0 หมายถึงเต็ม 0 หมายถึงไม่มี (ตัวจับเวลาจะทำงานเต็มความยาว) | ฐาน |
sourcecoop_homemap | แผนที่ที่จะกลับไปหลังจากเสร็จสิ้นแคมเปญ/แผนที่ | ฐาน | |
sourcecoop_end_wait_display_mode | 1 | กำหนดวิธีการแสดงการนับถอยหลัง 0 คือแผง 1 คือข้อความฮัด | ฐาน |
sourcecoop_validate_steamids | 0 | ตรวจสอบ Steam ID ของผู้เล่นหรือไม่? เพิ่มความปลอดภัยโดยแลกกับความเสียหายของฟังก์ชันการทำงานบางอย่างเมื่อ Steam หยุดทำงาน | ฐาน |
sourcecoop_default_config | ไฟล์ edt เริ่มต้นซึ่งสัมพันธ์กับโฟลเดอร์เกม ไฟล์นี้จะถูกคัดลอกเมื่อเริ่มต้นแผนที่โดยไม่มีการกำหนดค่าเป็น <sourcecoop_default_config_dest>/<mapname>.edt | ฐาน | |
sourcecoop_default_config_dest | "maps" | โฟลเดอร์ปลายทางสำหรับ sourcecoop_default_config สัมพันธ์กับโฟลเดอร์เกม ควรเป็นหนึ่งในเส้นทางการสแกน edt! | ฐาน |
sc_killfeed | 2 | ควบคุมการแสดงฟีดการฆ่า ( 0 : ปิดการใช้งาน, 1 : แชท, 2 : ฮัด) หากตั้งค่าเป็น 2 ปลั๊กอินจะวางไข่ในไคลเอนต์ปลอมเพื่อแสดงบนคิลฟีด | ฐาน |
sc_killfeed_player_kills | 2 | ควบคุมการแสดงการสังหารของผู้เล่นบนฟีดการฆ่า ( 0 : ซ่อน, 1 : ผู้เล่น, 2 : เอนทิตี) | ฐาน |
sc_killfeed_entity_kills | 2 | ควบคุมการแสดงการฆ่าเอนทิตีบนฟีดการฆ่า ( 0 : ซ่อน, 1 : ผู้เล่น, 2 : เอนทิตี) | ฐาน |
sc_killfeed_suicides | 2 | ควบคุมการแสดงการฆ่าตัวตายบนฟีดการฆ่า ( 0 : ซ่อน 1 : ผู้เล่น 2 : เอนทิตี) | ฐาน |
sourcecoop_survival_mode | 0 | ตั้งค่าโหมดเอาชีวิตรอด 0 = ปิด 1 ผู้เล่นจะเกิดใหม่ถ้าทุกคนตายหมด และ 2 จะรีสตาร์ทแผนที่ | ฐาน |
sourcecoop_survival_respawn | 1 | ไม่ว่าจะเกิดผู้เล่นที่ตายที่จุดตรวจหรือไม่ | ฐาน |
sourcecoop_survival_spawn_timeout | -1 | จำนวนวินาทีหลังจากที่แผนที่เริ่มต้น (หลังจากจับเวลาครั้งแรก) เพื่อให้สามารถวางไข่ได้ หรือ -1 โดยไม่จำกัดเวลา | ฐาน |
sourcecoop_difficulty | 0 | ตั้งค่าความยาก - ตั้งแต่ 0 (ความยากพื้นฐาน) ขึ้นไป | ความยาก |
sourcecoop_difficulty_auto | 2 | ตั้งค่าโหมดความยากอัตโนมัติ -1 ปิดการใช้งาน 0 ปรับสมดุลความยากระหว่างคอนวาร์ต่ำสุดและสูงสุด ค่าที่สูงกว่า 0 จะเป็นตัวกำหนดระดับความยากที่เพิ่มขึ้นต่อผู้เล่น โดยไม่สนใจค่าต่ำสุดและค่าสูงสุด | ความยาก |
sourcecoop_difficulty_auto_min | 1 | เมื่อตั้งค่าโหมดความยากอัตโนมัติเป็น 0 นี่คือความยากสำหรับผู้เล่น 1 คน | ความยาก |
sourcecoop_difficulty_auto_max | 20 | เมื่อตั้งค่าโหมดความยากอัตโนมัติเป็น 0 นี่คือความยากสำหรับผู้เล่นสูงสุด | ความยาก |
sourcecoop_difficulty_announce | 1 | สลับประกาศการเปลี่ยนแปลงในระดับความยาก | ความยาก |
sourcecoop_difficulty_ignoredmgto | รายชื่อคลาสที่ผู้เล่น->ความเสียหายของ NPC ได้รับการยกเว้นจากการปรับขนาดความยาก คั่นด้วยเครื่องหมายอัฒภาค | ความยาก | |
sourcecoop_difficulty_ignoredmgfrom | รายชื่อคลาสที่ npc->ความเสียหายของผู้เล่นได้รับการยกเว้นจากการปรับขนาดความยาก คั่นด้วยเครื่องหมายอัฒภาค | ความยาก | |
sourcecoop_earbleed_default | 0 | ตั้งค่าเริ่มต้นของการตั้งค่าเครื่องเล่นแบบ Earbleed | เลือดออกหู |
sourcecoop_fpd_fade_ms | 1500 | ระยะเวลาเป็นมิลลิวินาทีในการทำให้หน้าจอการตายของบุคคลที่หนึ่งจางลงเป็นสีดำ 0 เพื่อปิดการใช้งาน | ความตายคนแรก |
sourcecoop_fpd_player_toggle | 1 | ให้ผู้เล่นเลือกตัวเลือกกล้องแห่งความตายโดยไม่คำนึงถึงการตั้งค่าเซิร์ฟเวอร์/แผนที่ | ความตายคนแรก |
sourcecoop_logo_material | วัสดุที่ใช้ทำแลนดิ้งสกรีน | หน้าจอลงจอด | |
sourcecoop_revive_time | 4.0 | ตั้งเวลาที่คุณต้องกด E เพื่อฟื้นคืนชีพ | ฟื้นคืนชีพ |
sourcecoop_revive_score | 1 | กำหนดคะแนนที่จะมอบให้สำหรับการฟื้นฟูผู้เล่น | ฟื้นคืนชีพ |
sourcecoop_revive_messages | 0 | แสดงข้อความเช่น "You have started reviving x." | ฟื้นคืนชีพ |
sourcecoop_revive_ragdoll_effects_timer | 4.0 | ความล่าช้าในการใช้เอฟเฟกต์การเน้น ragdoll -1 เพื่อปิดการใช้งานเอฟเฟกต์ ragdoll ทั้งหมด | ฟื้นคืนชีพ |
sourcecoop_revive_ragdoll_particle | 1 | ไม่ว่าจะวางไข่อนุภาคภายในแร็กดอลของผู้เล่นเพื่อปรับปรุงการมองเห็นหรือไม่ | ฟื้นคืนชีพ |
sourcecoop_revive_ragdoll_blink | 1 | ว่าจะกะพริบแร็กดอลของผู้เล่นเพื่อปรับปรุงการมองเห็นหรือไม่ | ฟื้นคืนชีพ |
sourcecoop_revive_in_classic_mode | 1 | ไม่ว่าจะอนุญาตให้ฟื้นคืนชีพในโหมดไม่รอดหรือไม่ | ฟื้นคืนชีพ |
sourcecoop_killfeed_default | 0 | ตั้งค่าเริ่มต้นของการตั้งค่าโปรแกรมเล่น killfeed | การให้คะแนน |
sourcecoop_thirdperson_enabled | 1 | บุคคลที่สามเปิดใช้งานอยู่หรือไม่? | บุคคลที่สาม |
sourcecoop_next_stuck | 60.0 | ป้องกันการใช้ค้างเป็นเวลาหลายวินาทีหลังจากใช้งาน | ไม่ติดขัด |
sourcecoop_voting_autoreload | 1 | ตั้งค่าว่าจะโหลดรายการเมนูแผนที่โหวตทั้งหมดอีกครั้งในการเปลี่ยนแปลงแผนที่หรือไม่ ซึ่งอาจยืดเวลาการโหลดแผนที่ได้นานขึ้น | การลงคะแนนเสียง |
sourcecoop_voting_skipintro | 1 | อนุญาตให้ข้ามการโหวตช่วงแนะนำไหม | การลงคะแนนเสียง |
sourcecoop_voting_restartmap | 1 | อนุญาตให้รีสตาร์ทการโหวตแผนที่ไหม | การลงคะแนนเสียง |
sourcecoop_voting_changemap | 1 | อนุญาตให้เปลี่ยนการโหวตแผนที่หรือไม่ | การลงคะแนนเสียง |
sourcecoop_voting_survival | 2 | อนุญาตให้โหวตในโหมดเอาชีวิตรอดไหม ใช้ค่าใดค่าหนึ่งจาก sourcecoop_survival_mode เพื่อเลือกโหมดที่จะโหวต | การลงคะแนนเสียง |
sourcecoop_workshop_message | "Missing map! Subscribe to SourceCoop workshop collection + restart game" | ข้อความที่จะแสดงแก่ผู้เล่นที่ไม่มีแผนที่เวิร์กชอป ตัวยึดตำแหน่งที่รองรับ: {BSPNAME} | การประชุมเชิงปฏิบัติการ |
ConVar: sc_ft <FEATURE> <0 or 1>
ผลกระทบต่อการเล่นเกม ขอแนะนำให้ปล่อยคุณสมบัติเหล่านี้ไว้ที่ค่าเริ่มต้น เนื่องจากมีการกำหนดค่าสำหรับแต่ละแผนที่ภายในการกำหนดค่า EDT การแก้ไขค่าคุณสมบัติอาจส่งผลเสียต่อประสบการณ์การเล่นเกม
คุณสมบัติ | คำอธิบาย |
---|---|
FIRSTPERSON_DEATHCAM | เปิดใช้งานกล้องตายมุมมองบุคคลที่หนึ่ง |
HEV_SOUNDS | เปิดใช้งานเสียง HEV |
INSTANCE_ITEMS | สุ่มไอเทมและอาวุธสำหรับผู้เล่นแต่ละคน ไอเท็มอินสแตนซ์จะหายไปเมื่อหยิบขึ้นมาและ 'เกิดใหม่' พร้อมกับผู้เล่น |
INSTANCE_ITEMS_NORESET | หากเปิดใช้งาน ไอเท็มจะไม่ 'เกิดใหม่' ที่หยิบขึ้นมาหลังจากการตาย |
KEEP_EQUIPMENT | ทำให้ผู้เล่นเกิดพร้อมกับอุปกรณ์ที่หยิบมาก่อนหน้านี้ (ชุด, อาวุธ) ระดับโลกสำหรับผู้เล่นทุกคน |
DISABLE_CANISTER_DROPS | ปิดการดรอปไอเทมเมื่อผู้เล่นตายในโหมดผู้เล่นหลายคน |
NO_TELEFRAGGING | ป้องกันไม่ให้อุปกรณ์ประกอบฉากเทเลพอร์ตและผู้เล่นสังหารผู้เล่นอื่น |
NOBLOCK | ป้องกันการชนกันระหว่างผู้เล่นกับผู้เล่น (ฟีเจอร์นี้ต้องใช้ mp_teamplay 1 เพื่อแก้ไขปัญหาความราบรื่น) |
SHOW_WELCOME_MESSAGE | แสดงข้อความทักทายผู้เล่นพร้อมข้อมูลปลั๊กอินพื้นฐาน |
AUTODETECT_MAP_END | ตรวจจับคำสั่งที่ใช้กันทั่วไปสำหรับการสิ้นสุดแผนที่ผู้เล่นคนเดียวจากเอนทิตี point_clientcommand และ point_servercommand และเปลี่ยนแผนที่ ในตอนแรก คุณลักษณะนี้จะตรวจสอบว่าตั้ง sourcecoop_homemap แล้ว (ดูด้านล่าง) จากนั้นตรวจสอบว่าตั้งค่า nextmap หรือไม่ หากไม่ได้ตั้งค่าไว้ แผนที่จะไม่เปลี่ยนแปลง แนะนำให้เปิดใช้งานต่อไป |
CHANGELEVEL_FX | แสดงเอฟเฟ็กต์ภาพ (อนุภาควางไข่) ที่ตำแหน่งเปลี่ยนระดับ |
TRANSFER_PLAYER_STATE | ช่วยให้ผู้เล่นคงอยู่ผ่านการเปลี่ยนแปลงระดับ ในปัจจุบัน ผู้เล่นจะต้องนำพลังชีวิต เกราะ และอุปกรณ์ของตนไปยังจุดเกิดแรก (จุดตรวจ) ในแผนที่ หลังจากนั้น จะใช้อุปกรณ์แผนที่เริ่มต้น |
SP_WEAPONS | ตั้งค่าว่าจะใช้อาวุธประเภทผู้เล่นคนเดียวหรือไม่ |
หากคุณกำลังมองหาความช่วยเหลือในการพัฒนาโครงการ เรากำลังมองหาความช่วยเหลือเพิ่มเติมอยู่เสมอ! คุณสามารถช่วยได้ด้วยวิธีต่อไปนี้:
หากคุณสนใจที่จะช่วยเหลือเรา โปรดติดต่อเราที่ Discord หรือสร้างคำขอดึง