แบ็กเอนด์สำหรับเกม Unity ของคุณ

บัญชีผู้เล่น ลีดเดอร์บอร์ด รีโมตคอนฟิก คลาวด์เซฟ และรางวัลรายวัน ด้วย Unity SDK เดียวและแดชบอร์ดเดียว พร้อมใช้ในไม่กี่นาที

แพ็กเกจ Free รองรับผู้เล่น 1,000 คน ไม่ต้องใช้บัตรเครดิต

แบ็กเอนด์เดียวสำหรับทุกเอนจิน

เข้าสู่ระบบแบบเกสต์ได้ทันทีและคงอยู่แม้รีสตาร์ตเกม จากนั้นเชื่อมกับอีเมลหรือ Google ผ่านหน้าเว็บที่ปลอดภัย โดยความคืบหน้าจะติดตามไปด้วย

ผู้เล่นการเข้าสู่ระบบcoins
NovaGoogle1,240
Kaitoอีเมล860
Lunaเกสต์410
RakaGoogle1,975
Miraเกสต์95
POST/v1/auth/guest
{ "ok": true, "auth_method": "guest", "player": { "player_id": "player_3f9c…", "display_name": "Guest 4821" } }

เพียงไม่กี่บรรทัดในเอนจินของคุณ

เข้าสู่ระบบผู้เล่น ส่งคะแนน และอ่านคอนฟิกแบบสด ทุกการเรียกจะคืนผลลัพธ์แทนการโยน exception

Unity
C# SDK สำหรับ Unity 2021.3+ รองรับ async และโครูทีน พร้อมซีน Starter
Godot
แอดออน GDScript สำหรับ Godot 4.2+ พร้อม autoload และการตั้งค่าในเอดิเตอร์
Web / JavaScript
ไฟล์ JavaScript ไฟล์เดียวสำหรับเกม HTML5 เว็บไซต์ และ Node.js
REST API
HTTPS และ JSON ธรรมดา ใช้ได้กับเอนจินหรือเซิร์ฟเวอร์อื่นทุกตัว
using MajacloudSdk;
using UnityEngine;

public class GameStart : MonoBehaviour
{
    private async void Start()
    {
        // Restores the saved session or creates a guest
        var signIn = await Majacloud.Auth.SignInAnonymouslyAsync();
        if (!signIn.Ok)
        {
            Debug.LogWarning(signIn.Error.Message);
            return;
        }
        Debug.Log("Hello " + signIn.Value.DisplayName);

        await Majacloud.Leaderboards.SubmitScoreAsync("coins", 120);
        int damage = Majacloud.RemoteConfig.GetInt("enemy_damage", 25);
    }
}

ทุกอย่างที่เกมออนไลน์ต้องมี

แต่ละบริการใช้งานแยกกันได้และเรียกผ่าน SDK ชุดเดียวกัน ตั้งแต่ในเอดิเตอร์ไปจนถึงบิลด์ WebGL และมือถือ

ปรับเกมได้โดยไม่ต้องอัปเดต

ทุกการเปลี่ยนแปลงมีเวอร์ชันและลงลายเซ็น ย้อนค่าใดก็ได้กลับในคลิกเดียว เกมจะได้รับค่าใหม่เมื่อดึงข้อมูลครั้งถัดไป

รีโมตคอนฟิก
รีโมตคอนฟิก
เวอร์ชันที่ใช้งานอยู่ 14 RSA-SHA256
คีย์ประเภทค่า
enemy_damagenumber30
player_speednumber4.5
double_xp_weekendbooleantrue
event_bannerstringLunar festival: 2× coins!
shopjson{"sale": 0.2}
enemy_damage 25 → 30กู้คืน

รู้จักผู้เล่นทุกคน

เข้าสู่ระบบแบบเกสต์ได้ทันทีและคงอยู่แม้รีสตาร์ตเกม จากนั้นเชื่อมกับอีเมลหรือ Google ผ่านหน้าเว็บที่ปลอดภัย โดยความคืบหน้าจะติดตามไปด้วย

ผู้เล่น
ผู้เล่นการเข้าสู่ระบบ
NovaGoogle
Kaitoอีเมล
Lunaเกสต์
RakaGoogle
Miraเกสต์
Nova
player_3f9c…
กระเป๋าเงิน
coins1,240
gems15
เอกสาร
progressr12
settingsr3

คลาวด์เซฟ

บันทึกออบเจกต์ใดก็ได้ที่ซีเรียลไลซ์ได้ต่อผู้เล่นพร้อมรีวิชัน เพื่อไม่ให้สองอุปกรณ์เขียนทับกันโดยไม่รู้ตัว

