คู่มือนี้ครอบคลุมการตั้งค่าผู้ดูแล, การจัดการผู้เล่น, การใช้งานคอนโซลเซิร์ฟเวอร์, การจัดการโลก และการแก้ไขปัญหาสำหรับเซิร์ฟเวอร์เฉพาะ Foundry ของคุณ Foundry เป็นเกมสร้างโรงงานแบบ voxel ที่ผู้เล่นสร้างและทำให้สายการผลิตที่ซับซ้อนเป็นแบบอัตโนมัติในโลกที่สร้างขึ้นแบบ procedural สำหรับการตั้งค่าเซิร์ฟเวอร์เริ่มต้น การกำหนดค่า การสร้างโลก และคำแนะนำการเชื่อมต่อ ดูที่ คู่มือการตั้งค่าเซิร์ฟเวอร์ Foundry
1. การควบคุมผู้ดูแลและโฮสต์
เซิร์ฟเวอร์เฉพาะ Foundry ใช้โมเดลสิทธิ์แบบ host-based ผู้ดำเนินการเซิร์ฟเวอร์จัดการเซิร์ฟเวอร์ผ่านการผสมผสานระหว่างไฟล์การกำหนดค่า App.cfg และการควบคุมโฮสต์ในเกม
การเข้าถึงของผู้ดำเนินการเซิร์ฟเวอร์
ในฐานะผู้ดำเนินการเซิร์ฟเวอร์ คุณจัดการเซิร์ฟเวอร์ Foundry ของคุณผ่าน:
- คอนโซล GPanel: คอนโซลเซิร์ฟเวอร์ใน GPanel แสดงเอาต์พุตเซิร์ฟเวอร์ เหตุการณ์การเชื่อมต่อ และข้อความข้อผิดพลาด นี่คือเครื่องมือตรวจสอบหลักของคุณ
- ไฟล์การกำหนดค่า: ไฟล์
App.cfgควบคุมการตั้งค่าเซิร์ฟเวอร์ทั้งหมด แก้ไขผ่านแท็บ Files ใน GPanel หรือผ่าน SFTP ดู คู่มือการตั้งค่าเซิร์ฟเวอร์ Foundry สำหรับรายละเอียด - การควบคุมในเกม: เมื่อเชื่อมต่อกับเซิร์ฟเวอร์ ผู้เล่นที่เป็นโฮสต์จะสามารถเข้าถึงตัวเลือกการจัดการเพิ่มเติมผ่านเมนูในเกม
การป้องกันด้วยรหัสผ่านเซิร์ฟเวอร์
หากต้องการจำกัดผู้ที่สามารถเข้าร่วมเซิร์ฟเวอร์ของคุณ ให้ตั้งรหัสผ่านใน App.cfg:
server_password=YourSecretPassword
ผู้เล่นต้องป้อนรหัสผ่านนี้เมื่อเชื่อมต่อ หากต้องการให้เซิร์ฟเวอร์เป็นสาธารณะอีกครั้ง ให้ล้างค่ารหัสผ่าน:
server_password=
การซ่อนเซิร์ฟเวอร์จากรายการ
หากคุณต้องการเซิร์ฟเวอร์ส่วนตัวที่ไม่ปรากฏในรายการเซิร์ฟเวอร์ Steam ให้ตั้งค่า:
server_is_public=false
ผู้เล่นยังสามารถเข้าร่วมผ่านการเชื่อมต่อโดยตรงโดยใช้ IP และพอร์ตของคุณได้ แต่จะไม่สามารถค้นหาเซิร์ฟเวอร์ได้ผ่านการเรียกดู
2. การจัดการผู้เล่น
การเตะผู้เล่น
หากต้องการนำผู้เล่นที่ก่อกวนออกจากเซิร์ฟเวอร์:
- ในเกม: เปิดรายชื่อผู้เล่นจากเมนูในเกม เลือกผู้เล่น และใช้ตัวเลือกเตะ ฟีเจอร์นี้มีให้สำหรับผู้เล่นที่เป็นโฮสต์
- การรีสตาร์ทเซิร์ฟเวอร์: ในทางเลือกสุดท้าย การรีสตาร์ทเซิร์ฟเวอร์จาก GPanel จะตัดการเชื่อมต่อผู้เล่นทั้งหมด ผู้เล่นที่ก่อกวนสามารถป้องกันไม่ให้เข้าร่วมใหม่ได้โดยการตั้งรหัสผ่านเซิร์ฟเวอร์
การแบนผู้เล่น
หากต้องการป้องกันไม่ให้ผู้เล่นเข้าร่วมเซิร์ฟเวอร์ของคุณอย่างถาวร:
- ใช้ตัวเลือกแบนในเกมเมื่อมีให้ผ่านเมนูการจัดการผู้เล่น
- ผู้เล่นที่ถูกแบนจะถูกติดตามโดย Steam ID ของพวกเขาและจะถูกปฏิเสธในการพยายามเชื่อมต่อในอนาคต
- รายการแบนจะคงอยู่ตลอดการรีสตาร์ทเซิร์ฟเวอร์
server_password ใน App.cfg และแชร์เฉพาะกับผู้เล่นที่ไว้วางใจเท่านั้น วิธีนี้ใช้ได้ไม่ว่าสถานะของระบบแบนจะเป็นอย่างไร
การจัดการจำนวนผู้เล่น
ควบคุมจำนวนผู้เล่นที่สามารถออนไลน์พร้อมกันได้:
server_max_players=16
ค่าสูงสุดเริ่มต้นคือ 32 แนะนำให้ลดค่านี้หากแผนเซิร์ฟเวอร์ของคุณมีทรัพยากรจำกัด หรือหากคุณประสบปัญหาประสิทธิภาพเมื่อมีผู้เล่นเชื่อมต่อจำนวนมาก ผู้เล่นที่เชื่อมต่อแต่ละคนจะโหลด chunk เพิ่มเติมรอบตำแหน่งของพวกเขา ซึ่งเพิ่มภาระการประมวลผลของเซิร์ฟเวอร์
3. คอนโซลเซิร์ฟเวอร์
คอนโซล GPanel แสดงเอาต์พุตเซิร์ฟเวอร์แบบเรียลไทม์ รวมถึง:
- เหตุการณ์การเชื่อมต่อและตัดการเชื่อมต่อของผู้เล่น
- การยืนยันการบันทึกโลก
- ข้อความข้อผิดพลาดและคำเตือน
- สถานะการเริ่มต้นและการปิดเซิร์ฟเวอร์
การอ่านเอาต์พุตคอนโซล
ตรวจสอบคอนโซลเพื่อหาข้อความสำคัญ:
| ประเภทข้อความ | ตัวอย่าง | ความหมาย |
|---|---|---|
| ผู้เล่นเข้าร่วม | Player [SteamName] connected |
ผู้เล่นได้เข้าร่วมเซิร์ฟเวอร์สำเร็จแล้ว |
| ผู้เล่นออก | Player [SteamName] disconnected |
ผู้เล่นได้ออกจากเซิร์ฟเวอร์แล้ว |
| บันทึกอัตโนมัติ | World saved |
การบันทึกอัตโนมัติหรือการบันทึกด้วยตนเองเสร็จสมบูรณ์ |
| ข้อผิดพลาด | ERROR: ... |
มีบางอย่างผิดพลาด บันทึกข้อความไว้สำหรับการแก้ไขปัญหา |
| เซิร์ฟเวอร์พร้อม | Server started on port 3724 |
เซิร์ฟเวอร์ออนไลน์และรับการเชื่อมต่อ |
4. การจัดการโลก
การสลับระหว่างโลก
Foundry รองรับหลายโลกผ่านการตั้งค่า server_world_name แต่ละชื่อโลกจะสอดคล้องกับไดเรกทอรีเซฟแยกต่างหากพร้อมโรงงาน ภูมิประเทศ และข้อมูลผู้เล่นของตัวเอง
- หยุดเซิร์ฟเวอร์จาก GPanel
- เปิด
App.cfgและเปลี่ยนserver_world_nameเป็นชื่ออื่น:server_world_name=NewFactory - หากคุณต้องการโลกใหม่ที่มีภูมิประเทศเฉพาะ ให้ตั้งค่า
map_seedใหม่ด้วย - เริ่มเซิร์ฟเวอร์ หากชื่อโลกยังไม่มีอยู่ โลกใหม่จะถูกสร้างขึ้น
server_world_name กลับเป็นชื่อเดิมแล้วรีสตาร์ท ความคืบหน้าของโรงงานทั้งหมดจะอยู่เหมือนเดิมทุกประการตามที่คุณทิ้งไว้
การรีเซ็ตโลก
หากต้องการรีเซ็ตโลกอย่างสมบูรณ์และเริ่มต้นใหม่ด้วยโรงงานใหม่:
- หยุดเซิร์ฟเวอร์จาก GPanel
- เชื่อมต่อผ่าน SFTP และนำทางไปยังไดเรกทอรี
serverfiles/ - ลบหรือเปลี่ยนชื่อโฟลเดอร์โลก (เช่น เปลี่ยนชื่อ
MyFoundryเป็นMyFoundry_backup) - คุณสามารถเลือกเปลี่ยน
map_seedในApp.cfgได้หากต้องการภูมิประเทศที่แตกต่างกัน - เริ่มเซิร์ฟเวอร์ โลกใหม่จะถูกสร้างขึ้นโดยใช้ seed ที่กำหนดค่าไว้
การกู้คืนการสำรองข้อมูล
- หยุดเซิร์ฟเวอร์จาก GPanel
- เชื่อมต่อผ่าน SFTP
- อัปโหลดโฟลเดอร์โลกที่สำรองข้อมูลไว้ของคุณไปยังไดเรกทอรี
serverfiles/แทนที่โฟลเดอร์ปัจจุบัน - ตรวจสอบให้แน่ใจว่าชื่อโฟลเดอร์ตรงกับ
server_world_nameในApp.cfg - เริ่มเซิร์ฟเวอร์ โลกที่สำรองข้อมูลไว้จะถูกโหลด
5. การกำหนดค่าการบันทึกอัตโนมัติ
ระบบการบันทึกอัตโนมัติของ Foundry เขียนสถานะโลกฉบับเต็มลงดิสก์เป็นระยะๆ กำหนดค่าใน App.cfg:
| การตั้งค่า | ค่า | ผลกระทบ |
|---|---|---|
autosave_interval=300 |
300 วินาที | บันทึกทุก 5 นาที (ค่าเริ่มต้น) สมดุลที่ดีสำหรับเซิร์ฟเวอร์ส่วนใหญ่ |
autosave_interval=600 |
600 วินาที | บันทึกทุก 10 นาที ลดความถี่ในการบันทึกสำหรับโรงงานขนาดใหญ่มาก |
autosave_interval=120 |
120 วินาที | บันทึกทุก 2 นาที บันทึกบ่อยขึ้น ใช้พื้นที่ดิสก์มากขึ้น |
autosave_interval=0 |
ปิดใช้งาน | ไม่มีการบันทึกอัตโนมัติ คุณต้องพึ่งพาการบันทึกด้วยตนเองหรือเสี่ยงต่อการสูญเสียความคืบหน้าเมื่อแครช |
6. การแก้ไขปัญหา
เซิร์ฟเวอร์แครชตอนเริ่มต้น
- ตรวจสอบคอนโซลของ GPanel เพื่อหาข้อความข้อผิดพลาด สาเหตุที่พบบ่อยได้แก่ไวยากรณ์
App.cfgที่ผิดรูปแบบ (ค่าที่ขาดหาย, ช่องว่างเกินรอบเครื่องหมาย=) - ตรวจสอบว่าค่าพอร์ตไม่ได้ถูกเปลี่ยนด้วยตนเอง พอร์ตต้องตรงกับที่ GPanel กำหนด
- ลองลบ
App.cfgและรีสตาร์ทเพื่อสร้างการกำหนดค่าใหม่ด้วยค่าเริ่มต้น - หากการแครชเกี่ยวข้องกับโลกเฉพาะ ลองสลับไปยัง
server_world_nameใหม่เพื่อทดสอบว่าปัญหาเกี่ยวข้องกับเซฟหรือไม่ - หากการแครชยังคงอยู่ เปิดทิกเก็ตสนับสนุน พร้อม IP เซิร์ฟเวอร์ของคุณและเอาต์พุตคอนโซลทั้งหมด
ผู้เล่นเชื่อมต่อไม่ได้
- ตรวจสอบว่าเซิร์ฟเวอร์กำลังทำงานอยู่ใน GPanel ตรวจสอบคอนโซลเพื่อหาข้อผิดพลาดระหว่างการเริ่มต้น
- ยืนยันว่าผู้เล่นใช้ IP และพอร์ตที่ถูกต้องจากแท็บ Network ใน GPanel
- ตรวจสอบว่ารหัสผ่านเซิร์ฟเวอร์ถูกต้อง (รหัสผ่านมีการแยกตัวพิมพ์เล็กใหญ่)
- ตรวจสอบให้แน่ใจว่าเซิร์ฟเวอร์ยังไม่ถึงขีดจำกัด
server_max_players - ตรวจสอบว่าทั้งเซิร์ฟเวอร์และผู้เล่นใช้ Foundry เวอร์ชันเดียวกัน การอัปเดตเกมอาจทำให้ความเข้ากันได้พังชั่วคราว
เซิร์ฟเวอร์ไม่ปรากฏในรายการ
- ยืนยันว่า
server_is_public=trueในApp.cfg - รายการเซิร์ฟเวอร์ Steam อาจใช้เวลาหลายนาทีในการจัดทำดัชนีเซิร์ฟเวอร์ใหม่ ลองใช้การเชื่อมต่อโดยตรงในระหว่างที่รอ
- รีสตาร์ทเซิร์ฟเวอร์หากทำงานมาเป็นเวลานานโดยไม่ปรากฏ บางครั้งการเชื่อมต่อกับ Steam master server อาจหลุด
ประสิทธิภาพลดลงเมื่อมีโรงงานขนาดใหญ่
- การสร้างโรงงานขนาดใหญ่ที่มีเครื่องจักรและสายพานลำเลียงหลายพันชิ้นจะเพิ่มเวลา tick ของเซิร์ฟเวอร์ นี่เป็นพฤติกรรมที่คาดหวังได้ใน Foundry
- ลด
server_max_playersเพื่อลดจำนวน chunk ที่โหลด - เปิดใช้งาน
pause_server_when_empty=trueเพื่อให้เซิร์ฟเวอร์ไม่จำลองโรงงานเมื่อไม่มีใครออนไลน์ - ปรับแต่งเลย์เอาต์โรงงานของคุณโดยรวมสายการผลิตและลดการกำหนดเส้นทางสายพานลำเลียงที่ไม่จำเป็น
- เพิ่ม
autosave_intervalหากการบันทึกทำให้เกิดอาการแลกเป็นระยะบนโลกขนาดใหญ่มาก - หากประสิทธิภาพยังคงไม่ดีหลังจากการปรับแต่ง พิจารณา ติดต่อฝ่ายสนับสนุน เกี่ยวกับการอัปเกรดแผนเซิร์ฟเวอร์ของคุณ
เซฟเสียหาย
- หากเซิร์ฟเวอร์แครชระหว่างการบันทึกอัตโนมัติ ไฟล์เซฟอาจเสียหาย
- กู้คืนจากการสำรองข้อมูล SFTP ด้วยตนเองหากมี ดู คู่มือการตั้งค่าเซิร์ฟเวอร์ Foundry สำหรับคำแนะนำการกู้คืน
- หากไม่มีการสำรองข้อมูล ลองสลับไปยัง
server_world_nameใหม่เพื่อเริ่มต้นใหม่ในขณะที่เก็บเซฟที่เสียหายไว้เผื่อว่าการอัปเดตในอนาคตอาจกู้คืนได้ - การสำรองข้อมูล SFTP เป็นประจำเป็นการป้องกันที่ดีที่สุดต่อความเสียหายของเซฟ สำรองข้อมูลโฟลเดอร์โลกของคุณอย่างน้อยหนึ่งครั้งต่อเซสชันการเล่น
บทความที่เกี่ยวข้อง
- คู่มือการตั้งค่าเซิร์ฟเวอร์ Foundry
- วิธีค้นหา IP และพอร์ตของเซิร์ฟเวอร์
- วิธีอัปโหลดไฟล์ผ่าน SFTP
- คู่มือการเริ่มต้นเซิร์ฟเวอร์
ต้องการความช่วยเหลือ?
หากคุณประสบปัญหากับเซิร์ฟเวอร์ Foundry ของคุณที่ไม่ได้ครอบคลุมไว้ที่นี่ เปิดทิกเก็ตสนับสนุน และรวม IP เซิร์ฟเวอร์ของคุณ คำอธิบายปัญหา และข้อความข้อผิดพลาดที่เกี่ยวข้องจากคอนโซล GPanel