1 คะแนน โดย GN⁺ 2024-10-31 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • Valve กำหนดให้นักพัฒนาบน Steam ต้องระบุอย่างชัดเจนบนหน้าร้านค้าว่าเกมใช้ แอนตี้ชีตระดับเคอร์เนล หรือไม่ ทำให้ตรวจสอบข้อมูลด้านความปลอดภัยและความเข้ากันได้ก่อนซื้อได้ง่ายขึ้น
  • ขอบเขตการบังคับใช้ไม่ได้จำกัดแค่เกมที่กำลังจะวางจำหน่ายใหม่ แต่รวมถึง เกมที่ลงทะเบียนอยู่บน Steam แล้ว และยังถูกรวมเข้าไปในขั้นตอนการวางจำหน่ายใหม่ด้วย
  • ภาระการเปิดเผยข้อมูลจำกัดอยู่ที่แอนตี้ชีตระดับเคอร์เนล แต่ Valve มองว่าการแจ้งผู้เล่นเกี่ยวกับแอนตี้ชีตฝั่งไคลเอนต์และฝั่งเซิร์ฟเวอร์ก็เป็นเรื่องที่ดีเช่นกัน
  • Valve จะตรวจสอบทั้งการมีอยู่และความถูกต้องของข้อความแจ้งบนหน้าร้าน และอาจครอบคลุมถึงปัญหา ไฟล์ตกค้างหลังการถอนการติดตั้ง ของเกมเก่าบางเกมด้วย
  • ผู้ใช้ Steam Deck และ Desktop Linux จะมีโอกาสคัดกรองเกมที่นักพัฒนา บล็อกการรันผ่าน Proton ได้มากขึ้นก่อนตัดสินใจซื้อ

การเปลี่ยนแปลงการแสดงผลแอนตี้ชีตบนร้านค้า Steam

  • Valve กำหนดให้หน้าร้านค้าบน Steam ต้องแสดงอย่างชัดเจนว่าเกมใช้ แอนตี้ชีตระดับเคอร์เนล หรือไม่
  • ตาม โพสต์ของ Steamworks Developer ระบุว่ากำลังหาวิธีให้นักพัฒนาแชร์ข้อมูลแอนตี้ชีตกับผู้เล่น และผู้เล่นเองก็เรียกร้องความโปร่งใสที่มากขึ้นมาโดยตลอดเกี่ยวกับบริการแอนตี้ชีตและซอฟต์แวร์เพิ่มเติมที่เกมติดตั้ง

ขอบเขตการบังคับใช้ที่ครอบคลุมถึงเกมเดิม

  • ข้อกำหนดนี้ไม่ได้ใช้เฉพาะกับ เกมใหม่ที่กำลังจะเปิดตัว เท่านั้น
    • เกมที่ลงทะเบียนอยู่บน Steam แล้วก็ต้องเพิ่มข้อมูลนี้เช่นกัน
    • และยังถูกรวมเข้าไปในขั้นตอนการวางจำหน่ายใหม่ด้วย
  • Valve จะทำ การตรวจสอบ เพื่อยืนยันว่ามีข้อความแจ้งอยู่บนหน้าเกมและข้อมูลนั้นถูกต้อง

ความต่างระหว่างการเปิดเผยแบบบังคับและแบบเลือกได้

  • สิ่งที่ต้องเปิดเผยอย่างบังคับคือ แอนตี้ชีตระดับเคอร์เนล
  • หากใช้เฉพาะแอนตี้ชีตฝั่งไคลเอนต์หรือฝั่งเซิร์ฟเวอร์ การเปิดเผยข้อมูลถือเป็นทางเลือก
  • Valve มองว่าจะเป็นประโยชน์หากทุกเกมที่ใช้เทคโนโลยีแอนตี้ชีตแจ้งให้ผู้เล่นทราบ

อาจแสดงข้อมูลที่เกี่ยวกับการลบออกด้วย

  • บางเกมเมื่อลบออกแล้วไม่ได้ถอนรายการที่ติดตั้งไว้อย่างถูกต้อง
  • Valve ระบุว่าเรื่องแบบนี้เกิดขึ้นกับ เกมเก่า บางเกม
  • ข้อความแสดงบนหน้าร้านอาจรวมข้อมูลที่เกี่ยวข้องกับการลบออกด้วย

ผลกระทบต่อผู้ใช้ Linux และ Steam Deck

  • ผู้ใช้ Steam Deck และ Desktop Linux จะตัดสินใจได้ง่ายขึ้นว่าควรหลีกเลี่ยงเกมใด
  • เกมที่ใช้แอนตี้ชีตระดับเคอร์เนลมักถูกนักพัฒนา บล็อกการรันผ่าน Proton

ความเปลี่ยนแปลงล่าสุดที่เกี่ยวข้องกับ Steam

