Libplanet เป็นไลบรารี .NET สำหรับการสร้างเกมออนไลน์ที่มีผู้เล่นหลายคนในรูปแบบการกระจายอำนาจ ซึ่งหมายความว่าการเล่นเกมทั้งหมดจะเกิดขึ้นบนเครือข่ายเพียร์ทูเพียร์ในโหนดที่เท่ากัน แทนที่จะเป็นเซิร์ฟเวอร์กลางที่ได้รับอนุญาต ภายใต้ประทุนนั้นรวมเอาคุณสมบัติมากมาย (เช่นลายเซ็นดิจิทัล ฉันทามติ BFT การจำลองข้อมูล) ของบล็อกเชน
มีข้อได้เปรียบในการแข่งขันเหนือโซลูชันอื่นๆ สำหรับการเล่นเกมแบบกระจายอำนาจ:
แบบฝังได้ : แอปเกมไม่จำเป็นต้องสื่อสารกับกระบวนการอื่นที่ทำงานอยู่ ดังนั้นจึงไม่จำเป็นต้องมีการจัดเรียงหรือการจัดการกระบวนการเพิ่มเติม หากต้องการวาดเส้นขนาน Libplanet จะอยู่ใกล้กับ SQLite มากกว่า MySQL หรือ PostgreSQL
Isomorphic : Libplanet เป็นไลบรารี .NET ดังนั้นตรรกะของเกมทุกตัวจึงสามารถเขียนในภาษาเดียวกัน C# และทำงานบนบล็อกเชนได้ ไม่จำเป็นต้องใช้รหัสกาวหรือ "สัญญาอัจฉริยะ"
ไม่ขึ้นกับโทเค็น : ไม่เหมือนกับระบบบล็อกเชนเกือบทุกระบบ มันไม่ได้บังคับให้ผู้ใช้สร้างและจัดการกับสกุลเงินดิจิทัลอื่น เกมของคุณสามารถเล่นได้ฟรีและเพลิดเพลินโดยนักเล่นเกมทั่วไป
หากต้องการเรียนรู้เพิ่มเติมว่าเหตุใดท้องฟ้าจำลองจึงสร้างเทคโนโลยีสำหรับเกมที่มีการกระจายอำนาจอย่างสมบูรณ์ โปรดดูที่โพสต์บนบล็อกของเรา
สำหรับการเผยแพร่ที่เสถียรทุกครั้ง เราจะแพ็ค Libplanet ลงใน .nupkg และอัปโหลดไปยังหน้าการเผยแพร่ NuGet และ GitHub (คุณสามารถดูบันทึกการเปลี่ยนแปลงสำหรับเวอร์ชันต่างๆ ได้จากหน้าวางจำหน่าย) หากต้องการใช้ Libplanet ในเกมของคุณ โปรเจ็กต์ของคุณจะต้องเพิ่มการขึ้นต่อกันในแพ็คเกจ Libplanet บน Visual Studio IDE ให้รันคำสั่งต่อไปนี้ใน Package Manager Console:
Install-Package Libplanet
หากคุณต้องการ dotnet
CLI ให้รันคำสั่งต่อไปนี้แทน:
dotnet เพิ่มแพ็คเกจ Libplanet
ดูเอกสารของ Microsoft เกี่ยวกับวิธีต่างๆในการติดตั้งแพ็คเกจ NuGet
นอกเหนือจากการเผยแพร่ที่เสถียรแล้ว เรายังมีแพ็คเกจก่อนการเผยแพร่อีกด้วย สำหรับทุกวันและทุกการกระทำที่ผสาน จะถูกบรรจุไว้ใน .nupkg และอัปโหลดไปยัง NuGet ด้วยชื่อเวอร์ชันที่ต่อท้ายด้วยยัติภังค์
สำหรับบิลด์คอมมิตแบบผสาน ชื่อเวอร์ชันจะดูเหมือน 0.1.0-dev.20181231235959+a0b1c2d
โดยที่ 20181231235959
เป็นการประทับเวลา UTC ของบิลด์ และ a0b1c2d
เป็นเลขฐานสิบหก 7 ตัวแรกของแฮชคอมมิต Git สำหรับบิลด์รายวัน ชื่อเวอร์ชันจะเป็นเช่น 0.1.0-nightly.20181231+a0b1c2d
น่าเสียดายที่ Unity ยังไม่รองรับ NuGet ในขณะนี้ มีปลั๊กอิน Unity บางตัวเพื่อจัดการกับระบบแพ็คเกจ NuGet และสิ่งเหล่านี้ดูเหมือนยังไม่สมบูรณ์ในปัจจุบัน หากต้องการใช้ Libplanet บน Unity คุณจะต้องแยก Libplanet.dll ออกจากไฟล์ Libplanet.*.nupkg ด้วยตนเอง และวางไว้ภายในโปรเจ็กต์ Unity ของคุณ เรารับทราบข้อเท็จจริงที่ขณะนี้ Libplanet ยังใช้งานไม่ได้กับ Unity มากนัก และสัญญาว่าจะทำให้ดีขึ้นในรุ่นย่อยสองสามรุ่นถัดไป ก่อนหน้านั้น คุณสามารถลองใช้ MSBuildForUnity ซึ่งเป็นรุ่นทดลองในเดือนมกราคม 2020
คุณสามารถสร้างแอสเซมบลี Libplanet.dll และ Libplanet.Stun.dll จากซอร์สโค้ด
คำสั่งต่อไปนี้จะติดตั้งการพึ่งพา (แพ็คเกจไลบรารีที่จำเป็น) และสร้างโซลูชัน Libplanet ทั้งหมด:
การสร้างดอทเน็ต
โปรดทราบว่าคำสั่ง dotnet
ได้รับการเผยแพร่ร่วมกับ .NET Core SDK
หากคุณต้องการสนับสนุนโค้ดให้กับโครงการ Libplanet อย่างจริงจัง โปรดอ่านคู่มือผู้สนับสนุนของเรา