ข้ามไปยังเนื้อหา

การพัฒนาปลั๊กอิน

เปิด Creator / Workshop จากเมนูหลัก ตัวจัดการแผนที่ หรือปลั๊กอิน สร้างแผนที่ แคมเปญสองด่าน ปลั๊กอิน หรือบทสอนบอสพร้อมปลั๊กอินที่เกี่ยวข้อง แก้ไข บันทึก ตรวจสอบ และทดลองแบบออฟไลน์ พื้นที่ทำงานรวมโครงการในเครื่อง การสมัคร ผลงานเผยแพร่ การค้นหา และงาน เทมเพลต «ภารกิจอาณาจักร» สร้างแคมเปญ kingdom หนึ่งด่านที่มีสรุปภารกิจ ค่าหัว คลื่นศัตรู และบอสที่มีชื่อ นำเข้าไฟล์ ZIP ไฟล์แผนที่ หรือโฟลเดอร์ผลงานได้ด้วยปุ่ม «นำเข้าเนื้อหา» หรือลากมาวางบนพื้นที่ทำงาน ปุ่ม «ส่งออก…» จะเขียน ZIP หรือโฟลเดอร์ และปุ่ม «เปิดโฟลเดอร์» จะแสดงไฟล์ของผลงาน ทั้งสองจะถามโฟลเดอร์ (เสนอโฟลเดอร์ล่าสุดอีกครั้ง) ถ้าชื่อซ้ำจะเปลี่ยนเป็น name-2 name-3… และจะไม่เขียนลงในเนื้อหาที่ Steam ดาวน์โหลด ผลงานแต่ละชิ้นแสดงพร้อมภาพตัวอย่าง ประเภท เวอร์ชัน ผู้สร้าง เกมนี้โหลดได้หรือไม่ และผลการตรวจสอบครั้งล่าสุด ทุกรายการมีช่องค้นหาและตัวกรองประเภท และบอกเหตุผลเมื่อรายการว่าง รายละเอียดของผลงานที่เลือกจะบอกสัญญาอนุญาต เวอร์ชันเกม สิ่งที่ต้องใช้ และโฟลเดอร์ «โครงการใหม่» จะแสดงเทมเพลตพร้อมสิ่งที่แต่ละแบบสร้าง และแสดงตำแหน่งของผลงานก่อนเขียนไฟล์ใด ๆ การตรวจสอบจะเตือนเรื่องป้อมปราการ หีบ และบอสที่วางไว้ซึ่งฮีโร่เดินไปจากปราสาทไม่ถึง (เป็นข้อผิดพลาดเมื่อเงื่อนไขชนะต้องใช้) และจำกัดแผนที่หนึ่งแผ่นไว้ที่ป้อมปราการ 64 แห่ง หีบ 256 ใบ และบอสที่วางไว้ 32 ตัว ดับเบิลคลิกปัญหาที่อยู่บนช่องแผนที่เพื่อเปิดตัวแก้ไขตรงนั้น ตัวแก้ไขภูมิประเทศและแคมเปญเปิดในโปรเซสแยกที่โหลดเฉพาะสิ่งที่ผลงานต้องพึ่ง เนื้อหาที่ผู้เล่นติดตั้งไว้จึงไม่ปรากฏและไม่รบกวน และบันทึกลงในผลงานโดยตรง ขณะที่ผลงานยังมีการแก้ไขที่ไม่ได้บันทึกในตัวแก้ไขที่เปิดจากพื้นที่ทำงาน การตรวจสอบ การส่งออก การทดลองเล่น และการเผยแพร่จะรอ เพราะใช้ไฟล์ที่บันทึกแล้ว ในตัวแก้ไขปลั๊กอิน เฟสของบอสเป็นตาราง (พลังชีวิตที่แต่ละเฟสเริ่มและสกิลของเฟสนั้น) และจำนวน ขีดจำกัด และเวลาเตือนของสกิลก็มีช่องของตัวเอง ตัวแก้ไขปลั๊กอินจะเก็บฉบับร่างของงานที่ยังไม่บันทึกไว้หลังการแก้ไขแต่ละครั้งไม่นาน ไว้ข้างไฟล์ตั้งค่าและนอกผลงาน เมื่อเปิดผลงานอีกครั้งหลังโปรแกรมล่มจะถามว่าจะกู้คืนไหม ในตัวแก้ไขปลั๊กอิน «ทำสำเนา» คัดลอกคำนิยามด้วย ID ใหม่ คำนิยามที่ถูกอ้างถึงโดยคำนิยามอื่นจะลบไม่ได้จนกว่าจะเอาการอ้างถึงออก และ «คัดลอกของในเกม…» เพิ่มสำเนาครบถ้วนของตัวละครในเกมด้วย ID เดิม ซึ่งจะแทนที่ของเดิมทุกที่ที่ถูกใช้โดยไม่แตะไฟล์ของเกม อาชีพ ศัตรู อาคาร ฐานที่มั่น และงานวิจัยมีฟอร์มคุณสมบัติ (ช่วงค่าสถานะและการเติบโต ทองที่ดรอป ราคา อาชีพที่อาคารรับสมัคร ศัตรูที่ฐานที่มั่นส่งออกมา สิ่งที่งานวิจัยมีผล) ค่าที่ได้จากคำนิยามต้นแบบจะแสดงเป็นสีเทา ค่าที่เกินขอบเขตของเกมหรืออ้างถึง ID ที่ไม่มีอยู่จะถูกทำเครื่องหมายทันที ส่วนการพึ่งพาแก้ไขในตาราง แท็บทรัพยากรรับไฟล์ที่ลากมาวาง แสดงส่วนที่มองเห็นของแต่ละภาพเทียบกับขีดจำกัดขนาดและหน่วยความจำของเกม ดูตัวอย่างเป็นภูมิประเทศหรือไอคอน เก็บบรรทัดแหล่งที่มาและเครดิต แสดงและกำหนดว่าคำนิยามใดใช้ภาพนั้น เปลี่ยนชื่อไฟล์พร้อมแก้การอ้างถึงทั้งหมด ไม่ยอมนำไฟล์ที่ยังถูกใช้ออก และชี้ช่องที่อ้างถึงไฟล์ที่ไม่มีอยู่ไปยังไฟล์ที่มีอยู่ได้ การทดลองเล่นจะเริ่มด้วยรายการสิ่งที่โหลด (ปลั๊กอินแต่ละตัวตามลำดับการโหลดพร้อมคำนิยามที่เพิ่มหรือแทนที่ และปลั๊กอินที่ถูกข้ามพร้อมเหตุผล) พื้นที่ทำงานแสดงรายการเดียวกันและนำคำนิยามที่ถูกข้ามของปลั๊กอินที่ทดสอบไปไว้ในรายการปัญหา การเปิดปัญหาในตารางคำนิยามจะพาไปยังคำนิยามนั้นในตัวแก้ไขปลั๊กอิน

