คู่มือ Pulse Phone
ความต้องการของระบบ
2. ความต้องการของระบบ
| รายการ | จำเป็นไหม? | จะเกิดอะไรถ้าไม่มี |
|---|---|---|
| เปิด OneSync | จำเป็น | การตรวจสอบตอนเริ่มจะล้มเหลวพร้อม OneSync ... off ให้เพิ่ม set onesync on |
| Game build 2699 ขึ้นไป | จำเป็น | โมเดลมือถือจะไม่สตรีม ให้ตั้ง sv_enforceGameBuild |
| oxmysql (หรือ ghmattimysql, mysql-async) บน MariaDB 10.6+ หรือ MySQL 8 | แนะนำ | ถ้าไม่มี resource SQL ทำงานอยู่ ข้อมูลจะถูกเก็บใน key/value store ของเซิร์ฟเวอร์ ข้อมูลไม่หาย แต่คุณ query ไม่ได้ และถ้าผู้เล่นเกินประมาณ 30 คน ควรใช้ฐานข้อมูล |
| สคริปต์เสียงพูด: pma-voice, mumble-voip, SaltyChat, TokoVOIP หรือ YACA | แนะนำ | การโทรจะติดแต่ไม่มีเสียง |
| screenshot-basic | แนะนำ (resource มาตรฐาน หรือชุดที่เบากว่าในไฟล์ดาวน์โหลดของคุณ: ดูคู่มือเริ่มต้นใช้งาน ขั้นตอนที่ 6) | กล้องจัดเฟรมได้แต่บันทึกรูปไม่ได้ |
| เฟรมเวิร์ก | ไม่บังคับ | โทรศัพท์ทำงานแบบ standalone: โทรศัพท์ผูกกับ license ของผู้เล่น และโทรศัพท์มีระบบธนาคารของตัวเอง |
บล็อก server.cfg แบบครบ:
set onesync on
set sv_enforceGameBuild 2699 # or newer
ensure oxmysql
# ... your framework, then your inventory, banking, garage and housing scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phone
# ... scripts that use the phone ...ฐานข้อมูล โทรศัพท์จะตัดสินใจว่าใช้ที่เก็บแบบไหนทุกครั้งที่เริ่ม:
| เซิร์ฟเวอร์ของคุณ | ที่ที่โทรศัพท์เก็บข้อมูล |
|---|---|
| มี oxmysql, mysql-async หรือ ghmattimysql ทำงานอยู่ และฐานข้อมูลตอบสนอง | ฐานข้อมูล ตารางถูกสร้างตอนเริ่มครั้งแรก และตารางใหม่ถูกเพิ่มเองหลังทุกอัปเดต |
| ไม่มี resource SQL ทำงานอยู่เลย | key/value store ของเซิร์ฟเวอร์ โดยอัตโนมัติ ข้อมูลอยู่รอดแม้รีสตาร์ทแต่ query ไม่ได้ ถ้าผู้เล่นเกินประมาณ 30 คน หรือคอนโซลเตือนว่าการบันทึก store ช้า ให้ใช้ฐานข้อมูล |
| มี resource SQL ทำงานอยู่ แต่ฐานข้อมูลไม่ตอบภายใน 30 วินาที | ไม่มีอะไรถูกบันทึกจนกว่าฐานข้อมูลจะตอบ คอนโซลจะบอกสาเหตุ และโทรศัพท์จะลองใหม่ทุก 15 ถึง 60 วินาที แล้วเริ่มทำงานจนเสร็จเองเมื่อฐานข้อมูลตอบ |
ในกรณีสุดท้าย คุณสั่งให้โทรศัพท์ใช้ key/value store แทนได้ด้วย set phone_db_fallback "kvp" ใน server.cfg ข้อมูลนั้นจะอยู่ใน key/value store และจะไม่ถูกคัดลอกเข้าฐานข้อมูลในภายหลัง ดังนั้นให้ใช้บนเซิร์ฟเวอร์ทดสอบ ไม่ใช่เป็นทางเลี่ยงการเชื่อมต่อที่เสีย ทุก query มีกำหนดเวลา 10 วินาที: query ที่ฐานข้อมูลไม่ตอบเลยจะถูกรายงานว่าล้มเหลวไปยังแอปที่ขอ และคอนโซลจะระบุ query นั้นหนึ่งครั้ง
ฐานข้อมูลที่รองรับ: MariaDB 10.6 ขึ้นไป หรือ MySQL 8.0 ขึ้นไป phone.sql ของแต่ละเวอร์ชันถูกตรวจบนฐานข้อมูล MariaDB ใหม่ที่รันใน SQL mode ของ MySQL 8 ก่อน build แพ็กเกจ เวอร์ชันที่เก่ากว่า (MariaDB 10.4 หรือ 10.5, MySQL 5.7) ไม่ได้ทดสอบและไม่รองรับ แม้อาจใช้งานได้
phone.sql มีไว้สำหรับโฮสต์ที่ไม่อนุญาตให้ resource สร้างตารางเท่านั้น ในไฟล์ไม่ได้ระบุ collation: ใช้ค่าเริ่มต้น utf8mb4 ของเซิร์ฟเวอร์คุณ เหมือนตอนที่โทรศัพท์สร้างตารางเอง รันบนฐานข้อมูลที่มีอยู่ได้อย่างปลอดภัย และการรันไฟล์ใหม่ซ้ำหลังอัปเดตจะเพิ่มเฉพาะสิ่งที่ขาดเท่านั้น
sv_stateBagStrictMode เปิดไว้ได้ ทุกอย่างของโทรศัพท์ที่ผู้เล่นคนอื่นเห็น (ท่าถือ ตัวเครื่องในมือ หน้าจอ ไฟฉาย) ถูกตั้งโดยเซิร์ฟเวอร์หลังจากตรวจค่าแล้ว ไม่เคยถูกตั้งโดยเกมของผู้เล่น
การเปลี่ยนโทรศัพท์
ตารางของโทรศัพท์ตัวอื่น ถ้าโทรศัพท์ที่คุณเคยใช้ทิ้งตารางที่ชื่อซ้ำกันไว้ (เช่น phone_messages) ตารางเหล่านั้นจะถูกเปลี่ยนชื่อเป็น old_<name> ตอนเริ่มครั้งแรก เพื่อให้ Pulse Phone สร้างตารางของตัวเองได้ ไม่มีอะไรถูกลบ ถ้าผู้ใช้ฐานข้อมูลของคุณไม่มีสิทธิ์เปลี่ยนชื่อตาราง การตรวจสอบตอนเริ่มจะแสดง [FAIL] Database พร้อมชื่อตาราง: ให้สิทธิ์ ALTER กับผู้ใช้นั้น หรือเปลี่ยนชื่อแต่ละตารางเป็น old_<name> ในเครื่องมือฐานข้อมูลของคุณ (HeidiSQL, phpMyAdmin) แล้วรีสตาร์ท