1 ความคิดเห็น

 
GN⁺ 2024-10-31
ความเห็นจาก Hacker News
  • สัปดาห์ที่แล้วฉันติดตั้ง GTA V ใหม่อีกครั้ง แล้วก็ค่อนข้างช็อกที่รู้ว่าตอนนี้ต้องติดตั้งรูทคิตถึงจะรันได้
    มันไร้เหตุผลมากที่เกมซึ่งซื้อมาเมื่อ 10 ปีก่อน แถมตั้งใจจะเล่นแค่โหมดเล่นคนเดียว กลับถูกเพิ่ม ส่วนขยายระดับเคอร์เนลที่บังคับใช้ เข้าไป
    รู้สึกเหมือนเวอร์ชันเถื่อนน่าจะให้ประสบการณ์ที่ดีกว่าตามเคย

    • ถ้าใส่ -nobattleye ในตัวเลือกการเปิดเกมของ Steam ก็เล่น โหมดเล่นคนเดียว ได้โดยไม่ต้องติดตั้งเพิ่ม
      Rockstar ควรทำให้เป็นตัวเลือกแยกตอนเปิดเกมเหมือนเกมอื่น ๆ
    • ฉันเลิกเล่นเกม PC ของ Rockstar ตั้งแต่ตอนที่หน้าร้าน Steam ของ Max Payne 3 เขียนว่า บัญชี Rockstar Club จำเป็นแค่สำหรับมัลติเพลเยอร์ แต่ความจริงกลับบังคับใช้แม้แต่กับโหมดเล่นคนเดียว
      ฉันซื้อ GTA V บน PlayStation และที่นั่นเล่นโหมดเล่นคนเดียวได้โดยไม่ต้องมีบัญชี Rockstar น่าจะเป็นเพราะ Sony บังคับให้ทำแบบนั้นมากกว่า ไม่คิดว่า Rockstar จะทำด้วยความหวังดี
      แต่ทุกครั้งที่เปิดเกมก็จะมีหน้าจอชวนไปเล่นมัลติเพลเยอร์เด้งขึ้นมา และพอกดตัวเลือกเกี่ยวกับมัลติเพลเยอร์ครั้งหนึ่ง หลังจากนั้นอยู่หลายสัปดาห์ก็ยังโดนยัดการแจ้งเตือนระดับระบบของ PlayStation เกี่ยวกับอีเวนต์ GTA Online ต่อเนื่อง ทั้งที่ไม่ได้เปิดเกมเลย
      เพราะงั้นก็ขอลา Rockstar แล้วกัน ตัวเกมเองก็ใหญ่โตเกินไปจนเหมือนคุมตัวเองไม่อยู่แล้ว
    • เราไม่ควร ทำให้เป็นเรื่องปกติ ที่บริษัทสามารถเปลี่ยนเงื่อนไขของสินค้าที่ขายไปแล้วภายหลังได้
      “บริษัทพวกนี้เหมือนถูกบริหารโดย CEO ที่จบ MBA จาก Darth Vader University กันหมด โดยคลาสแรกคือ ‘ฉันเปลี่ยนเงื่อนไขข้อตกลงแล้ว ภาวนาอย่าให้ฉันเปลี่ยนอีกก็แล้วกัน’”
      https://pluralistic.net/2023/12/08/playstationed
    • มันไม่ควรเป็นแบบที่เวอร์ชันเถื่อนให้ความรู้สึกเหมือนเป็น เวอร์ชันพรีเมียม ของสินค้า
    • วันหนึ่งผู้จัดจำหน่ายเกมรายใหญ่จะต้องเอาท่าทีแบบ “เราจะใส่ข้อจำกัดอะไรเมื่อไหร่ก็ได้ ถ้าไม่พอใจก็ไปฟ้องเอา” มายัดใส่หน้าผู้เล่นแน่ ๆ
      น่าเสียดายที่เวอร์ชันเถื่อนให้ประสบการณ์ดีกว่าจริง ๆ แต่โดยปกติคงไม่ค่อยเกิดกับเกมอินดี้
      อย่างน้อยก็ตราบใดที่ยังเป็นอินดี้อยู่ ไม่นานมานี้ฉันเพิ่งติดตั้ง Minecraft ใหม่หลังจากไม่ได้เล่นมานาน แล้วก็พบว่า Microsoft ต้องการการยืนยันหมายเลขโทรศัพท์เพื่อจะเล่นเกมที่ซื้อไว้ตั้งแต่สิบกว่าปีก่อน
      มันไม่สนหรอกว่าคุณจะเล่นแค่โหมดเล่นคนเดียวเหมือนกรณีรูทคิตของ GTA V ถ้าโดนตัว launcher บล็อกก็จบ และก็ไม่มีใครช่วยคุณได้
  • พอดูจากการพัฒนาของคอมพิวเตอร์วิทัศน์และปัญญาประดิษฐ์ที่ก้าวหน้าไม่หยุด ก็ดูเหมือนว่าอีกไม่นานจะมี อุปกรณ์โกงเกม ที่ทำงานเป็นอุปกรณ์ภายนอกทั้งหมดและตรวจจับได้ยาก
    เช่นจับภาพจากสัญญาณแสดงผลโดยตรง แล้วเลียนแบบอุปกรณ์อินพุต USB เพื่อส่งคำสั่งเข้าไป
    มันอาจให้ฟังก์ชันได้ไม่ครบทุกอย่างแบบโปรแกรมโกงที่เกาะกับโปรเซสของเกม เช่นการมองทะลุกำแพง แต่การทำบอทช่วยเล็งระดับเหนือมนุษย์ด้วยวิธีนี้ทำได้แน่
    ตอนนี้ก็มีโปรแกรมโกงแบบ “เรดาร์” ภายนอกที่ใช้เสียงสเตอริโอของเกมเพื่อบอกทิศทางของเสียงบางอย่าง เช่นเสียงฝีเท้า อยู่แล้ว

    • มีอยู่แล้ว ใช้วิธีสตรีมภาพหน้าจอไปยังเครื่องอื่นเพื่อรัน การรู้จำภาพ และส่งอินพุตเมาส์ผ่านคอนโทรลเลอร์ที่ฉีดอินพุตเสริมเข้าไปได้
      มีทั้งสินค้าสำเร็จรูปอย่าง kmbox และแบบทำเองก็ได้
      แต่ประเด็นสำคัญคือ ในบรรดาคนโกงเกม มีสัดส่วนที่ยอมถึงขั้นซื้อฮาร์ดแวร์เพื่องานนี้อยู่น้อยมาก มันทั้งแพงและยุ่งยากกว่าการดับเบิลคลิกไฟล์รันเพื่อความสะใจทันทีมาก
      เพราะงั้น แค่ทำให้พวกเขาต้องลำบากขนาดนั้นเพื่อหลบการแบนบัญชีได้ ก็ถือว่าแทบจะสำเร็จแล้ว
    • เรื่องแบบนี้ทำได้ตรง ๆ ด้วย OpenCV อยู่แล้วตอนนี้ การตรวจจับภาพทั้งดีและเร็วในระดับสูงมานานมากแล้ว
      คนเล่นส่วนใหญ่ก็แค่เล่นกันอย่างซื่อสัตย์เพื่อความสนุก เลยไม่ได้ใส่ใจกันมาก
    • วิธีแก้ปัญหาที่อาศัยเทคโนโลยี เมื่อใช้แก้ปัญหาที่เกิดจากมนุษย์ สุดท้ายก็มักจะล้มเหลวที่จุดใดจุดหนึ่ง คงเพราะฝั่งที่สร้างปัญหาก็ใช้ เทคโนโลยี ได้เหมือนกัน
    • การที่มีโปรแกรมโกงแบบ “เรดาร์” ภายนอกซึ่งใช้เสียงสเตอริโอของเกมเพื่อบอกทิศทางเสียงอย่างเสียงฝีเท้าอยู่แล้ว ทำให้ฉันสงสัยว่าหูฟังของฉันก็นับเป็นอุปกรณ์โกงด้วยไหม
      แต่พูดจริง ๆ คือเคยได้ยินมาว่าอุปกรณ์แบบนั้นมีอยู่แล้ว
    • ถ้าทำให้เป็นสายการแข่งขัน บอต AI ที่ใช้แค่อินพุตภาพและเสียง แล้วส่งออกเป็นเมาส์กับคีย์บอร์ดอย่างเดียว ก็น่าจะเจ๋งดี
  • หลังจากขั้นแรก ควรแบนเกมที่มี anti-cheat ระดับเคอร์เนล
    บน Linux มันยอมรับไม่ได้ และ Apple เองก็คงจะไม่ยอมให้มีแบบนั้นอีกต่อไปในอนาคต เพียงแต่ Apple สูญเสียอิทธิพลในวงการเกมไปหลังยุค Mantle และโปรเซสเซอร์ M ซึ่งทั้งสองอย่างก็สร้างปัญหาความเข้ากันได้อย่างมาก
    Microsoft เองก็กำลังเสียใจกับทุกการตัดสินใจที่เกี่ยวข้องกับเรื่องนี้
    https://www.theverge.com/2024/9/12/24242947/microsoft-window...
    ตามเคย เวลาที่ Microsoft ตัดสินใจแย่ ทุกคนก็ต้องเดือดร้อน แม้แต่ Linux ก็ด้วย มีเหตุผลที่โมดูลเคอร์เนลแบบปิดซอร์สทำให้ Linux ถูกทำเครื่องหมายว่า tainted และระบบแบบนั้นก็ไม่น่าเชื่อถือ
    หน้าที่ทำให้เกมปลอดภัยเป็นความรับผิดชอบของผู้พัฒนาเกม ไม่ใช่การไปแทรกแซงอุปกรณ์ของผู้ใช้ และการที่ทำเป้าหมายให้สำเร็จด้วยวิธีที่ปลอดภัยไม่ได้ ก็ไม่ใช่เหตุผลที่จะบังคับให้ทำเรื่องโง่และอันตราย

    • มุมมองนั้นไร้เดียงสาเกินไป anti-cheat ระดับเคอร์เนล เป็นความเสี่ยงจริงสำหรับบริษัทด้วย ถ้ามีปัญหาเกิดขึ้น มันไม่ได้ทำให้แค่โปรเซสของเกมตาย แต่ทำให้ PC ของผู้เล่นทั้งเครื่องล่มได้ และถ้าเกิดขึ้นในวงกว้างก็จะกลายเป็นฝันร้ายด้านภาพลักษณ์
      แค่ต้นทุนในการจ้างวิศวกรที่สร้างคอมโพเนนต์ระดับเคอร์เนลได้ก็มหาศาลแล้ว มันเป็นสายงานเฉพาะทางแคบ ๆ และหาแบบราคาถูกไม่ได้
      บริษัทเกมไม่ได้ใช้ anti-cheat ระดับเคอร์เนลเพราะขี้เกียจ แต่ใช้เพราะมันจำเป็นอย่างยิ่ง โดยเฉพาะในเกมอย่าง FPS ที่วิธีแบบฝั่งเซิร์ฟเวอร์ล้วน ๆ ไม่สามารถป้องกันได้หมด
      เคยลองใช้ machine learning แล้วเหมือนกัน แต่มี false positive มาก และยังพลาดการโกงแบบแนบเนียนจำนวนมากที่ทำลายประสบการณ์ผู้เล่น anti-cheat ยุคก่อนมีแค่อยู่ใน user mode แล้วพวกโปรแกรมโกงก็ย้ายลงไปที่เคอร์เนล ทำให้ทั้งตรวจจับและป้องกันยากขึ้น
      ถ้าจะรักษาประสิทธิภาพไว้ anti-cheat ก็ไม่มีทางเลือกนอกจากต้องตามลงไปด้วย ทางเลือกอีกแบบคือยกพื้นที่ให้พวกโกง และเฝ้าดูเกมที่ลงทุนพัฒนาและดูแลด้วยทรัพยากรมหาศาล กลายเป็นนรกของการโกงจนผู้เล่นปกติหนีหายไป
    • ตลกดีที่เชื่อว่าสำนักพิมพ์จะสนใจอุดมคติแบบนั้น
      ฉันเห็นด้วยว่าถ้าไม่มีของพวกนี้ก็คงดีกว่าสำหรับทุกคน แต่ความรู้สึกว่าตัวเองมี สิทธิ์ ที่จะให้บริษัทเอกชนต้องดำเนินงานตามความต้องการส่วนตัว และมี “หน้าที่” ต้องสร้างตามวิธีที่ตัวเองอยากให้ทำ นั่นแหละที่น่าประหลาดใจ
    • เหตุผลที่บริษัทเกมเลือกใช้ anti-cheat ระดับเคอร์เนล ไม่ใช่เพราะพวกเขาโง่จนป้องกัน network protocol ฝั่งเซิร์ฟเวอร์ไม่เป็น
      แต่เพราะไม่อยากให้มนุษย์จำนวนมากต้องมานั่งตัดสินแบบไม่นิ่งว่า “คนนั้นโกงหรือไม่โกง”
      anti-cheat ระดับเคอร์เนลมีข้อบกพร่องในระดับโครงสร้าง ผลคือโกงแบบ DMA และโกงที่อาศัย computer vision เพิ่มขึ้น และยังคงมอบความได้เปรียบที่มากและตรวจจับยากกว่าเดิมให้กับพวกโกง
      ถึงอย่างนั้น มันก็ยังมีประสิทธิภาพในการกันการโกงแบบโจ่งแจ้งและการโกงแบบแนบเนียนส่วนใหญ่
      การให้เซิร์ฟเวอร์ตรวจจับการโกงหลังจากรับอินพุตแล้ว เป็นเรื่องที่ยากมากหากจะทำให้เสถียร ผู้เล่นมือใหม่มีอินพุตที่ช้าและหน่วง ขณะที่ผู้เล่นเก่งตอบสนองได้เร็วกว่าหลายเท่าตัวในระดับเลขหลักเดียว และบางครั้งก็ตอบสนองเร็วกว่าที่คิดเพราะ muscle memory
      ถ้าจะสร้างโกงที่ตรวจจับไม่ได้ ก็แค่ใส่ข้อจำกัดเวลาตอบสนองระดับมนุษย์ลงในโค้ด และทำให้อินพุตทั้งหมดดูสมจริง
      สุดท้ายแล้ว ด้วยวิธีทางสถิติฝั่งเซิร์ฟเวอร์ ก็ยังสร้างโกงที่ให้ความได้เปรียบสูงมากได้ โดยแทบไม่ถูกตรวจจับจริง
      ตรงนี้คนอาจอยากใช้ AI แต่สุดท้ายก็ต้องมีการกำกับดูแลโดยมนุษย์ ไม่อย่างนั้นก็จะเกิด false positive
      ต่อให้สุดโต่งถึงขั้นออกแบบเกมให้ยึดการเรนเดอร์ฝั่งเซิร์ฟเวอร์และการประมวลผลอินพุตฝั่งเซิร์ฟเวอร์เป็นหลัก จนผู้เล่นแทบจะเล่นผ่านการเชื่อมต่อ remote desktop และขอไม่พูดถึงปัญหา latency ไปก่อน การโกงแบบ snap เข้าหัวอัตโนมัติ ชดเชยแรงถีบ และยิงอัตโนมัติ ก็ยังส่งผลต่อเกมอย่างมากอยู่ดี
      ถึงขั้นที่สามารถใช้เสียงซึ่งต้องแม่นยำพอให้มนุษย์ระบุตำแหน่งศัตรูได้ มาทำ wallhack แบบพื้นฐานได้ด้วยซ้ำ
      นี่คือธรรมชาติของเกม FPS จึงทำให้บริษัทต้องใส่ anti-cheat ระดับเคอร์เนลเข้าไป ถ้าจะสร้าง FPS ที่โกงไม่ได้ ก็อาจต้องไปสร้างเกมอีกประเภทหนึ่งแทน ซึ่งในเชิงรูปแบบทำให้การโกงยากขึ้นหรือเป็นไปไม่ได้
      ถ้าอยากได้ FPS ที่ไม่มีคนโกง ก็ต้องกลับไปสนับสนุนการจับคู่กันเอง โฮสต์เซิร์ฟเวอร์กันเอง และดูแลกันเอง แต่ปัญหาคือ “มันสเกลไม่ได้” ทั้งการรีวิวโดยมนุษย์และการเรนเดอร์ฝั่งเซิร์ฟเวอร์ล้วนสเกลไม่ได้
      เหตุผลสำคัญที่บริษัทเกมทำ anti-cheat ระดับเคอร์เนล ก็คือผู้เล่นยอมจ่ายเงินให้เกมที่มีมัน แต่ไม่ยอมจ่ายให้เกมที่ไม่มี
      ฉันคิดว่า Microsoft เป็นหนึ่งในบริษัทที่แย่ที่สุด แต่ในกรณีนี้คงโทษ Microsoft หรือคนพัฒนา anti-cheat ระดับเคอร์เนลได้ยาก นักพัฒนาก็กำลังทำในสิ่งที่ผู้เล่นต้องการ และ Microsoft ก็แค่ยอมให้มีสิ่งที่ผู้ใช้ปลายทางต้องการอนุญาต
      ถ้า Microsoft กำจัด anti-cheat ระดับเคอร์เนล มันก็น่าจะไม่ได้ฆ่าแนวคิด anti-cheat แบบล่วงล้ำ แต่จะเปลี่ยนไปเป็นโค้ดใน user space ที่รองรับ hardware attestation แทน Microsoft แค่กำลังออกแบบเครื่องมือใหม่เพื่อกันความรับผิดชอบของตัวเอง
      โดยพื้นฐานแล้ว anti-cheat ระดับเคอร์เนลได้ผลักการโกงไปสู่โลกของ DMA และ computer vision ดังนั้นในไม่ช้า การโกงที่โจ่งแจ้งและน่ารำคาญยิ่งกว่าเดิม ซึ่ง anti-cheat ระดับเคอร์เนลก็ยังตรวจไม่พบ อาจกลายเป็นเรื่องปกติมากขึ้น
      จากนั้นตัวเลือกถัดไปอาจเหลือเพียงเกมบนคอนโซลเท่านั้น ที่มีฮาร์ดแวร์รับรองและ hardware attestation แม้แบบนั้นก็ยังมีข้อบกพร่อง
      สุดท้ายแล้ว การเล่นเกมแบบไม่มีคนโกงบนเซิร์ฟเวอร์สาธารณะอาจกลายเป็นเรื่องเป็นไปไม่ได้ ฉันไม่แน่ใจว่านี่จะทำให้ผู้คนถอยห่างจากเกมประเภทนี้ หรือหันไปอยู่ในล็อบบี้ส่วนตัวแทน
    • น่าสงสัยว่า ระหว่างการติดตั้งระดับกลาง ๆ ของเกม multiplayer เล่นฟรีหนึ่งเกม กับสิทธิ์เข้าถึงทุกสิ่งที่ทำบน PC เครื่องนั้น อะไรจะมีค่ามากกว่ากัน
      คงไม่ใช่มีแค่ฉันคนเดียวที่คิดแบบนี้
  • ฉันไม่ชอบเลยที่จะต้องให้ สิทธิ์เข้าถึงระดับเคอร์เนล ที่เกมเอาไปใช้ได้โดยไม่ได้รับอนุญาต
    แต่การโกงเป็นภัยคุกคามเชิงโครงสร้างต่อการรักษาประสบการณ์เล่นเกมออนไลน์ที่ดี และฉันก็ไม่รู้ว่ามีทางแก้อื่นที่ดีกว่านี้ไหม
    สิ่งที่น่าหงุดหงิดมากเป็นพิเศษตลอดหลายปีที่ผ่านมาคือ นิสัยแย่ ๆ ของผู้พัฒนาเกมบางรายที่ปล่อยให้แอนตี้ชีตยังทำงานหรือค้างอยู่ในสถานะพักแม้ตอนที่ไม่ได้เล่นเกม ทำให้ไปก่อปัญหากับเกมอื่นที่ฉันเล่นซึ่งไม่เกี่ยวข้องกันเลย
    ในฐานะคนที่เล่นเกมแข่งขันเยอะ ทางประนีประนอมของฉันคือแยกโน้ตบุ๊กสำหรับเล่นเกมโดยเฉพาะ และในเครื่องนั้นจะไม่ล็อกอินแม้แต่อีเมล มีแค่ Steam เกม และซอฟต์แวร์วิดีโอที่จำเป็นเท่านั้น
    มันไม่ใช่ทางออกที่ดีนัก แต่ฉันคิดว่าอย่างน้อยก็ควรต้องเปิดเผย เรื่องที่สิ่งนี้ยังไม่ใช่มาตรฐานอยู่แล้วต่างหากที่แปลก เพียงแต่ถ้าเปิดเผยมากเกินไป พวกคนโกงก็อาจเอาไปใช้ประโยชน์ได้เหมือนกัน เลยเป็นเรื่องยาก

    • การโกงเป็นผลพวงจาก ปัญหาความไว้วางใจ ใน “ชุมชน” ระดับโลกที่ไม่ระบุตัวตน
      แอนตี้ชีตก็เป็นแค่การแข่งขันสะสมอาวุธ และยังมีแนวทางอื่น เช่น KYC แบบเบา ๆ อย่างการบังคับใช้หมายเลขโทรศัพท์สำหรับโหมดจัดอันดับ
      ดูเหมือน Deadlock จะกำลังทำสิ่งที่น่าสนใจด้วยระบบ early access แบบเชิญเท่านั้น โดยแทบจะกำลังสร้าง social graph ของผู้เล่น และสามารถใช้สิ่งนี้ระบุ “กลุ่มโกง” หรือบัญชีที่ถูกยึด รวมถึงสร้างระบบชื่อเสียงทางสังคมภายในชุมชนได้
    • แอนตี้ชีต AI แบบอิงพฤติกรรม ที่ทำงานฝั่งเซิร์ฟเวอร์อาจเป็นทางออกได้
    • ฉันไม่ค่อยเข้าใจคำพูดที่ว่าการโกงออนไลน์เป็นภัยคุกคามเชิงโครงสร้างต่อประสบการณ์เล่นเกมที่ดี
      อย่างที่บอกในเธรดอื่น ๆ ฉันไม่เคยสนเลยว่าผู้เล่นคนอื่นโกงหรือเปล่า หรืออาจเป็นเพราะตอนนี้ฉันอายุมากขึ้นแล้ว
      เมื่อก่อนการเจอคนใช้ aimbot หรือ wallhack เป็นเรื่องที่พบได้ค่อนข้างบ่อย
      ถ้ามันทำลายความสนุกจริง ๆ ก็แค่เปลี่ยนเซิร์ฟเวอร์หรือเข้า lobby อื่น
  • แค่ แอนตี้ชีตระดับเคอร์เนล อย่างเดียวไม่พอ
    อินพุตฝั่งไคลเอนต์จำเป็นต้องถูกเชื่อถือ แต่ไม่มีการพิสูจน์แหล่งที่มา และเคอร์เนลก็มองไม่เห็นอินพุต
    ตอนนี้ฉันกำลังจะเปิดตัวเกม matchmaking แบบ 100 คน ไคลเอนต์รันที่ 360Hz เซิร์ฟเวอร์เดิน tick ที่ 120Hz ยุติธรรมได้ถึง ping 60 และครอบคลุมทั้งทวีป
    เซิร์ฟเวอร์เป็นเครื่องจริงไม่ใช่ VM ใช้ EPYC 4244P ส่งข้อมูลที่ 2Gbps และใช้เซิร์ฟเวอร์ 1 เครื่องต่อเกม 15 นาที ทุกไคลเอนต์และเซิร์ฟเวอร์ใช้ mitigations=off, nosmt
    ฉันชอบ Steam แต่จะไม่ปล่อยเกมนี้ลงที่นั่น
    ถ้าอยากเล่นต้องรีบูต เป็น Arch Linux ISO ที่ดัดแปลงให้บูตเข้าตัวเกมได้โดยตรงจาก USB drive
    ไม่ได้ควบคุมแค่เคอร์เนล แต่ควบคุมทั้งระบบปฏิบัติการและทุกโปรแกรมที่กำลังรัน ไม่มี Cortana ไม่มี Discord ไม่มี Spotify มีแต่เกม ตอนเล่น PC จะกลายเป็นเครื่องอาร์เคด
    ถึงอย่างนั้นก็ยังไม่พอ
    ถ้าจะเล่น ranked ต้องติดตั้งกล้องมือเหนือไหล่ซ้าย ต้องเห็นทิศทางศีรษะ มือทั้งสองข้าง แผ่นรองเมาส์ทั้งหมด และหน้าจอ ต้องใช้ความเร็วเมาส์ ขนาดแผ่นรองเมาส์ และขนาดจอภาพที่กำหนดตายตัวด้วย
    ทุกคนเล่นด้วยการตั้งค่าและการจัดวางแบบเดียวกัน ดังนั้นถ้าตรวจสอบอินพุตของผู้เล่นคนไหนก็ควรจะดูคุ้นเคย
    แอนตี้ชีตระดับเคอร์เนลไม่พอ ต้องมี สภาพแวดล้อมระบบปฏิบัติการทั้งหมดที่ทำซ้ำได้ รวมถึงโปรแกรมที่กำลังรันและการเชื่อมต่อเครือข่าย
    และนั่นก็ยังไม่พอ ต้องผูกการพิสูจน์แหล่งที่มาของอินพุตผู้ใช้เข้ากับระบบ replay ของเกมโดยตรง เพื่อให้ฉันหรือใครก็ตามสามารถตรวจสอบสถานการณ์ปะทะจากมุมมองของทุกฝ่ายได้
    แน่นอนว่าทั้งหมดนี้ควรเป็นทางเลือก ไม่ใช่ทุกคนที่อยากเล่น ranked และแค่แอนตี้ชีตระดับ OS ทั้งระบบก็น่าจะช่วยได้ระดับหนึ่งแม้ไม่มีการพิสูจน์แหล่งที่มาของอินพุต
    คุณเคยสงสัยไหมว่าที่ตายเพราะโดนคนโกงฆ่าหรือโดนพระเจ้าฆ่า คุณไม่อยากเลิกมีคำถามแบบนั้นอีกหรือ ฉันอยาก และอีกไม่นานมันจะเป็นแบบนั้น

    • ตอนนี้ Valve จับคนโกงด้วย แมชชีนเลิร์นนิง ที่วิเคราะห์เดโมอยู่ จับได้เยอะพอสมควร และว่ากันว่าน่าเชื่อถือกว่าการรายงานโดยผู้เล่น
      แต่พูดตามตรง การหยุดคนโกงเป็นไปไม่ได้ วิธีเดียวคือเล่นกับเพื่อน หรือเปลี่ยนรางวัลของเกมให้การโกงไม่น่าดึงดูดเท่าเดิม
      ตัวอย่างเช่น Counter-Strike มีสกินให้หาและขายได้ เลยหลีกเลี่ยงไม่ได้ที่จะมีคนโกงเยอะ เกมก็ดังมากจนมีผู้เล่นจำนวนมากยอมซื้อโปรแกรมโกง
      การออกแบบเกมและการออกแบบเอนจินก็ช่วยเรื่องป้องกันการโกงได้
      คุณแก้ความเสื่อมทรามของมนุษย์ไม่ได้ ต้องเปลี่ยนเกมหรือเปลี่ยนผู้เล่น
      ชุมชน Counter-Strike ค่อนข้างเป็นพิษพอสมควร แต่สำหรับ Valve แล้วทำเงินได้มาก ฉันเลยคิดว่า Valve ไม่ได้สนใจนักว่าผู้เล่นจะประพฤติตัวแย่แค่ไหน
      CS เป็นเกมที่ดี แต่นั่นแหละธรรมชาติของมนุษย์ หาคนที่เล่น CS แล้วน่าแนะนำได้ยาก และเกมเมอร์ส่วนใหญ่ก็ไปทำอย่างอื่นเพราะการมีปฏิสัมพันธ์กับชุมชนนั้นมันแย่เกินทน
    • นี่เป็นหลักฐานชิ้นมหาศาลว่าความอาฆาตพาคนไปได้ไกลแค่ไหน
      ฉันอยากลองเกมนะ แต่ปัญหาของฉันคือคนที่พยายามยึดคอมพิวเตอร์ของฉัน ฉันจะไม่แก้ปัญหานั้นด้วยการยอมให้คุณยึดคอมพิวเตอร์ของฉัน
      ถ้าพูดถึงความต้องการของระบบ มันจะรันบนโน้ตบุ๊กเก่า ๆ ห่วย ๆ ได้ไหม?
    • ฉันคิดว่านี่เป็นการเสียดสี ไม่น่าจะมีใครเล่นเกมที่มีข้อกำหนดแบบนั้นจริง ๆ
    • ถ้าต้องทำทั้งหมดนี้ ก็ไปเล่นบน คอนโซล เถอะ
      ในทางทฤษฎีก็อาจมีคนโกงที่นั่นเหมือนกัน แต่ในเกม PS5 ของฉัน มันไม่ได้มีมากพอจะกระทบประสบการณ์ใช้งาน
      แผนเกมสุดบ้าคลั่งนี้น่าทึ่งนะ แค่อาจเอาไปให้ Twitch สตรีมเมอร์ช่วยโปรโมตได้ยากหน่อย
    • ให้ความรู้สึกแบบยุค DOS ที่บอกว่า “ใส่แผ่นเกมแผ่น 1 แล้วรีบูตเพื่อเล่น”
  • ฉันประกอบ เครื่อง Arch Linux แยกต่างหากไว้เพื่อเล่นเกม Steam เท่านั้น
    บนเครื่องนั้นฉันจะไม่ล็อกอินบัญชีสำคัญอย่างอีเมล ธนาคาร ฯลฯ เด็ดขาด
    เป็นโน้ตบุ๊ก Framework เลยถอดกล้องกับไมค์แยกทางกายภาพได้ ปฏิบัติกับมันเหมือนเทอร์มินัลสาธารณะเป็นหลัก

    • สงสัยจริง ๆ ว่าคุณคาดหวังว่าเกม Steam จะมีรูทคิตแบบที่ขโมยข้อมูลยืนยันตัวตนจริงหรือ
      ถ้าอย่างนั้นทุกอย่างที่ติดตั้งลง PC ก็ล้วนต้องสงสัยหมด ssh ทำให้ฉันรู้สึกน่ากลัวกว่าเกม Steam สุ่ม ๆ มาก
    • ฮาร์ดแวร์เฉพาะทางเป็นไอเดียที่ดี แต่สำหรับหลายคนมันแพงเกินไป ระบบปฏิบัติการเฉพาะทาง เป็นก้าวแรกที่ดี
    • ถ้าถึงระดับนั้น ฉันก็ไม่แน่ใจว่ามีเหตุผลอะไรต้องใช้ Arch บนเครื่องนั้น
      ถ้าไม่เล่นเกมออนไลน์มัลติเพลเยอร์เลยก็คงเหมาะดี
    • ฉันก็เหมือนกัน ฉันแยก เครื่องสำหรับเล่นเกมโดยเฉพาะ ไว้ต่างหาก เพราะไม่อยากให้ข้อมูลธนาคารรั่วไหล
    • ฉันได้ยินมาว่าโน้ตบุ๊ก Framework ดีในแง่ความเป็นโมดูลาร์ แต่อยากรู้ว่าเรื่องความร้อนเป็นอย่างไร
      ใส่ GPU แยกได้ไหม?
  • น่าจะดีถ้ามีแท็ก เช่นแท็ก “ต้องใช้บัญชีบุคคลที่สาม” ด้วย เพื่อที่จะได้กรองเกมแบบนั้นออกและไม่ต้องเห็นเลย

    • ผมใช้ส่วนขยาย Augmented Steam[0] อยู่ ซึ่งจะแสดงแบนเนอร์ที่เด่นขึ้นถ้าเกมมีจุดน่ารำคาญอย่าง DRM, แอนตี้ชีต หรือการบังคับใช้บัญชีบุคคลที่สาม
      นอกจากนี้ยังมีฟีเจอร์ที่มีประโยชน์อีกหลายอย่าง
      [0]: https://github.com/IsThereAnyDeal/AugmentedSteam
    • แท็กเป็นแบบ crowdsourcing ผมเคยติดแท็ก “DRM ที่ต้องออนไลน์ตลอดเวลา” ไว้ตั้งแต่ก่อนมันจะแสดงบนหน้าร้าน แต่เพราะแสดงแค่แท็กบน ๆ ไม่กี่อัน ก็เลยแทบไม่มีความหมาย
  • ผมไม่เคยเห็นเกมที่ขอสิทธิ์ root และคิดว่าถ้าจะติดตั้งอะไรระดับเคอร์เนลก็น่าจะต้องใช้สิทธิ์แบบนั้น
    ในไบนารีของ Steam เองก็ไม่มีตัวไหนที่ตั้ง setuid หรือ capabilities ไว้
    เลยสงสัยว่ามีใครเคยเห็นเกมที่ขอสิทธิ์ root ไหม
    เมื่อดูจากโพสต์นี้[1] และข้อเท็จจริงที่ว่าแพ็กเกจที่เกี่ยวกับ Wine ไม่มีเคอร์เนลโมดูล และไฟล์รันของแพ็กเกจนั้นก็ไม่ได้มี setuid หรือ capabilities นี่จึงดูเหมือนเป็นปัญหาของ Windows ไม่ใช่ของ Linux
    [1] https://www.reddit.com/r/linux_gaming/comments/gjzkzk/will_w...

    • แอนตี้ชีตระดับเคอร์เนลแทบทั้งหมดถูกเขียนมาสำหรับ Windows
      ที่มันเกี่ยวกับการเล่นเกมบน Linux ก็เพราะถึง Wine/Proton จะรันส่วนใน user space ได้ดี เกมพวกนี้ก็ยังใช้บน Linux ไม่ได้อยู่ดี
    • เท่าที่ผมเข้าใจ ถ้าเล่นเกม EAC บน Linux ผ่าน Proton ก็ไม่ได้รัน EAC ตัวเดียวกับที่ผู้เล่น Windows ใช้
      มันเป็น เวอร์ชันเบา ที่รันด้วยสิทธิ์ผู้ใช้ทั่วไป และให้การป้องกันขั้นต่ำอย่างการตรวจสอบไฟล์เกมหรือจับสิ่งผิดปกติแบบชัดเจน
      แน่นอนว่ามันไม่มีสิทธิ์เห็นทุกอย่างที่กำลังรันอยู่ในระบบหรือติดตั้งเคอร์เนลโมดูล
      เพราะงั้นคนโกงอาจเลี่ยงได้ง่ายกว่าบน Linux ดังนั้นแอนตี้ชีตอย่าง EAC จึงทำให้การรองรับ Linux เป็นสวิตช์ทางเลือก และนักพัฒนาบางรายก็ไม่เปิดมัน
    • ทุกอย่างจะแสดงว่า “ต้องการเปลี่ยนแปลงในอุปกรณ์ของคุณ” ผมเองก็เผลอติดตั้ง EAC แบบนั้นเหมือนกัน
    • บน Linux ไม่เป็นแบบนั้น บน Windows ต่างออกไป และได้ยินมาว่าโดยเฉพาะถ้าจะเล่นเกมแข่งขันก็เป็นแบบนั้น
  • ก็เข้าใจได้ เพราะ Valve พูดมาตลอดว่าไม่จำเป็นต้องใช้แอนตี้ชีตระดับเคอร์เนล และก็ไม่ได้ใส่มาในเกมของตัวเองด้วย
    แต่พูดตามตรง ใน CS มักมีหลายครั้งที่สงสัยว่าคู่ต่อสู้วันนี้ฟอร์มดีหรือกำลังแฮ็กอยู่กันแน่ ขณะที่ใน Valorant ไม่ค่อยเป็นแบบนั้น และมันก็มีเหตุผล

    • ยังได้ยินคำบ่นและการคาดเดาอยู่พอสมควรว่า Valve กำลังพัฒนา แอนตี้ชีตที่ไม่ใช่ระดับเคอร์เนล
  • ยิ่งนักพัฒนาตระหนักได้เร็วว่าเขาต้องทำฝั่งเซิร์ฟเวอร์ให้ดี ก็ยิ่งดี

    • เป็นไปไม่ได้ที่จะหยุดการโกงได้ด้วยฝั่งเซิร์ฟเวอร์อย่างเดียว พวก aim bot สามารถทำงานได้ด้วยข้อมูลที่ไคลเอนต์จำเป็นต้องมีอยู่แล้วเพื่อเรนเดอร์ผู้เล่นคนอื่นบนหน้าจอ และมันตอบสนองได้เร็วกว่ามนุษย์ จึงได้เปรียบมาก
    • ผมคิดว่าบริษัทส่วนใหญ่ก็ทำฝั่งเซิร์ฟเวอร์กันดีอยู่แล้ว ปัญหาคือมีแฮ็กจำนวนมากที่ทำให้ไคลเอนต์เล่นได้เก่งผิดมนุษย์
      เช่น มาโคร, aim bot, การติดตามคูลดาวน์, auto hex อะไรพวกนั้น
    • โมเดลการเล่นเกมบนพีซีในปัจจุบัน ที่ให้โค้ดไปรันบนเครื่องซึ่งอยู่ภายใต้การควบคุมของผู้ใช้ ขัดแย้งกับการแก้ปัญหาการโกงในระดับพื้นฐาน
      คุณไม่สามารถป้องกันทุกอย่างได้จากฝั่งเซิร์ฟเวอร์เพียงอย่างเดียว