Block Coding: ต่อบล็อกสร้างมอด Stardew Valley
สร้างมอด SMAPI ด้วยการลากบล็อกมาต่อกันแบบ Scratch ไม่ต้องพิมพ์โค้ด ดูโค้ด C# ที่ได้ทันที แล้วดาวน์โหลดเป็นโปรเจกต์พร้อม build
สร้างจากชื่อผู้สร้างและชื่อมอด (ภาษาอังกฤษเท่านั้น)
ยังไม่ได้บันทึกในเบราว์เซอร์ (ยังไม่ได้อนุญาตการจัดเก็บข้อมูล) ใช้ส่งออก workspace เพื่อเก็บงานไว้
Workspace
1 เหตุการณ์ 4 บล็อก (สูงสุด 300)
- เมื่อกดปุ่ม
- เพิ่มเงินg
- เล่นเสียง
- แสดงข้อความมุมจอไอคอน
ใช้คีย์บอร์ด: กดปุ่มเป้าหมายบนบล็อกเหตุการณ์หรือปุ่ม บนบล็อกเพื่อเลือกตำแหน่ง ย้ายขึ้นลง หรือลบ แล้วกดบล็อกในรายการด้านซ้ายเพื่อเพิ่ม
โค้ด C# ที่ได้
ZIP มี ModEntry.cs (โค้ดนี้), manifest.json, PocketMoney.csproj และ README ต้อง build ด้วย dotnet build ก่อนจึงจะได้มอดที่ใช้ในเกมได้
ข้อมูลทั้งหมดประมวลผลในเบราว์เซอร์ของคุณ ไม่มีการอัปโหลดไปยังเซิร์ฟเวอร์ใด
วิธีใช้
- ตั้งชื่อมอดและชื่อผู้สร้าง เครื่องมือจะสร้าง UniqueID ให้อัตโนมัติ
- ลากบล็อกเหตุการณ์สีน้ำเงิน เช่น เมื่อเริ่มวันใหม่ หรือ เมื่อกดปุ่ม มาวางใน workspace
- ลากบล็อกคำสั่งมาต่อใต้บล็อกเหตุการณ์ บล็อกจะทำงานจากบนลงล่าง บล็อกสีส้มอย่าง ถ้า และ ทำซ้ำ ใส่บล็อกอื่นไว้ข้างในได้
- แก้ข้อความ ตัวเลข และตัวเลือกในบล็อกได้ทันที โค้ด C# ด้านล่างจะเปลี่ยนตาม
- กดดาวน์โหลด ZIP แล้ว build ด้วย
dotnet buildตามบทเรียน SMAPI Hello World
ลากบล็อกที่อยู่ใน workspace จะย้ายบล็อกนั้นพร้อมบล็อกที่อยู่ข้างใต้ทั้งหมด ลากกลับไปที่แถบบล็อกด้านซ้ายเพื่อลบ ถ้าวางผิดกดปุ่มเลิกทำได้
ใช้ด้วยคีย์บอร์ดหรือโปรแกรมอ่านหน้าจอ
- บล็อกในแถบด้านซ้ายเป็นปุ่ม กด Enter เพื่อเพิ่มบล็อกที่ตำแหน่งที่เลือก (เส้นสีทองใน workspace)
- ปุ่มเป้าหมายบนบล็อกเหตุการณ์ใช้เลือกว่าบล็อกใหม่จะไปต่อท้ายเหตุการณ์ไหน
- ปุ่มคำสั่งบนแต่ละบล็อกมีให้ย้ายขึ้น ย้ายลง วางบล็อกใหม่ต่อจากนี้หรือข้างใน ทำสำเนา และลบ การย้ายขึ้นลงจะเข้าออกช่องของบล็อกเงื่อนไขได้
- ทุกการเปลี่ยนแปลงจะถูกอ่านออกเสียงผ่านข้อความสถานะ
บล็อกทำอะไรได้บ้าง
- เหตุการณ์ GameLoop.DayStarted, SaveLoaded, TimeChanged, DayEnding, Input.ButtonPressed และ Player.Warped
- การกระทำ แสดงข้อความมุมจอ (HUD) กล่องข้อความ เขียน log และเล่นเสียงของเกม
- ผู้เล่น เพิ่มเงิน ให้ไอเทมด้วย qualified item ID ฟื้นพลังชีวิตและพลังงาน และวาร์ปไปพื้นที่อื่น
- เงื่อนไขและวนซ้ำ สุ่มโอกาส เงินขั้นต่ำ ฝนตก ฤดูกาล วันที่ เวลา พลังชีวิตต่ำ และทำซ้ำตามจำนวนครั้ง
โค้ดที่ได้เป็น C# ปกติสำหรับ SMAPI 4 และ Stardew Valley 1.6 มีคอมเมนต์ภาษาไทยกำกับทุกบล็อก เหมาะใช้เรียนรู้ว่าบล็อกแต่ละแบบเขียนเป็นโค้ดอย่างไร เมื่อคุ้นแล้วเปิดไฟล์ ModEntry.cs แก้ต่อเองได้เลย
ความเป็นส่วนตัว
ทุกอย่างทำงานในเบราว์เซอร์ ไม่มีการอัปโหลดบล็อก โค้ด หรือไฟล์ที่นำเข้าไปที่ใด workspace จะถูกบันทึกในเบราว์เซอร์นี้เฉพาะเมื่อคุณอนุญาตการจัดเก็บข้อมูลเสริมในแบนเนอร์คุกกี้ ไม่อย่างนั้นจะเก็บไว้ในหน่วยความจำจนกว่าจะปิดหน้า ใช้ปุ่มส่งออก workspace เพื่อเก็บงานเป็นไฟล์ JSON
ข้อจำกัด
- ZIP ที่ได้เป็นซอร์สโค้ด ต้องติดตั้ง .NET SDK และ build เองก่อนนำไปใช้ในเกม
- ตำแหน่ง X และ Y เริ่มต้นของบล็อกวาร์ปเป็นค่าประมาณ ถ้าวาร์ปไปติดกำแพงให้ปรับตัวเลขเอง
- ไอเทมแบบกำหนดเองต้องใช้ qualified item ID เช่น
(O)74ถ้าใส่ ID ที่ไม่มีในเกม จะได้ Error Item แทน - ชื่อเสียงที่เลือกได้เป็นเสียงที่พบบ่อยในเกม ถ้าเกมเวอร์ชันอื่นไม่มีเสียงนั้น SMAPI จะเขียนคำเตือนใน log แต่เกมไม่ค้าง
- บนจอสัมผัส การแตะบล็อกค้างแล้วลากจะไม่เลื่อนหน้า ให้เลื่อนหน้าจากพื้นที่ว่างข้างบล็อก หรือใช้การแตะเพื่อเพิ่มบล็อก
- ถ้าแก้
ModEntry.csหลังดาวน์โหลด การแก้นั้นจะไม่ย้อนกลับมาเป็นบล็อก