การนำเข้าโฟลเดอร์/ZIP และสำเนาที่แก้ไขได้สร้าง ID ใหม่และเปลี่ยนการอ้างอิงเนมสเปซของตนเอง โดยเก็บผู้สร้าง แหล่งที่มา และใบอนุญาต แต่ไม่รับการผูกการอัปเดต ต้นฉบับ Steam อ่านอย่างเดียว ตรวจสอบพาธสัมพัทธ์ ขนาด อาร์เรย์ และวงจรทริกเกอร์ ใบอนุญาตว่างไม่ให้สิทธิ์เผยแพร่ต่อ เมื่อเผยแพร่สำเนา หน้าตรวจทานจะแสดงที่มา (ผลงาน เวอร์ชัน ผู้สร้าง และหน้ารายการของต้นฉบับ) และเงื่อนไขของผู้สร้างต้นฉบับ และจะส่งได้ก็ต่อเมื่อคุณยืนยันว่าคงการให้เครดิตและทำตามเงื่อนไข หรือหากต้นฉบับไม่มีใบอนุญาต ว่าได้รับอนุญาตจากผู้สร้างแล้ว ใบอนุญาตที่ไม่ได้ระบุจะแสดงเป็นไม่อนุญาตให้แชร์เสมอ รายละเอียดของสำเนาจะบอกต้นฉบับและแจ้งเมื่อต้นฉบับที่สมัครไว้อัปเดต และคำแนะนำของปุ่มสร้างสำเนาที่แก้ไขได้ในเครื่อง ส่งออก… และยกเลิกการสมัครจะบอกว่าแต่ละปุ่มทำอะไร

