แก้ไข: เมื่อเร็ว ๆ นี้คำถามของฉันได้รับการเสนอให้เป็นซ้ำของ2048 Bot ท้าทาย ฉันต้องการเน้นว่าคำถามนี้แตกต่างจากคำถามนั้นและจะต้องการคำตอบที่จะคิดต่างจากคำถามนั้น 2048 Bot Challenge ขอให้ผู้ใช้สร้างบอทและมันจะทำงานเป็นเวลาหนึ่งชั่วโมงโดยมีคะแนนสูงสุดเป็นคะแนนของผู้ใช้ นอกจากนี้มีขีด จำกัด ที่ 555 ไบต์ ความท้าทายของฉันใช้งานรหัสน้อยกว่ามากเพียง 3 ครั้งเท่านั้น คะแนนของคุณถูกคำนวณโดยใช้คะแนนเฉลี่ยของสามครั้งและหารด้วยความยาวอักขระของรหัสไม้ตีกอล์ฟของคุณ คำถามของฉันสนับสนุนให้รายการนั้น "ฉลาดกว่า" และอย่าพยายามและได้คะแนนสูงสุดด้วยกำลังดุร้าย
-
แก้ไข: วิธีการรับถูกเปลี่ยนเป็น getTile เพื่อหลีกเลี่ยงความขัดแย้งกับคำหลัก JS นอกจากนี้ส่วนคะแนนสูงถูกเพิ่มเข้ามา
เมื่อเร็ว ๆ นี้ฉันสร้างเว็บไซต์ที่อนุญาตให้เกมยอดนิยม 2048 สามารถควบคุมได้โดยใช้ JavaScript ไซต์ของฉันเชื่อมโยงที่นี่:
วิธี:
Ace Editor อยู่เหนือบอร์ด คุณวางรหัสไว้ในนั้นซึ่งจะทำงานหนึ่งครั้งทุก ๆ 250 มิลลิวินาทีหรือ 4 ครั้งต่อวินาที สิ่งนี้เรียกว่าวัฏจักร
ใช้วิธีการต่อไปนี้เพื่อควบคุมบอร์ด คุณไม่สามารถใช้ปุ่มลูกศร
up(); //move up
down(); //move down
left(); //move left
right(); //move right
move(integer); //integer is a direction. 0:up,1:right,2:down,3:left
getTile(y,x); //gets the value of the tile in position y,x on the board. See diagram
ตัวแปรต่อไปนี้ถูกกำหนดเพื่อความสะดวกของคุณ:
eother //boolean, alternates every cycle
frozen //integer, counts how many cycles the board has remained stationary
lastDir //integer, indicates the last direction that was tried to move in
//uses same format as the move method above.
startup //boolean, will always be true when the game first starts
//you can change it as you wish
a
b //a b and c are all persistant variables, they do not change each cycle
c //any other variables defined in the cycle will be reset every time
กฎ:
- ไม่มีการสุ่มคุณต้องใช้ตรรกะ (ใช่ฉันรู้ว่าโค้ดตัวอย่างใช้การสุ่ม)
- ไม่มีการเชื่อมต่อเข้ากับฟังก์ชั่นเกมหรือการโกงในวิธีอื่น
- โดยทั่วไปแล้วพยายามเรียกวิธีการหนึ่งวิธีต่อรอบเท่านั้น มันก็โอเคถ้าคุณใช้มากกว่านี้ แต่มันจะยึดกับอนิเมชั่น
- กระดานจะต้องเริ่มต้นในสถานะสุ่มไม่มีการดัดแปลงสถานะก่อนเกม
- คุณต้องระบุทั้งรหัสที่ไม่มีการบีบอัดและ golfed ในโพสต์ของคุณ
- คุณต้องระบุลิงก์ไปยังไซต์ที่โหลดรุ่นที่ไม่มีการบีบอัดของรหัสของคุณซึ่งให้บริการผ่าน PasteBin (ตัวอย่างเช่น ... thatcoolidea.com/2048?i=pH18GWtu โหลดรหัสตัวอย่าง)
เกณฑ์การให้คะแนน:
- รหัสของคุณจะได้คะแนนจากฉัน
- คะแนน A ของคุณคือคะแนนเฉลี่ยของการวิ่ง 3 ครั้ง
- คะแนน B ของคุณคือความยาวอักขระของรหัสไม้กอล์ฟของคุณ
- คะแนนสุดท้ายของคุณคือส่วน A หารด้วยส่วน B
ผู้ชนะจะมีรหัสของตนเป็นอมตะเป็นตัวอย่างรหัสในเว็บไซต์หากพวกเขาเลือกและรับทราบในความคิดเห็นในรหัส
โชคดี! หวังว่าคุณจะสนุกกับการท้าทาย
คะแนนสูงสุดปัจจุบัน 225.22 - ตู้แช่แข็ง - user3217109