เกมหมากรุกแบบสแตติก (Static Chess)
(val.town)- Static Chess เป็นการทดลองเว็บหมากรุกแบบสแตติกที่สร้างทุกหน้าจอของหมากรุกด้วย HTML และ CSS เท่านั้น และให้เดินแต่ละตาผ่านการคลิกลิงก์
- เมื่อผู้เล่นคนหนึ่งเดินตาแล้วส่ง ลิงก์ที่สร้างขึ้นให้เพื่อน อีกฝ่ายก็ส่งลิงก์กลับมาเพื่อเล่นต่อ
- ใช้ อินเทอร์เฟซแบบ Brutalist ที่ตัดแอนิเมชันและการโต้ตอบที่ลื่นไหลออกไป เพื่อให้โฟกัสที่กระดานหมากรุกและการเลือกตาเดินเอง
- ฟีเจอร์ยัง ค่อนข้างจำกัด และอาจมีส่วนที่ใช้งานไม่ได้ ทำให้ยังมีข้อจำกัดสำหรับการเล่นจริง
- เปิดความเป็นไปได้ในการต่อยอดในอนาคต เช่น รองรับการเล่นจริง อินเทอร์เฟซเรียบง่ายสำหรับเกมระยะยาว และคู่ต่อสู้แบบ AI สแตติก
หมากรุกแบบสแตติกที่เล่นต่อผ่านลิงก์
- Static Chess เป็นเว็บไซต์หมากรุกที่ตั้งเป้าเป็น “plain, brutalist, no bloat chess”
- หน้าจอประกอบขึ้นด้วย HTML และ CSS เท่านั้น และการเดินหมากทำผ่าน การคลิกลิงก์
- เกมดำเนินต่อด้วยวิธีส่งลิงก์ไปมา
- ผู้เล่นคนหนึ่งเดินตาของตนแล้วส่งลิงก์ให้เพื่อน
- เพื่อนเดินตาจากลิงก์นั้นแล้วส่งลิงก์กลับมาเพื่อเข้าสู่ตาถัดไป
- ตั้งใจตัดแอนิเมชันหรือ interaction ที่ลื่นไหลออกไป
- ยังตั้งคำถามไว้ด้วยว่า หาก Google ทำดัชนีเว็บไซต์นี้ จะลงเอยด้วยการคำนวณตาเดินหมากรุกที่เป็นไปได้ทั้งหมดหรือไม่
ข้อจำกัดปัจจุบันและไอเดียต่อยอด
- ฟีเจอร์ยัง จำกัด และอาจมีส่วนที่เสียอยู่
- ขอให้แจ้งหากพบ bug
- ได้แรงบันดาลใจจาก การอภิปรายบน HN เกี่ยวกับเว็บไซต์ที่มีสถานะเกม tic-tac-toe ที่เป็นไปได้ทั้งหมด
- มีแผนจะขยายให้รองรับการเล่นจริงในอนาคต
- อาจพัฒนาเป็น อินเทอร์เฟซเรียบง่าย สำหรับเล่นเกมกับเพื่อนเป็นเวลานาน
- มองว่าการเพิ่มฟีเจอร์ให้เล่นกับ AI แบบสแตติกก็น่าจะสนุก
- หากมีฟีเจอร์ที่ต้องการ สามารถเสนอการเปลี่ยนแปลงผ่าน PR ได้
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
ถ้าใส่ FEN ต่อท้ายใน URL ก็สามารถเล่น Chess960 (Fischer Random Chess) หรือรูปแบบ “ตำแหน่งเริ่มต้นแบบกำหนดเอง” อื่น ๆ ได้เช่นกัน โดยเปลี่ยนช่องว่างเป็นขีดล่าง
ตัวอย่าง: https://chess.maxmcd.com/bbnqrknr/pppppppp/8/8/8/8/PPPPPPPP/...
ยังไม่แน่ใจว่าย่อหน้าแรกที่บอกว่า “หมากรุกที่บริสุทธิ์ หยาบ ๆ และไร้ส่วนเกิน” นั้นเป็นข้อดีหรือข้อเสียของการทำแบบนี้กันแน่
การบอกว่าทำออกมาในวิธีแปลก ๆ เพื่อสำรวจความเป็นไปได้นั้นอย่างหนึ่ง แต่การอธิบายซอฟต์แวร์ที่สร้างด้วยเทคโนโลยีเหมาะสมว่าเป็น ความเทอะทะ แอนิเมชันตลก ๆ และปฏิสัมพันธ์ที่ลื่นไหลจนรบกวนการเล่นนั้นเป็นอีกเรื่องหนึ่ง
พอมีย่อหน้าที่สองบอกว่าฟีเจอร์ยังจำกัดและอาจพังก็ยิ่งทำให้ข้อจำกัดของแนวทางนี้ชัดขึ้น แน่นอนว่าอาจเป็นการเสียดสีทั้งหมดและผมอาจโดนหลอกก็ได้ แต่ก็เป็นงานที่ฉลาดและทำได้ดี
ส่วนข้อจำกัดของฟีเจอร์ก็น่าจะหมายถึงอย่างอื่นนอกเหนือจากสิ่งที่ถูกเรียกว่าความเทอะทะเหล่านั้น
ผมชอบไอเดียของการเล่นผ่านการส่งลิงก์แบบไร้สถานะอยู่พอสมควร และความ “สวย” ของแอนิเมชันกับปฏิสัมพันธ์อย่างน้อยสำหรับผมไม่ได้ให้ผลบวกเสมอไป
“เทคโนโลยีที่ถูกต้อง” ขึ้นอยู่กับประสบการณ์ผู้ใช้ที่ต้องการสร้างอย่างมาก สำหรับเป้าหมายนี้ HTML และ CSS คือเทคโนโลยีที่เหมาะสม เช่นเดียวกับที่เว็บซึ่งมีฟีเจอร์มากกว่าจะเหมาะกับชุดเทคโนโลยีอีกแบบตามเป้าหมาย UX ของมัน
ถ้าพูดแบบเคร่งครัด นี่ก็ไม่ใช่ เว็บไซต์แบบสแตติก จริง ๆ ใช่ไหม? มันเป็นการเรนเดอร์แบบไดนามิกจากฝั่งแบ็กเอนด์ทุกครั้งที่มีคำขอ
ไม่น่าจะมีหน้าเว็บที่เรนเดอร์ไว้ล่วงหน้า 999999919291293923 หน้าเก็บอยู่บนเซิร์ฟเวอร์ที่ไหนสักแห่งหรอก
แถมมันยังเสิร์ฟตำแหน่งที่ผิดกติกาแบบสุด ๆ ได้ด้วย: https://chess.maxmcd.com/rnbqkbnr/qqqqqqqq/8/8/8/8/QQQQQQQQ/...
[1] https://github.com/tromp/ChessPositionRanking
การตรวจจับตาเดินที่ถูกกฎนั้นดีนะ แต่ดูเหมือนจะไม่รู้จัก checkmate ใช่ไหม?
https://chess.maxmcd.com/r1b1kRnr/p1ppB2p/n2P2p1/8/7P/1p6/PP...
ไม่ควรแสดงว่าเป็นรุกจนหรือ?
ตามอุดมคติ แต่ละหน้าควรมีสตริงที่สรุปสถานะกระดานก่อนหน้าทั้งหมดที่นำไปสู่สถานะนั้นด้วย แบบนั้นก็จะสามารถค้นหาสถานะกระดานปัจจุบันพร้อมกับ ‘checkmate white’ เพื่อหาวิธีทั้งหมดที่ชนะได้จากสถานะนั้น
สิ่งเดียวที่เหลือเพื่อทำให้ Google เป็นผู้พยากรณ์หมากรุกสูงสุด ก็คือการโน้มน้าวให้อีกฝ่ายเดินตามที่เราหามาได้เป๊ะ ๆ
ตอนแรกนึกว่าจะเป็นหมากรุกสายพันธุ์ที่ไม่มีหมากตัวไหนขยับได้เลย
งานเจ๋งมาก อยากเห็นว่าถ้าเอาไปไว้หลัง CDN อย่าง Cloudflare แล้วอัตราแคชฮิตจะออกมาเป็นอย่างไร
https://lichess.org/analysis#explorer
มันน่าจะใกล้กับฐานข้อมูลของ Lichess มากกว่าฐานข้อมูล Masters ซึ่งค่อนข้างต่างกัน ตัวอย่างเช่น ใน Masters การตอบ e4 ด้วย c5 มีสัดส่วน 46% แต่ใน Lichess นั้น c5 มีแค่ 19%
https://chess.maxmcd.com/rnbqk3/pppp2pB/2P1p3/1P1P2Bp/3n4/b2...
เจ๋งมาก และผมลองเล่นต่อจนไปถึง checkmate ได้ด้วย
เมื่อก่อนผมก็เคยทำหน้าหมากรุกแบบสแตติกเหมือนกัน และใส่การเชื่อมต่อ P2P ด้วย WebRTC เพื่อให้เล่นกับเพื่อนได้
การโปรโมตเบี้ยถูกล็อกเป็น ควีน อย่างเดียว น่าจะดีถ้ารองรับการโปรโมตแบบอื่นด้วย: https://www.chess.com/forum/view/game-showcase/checkmate-by-...
เจ๋งมาก นอกจาก FEN แล้ว ถ้ามี บันทึกลำดับตาเดิน ด้วยก็น่าจะดี และน่าจะใส่ไว้ใน fragment ได้
ตัวอย่าง: https://chess.maxmcd.com/rnbqkbnr/ppp1pppp/8/3p4/3P1B2/8/PPP...