การเผยแพร่ต้องมี Steam เตรียมหน้าและภาพ ตรวจสอบสแนปช็อตไฟล์/แฮชที่ไม่เปลี่ยน แล้วส่งอย่างชัดเจน งานดำเนินต่อเมื่อปิดหน้าต่าง ยกเลิกได้ในขั้นเตรียม หากส่งแล้วหรือไม่ทราบผล ต้องตรวจสอบหรือซิงค์ก่อนลองใหม่ การผูกแยกบัญชี แอป และโครงการ ภาพต้องเล็กกว่า 1 MiB การทดสอบใช้ Steam จำลอง เผยแพร่ปลั๊กอินที่จำเป็นก่อน แล้วตรวจสอบ ID ผลงานของแอปเดียวกันในหน้าทบทวนแผนที่/แคมเปญ ตัวช่วยเผยแพร่บันทึกข้อความหน้าแยกตามภาษาและข้อมูล JSON ครอบภาพหลักเป็นสี่เหลี่ยมจัตุรัส และจัดลำดับหรือลบภาพเพิ่มเติมได้สูงสุดแปดภาพ ผลงานที่เผยแพร่แล้วอัปเดตเฉพาะหน้าและการพึ่งพาได้โดยไม่ส่งเนื้อหาใหม่ ภาพรวมอยู่ในสแนปช็อตที่ตรวจสอบด้วย ตัวช่วยสามารถสร้างภาพตัวอย่างหลักจากผลงานเอง (ภูมิประเทศของแผนที่พร้อมปราสาท ฐานที่มั่น และหีบสมบัติ ด่านแรก ๆ ของแคมเปญ ภาพของปลั๊กอินเอง ทั้งหมดพร้อมชื่อเรื่อง) แสดงภาพตัวอย่างตามที่จะอัปโหลดพร้อมขนาด วาดคำบรรยายด้านล่างภาพหน้าจอแต่ละภาพได้ และแจ้งว่าภาพใดที่ฉบับร่างอ้างถึงได้หายไปแล้ว ตัวช่วยมีสามขั้น (หน้าผลงาน การพึ่งพาและเวอร์ชัน การตรวจทาน) ไปมาด้วยปุ่มย้อนกลับและถัดไป (Alt+ซ้าย, Alt+ขวา) เมื่อพบปัญหาจะพาไปยังขั้นนั้นและตีกรอบช่องไว้จนกว่าจะแก้ไข ส่วนการตรวจทานจะนับไฟล์ที่เพิ่ม เปลี่ยน และนำออกตั้งแต่เผยแพร่ครั้งล่าสุด งานที่ล้มเหลวจะบอกว่าเจอปัญหาแบบใด (สิทธิ์ ข้อตกลงเวิร์กช็อป พื้นที่ Steam ไม่ว่าง หมดเวลา Steam ออฟไลน์ การตรวจ ไม่ทราบผลลัพธ์ ถูกขัดจังหวะ) ควรทำอะไรต่อ และรหัสอย่าง WS-PERM-R15 ที่ไม่มีบัญชี รายการ หรือชื่อไฟล์ การเลือกรายการของคุณในการเผยแพร่ของฉันจะแสดงการมองเห็น เวอร์ชัน เวลาสร้างและอัปเดต ขนาด ผลงานในเครื่องที่ลิงก์อยู่ และรายการสิ่งที่การอัปเดตจากผลงานนั้นจะเปลี่ยน ได้แก่ ช่องของหน้า ไฟล์ และรายการที่จำเป็น เมื่อเลือกรายการในเบราว์เซอร์ จะเห็นคำอธิบาย (หรือข้อความว่า Steam ไม่ได้ให้คำอธิบาย) และข้อมูลสองส่วนที่แยกจากกัน คือสิ่งที่ Steam ให้มา (ประเภท รายการที่จำเป็น สาขาเกมที่ผู้สร้างอนุญาต เวอร์ชันที่บันทึกไว้ตอนเผยแพร่ เวลาอัปเดต ขนาด และคะแนนโหวต) และเมื่อ Steam ติดตั้งแล้ว สิ่งที่แมนิเฟสต์ของรายการนั้นบอก (ผลงานและเวอร์ชัน บิลด์นี้รันเวอร์ชันเกมที่ต้องการได้หรือไม่ ผลงานที่ต้องใช้ และสิ่งที่อาจเปลี่ยน) ข้อมูลที่ Steam ไม่ได้ให้จะไม่ถูกเติมขึ้นเอง รายการที่สมัครสมาชิกไว้จะถูกใช้ก็ต่อเมื่อ Steam ติดตั้งเสร็จและผ่านการตรวจสอบ คือเกมนี้อ่านแมนิเฟสต์ได้ และผลงานทุกชิ้นที่ต้องใช้ติดตั้งอยู่ในเวอร์ชันที่ยอมรับโดยไม่มีการพึ่งพาวนกัน (ถ้าสองรายการให้ผลงานเดียวกัน จะใช้ปลั๊กอินของคุณเอง ไม่เช่นนั้นใช้รายการที่เก่าที่สุด) รายการที่ Steam กำลังอัปเดตยังคงใช้เวอร์ชันที่ติดตั้งอยู่ แท็บการสมัครสมาชิกแสดงสถานะของทุกรายการที่สมัครไว้ (รอ Steam, กำลังดาวน์โหลดพร้อมจำนวนไบต์, รอการตรวจสอบ, ใช้งานได้, ขาดสิ่งที่ต้องใช้ หรือล้มเหลวพร้อมเหตุผล) และเบราว์เซอร์ก็แสดงสถานะเดียวกันสำหรับรายการที่เลือก การดาวน์โหลดที่ Steam ทำไม่สำเร็จ เช่น ดิสก์เต็ม จะไม่ถูกขอใหม่จนกว่าคุณจะกด ลองดาวน์โหลดอีกครั้ง ก่อนโหลดเซฟ เกมจะตรวจเนื้อหาที่ใช้ตอนเซฟ ถ้าผลงานที่ใช้ถูกอัปเดต ปิด ยกเลิกการสมัคร หรือใช้ไม่ได้ หรือมีเนื้อหาอื่นเปิดอยู่ จะบอกทีละรายการ และหลังจากถามแล้วจะโหลดเซฟจากสำเนาที่เก็บไว้ หรือบอกว่าทำไมโหลดไม่ได้ (ไม่มีสำเนาที่ใช้ได้ อัปเดตเกม บัญชีหรือแอป Steam อื่น Steam ไม่ได้ทำงาน) และแก้อย่างไร ไฟล์เซฟและเกมที่กำลังเล่นยังคงเดิม ปุ่มเนื้อหาที่เก็บไว้… ในแท็บการสมัครสมาชิกจะแสดงสำเนาเหล่านี้พร้อมเซฟที่พึ่งพา ตรวจ และลบที่ไม่ได้ใช้ สำเนาที่มีเซฟพึ่งพาจะลบได้หลังยืนยันที่แสดงชื่อเซฟเท่านั้น และสำเนาที่เกมที่กำลังเล่นใช้จะไม่ถูกลบ รายละเอียดของรายการและผลงานยังแสดงเวอร์ชันของเกมนี้ (ไม่ได้ตั้งในบิลด์สำหรับพัฒนา ซึ่งเนื้อหาที่ต้องการเวอร์ชันเกมเฉพาะจะโหลดไม่ได้) และสาขา Steam และปุ่มเปิดหน้าไอเท็มในแท็บการสมัครสมาชิกใช้ดูรายการที่ใช้ไม่ได้ เมื่อ Steam สลับเกมไปสาขาอื่นระหว่างเล่น จะแสดงเพียงการแจ้งเตือนและไม่เปิดเกมใหม่เอง แท็กของหน้าคือประเภทของผลงานบวกแท็กใดก็ได้จาก Story, Challenge, Bosses, Classes, Enemies, Buildings, Research, Events, Languages, Art ขั้นตอนหน้าจะแสดงภาษาที่เขียนหน้าไว้ (ภาษา Steam อื่นจะเห็นหน้าเริ่มต้น) และสำหรับรายการที่เผยแพร่แล้ว นำเข้าหน้าจาก Steam… จะเทียบหน้าใน Steam กับฉบับร่างทีละช่องและนำมาเฉพาะช่องที่เลือก เมื่อไม่มี Steam จะไม่โหลดรายการที่สมัครไว้และไม่ใช้สำเนาที่เก็บไว้ เพราะทั้งสองเป็นของบัญชีและแอป Steam (เดโมกับเกมเต็มเป็นคนละแอป แต่ละแอปมีรายการ ฉบับร่าง และโปรไฟล์เนื้อหาของตัวเอง) เซฟที่ต้องใช้จะบอกเหตุผล ส่วนการสร้าง ตรวจ ทดลองเล่น ส่งออก และนำเข้าผลงานของคุณเองทำได้แบบออฟไลน์ทั้งหมด ระหว่างทดลองเล่นจะวัดเวลา tick หน่วยความจำ และแอตลาสสไปรต์ แล้วพื้นที่ทำงานจะเพิ่มลงในรายงานการทดลองเล่นโดยจัดเป็นปกติ ควรจับตา หรือหนักเกินไป พร้อมวิธีแก้ เมื่ออัปโหลดล้มเหลวเพราะเนื้อหาหรือโควตา คำอธิบายจะบอกข้อจำกัดของ Steam และเมื่ออัปโหลดเสร็จจะเตือนให้สมัครและตรวจว่าโหลดได้ เพราะการเผยแพร่ไม่ได้ทดสอบส่วนนี้ การอัปโหลดจะถูกยกเลิกเมื่อไม่มีความคืบหน้าครบห้านาทีเท่านั้น และงานที่เสร็จหรือยกเลิกแล้วจะหายจากรายการหลังหนึ่งสัปดาห์ เซสชันทดสอบที่ไม่มีเกมใดใช้อยู่จะถูกลบเมื่อเริ่มเซสชันใหม่ กด Enter ที่ผลงานในเครื่องจะเปิดตัวแก้ไข และหน้าต่างเหล่านี้พอดีกับหน้าจอ 1280 × 720 ในทุกภาษา

