
![]()
![]()
![]()
![]()
![]()
![]()
![]()

Screeps เป็นเกมกลยุทธ์ MMO สำหรับโปรแกรมเมอร์ วัตถุประสงค์หลักคือการขยายอาณานิคมของคุณรวบรวมทรัพยากรและต่อสู้กับผู้เล่นคนอื่นระหว่างทาง ในการควบคุมหน่วยของคุณคุณรหัส AI ใน JavaScript; ทุกอย่างตั้งแต่การย้ายการทำเหมืองการสร้างการต่อสู้และการซื้อขายนั้นขับเคลื่อนด้วยรหัสของคุณทั้งหมด เนื่องจาก Screeps เป็น MMO จึงเกิดขึ้นบนเซิร์ฟเวอร์เดียวที่ทำงานตลอด 24/7 ซึ่งมีผู้เล่นคนอื่น ๆ และกองทัพครีพ เมื่อคุณออกจากระบบประชากรของคุณยังคงส่งเสียงพึมพำกับงานใดก็ตามที่คุณตั้งไว้ Screeps ทำให้ความกล้าหาญในการเขียนโปรแกรมของคุณมีความกล้าหาญกับคนอื่น ๆ เพื่อดูว่าใครสามารถนึกถึงวิธีการที่มีประสิทธิภาพที่สุดในการทำงานให้เสร็จหรือจินตนาการถึงวิธีการใหม่ ๆ ในการเอาชนะศัตรู
Overmind เป็น codebase ส่วนตัวของฉันที่ฉันทำงานบนเซิร์ฟเวอร์สาธารณะ โครงสร้างของ AI นั้นมีธีมอย่างหลวม ๆ รอบหน่วยข่าวกรองฝูงของ Zerg จาก Starcraft Overlords orchestrate การกระทำที่คืบในแต่ละอาณานิคมและผู้ดูแลอาณานิคมวางคำสั่งเพื่อปรับให้เข้ากับสิ่งเร้า ในที่สุดผู้ดูดซับอนุญาตให้ผู้เล่นทุกคนทำงาน Overmind ให้ทำหน้าที่เป็นกลุ่มผู้ป่วยร่วมกันแบ่งปันครีพและทรัพยากรและตอบสนองต่อการร่วมกันกับบัญชีแยกประเภทหลักของคำสั่งทั้งหมดที่ผู้เล่นทุกคนแบ่งปัน
AI เป็นแบบอัตโนมัติทั้งหมดแม้ว่ามันจะสามารถทำงานในโหมดแมนนวลหรือแบบกึ่งอัตโนมัติ รุ่นล่าสุดควรทำงานนอกกรอบ อย่างไรก็ตามหากคุณพบสิ่งที่เสียโปรดส่งปัญหาและฉันจะพยายามแก้ไข
หากคุณยังใหม่กับ Screeps ฉันขอแนะนำให้เขียน AI ของคุณเอง: ความสนุกส่วนใหญ่ของเกมคือการเขียนโปรแกรมบอทของคุณเองและดูการวิ่งมดตัวเล็ก ๆ ของคุณ! อย่างไรก็ตามฉันพยายามทำให้ Codebase อ่านและมีเอกสารได้ดีดังนั้นอย่าลังเลที่จะแยกโครงการหรือใช้เป็นแรงบันดาลใจเมื่อเขียน AI ของคุณ
หากคุณยังต้องการใช้ overmind บนเซิร์ฟเวอร์สาธารณะนั่นก็โอเคเช่นกัน - มีหลายคนที่ทำสิ่งนี้อยู่แล้ว แต่โปรดตระหนักว่าการใช้ AI ที่เป็นผู้ใหญ่เช่นนี้จะช่วยให้คุณได้เปรียบอย่างมากกับผู้เล่นใหม่คนอื่น ๆ ดังนั้นอย่าออกนอกเส้นทางเพื่อทำลายความสนุกของคนอื่น ในอนาคตฉันจะใช้วิธีการสำหรับผู้เล่นมือใหม่ในการยกเลิกการรุกรานมากเกินไปโดยบอทที่มากเกินไป (ตราบใดที่พวกเขาไม่ได้เริ่มต้นความขัดแย้งและหลีกเลี่ยงไม่ได้)
หากคุณต้องการเรียกใช้ overmind โดยไม่ต้องแก้ไขคุณสามารถคัดลอกไฟล์ main.js ที่รวบรวมไว้ที่แนบกับรุ่นล่าสุดลงในสคริปต์ของคุณ ในขณะที่ Overmind เป็นไปโดยอัตโนมัติโดยค่าเริ่มต้นสามารถทำงานได้ด้วยระดับความเป็นอิสระที่แตกต่างกัน อ้างถึงวิกิ overmind สำหรับวิธีการกำหนดค่าและใช้งานบอท
ในการติดตั้ง codebase เต็มรูปแบบดาวน์โหลดหรือโคลนที่เก็บ (โปรดทราบว่าในขณะที่การเปิดตัวล่าสุดของ Overmind ควรมีความเสถียรเสมอการกระทำล่าสุดอาจมีคุณสมบัติที่ไม่เสถียร) นำทางไปยังไดเรกทอรีรากที่มากเกินไปและเรียกใช้ npm install ในการรวบรวมและปรับใช้ codebase ให้สร้างไฟล์ screeps.json จากไฟล์ตัวอย่างจากนั้นทำการดำเนินการต่อไปนี้:
npm run push-mainnpm run push-pservernpm run compile Overmind ใช้ rollup เพื่อมัดตัวอักษรที่รวบรวมไว้ในไฟล์ main.js เดียว Codebase รวมถึงฟังก์ชันการทำงานเพื่อคำนวณการตรวจสอบเพื่อตรวจสอบความถูกต้องภายใน - หากคุณมีการติดตั้งแบบ rollup รุ่นที่แตกต่างกันไปทั่วโลกอาจคำนวณการตรวจสอบที่แตกต่างกันและฟังก์ชั่นบางอย่างจะถูกปิดใช้งาน โปรดตรวจสอบให้แน่ใจว่ามีการใช้งานการติดตั้ง rollup ในท้องถิ่นที่พบใน node_modules
Overmind รวมถึงแดชบอร์ด Grafana (แสดงด้านล่าง) ซึ่งติดตามสถิติการทำงานโดยละเอียด ในการตั้งค่าแดชบอร์ด:
$User เป็นชื่อผู้ใช้ของคุณ
ตรวจสอบวิกิ overmind สำหรับคำอธิบายเชิงลึกของส่วนต่าง ๆ ของการออกแบบของ AI (คลิกแผนภาพด้านล่างเพื่อดูเวอร์ชันความละเอียดสูงกว่า)