ชื่อโปรเจกต์: ควบคุม Pie Face แบบไร้สายด้วยโทรศัพท์ของคุณ!
การหลอกลวงทางวิศวกรรม: การแกล้งด้วย Pie Face ที่ถูกแฮก
การแกล้งกันมักเกี่ยวกับจังหวะเวลา และโปรเจกต์ Hacked Pie Face นี้คือบทเรียนขั้นสูงสุดในการตั้งเวลาเชิงกลที่แม่นยำและการควบคุมแบบไร้สาย ด้วยการ Reverse-engineering กลไกเฟืองและลิ่มภายในของเกม "Pie Face" ยอดนิยม โปรเจกต์นี้ได้แทนที่ความบังเอิญด้วยการทริกเกอร์ที่คำนวณไว้และควบคุมด้วยสมาร์ทโฟน โดยยังคงรักษารูปลักษณ์ทางกายภาพดั้งเดิมของเกมไว้ทั้งหมด
การก่อวินาศกรรมเชิงกล: การข้ามระบบเฟือง
เกม Pie Face ดั้งเดิมอาศัยชุดลิ่มแบบสุ่มบนเฟืองกลางที่ผลักตัว Idler ขึ้นไปเป็นระยะเพื่อปล่อยแขนเหวี่ยงที่ใช้สปริง
- การถอดลิ่ม: แฮกเกอร์จะปิดการใช้งาน "ความสุ่ม" ในตัวของเกมอย่างถาวรโดยการขัดลิ่มทริกเกอร์บนเฟืองหลักออก
- การกระตุ้นด้วยแรงบิดสูง: Micro-servo มาตรฐานขาดความแข็งแรงที่จะเอาชนะแรงต้านของสปริงภายในได้ ดังนั้นจึงมีการติดตั้ง 20 kg high-torque servo แทน
- การเชื่อมต่อด้วยเอ็นตกปลา: เพื่อให้มีขนาดเล็กและลดเสียงรบกวน Servo เชื่อมต่อกับ Idler ผ่าน high-test fishing line ที่ร้อยผ่าน Eyebolt ภายใน ซึ่งให้การทริกเกอร์แบบ "เงียบ" ที่ไม่แจ้งเตือนเหยื่อ
ชุดคำสั่งและการควบคุมแบบไร้สาย
โปรเจกต์นี้เชื่อมช่องว่างระหว่างการแฮกเชิงกลและซอฟต์แวร์มือถือ:
- HC-05 Bluetooth Interface: Arduino Nano ทำหน้าที่เป็นสมองภายใน รับฟังสัญญาณควบคุมจากแอป Serial Bluetooth Terminal
- Conditional Launch Logic: เพื่อให้แน่ใจว่าพายจะถูกปาใน จังหวะที่แม่นยำ ที่เหยื่อหมุนที่จับ ระบบจึงมี Limit Switch โดย Arduino จะรอเงื่อนไขสองอย่าง: คำสั่ง "Launch Enabled" จากโทรศัพท์ของผู้ควบคุม และการคลิกทางกายภาพจาก Limit Switch ที่บ่งบอกถึงการหมุนที่จับ
- การโจมตีแบบหน่วงเวลา: ฟีเจอร์ซอฟต์แวร์ที่ซับซ้อนช่วยให้ผู้ควบคุมสามารถตั้งค่า "Delay Count" ได้ ตัวอย่างเช่น ผู้ควบคุมสามารถสั่งให้เกมรอ 5 รอบการหมุนก่อนที่จะทริกเกอร์ ซึ่งช่วยให้พวกเขามีเวลาเปลี่ยนไปใช้แอปกล้องในโทรศัพท์เพื่อจับภาพช่วงเวลานั้น
วิวัฒนาการการออกแบบ V2: แผ่นรองใต้ท้อง (Belly Pan)
การแฮกเวอร์ชัน 2.0 ได้นำเสนอ central belly pan ที่เป็นที่เก็บแบตเตอรี่ USB 5V และชุดประกอบ Arduino/Servo การปรับปรุงการออกแบบนี้ทำให้มั่นใจได้ว่าตัวเกมทั้งสองส่วนสามารถแยกออกจากกันเพื่อการบำรุงรักษาได้โดยไม่ทำให้เอ็นตกปลาที่ละเอียดอ่อนขาด ทำให้เครื่องมือนี้เชื่อถือได้สำหรับการเล่นแกล้งหลายครั้งในงานปาร์ตี้หรือกิจกรรมต่างๆ
คุณสามารถดูหลักการทำงานของเครื่องจักรของฉัน และคลิปบางส่วนที่แสดงการทำงานจริง ได้ในวิดีโอด้านล่างนี้
ในบทความนี้ ฉันจะอธิบายรายละเอียดเพิ่มเติมเกี่ยวกับกระบวนการที่ฉันได้มาซึ่งการออกแบบปัจจุบัน เพื่อความชัดเจน แนวคิดบางอย่างที่พบในวิดีโอก็จะถูกกล่าวถึงในบทความนี้ด้วย
แนวคิด
เมื่อฉันมีความคิดที่จะแฮก Pie Face เป็นครั้งแรก ฉันมีเป้าหมายการออกแบบหลายประการในใจ:
- รูปลักษณ์ภายนอกของเกมควรคงเดิม
- เกมไม่ควรสร้างเสียงรบกวนเพิ่มเติมมากนัก (เช่น ไม่มีเสียงมอเตอร์หรือ Servo หึ่งๆ ดังๆ)
- เกมควรเชื่อมต่อกับโทรศัพท์มือถือแบบไร้สาย
สรุปคือ ฉันต้องการควบคุมกลไกการปาของเกมได้อย่างสมบูรณ์ โดยที่ไม่มีใครสังเกตเห็น เป็นงานที่ยากมากเลยทีเดียว ปัญหาหลักคือการจัดเก็บทุกอย่างลงในพื้นที่ที่จำกัดมาก
Reverse Engineering
ในการทำความเข้าใจวิธีการแฮก Pie Face ก่อนอื่นฉันต้องเข้าใจว่ากลไกของเกมทำงานอย่างไร และนั่นต้องอาศัยการทำ Reverse Engineering



