MCTOOLBOX
MC ToolboxMC TOOLBOX

เซิร์ฟเวอร์และไฟล์

เครื่องสร้าง Config BungeeCord

ไฟล์ config.yml เริ่มต้นที่สอดคล้องกับคู่มือการตั้งค่า BungeeCord ของ SpigotMC: listeners, servers, online_mode, ip_forward, permissions และ forced hosts ตรวจสอบก่อนนำไปใช้งานจริง

ผู้ฟัง

การตั้งค่าส่วนกลาง

เมื่อ ip_forward เป็น true ให้ตั้งค่า online-mode=false สำหรับ Spigot/Paper แบ็กเอนด์แต่ละตัว และเปิดใช้งาน BungeeCord mode ในการตั้งค่าแบ็กเอนด์ ดู Spigot wiki: BungeeCord Configuration Guide และ IP Forwarding

เซิร์ฟเวอร์แบ็กเอนด์

config.yml ที่สร้างแล้ว

# BungeeCord config.yml starter - based on SpigotMC BungeeCord Configuration Guide
# Backend Spigot/Paper servers should use online-mode=false when ip_forward is true.
# Also set bungeecord: true (Paper: settings.bungeecord / spigot.yml paper settings).
server_connect_timeout: 5000
remote_ping_cache: -1
forge_support: false
player_limit: -1
permissions:
  default:
  - bungeecord.command.server
  - bungeecord.command.list
  admin:
  - bungeecord.command.alert
  - bungeecord.command.end
  - bungeecord.command.ip
  - bungeecord.command.reload
timeout: 30000
log_commands: false
network_compression_threshold: 256
online_mode: true
disabled_commands: []
servers:
  lobby:
    motd: '&1Just another BungeeCord - Forced Host'
    address: 'localhost:25566'
    restricted: false
listeners:
- query_port: 25577
  motd: '&1A BungeeCord Server'
  tab_list: GLOBAL_PING
  query_enabled: false
  proxy_protocol: false
  forced_hosts:
    pvp.example.com: pvp
  ping_passthrough: false
  priorities:
    - lobby
  bind_local_address: true
  host: '0.0.0.0:25577'
  max_players: 1
  tab_size: 60
  force_default_server: false
ip_forward: true
remote_ping_timeout: 5000
prevent_proxy_connections: false
groups: {}
connection_throttle: 4000
stats: 00000000-0000-4000-8000-000000000000
connection_throttle_limit: 3
log_pings: true

วิธีใช้ตัวสร้างการกำหนดค่า BungeeCord

เครื่องมือนี้สร้างไฟล์ config.yml เริ่มต้นสำหรับพร็อกซีเซิร์ฟเวอร์ของคุณ เริ่มต้นด้วยการป้อน IP สาธารณะหรือโดเมนของเซิร์ฟเวอร์ในช่อง 'Bind Address' หรือปล่อยเป็น 0.0.0.0 เพื่อฟังทุกอินเทอร์เฟซ ตั้งค่า 'Server Port' เป็น 25565 (พอร์ต Minecraft เริ่มต้น) เว้นแต่คุณมีเหตุผลเฉพาะที่จะเปลี่ยน ตัวสร้างจะสร้าง config ที่สะอาดและมีคอมเมนต์ ซึ่งคุณสามารถดาวน์โหลดและวางในโฟลเดอร์ BungeeCord ของคุณได้

การสลับ 'Online Mode' มีความสำคัญ หากเซิร์ฟเวอร์แบ็กเอนด์ของคุณ (เช่น Spigot หรือ Paper) อยู่ในโหมดออนไลน์ ให้ตั้งค่านี้เป็น true หากคุณกำลังรันเซิร์ฟเวอร์แบบครากหรือออฟไลน์ ให้ตั้งเป็น false สำหรับเครือข่ายที่มีเซิร์ฟเวอร์แบ็กเอนด์หลายตัว ให้เปิดใช้งาน 'IP Forwarding' และตั้งค่า 'BungeeCord' เป็น true ใน config.yml ของเซิร์ฟเวอร์แบ็กเอนด์แต่ละตัว วิธีนี้ช่วยให้ IP และ UUID ของผู้เล่นถูกส่งผ่านอย่างถูกต้อง ตัวสร้างจะรวมการตั้งค่า 'ip_forward' ที่จำเป็นในส่วน listener

ใช้ส่วน 'Servers' เพื่อกำหนดเซิร์ฟเวอร์แบ็กเอนด์ของคุณ สำหรับแต่ละเซิร์ฟเวอร์ ป้อนชื่อ (เช่น 'lobby' หรือ 'survival') ที่อยู่ (เช่น 'localhost:25566') และสามารถตั้งเป็น MOTD หรือจำกัดได้ ตัวสร้างจะสร้างแผนที่ 'servers' ตามรายการของคุณ จำไว้ว่าเซิร์ฟเวอร์แรกที่ระบุภายใต้ 'listeners' -> 'forced_hosts' จะเป็นเซิร์ฟเวอร์สำรองเริ่มต้น คุณยังสามารถตั้ง 'priorities' เพื่อควบคุมว่าเซิร์ฟเวอร์ใดที่ผู้เล่นจะเข้าร่วมก่อน

