เมื่อช่วงเดียวกันของปีที่ผ่านมา ผู้อ่าน Blognone คงคุ้นหน้าคุ้นตากับเกมแก้ปัญหาด้วยภาษา Assembly นามว่า TIS-100 จากบริษัท Zachtronics กันไปแล้ว และเหมือนว่าผู้สร้างจะค้นพบแนวเกมที่ถนัดและลงตัวเสียที เพราะในเวลาไม่ถึงหนึ่งปีก็ได้เปิดตัวเกมใหม่สไตล์เดิม แต่ยกเครื่องทุกอย่างใหม่หมดในชื่อ SHENZHEN I/O จนอาจพูดติดตลกได้ว่า "นี่คือเกม TIS-100 รุ่นที่ทำเสร็จ" ก็พอได้
ดังนั้นถ้าใครเป็นแฟนพันธุ์แท้เกมเดิมอยู่แล้ว ก็กดปิดรีวิวนี้ทิ้งเสียแล้วเปิดเกมจริงขึ้นมาเล่นน่าจะได้อรรถรสครบถ้วนกว่า แต่ถ้าใครยังสงสัยว่าเกมนี้คืออะไร ทำไมโปรแกรมเมอร์ที่เขียนโปรแกรมมาทั้งวันแล้วยังต้องมาเล่นเกมเขียนโปรแกรมในเวลาว่างอีก ก็ขอเชิญอ่านรีวิวต่อไปเพื่อดับความสงสัยทั้งมวลได้ครับ
หมายเหตุ: เกมนี้ไม่เหมาะกับคนที่เกลียดการอ่านคู่มืออย่างเข้าไส้ครับ :p
เมื่อพูดถึงดินแดนแห่งเทคโนโลยี หลายต่อหลายคนคงนึกถึงซิลิคอนแวลลีย์อย่างแน่แท้ ซึ่งก็ไม่ผิดแปลกอะไรเพราะนวัตกรรมเปลี่ยนโลกจำนวนไม่น้อยต่างถูกบ่มเพาะจากที่แห่งนั้น อย่างไรก็ตาม ณ ดินแดนค่าแรงถูกในอีกฟากโลกอย่างประเทศจีน ก็เป็นสถานที่ที่เปลี่ยนไอเดียจากความว่างเปล่าเหล่านั้นให้กลายเป็นสิ่งของที่จับต้องจริงได้ ตั้งแต่ผลิตภัณฑ์คุณภาพสูงอย่าง iPhone ไปจนถึงสินค้าเกรดต่ำที่เราเรียกกันติดปากว่า "ของก๊อปจีนแดง" ด้วยปริมาณสินค้าอิเล็กทรอนิกส์ที่ผลิตออกมาจำนวนมหาศาล ก็น่าจะกล่าวได้ว่าประเทศจีนก็มีความสำคัญด้านเทคโนโลยีไม่ยิ่งหย่อนไปกว่ากันเลย โดยสิ่งที่พี่จีนของเรานั้นเก่งเป็นพิเศษก็คือด้านฮาร์ดแวร์และผลิตภัณฑ์ประเภทฝังตัว (embedded system) นั่นเอง
และเมืองหลวงทางด้านเทคโนโลยีของจีนก็คงหนีไม่พ้นเขตเศรษฐกิจพิเศษเซินเจิ้น ที่นอกจากจะอยู่ชายฝั่งทะเลทำให้สามารถขนส่งสินค้าได้อย่างสะดวกแล้ว การอยู่ติดกับเขตบริหารพิเศษฮ่องกง (ซึ่งเคยเป็นอาณานิคมของอังกฤษมาก่อน) ก็ทำให้บริษัทจากต่างประเทศไหลเข้ามาตั้งถิ่นฐานบนจีนแผ่นดินใหญ่ได้อย่างไม่ยากเย็น และด้วยความเจริญเติบโตทางเศรษฐกิจแบบก้าวกระโดดนี้เอง ก็ทำให้เมืองที่มีประชากรไม่ถึงหนึ่งล้านคนเมื่อสามสิบปีที่แล้ว กลายมาเป็นมหานครที่มีผู้คนขวักไขว่กว่าสิบล้านคนในปัจจุบัน
ด้วยความเปิดกว้างและทันสมัย จึงไม่น่าแปลกใจเท่าไหร่ที่ตัวเอกในเกมนี้ (เรา) จะเลือกย้ายถิ่นฐานออกจากบ้านเกิด เพื่อมาเป็นวิศวกรต่างด้าว (expat) ณ ดินแดนมังกรแห่งนี้ครับ
เริ่มมาเราจะได้รับคู่มือความหนาประมาณห้าสิบหน้า แบ่งออกเป็น 5 หมวด โดยครึ่งแรกจะเป็นรายละเอียดภาษาโปรแกรมและการต่อวงจรระหว่างชิป ส่วนอีกครึ่งหนึ่งจะเป็นรายละเอียดของชิ้นงานบางชิ้นที่ความซับซ้อนกว่าชิ้นอื่นๆ
หมายเหตุว่าเราไม่จำเป็นต้องอ่านเอกสารทั้งหมดให้เข้าใจในครั้งเดียวก็ได้ (เช่นเดียวกันกับการทำงานจริง?) เพียงแค่อ่านส่วนที่จำเป็นต้องใช้กับงานชิ้นนั้นๆ ก่อนก็เพียงพอแล้ว ส่วนที่เหลือก็เปิดดูให้ผ่านตาว่าอะไรอยู่ตรงไหน และมีคำแนะนำหรือข้อห้ามที่ไม่ควรปฏบัติเป็นพิเศษหรือไม่
เมื่อเข้าใจการใช้งานคร่าวๆ แล้ว ก็เริ่มจากอ่านเมลชี้แจงงานก่อนลงมือต่อวงจร
ในหน้าออกแบบชิ้นงาน เราสามารถลากวางชิปต่อเป็นวงจรพร้อมเขียนโปรแกรมได้ ชิ้นงานแต่ละชิ้นจะต้องผ่านการตรวจสอบความถูกต้องก่อนนำไปผลิต โดยเทียบผลลัพธ์การทำงานกับผลลัพธ์ที่คาดหวังที่แถบล่างสุดในรูปที่ 3
ด้านภาษาโปรแกรมที่ใช้นั้น จะเป็นภาษาที่คล้ายกับ Assembly แต่เพิ่มแนวคิดเรื่อง flag ว่าจะทำคำสั่งนั้นๆ หรือไม่เข้ามา กล่าวคือ ถ้าหากคำสั่งดังกล่าวมีเครื่องหมายบวก (+
) นำหน้าอยู่ คำสั่งนั้นจะทำงานก็ต่อเมื่อการตรวจสอบเงื่อนไขครั้งที่ผ่านมาให้ค่าเป็นจริงเท่านั้น
เช่นเดียวกับทุกเกมที่เน้นการแข่งขันแบบหาค่าที่ดีที่สุด (optimization) เมื่อแก้ปริศนาเสร็จก็จะมีตารางเทียบคะแนนกับเพื่อนๆ ขึ้นมาให้ดู โดยเกมนี้เน้นอยู่ 3 อย่าง ได้แก่ จำนวนบรรทัดโปรแกรม ปริมาณพลังงานที่ใช้ และราคาผลิตต่อหน่วย
แม้เกมนี้จะไม่ได้เน้นแข่งด้านการทำงานที่รวดเร็วแบบ TIS-100 แต่การออกแบบวงจรแบบขนาน (parallel) ที่ดี ก็ยังเป็นหัวใจหลักในการแก้ปริศนาต่างๆ อย่างมีประสิทธิภาพครับ
ส่วนอัตราการกินไฟของวงจรนั้นขึ้นอยู่กับจำนวนชิปและบรรทัดคำสั่งที่ทำงาน ซึ่งสามารถทำให้ลดลงได้โดยใช้ลอจิกเกตแทนในบางโอกาส (เช่น ในรูปที่ 5) แต่อย่าลืมว่าการทำเช่นนั้นย่อมต้องแลก (tradeoff) มาด้วยราคาต่อหน่วยที่สูงขึ้นแทนแทบทุกครั้ง
ด้านเนื้อเรื่องเมื่อมองอย่างผิวเผิน อาจรู้สึกว่านี่คือเกมจำลองชีวิตการทำงานที่ซ้ำซากจำเจ แต่หากมองให้ลึกลงไปจะเห็นว่าตัวละครแต่ละตัวนั้นมีเอกลักษณ์มาก จนบางครั้งแค่เปิดอ่านเนื้อหาเมลโดยไม่ทันได้ดูชื่อผู้ส่งก็รู้แล้วว่าเป็นใคร
แต่จุดที่สำคัญที่สุด ผมว่าน่าจะเป็นการที่เกมปล่อยให้ผู้เล่นตั้งคำถามกับตัวเองว่า คนทำงานตัวเล็กๆ อย่างเราสามารถทำอะไรได้บ้าง เมื่อได้รับมอบหมายชิ้นงานที่หมิ่นเหม่กับศีลธรรมความเชื่อของตนเอง อย่างเช่นการสร้างอุปกรณ์ช่วยเล็งเป้าปืน หรือการพิมพ์เนื้อบดติดมันแทนการแล่เนื้อจริง ไปจนถึงการฝังประตูหลัง (backdoor) เพื่อให้ผู้ดูแลระบบสามารถทำงานได้ง่าย แต่ก็ทำลายความปลอดภัยในฝั่งผู้ใช้งาน
ผมว่า Zachtronics น่าจะเข้าอกเข้าใจผู้ชื่นชอบเกมไขปริศนาเป็นอย่างดี เพราะเขาได้ใส่มินิเกมสำหรับพักสมองจากปริศนาหลักด้านการต่อวงจร ให้มาใช้สมองกับเกมไพ่แบบ Solitaire แทน
แม้เกมไพ่นี้จะใช้ชื่อเหมือนกับ Solitaire ที่แถมมากับ Windows แต่กฏการเล่นจะไปคล้ายกับ FreeCell จุดต่างสำคัญคือไพ่ตัวเลขที่มีสามสี และหน้าอักษรจีนที่ไม่สามารถวางซ้อนบนไพ่อื่นได้
เช่นเดียวกันกับ TIS-100 ผู้เล่นสามารถสร้างด่านใหม่ๆ เองได้ด้วยภาษา Lua แล้วส่งขึ้นไปแบ่งปันกับเพื่อนๆ บน Steam Workshop ครับ
ด้วยการแบ่งปันจากชุมชนนี่เอง เกมนี้จึงมีอายุการเล่นซ้ำที่ยาวนานแม้ว่าผู้เล่นจะตะลุยแคมเปญหลักของเกมจนจบไปแล้ว
หรือถ้าใครอยากพบความท้าทายแบบสุดๆ ก็ลงมือออกแบบวงจรที่ใฝ่ฝันเองได้เลย ดังเช่นวิดีโอต่อไปนี้
เกมจำลองชีวิตการทำงานของวิศวกรได้เป็นอย่างดีครับ ปริศนาไม่ได้ยากจนเกินไป แถมการต่อวงจรได้อย่างอิสระบนบอร์ดที่มีขนาดเหลือเฟือก็ทำให้ปริศนาต่างๆ ง่ายลงไปอีก ผมว่าโปรแกรมเมอร์ทั่วๆ ไปน่าจะสามารถเล่นเกมนี้จบได้ภายในไม่ถึงสิบชั่วโมงนะครับ (แต่ถ้าพยายามหาวิธีต่อวงจรที่ดีที่สุด หรือติดเล่นเกมไพ่ก็อาจใช้เวลาเกินไปเยอะโข)
แน่นอนว่าเกมนี้ไม่ได้เหมาะสำหรับทุกคน ถ้าใครไม่ชอบเกมแนวแก้ปริศนา หรือคิดว่าแค่ทำงานก็หมดแรงแล้ว การข้ามเกมนี้ไปก็ถือว่าไม่ได้พลาดอะไรครับ
แต่ถ้าใครต้องการเรียนรู้โลกแห่งการเขียนโปรแกรมจากศูนย์ หรืออยากเพิ่มพลังสมองด้านการคิดวิธีแก้ปัญหาแบบคู่ขนานแล้ว เกมนี้ก็น่าจะช่วยให้สัมฤทธิ์ผลที่หวังไว้อย่างสนุกสนานไม่น้อยเลยทีเดียว
Comments
เป็นเกมส์ที่ซื้อตั้งแต่เปิดตัววันแรกๆเลย แต่เป็นเกมส์ที่ยากเกินไปที่จะเอาไว้ใช้แค่เล่น "ฆ่าเวลา"นะ 55
เกมนี้แนะนำให้ดู playthrough ของ Scott Manley ใน Youtube ครับ :D
nop
ยากไป
ตอนแรกว่าปีใหม่นี้จะไม่เสียซื้อเกมแล้วนะ เจอรีวิวนี้เข้าไปจนได้หวังว่าคงไม่ยากกว่า TIS-100 มากหรอกนะ เดี๋ยวจะเล่นไม่จบ ฮาๆ
ไม่มีความรู้เรื่องวงจรเลย เล่นจบแล้วจะพอสร้างวงจรhardware ง่ายๆเองได้ไหมครับ
ส่วนภาษาโปรแกรมในเกมจะไม่เหมือนโลกความจริงเท่าไหร่ครับ แต่ถ้ามองว่าแต่ละชิปเป็นโมดูลสำเร็จรูปที่ทำงานเฉพาะทาง แล้วจับเอาชิปเหล่านั้นมาต่อๆ กันเพื่อให้ทำงานได้ตามที่ต้องการ แบบนั้นก็น่าจะช่วยด้านการเรียนรู้ได้ในระดับหนึ่งเลย
แต่ยังไงสุดท้ายก็ต้องไปทำความเข้าใจกับ hw ในโลกความจริงอยู่ดีครับ
เท่าที่ดูรีวิว น่าจะเป็นเกี่ยวกับ logic gate เสียมากกว่า วงจรจริง ๆ ต้องพึ่งพาอะไรมากกว่านี้เยอะเลยครับ เข้าใจเรื่องพื้นฐานอิเล็ก R C L Tr D Z ว่ามีคุณสมบัติยังไง ยังพอสร้างวงจรง่าย ๆ ได้ง่ายกว่าครับ
สมัยนี้ อุปกรณ์หลายอย่างมัน on Chip เป็น IC ตัว ๆ นึง หรือจะเป็นพวก rPi/Arduino ที่เขียนโปรแกรมควบคุมใส่เข้าไปได้เอง แค่จ่ายไฟให้ถูกแล้ว ใส่ input แล้วนำ output ออกมาใช้ได้ (แต่ก็ต้องเข้าใจพื้นฐานอิเล็กก่อนอยู่ดีแหละครับ)
Jusci - Google Plus - Twitter
ไม่มีความรู้เรื่องวงจรเลย เล่นจบแล้วจะพอสร้างวงจรhardware ง่ายๆเองได้ไหมครับ
เล่นแล้วโคตรต้องใช้สมองจริงจัง
ไม่เหมือนเกมเท่าไหร่เลย
น่าสนใจมากครับ แต่เล่นจริงๆ ไม่รู้ว่าจะเล่นไหวรึเปล่า
เอาไปให้พวกเด็กภาควิชาอิเล็กทรอนิคส์เล่นน่าจะดี
เจ๋ง ตรงสามารถแก้โค้ดได้ด้วย
แบ่งบัน ?
อุ้ย หางปลาหาย