คลาวด์เซฟ
Phone
PUT/v1/cloud/progress
{ "revision": 12, "data": { "level": 9 } }
200"revision": 13
Tablet
PUT/v1/cloud/progress
{ "revision": 12, "data": { "level": 8 } }
409revision_mismatch · current_revision 13

ดีบักด้วยคำขอจริง

ดูปริมาณคำขอและข้อผิดพลาดรายวัน รวมถึงทุกคำขอพร้อมสถานะ เวลาตอบสนอง และรหัสคำขอ

ล็อก
ปริมาณคำขอ
7 วัน
คำขอสถานะเวลาตอบสนอง
POST/v1/leaderboards/coins/scores20034 ms
GET/v1/config30412 ms
PUT/v1/cloud/progress40921 ms
POST/v1/rewards/claim20019 ms
POST/v1/auth/refresh20018 ms

จากศูนย์สู่คำขอแรก

  1. สร้างโปรเจกต์

    สมัครใช้งาน สร้างโปรเจกต์ แล้วเตรียม Project ID และคีย์ไคลเอนต์ไว้ ระบบจะเพิ่มเนื้อหา Starter ให้อัตโนมัติ

  2. นำเข้า Unity SDK

    นำเข้าไฟล์ .unitypackage เปิด Tools ▸ Majacloud ▸ Setup วางคีย์ แล้วทดสอบการเชื่อมต่อ

  3. กด Play

    ซีน Starter จะเข้าสู่ระบบ ส่งคะแนน บันทึกความคืบหน้า รับรางวัล และอ่านคอนฟิก จากนั้นคัดลอกส่วนที่ต้องการไปใช้ได้เลย

ไม่ได้ใช้ Unity? แบ็กเอนด์เดียวกันนี้ใช้ได้กับ Godot, Web SDK.

1,240Space Runner
Coinsรีเซ็ตทุกสัปดาห์
1Nova12,480
2Kaito12,290
3Luna12,010
4Raka11,840
5Mira11,620
รางวัลรายวันรับ +50

ปลอดภัยตั้งแต่ค่าเริ่มต้น

ปัญหาที่มักเกิดขึ้นกับแบ็กเอนด์เกม เราจัดการให้แล้ว

  • คีย์ลับจัดเก็บแบบแฮชและแสดงเพียงครั้งเดียว ส่วนคีย์ไคลเอนต์สาธารณะทำงานแทนได้เฉพาะผู้เล่นที่เข้าสู่ระบบแล้ว
  • Access token อายุสั้น พร้อม refresh token แบบหมุนเวียนและการตรวจจับการนำกลับมาใช้ซ้ำ
  • รีโมตคอนฟิกลงลายเซ็นด้วย RSA-SHA256 และตรวจสอบบนอุปกรณ์ก่อนนำไปใช้
  • คะแนน รางวัล และกระเป๋าเงินตรวจสอบบนเซิร์ฟเวอร์ ไม่เชื่อข้อมูลจากไคลเอนต์
  • Rate limit โควตารายวัน และล็อกของทุกคำขอพร้อมรหัสคำขอ สำหรับทุกโปรเจกต์
GET/v1/config200
{
  "ok": true,
  "version": 14,
  "configs": [
    { "key": "enemy_damage", "type": "number", "value": "30" },
    { "key": "double_xp_weekend", "type": "boolean", "value": "true" }
  ],
  "checksum": "9c41f0…e27b",
  "signature": "Kq3vR8yJ…Wm0=",
  "signature_algorithm": "rsa-sha256",
  "signing_key_id": "config-v1"
}

ราคารายเดือนที่เรียบง่าย

ชำระเป็นเงินรูเปียห์ด้วย QRIS, e-wallet, โอนผ่านธนาคาร หรือบัตร ผ่าน Midtrans ไม่มีการตัดเงินอัตโนมัติ ต่ออายุเมื่อคุณต้องการ

Free

ทุกสิ่งที่จำเป็นสำหรับเปิดตัวเกมขนาดเล็ก

฿0 / เดือน

 

  • 4,000 คำขอ API / วัน
  • 1,000 บัญชีผู้เล่น
  • 1 โปรเจกต์
  • 1 ลีดเดอร์บอร์ดต่อโปรเจกต์
  • 3 คีย์รีโมตคอนฟิก
  • 32 MB พื้นที่คลาวด์เซฟ
เริ่มใช้ฟรี

Starter

รองรับการเติบโตของเกมที่มีคอมมูนิตี้จริงจัง