นิยามและการพึ่งพา

Section titled “นิยามและการพึ่งพา”

ปลั๊กอินที่มีเวอร์ชันเพิ่มอาชีพ ศัตรู อาคาร และฐานที่มีเนมสเปซแยกกันด้วยแม่แบบพฤติกรรมในเกม รวมถึงทักษะ งานวิจัย เหตุการณ์ บอสที่มีชื่อ สื่อ และภาษา ID ใหม่ใช้ namespace:name ส่วน ID เดิมจะเขียนทับเนื้อหาเดิม ไฟล์หลักเป็นแบบอ่านอย่างเดียว สกินเปลี่ยนภาพตัวละครหรือภูมิประเทศโดยไม่เปลี่ยนค่าการเล่น สิ่งก่อสร้างของผู้เล่นมีเอฟเฟกต์ได้ คือสกิลโจมตี รักษา โล่ หรือสถานะหนึ่งอย่าง ที่ใช้กับศัตรูหรือฮีโร่ในระยะเป็นช่วงคงที่เมื่อถึงระดับที่กำหนด แพ็กที่ประกาศความสามารถเพียง assets และ languages มีได้เฉพาะสกิน (skins) และภาษา และภาพหรือเสียงที่เกมใช้ไม่ได้จะคงของในตัวเกมไว้

