พื้นฐาน
คำศัพท์การสร้างมอด Stardew Valley
รวมคำศัพท์ที่เจอบ่อยเวลาสร้างมอด Stardew Valley อธิบายเป็นภาษาไทยสั้นและเข้าใจง่าย ตั้งแต่ SMAPI, manifest, content pack, asset ไปจนถึง Harmony และ build
อัปเดต
สถานะการตรวจสอบ: ตรวจกับเอกสารทางการแล้ว
เนื้อหาตรวจสอบกับเอกสารทางการแล้ว แต่ยังไม่ได้ทดสอบในเกมจริงทุกขั้นตอน (ตรวจล่าสุด )
ตรวจกับ: Stardew Valley Wiki (Modding), Content Patcher author guide
คำศัพท์เรียงตามหมวด ถ้าเพิ่งเริ่ม อ่านหมวดแรกก่อน แล้วค่อยกลับมาดูหมวดอื่นเมื่อเจอในบทเรียน
พื้นฐาน
| คำ | ความหมาย |
|---|---|
| มอด (mod) | ส่วนเสริมที่เพิ่มหรือเปลี่ยนแปลงสิ่งในเกม โดยไม่แก้ไฟล์ของเกมโดยตรง |
| SMAPI | Stardew Modding API ตัวโหลดมอดที่ชุมชนพัฒนา ต้องเปิดเกมผ่าน SMAPI มอดจึงทำงาน |
| โฟลเดอร์ Mods | โฟลเดอร์ในโฟลเดอร์เกมที่ใส่มอดทั้งหมด หนึ่งมอดหนึ่งโฟลเดอร์ย่อย |
| manifest.json | ไฟล์ข้อมูลประจำตัวมอด ดูรายละเอียดที่ อ้างอิง manifest.json |
| UniqueID | รหัสไม่ซ้ำของมอด เช่น YourName.MyMod |
| dependency | มอดอื่นที่มอดของเราต้องใช้ |
| framework | มอดที่ให้มอดอื่นต่อยอด เช่น Content Patcher |
| log | ไฟล์บันทึกการทำงานของ SMAPI ชื่อ SMAPI-latest.txt |
Content pack
| คำ | ความหมาย |
|---|---|
| content pack | มอดที่มีแต่ไฟล์ข้อมูลและรูป ให้ framework อ่าน |
| Content Patcher | framework ยอดนิยมสำหรับแก้ข้อมูล รูป และแผนที่ด้วย JSON |
| asset | ข้อมูลหรือรูปที่เกมโหลด เช่น Data/Objects |
| patch | คำสั่งหนึ่งรายการใน content.json ที่บอกว่าจะแก้ asset อย่างไร |
| Action | ประเภทของ patch เช่น Load, EditData, EditImage, EditMap, Include |
| Format | เวอร์ชันรูปแบบไฟล์ของ Content Patcher ที่ content.json ใช้ |
| token | ค่าที่เปลี่ยนตามสถานการณ์ เช่น ฤดูกาลหรือค่าใน config ใช้ใน {{ }} |
| ConfigSchema | การประกาศตัวเลือกที่ผู้เล่นตั้งค่าได้ |
มอด C#
| คำ | ความหมาย |
|---|---|
| C# | ภาษาโปรแกรมที่ใช้เขียนมอด SMAPI |
| .NET | แพลตฟอร์มที่รันโค้ด C# เกมและ SMAPI 4 ใช้ .NET 6 |
| build / compile | แปลงซอร์สโค้ดให้เป็นไฟล์ .dll ที่เกมโหลดได้ |
| DLL | ไฟล์โปรแกรมที่ได้จากการ build ชื่อต้องตรงกับ EntryDll |
| ModEntry | class หลักของมอด สืบทอดจาก Mod ของ SMAPI |
| event | เหตุการณ์ในเกมที่มอดสมัครรับได้ เช่น เริ่มวันใหม่หรือกดปุ่ม |
| ModBuildConfig | แพ็กเกจ NuGet ทางการที่ช่วย build และติดตั้งมอดให้อัตโนมัติ |
| Harmony | ไลบรารีสำหรับแก้โค้ดของเกมโดยตรง ใช้เมื่อ API ของ SMAPI ไม่พอ |
การแก้ปัญหา
| คำ | ความหมาย |
|---|---|
| exception | ข้อผิดพลาดที่เกิดขณะโค้ดทำงาน เช่น NullReferenceException |
| stack trace | รายการบรรทัดโค้ดที่ทำงานอยู่ตอนเกิด exception อ่านจากบนลงล่าง |
| null | ค่าว่าง ไม่มีข้อมูล ถ้าใช้โดยไม่ตรวจก่อนจะเกิด exception |
| UpdateKeys | ข้อมูลที่ให้ SMAPI ตรวจหาเวอร์ชันใหม่ของมอด |
ดูความหมายของข้อความใน log ได้ที่ ข้อความ error ของ SMAPI