한국어English日本語简体中文繁體中文DeutschไทยTiếng ViệtРусскийPortuguês (Brasil)EspañolBahasa Indonesia

คู่มือเกมแลค › L1 โปรเซสเกมฝั่งไคลเอนต์

การตรวจของโมดูลความปลอดภัยเกม (anti-cheat) Anti-cheat scan and heartbeat

ID สาเหตุ cg-anticheat · ผู้รับผิดชอบหลัก พัฒนาไคลเอนต์ (ทีมพัฒนาเกม) · ร่วมกับ พัฒนาเซิร์ฟเวอร์ (ทีมพัฒนาเกม)

เปิดการ์ดในฉบับหลักที่มีภาพและการทดลอง →

โมดูลความปลอดภัยที่ทำงานคู่กับเกมเพื่อกันโปรโกงจะตรวจสอบเป็นระยะ ถ้าการตรวจหนัก หรือ heartbeat (สัญญาณยืนยันว่ายังทำงานอยู่ที่ส่งเป็นระยะ) ที่รับส่งกับเซิร์ฟเวอร์ความปลอดภัยมาช้า เกมจะกระตุกหรือหลุด

ทำไม โมดูลความปลอดภัยตรวจหน่วยความจำของเกม, โปรแกรมที่กำลังรัน และไดรเวอร์เป็นระยะ → ผลคือ ระหว่างตรวจ เธรดเกมหยุด หรือ heartbeat ส่งไปไม่ทันเวลา → บนหน้าจอ หยุดแวบเป็นจังหวะสม่ำเสมอ ถ้าหนักจะหลุดพร้อมข้อความแจ้งข้อผิดพลาดด้านความปลอดภัย

อาการ
กระตุก, ค้าง, หลุด
ปัจจัย
การหยุดชะงัก
ใครเจอ
เราคนเดียว
เกิดเมื่อไร
เป็นรอบสม่ำเสมอ, หลังล็อกอิน/หลังปิดปรับปรุง, สุ่มเป็นครั้งคราว
ผู้รับผิดชอบ
ผู้รับผิดชอบหลัก พัฒนาไคลเอนต์ (ทีมพัฒนาเกม) · ร่วมกับ พัฒนาเซิร์ฟเวอร์ (ทีมพัฒนาเกม)
งานฝั่งทีมพัฒนาเกม
ไคลเอนต์: ย้ายการตรวจที่หนักออกจากเธรดเกมและแบ่งรันทีละน้อย, เทียบสถิติอาการกระตุกและเกมเด้งแยกตามเวอร์ชันโมดูลความปลอดภัย (ถ้ากระจุกหลังอัปเดตให้ส่งต่อให้ผู้ผลิตโมดูล) เซิร์ฟเวอร์: ยอมให้ heartbeat มาช้าได้หนึ่งถึงสองครั้ง
ตัวเลขที่ควรรู้
การตรวจแบบเบาปกติใช้ไม่ถึง 1 ms แต่การตรวจแบบหนักที่รันบนเธรดเกมอาจกินเวลาครั้งละหลายสิบถึงหลายร้อย ms ขึ้นกับการ implement
บนกราฟ
พุ่งเป็นรอบ · เฟรมไทม์, จำนวนครั้งที่ anti-cheat เตะผู้เล่นออก
จุดที่ต้องดู
วัดช่วงห่างของจุดที่พุ่งในเฟรมไทม์จาก PresentMon และรวมสาเหตุที่ anti-cheat เตะผู้เล่นออกที่เซิร์ฟเวอร์ได้รับ (EOS คือ AuthenticationFailed / Authentication Timed Out ฯลฯ ใน ClientActionReason) แยกตามเวอร์ชันโมดูลความปลอดภัยและสเปก
สัญญาณว่าใช่
หยุดสั้น ๆ ซ้ำเป็นจังหวะสม่ำเสมอโดยไม่เกี่ยวกับสถานการณ์ในเกม และหลังอัปเดตโมดูลความปลอดภัย บางสเปกมีอาการกระตุกและถูกเตะเพราะยืนยันตัวตนไม่ทันเวลาเพิ่มขึ้น
สัญญาณว่าไม่ใช่
จังหวะเดียวกันทุกสเปกโดยไม่เกี่ยวกับเวอร์ชันโมดูลความปลอดภัย: น่าจะเป็น “GC ฝั่งไคลเอนต์” หรือ “โปรเซสเบื้องหลังแย่ง CPU”
วิธีตรวจ
ต้องมี log หรือเมตริกจากเซิร์ฟเวอร์/ไคลเอนต์เกม
รายละเอียดเพิ่มเติม
โมดูลความปลอดภัยฝังลึกอยู่ใน OS ในรูปไดรเวอร์ จึงอาจชนกับแอนตี้ไวรัส, โอเวอร์เลย์ หรือโมดูลความปลอดภัยของเกมอื่นได้ ถ้าการแจ้งอาการกระตุกหรือเกมเด้งกระจุกอยู่ที่บางสเปกหลังอัปเดตโมดูลความปลอดภัย ให้สงสัยตัวนี้ก่อน

แหล่งอ้างอิง

  1. Using the Anti-Cheat Interfaces Epic Games
    ถ้าเซิร์ฟเวอร์ไม่ได้รับข้อความ anti-cheat จากไคลเอนต์ภายในเวลาที่กำหนด (RegisterTimeout) จะเตะออกด้วยเหตุผลยืนยันตัวตนหมดเวลา (สาเหตุที่พบบ่อยคือไคลเอนต์ที่หยุดอยู่ระหว่างโหลด) ถ้าปัญหามาจากการอัปเดตโมดูลล่าสุดให้ย้อนกลับไปใช้โมดูลเวอร์ชันก่อน
  2. PresentMon Capture Application (README-CaptureApplication.md) Intel
    อัดเวลาของแต่ละเฟรมด้วย FrameTime (เวลา CPU ระหว่างเฟรม)

สาเหตุที่ควรดูประกอบ

ชั้นเดียวกัน: L1 โปรเซสเกมฝั่งไคลเอนต์

สาเหตุจากชั้นอื่นที่ทำให้เกิดอาการเดียวกัน (กระตุก)

ดูการ์ดในฉบับหลักที่มีภาพและการทดลอง