แมนิเฟสต์ร่วมบันทึก ID โครงการ ผู้สร้าง เวอร์ชัน ความเข้ากันได้ สื่อ และการพึ่งพา ลำดับโหลดแน่นอนและหยุดเมื่อการพึ่งพาขาด ไม่เข้ากัน หรือวนเป็นวง เนื้อหาเก่าคงรูปแบบและลำดับเดิม โปรไฟล์แสดงการเขียนทับและใช้กับเกมถัดไป โปรไฟล์เนื้อหาแสดงปลั๊กอินที่เลือกตามลำดับการโหลด พร้อมที่มาและเวอร์ชันที่ติดตั้ง เวอร์ชันที่เกมที่กำลังเล่นใช้ และเวอร์ชันที่เลือกไว้ครั้งหน้า ปุ่มเลื่อนขึ้นและเลื่อนลงเปลี่ยนลำดับได้เฉพาะที่การพึ่งพาอนุญาต และลำดับมีผลกับการโหลดครั้งหน้าในบัญชีและแอป Steam เดียวกัน ก่อนเปลี่ยนแปลงใด ๆ โปรไฟล์จะแสดงว่าการใช้จะเปิดหรือปิดอะไร พร้อมแผนที่ แคมเปญ ปลั๊กอิน และเซฟที่ใช้ปลั๊กอินที่ถูกปิด ดับเบิลคลิกปัญหาเพื่อไปยังปลั๊กอินนั้น แผนที่หรือแคมเปญแนะนำปลั๊กอินที่ต้องใช้ได้ และรายการที่สมัครไว้แต่ไม่ได้แสดง เช่น สำเนาของปลั๊กอินของคุณเอง จะบอกเหตุผล

