เกม 2048

เมื่อวันก่อนผมอ่านผ่านๆ มีคนแนะนำเกม 2048 ครับ พอดีเมื่อวานกลางคืนได้ลองเล่นดู ปรากฎว่าติดเลย และดูน่าสนใจในแง่ของคณิตศาสตร์และคอมพิวเตอร์ เลยว่าจะเขียนบล็อกถึงครับ

เกม 2048 นี้สามารถเข้าเล่นได้จากต้นฉบับที่ Github เกมนี้คนเขียนคือ Gabriele Cirulli ซึ่งเป็น Web designer ที่อายุแค่ 20 ปีครับ เขาได้ไอเดียมาจากเกม Threes อีกทีนึงครับ ใครใช้ iOS ก็มีแอพให้โหลดใน App Store ด้วยส่วน Android ก็มีใน Google Play เหมือนกัน (แต่ทั้งสองอันนี้ไม่ใช่ คนเขียนคนเดียวกับบนเว็บนะครับ แต่เป็นแบบเดียวกันเลย)



เริ่มเกมมาก็ง่ายๆ เลยเรามีตาราง 4x4 ช่อง และจะมีตัวเลขอยู่ในสองช่อง สิ่งที่เราสามารถทำได้คือกดแป้นลูกศรบนคีย์บอร์ด (บนโทรศัพท์/แทบเล็ตให้เลื่อนนิ้วตามทิศทางเอา) ถ้าเลื่อนไปทางไหน บล็อกของตัวเลขก็จะเทไปด้านนั้นครับ ถ้าบล็อกตัวเลขที่เหมือนกันเทมาชนกัน จะรวมกันเป็นบล็อกตัวเลขที่ใหญ่ขึ้น (เช่น บล็อก 2 เทมาชนกับ 2 ก็จะเกิดเป็นบล็อก 4, 4 เจอ 4 เกิด 8, 8 กับ 8 เกิด 16 เป็นต้น) โดยเราสามารถเลื่อนได้สี่ทิศครับ และหลังจากเราเลื่อน จะมีบล็อกใหม่ที่ random เกิดขึ้นมาในช่องว่าง หนึ่งอัน (เป็นบล็อก 2 หรือ 4)

เป้าหมายของเกมคือเอาบล็อกให้รวมกันให้ได้ 2048 โดยที่ไม่ตายซะก่อน (การตายคือเราไม่สามารถขยับอะไรได้เพราะบล็อกเต็มแล้ว) ดังนั้นเราจะต้องบริหารจัดการบล็อกให้ดีๆ ซะก่อนที่บล็อกจะมั่วกันเต็มกระดาน

หลังจากเล่นไปได้ซักพักผมก็คิดว่าเกมนี้มันน่าจะมี Strategy ที่ดีอะไรบางอย่าง พอค้นๆ ดูก็พบว่า Strategy ที่ดี (สำหรับมนุษย์อย่างเราๆ ที่คิดไม่ได้ซับซ้อนหลายชั้นแบบคอมพิวเตอร์) อันหนึ่งก็คือการพยายามให้บล็อกสูงๆ อยู่ที่มุม และบล็อกครึ่งนึงไล่กันลงมาเรื่อยๆ

การที่จะทำแบบนี้ได้ง่ายนั้นแนะนำว่าควรจะยึดมุมไว้ และให้มีบล็อกชิดเต็ม 4 อันตรงด้านใดด้านหนึ่งเพื่อ "ล็อก" ไม่ให้ตัวเลขสูงสุดขยับออกจากมุมได้


ยกตัวอย่างนี้คือ ผมพยายามเอาเลข 16 ไว้มุมล่างขวา แล้วพยายาม "ยึด" ฝั่งด้านขวาสี่อันไว้ด้วยบล็อก 2 4 8 16 ดังนั้นถ้าผมทำให้ 2 ตรงขวาบนเป็น 4 ได้ผมก็จะเอา 4 ที่ได้ทับลงมา 4 ด้านล่างเป็น 8 แล้วทับลงมาอีกเป็น 16 เพื่อลงมาอีกเป็น 32 ได้

การยึดฝั่งใดฝั่งหนึ่งเป็นการดีเพราะพอเรายึดด้านขวาเต็ม 4 บล็อก (2 4 8 16) แล้วเราจะขยับขึ้น หรือลง หรือขวา ก็ได้โดยบล็อกแถวขวาสุดนี้จะไม่มีการเปลี่ยนตำแหน่งเลยครับ

จริงๆ แล้วมีการถกเถียงถึง algorithm ที่ดีสำหรับเกมนี้อยู่ใน Stack Overflow ด้วย ซึ่งก็มี strategy อื่นที่สามารถทำได้เหมือนกัน แต่หลงง่ายอยู่หลายอันครับ

และแน่นอน เกมอะไรที่คนติดๆ กันก็มีการทำเวอร์ชั่นพิเศษออกมาอีกมากมายเป็นธรรมดา ตอนนี้มีทั้ง 2048 ที่สามารถตั้งค่าให้ตัวเลขเป็นรูปแทนได้ และ 2048 แบบที่เอามารวมกับ Flappy Bird

Leave a Reply

ช่วยแสดงความคิดเห็นด้วยครับ

Please leave a comment.

Profile

My photo

An Ear, Nose, and Throat (ENT) surgeon, an epidemiologist, and just a guy who loves technology.
(c) Copyright 2015 Pawin Numthavaj. Powered by Blogger.