ฟีเจอร์ 'Forced Hosts' ช่วยให้คุณกำหนดเส้นทางผู้เล่นไปยังเซิร์ฟเวอร์ต่างๆ ตามโฮสต์เนมที่ใช้เชื่อมต่อ ตัวอย่างเช่น คุณสามารถบังคับ 'play.example.com' ไปยังเซิร์ฟเวอร์ 'lobby' และ 'build.example.com' ไปยัง 'creative' ในตัวสร้าง เพิ่มโฮสต์เนมเหล่านี้และเลือกเซิร์ฟเวอร์เป้าหมาย config ที่สร้างขึ้นจะรวมแผนที่ 'forced_hosts' ภายใต้ listener แต่ละตัว

ความแตกต่างของเวอร์ชันมีความสำคัญ BungeeCord (ปัจจุบันคือ Waterfall หรือ Velocity) มีการพัฒนา แต่โครงสร้าง config.yml หลักยังคงคล้ายกัน ตัวสร้างนี้ส่งออก config ที่เข้ากันได้กับ BungeeCord 1.8-1.20+ หากคุณใช้ Waterfall config เกือบจะเหมือนกัน สำหรับ Velocity คุณต้องใช้รูปแบบ config ที่แตกต่างกัน ดังนั้นเครื่องมือนี้ไม่เหมาะสม ทดสอบ config ที่สร้างขึ้นในสภาพแวดล้อม staging ก่อนใช้งานจริงเสมอ ดาวน์โหลดไฟล์ แทนที่ config.yml ที่มีอยู่ และรีสตาร์ทพร็อกซี

คำถามที่พบบ่อย

ความแตกต่างระหว่าง BungeeCord และ Waterfall คืออะไร?

BungeeCord คือซอฟต์แวร์พร็อกซีดั้งเดิมโดย md_5 Waterfall คือ fork ของ BungeeCord ที่มีการปรับปรุงประสิทธิภาพและแพตช์ความปลอดภัยที่ดีกว่า ทั้งสองใช้รูปแบบ config.yml เดียวกัน ดังนั้นไฟล์ที่สร้างขึ้นจึงทำงานกับทั้งคู่ อย่างไรก็ตาม Waterfall แนะนำสำหรับเซิร์ฟเวอร์สมัยใหม่เนื่องจากการบำรุงรักษาที่ใช้งานและความเข้ากันได้กับ Minecraft เวอร์ชันใหม่กว่า

จะตั้งค่า IP forwarding อย่างถูกต้องได้อย่างไร?

ใน config ที่สร้างขึ้น ให้ตั้งค่า 'ip_forward: true' ภายใต้ listener จากนั้นบนเซิร์ฟเวอร์แบ็กเอนด์แต่ละตัว (Spigot/Paper) เปิด config.yml และตั้งค่า 'bungeecord: true' (หรือ 'settings.velocity' สำหรับ Velocity) และตรวจสอบให้แน่ใจว่า 'online-mode' ถูกตั้งเป็น false บนเซิร์ฟเวอร์แบ็กเอนด์ เนื่องจากพร็อกซีจัดการการตรวจสอบสิทธิ์ หากคุณใช้ Paper คุณอาจต้องตั้งค่า 'settings.velocity' ด้วยคีย์ลับหากใช้ Velocity แต่สำหรับ BungeeCord เพียงตั้งค่า 'bungeecord: true'

ฉันสามารถใช้ตัวสร้างนี้สำหรับเซิร์ฟเวอร์เดียวได้หรือไม่?

ได้ หากคุณมีเซิร์ฟเวอร์แบ็กเอนด์เพียงตัวเดียว ให้ตั้งค่าส่วน 'Servers' ด้วยรายการเดียว เช่น 'lobby' ที่อยู่ 'localhost:25566' จากนั้นตั้งค่า 'priorities' ของ listener เป็นเซิร์ฟเวอร์นั้น พร็อกซีจะส่งผู้เล่นทั้งหมดไปยังเซิร์ฟเวอร์นั้น ซึ่งมีประโยชน์หากคุณต้องการเพิ่มเซิร์ฟเวอร์เพิ่มเติมในภายหลังโดยไม่เปลี่ยนที่อยู่ที่ผู้เล่นเห็น

'forced_hosts' ทำอะไรและใช้งานอย่างไร?

Forced hosts ช่วยให้คุณกำหนดเส้นทางผู้เล่นไปยังเซิร์ฟเวอร์ต่างๆ ตามโฮสต์เนมที่ใช้เชื่อมต่อ ตัวอย่างเช่น หากคุณมีสองโดเมน 'play.example.com' และ 'build.example.com' คุณสามารถบังคับ 'play.example.com' ไปยังเซิร์ฟเวอร์ 'lobby' และ 'build.example.com' ไปยัง 'creative' ในตัวสร้าง เพิ่มโฮสต์เนมเหล่านี้และเลือกเซิร์ฟเวอร์เป้าหมาย config ที่สร้างขึ้นจะรวมแผนที่ 'forced_hosts' ภายใต้ listener แต่ละตัว

ทำไม MOTD ของฉันไม่แสดง?

MOTD ถูกตั้งค่าในส่วน 'listeners' ภายใต้ 'motd' ตรวจสอบว่าคุณป้อนในตัวสร้างแล้ว และตรวจสอบให้แน่ใจว่าเปิดใช้งาน ping รายการเซิร์ฟเวอร์ (ตัวเลือก 'ping' ใน listener) หากคุณใช้ MOTD ที่กำหนดเองพร้อมรหัสสี ให้ใช้เครื่องหมาย section (§) หรือเครื่องหมาย ampersand (&) พร้อมรหัสสี แต่โปรดทราบว่าตัวสร้างอาจไม่ escape พวกมัน ทดสอบ MOTD โดย ping เซิร์ฟเวอร์จากไคลเอนต์ Minecraft