{"manifest_version":1,"format_version":1,"kind":"Plugin",
"project_id":"sample:content","namespace":"sample","version":"1.0.0",
"author":"Author","game_version":"*","entry_points":["plugin.json"],
"assets":["preview.png"],"preview":"preview.png","languages":["en"],
"capabilities":["dynamic_types","behavior_templates","bosses","assets"],
"dependencies":[],"license":"","source":{}}

content-manifest.json / <map-stem>.manifest.json

{"id":"sample","name":"Example","version":"1.0.0",
"content":{"enemies":"content/enemies.json","skills":"content/skills.json",
"bosses":"content/bosses.json","languages":["lang/en.json"]}}

plugin.json

[{"id":"sample:slime","base":"SLIME","stats":{"hp":90}}]
[{"id":"sample:strike","template":"attack","cooldown":60,"radius":5,"power":10}]
[{"id":"sample:chief","enemy":"sample:slime","name":"Chief",
"phases":[{"hp":1,"skills":[]},{"hp":0.5,"skills":["sample:strike"]}],"reward":100}]
{"bosses":[{"definition":"sample:chief","encounter":"bridge_chief","x":21,"y":16}],
"victory":"defeat_boss","victory_target":"bridge_chief"}
{"project_id":"sample:content","version":">=1.0.0,<2.0.0","optional":false}

สื่อและขีดจำกัด