โมดูลนี้ประกอบด้วยกลไกทั้งหมดของ Pie Face อย่างที่คุณเห็น มีหลายสิ่งหลายอย่างเกิดขึ้นภายใต้ฝากระโปรงของเกมนี้ คันโยกทางด้านขวาใน Figure 1 และ 2 คือสิ่งที่แขนเหวี่ยงสีม่วงยึดติดอยู่ และเฟืองขนาดใหญ่ตรงกลางของ Figure 2 คือสิ่งที่ถูกหมุนด้วยลูกบิดที่อยู่ด้านข้างของเกม หากคุณมองใกล้ๆ ที่ Figure 2 คุณจะเห็นลิ่มเล็กๆ กระจายอยู่รอบๆ รางด้านในของเฟือง อย่างที่คุณจะเห็นในแอนิเมชันต่อไปนี้ ลิ่มเหล่านี้คือองค์ประกอบสำคัญที่ทำให้เกมทำงานได้
แอนิเมชันนี้แสดงถึงวิธีการทำงานของกลไก Pie Face เฟืองขนาดใหญ่ถูกหมุนโดยผู้ใช้ เมื่อ Idler (แสดงด้วยสีแดง) ถูกผลักขึ้นด้านบนด้วยลิ่มอันใดอันหนึ่ง แขนเหวี่ยง (แสดงด้วยสีม่วง) ก็จะถูกปล่อยออกมา มีลิ่มเพียง 2 อันในแอนิเมชันนี้เพื่อความเรียบง่าย อย่างที่คุณเห็นใน Figure 2 เฟืองจริงมีลิ่มกระจายอยู่รอบๆ รางด้านในแบบสุ่มอีกมากมาย ซึ่งหมายความว่า Pie Faceไม่ได้สุ่มเลย! มันแค่ถูกออกแบบมาให้รู้สึกเหมือนเป็นแบบนั้น ในความเป็นจริง มีรูปแบบที่กำหนดไว้ว่าเมื่อใดที่แขนจะถูกทริกเกอร์
การนำไปใช้งาน
ฉันแฮกเกมโดยทำดังนี้ ฉันถอดโมดูลกลไกออก ขัดลิ่มทริกเกอร์ออก และเจาะรูใน Idler จากนั้นฉันติดเอ็นตกปลาเข้ากับ Idler ร้อยเอ็นผ่าน Eyebolt แล้วต่อปลายอีกด้านหนึ่งเข้ากับ Servo ตอนนี้ แขนเหวี่ยงจะไม่ถูกทริกเกอร์เลย เว้นแต่ว่า Servo จะดึงเอ็นตกปลาลง
ฉันจะไม่ลงรายละเอียดว่าทำไมฉันถึงเลือกวิธีนี้ในการแฮกเกมมากกว่าวิธีอื่น เนื่องจากได้กล่าวถึงในวิดีโอไปแล้ว แต่ฉันจะบอกว่าวิธีนี้ จะไม่สามารถใช้กับmicro-servoได้ แรงบิดที่ต้องใช้เพื่อเอาชนะแรงของ Idler