≈ ฿58 / เดือน

เรียกเก็บเป็นเงินรูเปียห์ Rp29.000

  • 10,000 คำขอ API / วัน
  • 10,000 บัญชีผู้เล่น
  • 3 โปรเจกต์
  • 3 ลีดเดอร์บอร์ดต่อโปรเจกต์
  • 10 คีย์รีโมตคอนฟิก
  • 256 MB พื้นที่คลาวด์เซฟ
เลือก Starter

Max

ความจุสูงสุดสำหรับเกมขนาดใหญ่ที่มีผู้เล่นหนาแน่น

≈ ฿598 / เดือน

เรียกเก็บเป็นเงินรูเปียห์ Rp299.000

  • ไม่จำกัด คำขอ API / วัน
  • ไม่จำกัด บัญชีผู้เล่น
  • 25 โปรเจกต์
  • 30 ลีดเดอร์บอร์ดต่อโปรเจกต์
  • 1000 คีย์รีโมตคอนฟิก
  • 10 GB พื้นที่คลาวด์เซฟ
เลือก Max

ขีดจำกัดคิดต่อบัญชี เมื่อถึงขีดจำกัด API จะตอบกลับด้วยข้อผิดพลาด plan_limit ที่ชัดเจน โดยไม่มีข้อมูลใดถูกลบ ราคาใน THB เป็นราคาโดยประมาณ ระบบจะเรียกเก็บเงินเป็นรูเปียห์อินโดนีเซีย (IDR) ผ่าน Midtrans และอัตราแลกเปลี่ยนสุดท้ายขึ้นอยู่กับธนาคารหรือ e-wallet ของคุณ

คำถามที่พบบ่อย

รองรับ Unity เวอร์ชันใดบ้าง?

Unity 2021.3 LTS ขึ้นไป รวมถึง Unity 6 SDK ไม่มี dependency จากภายนอก และใช้ได้กับไปป์ไลน์ Built-in, URP และ HDRP

ใช้กับ WebGL และมือถือได้ไหม?

ได้ SDK ไม่ใช้เธรดเลย การเรียกแบบ async จึงทำงานบน WebGL, Android และ iOS ได้ และทุกเมธอด async ยังมีเวอร์ชันโครูทีนด้วย

ใช้กับ Godot หรือบนเว็บไซต์ได้ไหม?

ได้ Unity เป็น SDK หลัก และยังมีแอดออนสำหรับ Godot 4 และ JavaScript SDK ที่ไม่มี dependency สำหรับเกม HTML5 เว็บไซต์ และเซิร์ฟเวอร์ Node.js ทุกตัวใช้ REST API เดียวกัน คุณจึงเรียกใช้จากเอนจินอื่นได้ด้วย

จะเกิดอะไรขึ้นเมื่อผู้เล่นออฟไลน์?

รีโมตคอนฟิกยังทำงานได้จากแคชในเครื่องที่ตรวจสอบแล้ว เซสชันเกสต์จะถูกกู้คืนเมื่อเปิดเกมครั้งถัดไป และทุกการเรียกจะคืนผลลัพธ์พร้อมรหัสข้อผิดพลาดแทนการโยน exception

จะเกิดอะไรขึ้นเมื่อถึงขีดจำกัดของแพ็กเกจ?

รายการใหม่จะถูกปฏิเสธด้วยข้อผิดพลาด plan_limit ที่เกมของคุณนำไปแสดงได้ ผู้เล่นและข้อมูลเดิมไม่ได้รับผลกระทบ และเมื่ออัปเกรด ขีดจำกัดจะเพิ่มขึ้นทันที

การชำระเงินทำงานอย่างไร?

เลือกแพ็กเกจแล้วชำระเงินหนึ่งเดือนผ่าน Midtrans การชำระแพ็กเกจเดิมอีกครั้งจะเพิ่มอีกหนึ่งเดือน และเราจะส่งอีเมลเตือนก่อนสิ้นรอบ

ตรวจดูหรือลบข้อมูลผู้เล่นได้ไหม?

ได้ แดชบอร์ดแสดงผู้เล่นทุกคนพร้อมคะแนน เซฟ และกระเป๋าเงิน และให้คุณลบรายการใดก็ได้ การลบโปรเจกต์จะลบข้อมูลทั้งหมดของโปรเจกต์นั้น

เพิ่มฟีเจอร์ออนไลน์ให้เกมของคุณตั้งแต่วันนี้

เริ่มต้นได้ฟรี คำขอแรกของคุณอยู่ห่างไปเพียงไม่กี่นาที