Section titled “สื่อและขีดจำกัด”
JSON สื่อและขีดจำกัด
skills attack, heal, shield, status, summon
adventurer_classes.skills ผังทักษะของอาชีพ (สกิลติดตัว): รายการ {"id", "level", "effect", "requires": [ids]} มีกี่อันก็ได้และหลายอันต่อระดับได้ หรือตารางแบบเดิม {"<ระดับ>": {"id", "effect"}} ซึ่งอ่านเป็นสายเดียว id ต้องไม่ซ้ำในอาชีพ requires อ้างถึงสกิลของอาชีพเดียวกัน และห้ามวนเป็นวง
adventurer_classes.active_skill, tree_skills สกิลใช้งานของอาชีพเอง เป็นโหนดในผังเดียวกัน: active_skill คือ ID ของสกิลแรก (ราก) tree_skills คือ ID ของสกิลที่งอกจากผัง ได้สูงสุด 12 แต่ละอันเป็นสกิลใน skills (ห้าม summon) เรียนรู้เมื่อถึง level ของมันและฮีโร่มีทุกสกิลที่ requires ระบุ (ID ของสกิลในอาชีพได้สูงสุด 8 จะเป็นสกิลติดตัวหรือสกิลใช้งานก็ได้ สกิลแรกห้ามมี) และแต่ละอันรอ cooldown ของตัวเอง ถ้าไม่มี active_skill อาชีพจะใช้สกิลแรกของอาชีพฐาน
buildings.effect สกิล attack, heal, shield หรือ status (ไม่ใช่ summon) ใช้ทุก 10–3600 tick ตั้งแต่สิ่งก่อสร้างระดับ 1–3 สถานะไม่ซ้อนกัน
research stat_modifier
castle_branches เส้นทางของปราสาท: id, playable, buildings (ID ของสิ่งก่อสร้าง ของเกมหรือของปลั๊กอินเอง), effects และ level3 (ตัวเลขตามชื่อเอฟเฟกต์ ชื่อเดียวกับที่เส้นทางของเกมใช้), specialities (ไม่มี หรือ {"id", "effects"} ตั้งแต่สองอันขึ้นไป) คำนิยามที่ใช้ ID ของเส้นทางในเกมจะแทนที่เส้นทางนั้นทั้งหมด ส่วน ID แบบ namespace:name จะเพิ่มเส้นทางใหม่ แสดงต่อจากเส้นทางของเกมและมีให้เลือกทุกที่ที่มีเส้นทาง ข้อความของมันคือคีย์ภาษา branch_<id>, branch_<id>_desc, branch_<id>_price, branch_<id>_level3, branch_<id>_heroes และ speciality_<id>_<speciality> อาณาจักรที่เส้นทางไม่ได้ถูกโหลดแล้วจะเล่นเหมือนยังไม่ได้เลือกเส้นทาง และเซฟยังเก็บตัวเลือกไว้
events gold, enemy_wave, stat_buff
bosses 1–8 phases; optional stats of its own (hp, attack, defense); a name starting i18n: is a translation key
skins tiles, adventurer_classes, enemies, buildings, enemy_buildings; เฉพาะรูปลักษณ์
assets by kind adventurer_classes, enemies: animation_sheet / sprite, sound; buildings: sprite, icon; enemy_buildings: sprite; skills: skill_effect; skins tiles: sprite (วาดแบบทึบ); สกินตัวละคร: ตามเป้าหมาย; ฟิลด์อื่นและ layout นอกตัวละครจะไม่ถูกใช้และมีคำเตือน
plugin art and sounds ภาพที่ถอดรหัสแล้ว 256 MiB (กว้าง × สูง × 4) รวมทุกแพ็กที่เปิด ไฟล์เดียวกันนับครั้งเดียว เกินแล้วใช้ภาพในตัวเกม; เสียงของปลั๊กอินเก็บในหน่วยความจำ 64 MiB
capabilities: assets, languages only มีได้เฉพาะสกิน (skins) และภาษา คำนิยามอื่นจะถูกปฏิเสธ
assets.animation_sheet PNG: 24 columns × 5 rows
assets.sprite / icon / skill_effect PNG; 8192 px/side, 16 million pixels
assets.sound WAV; mono/stereo, ≤30 seconds
layout.anchor [0–1, 0–1]
effect_frames 1–64
preview <1 MiB
portable project ≤2048 files; ≤64 MiB total; ≤16 MiB/file
map ≤2048 tiles/side
campaign แผนที่ด่าน ≤127 แผ่น
spawn_enemies.action_params.count 1–32
spawn_enemies.action_params.march castle / road
reveal.action_params.radius 1–40
post_bounty.action_params.reward 1–99999
post_bounty.action_params.deadline 0–6000 ticks
adventurer_classes.profile.explore_range 10–400
adventurer_classes.profile.retreat_hp 0.15–0.5
adventurer_classes.profile: explore / hunt / steal / flags.* / errands.* 0–3
{"id":"sample:grass","kind":"tiles","target":"GRASS",
"assets":{"sprite":"assets/grass.png"}}

PLUGINS.md

ความเข้ากันได้กับเวอร์ชันเกม

Section titled “ความเข้ากันได้กับเวอร์ชันเกม”

game_version กำหนดเงื่อนไขของเวอร์ชันที่เผยแพร่ของเกมที่กำลังทำงาน ยอมรับ "*" รวมถึงโครงการรูปแบบเก่า ช่วงเวอร์ชันเฉพาะจะยอมรับก็ต่อเมื่อบิลด์ประกาศเวอร์ชันเกมแบบเซแมนติกที่ทราบและตรงตามช่วงนั้น มิฉะนั้นจะปฏิเสธการตรวจสอบ การโหลด และการเผยแพร่ ในที่เก็บนี้ game.build_info.GAME_VERSION ยังไม่ทราบค่า จึงควรใช้ "*" จนกว่าบิลด์เผยแพร่จะระบุเวอร์ชันที่อนุมัติแล้ว version ของโครงการและชื่อสาขา Steam ใช้แทนเวอร์ชันเกมไม่ได้