Backend cho game Unity của bạn

Tài khoản người chơi, bảng xếp hạng, cấu hình từ xa, lưu trữ đám mây và phần thưởng hằng ngày — một Unity SDK, một bảng điều khiển, sẵn sàng sau vài phút.

Gói Free với 1.000 người chơi. Không cần thẻ tín dụng.

Một backend cho mọi engine

Đăng nhập khách tức thì, vẫn giữ nguyên sau khi khởi động lại, rồi liên kết với email hoặc Google qua một trang web bảo mật — tiến trình được chuyển theo.

Người chơiĐăng nhậpcoins
NovaGoogle1.240
KaitoEmail860
LunaKhách410
RakaGoogle1.975
MiraKhách95
POST/v1/auth/guest
{ "ok": true, "auth_method": "guest", "player": { "player_id": "player_3f9c…", "display_name": "Guest 4821" } }

Chỉ vài dòng code trong engine của bạn

Đăng nhập người chơi, gửi điểm và đọc cấu hình trực tiếp. Mọi lệnh gọi đều trả về kết quả thay vì ném ngoại lệ.

Unity
C# SDK cho Unity 2021.3+ với async, coroutine và scene Starter.
Godot
Addon GDScript cho Godot 4.2+ với autoload và thiết lập ngay trong editor.
Web / JavaScript
Một file JavaScript duy nhất cho game HTML5, website và Node.js.
REST API
HTTPS và JSON thuần cho mọi engine hoặc máy chủ khác.
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);
    }
}

Mọi thứ một game live cần

Mỗi dịch vụ hoạt động độc lập và dùng chung các lệnh gọi SDK, từ editor đến bản build WebGL và di động.

Thay đổi game mà không cần cập nhật

Mọi thay đổi đều có phiên bản và được ký. Khôi phục bất kỳ giá trị nào chỉ với một cú nhấp; game sẽ nhận ở lần tải tiếp theo.

Cấu hình từ xa
Cấu hình từ xa
Phiên bản hiện hành 14 RSA-SHA256
KhóaKiểuGiá trị
enemy_damagenumber30
player_speednumber4.5
double_xp_weekendbooleantrue
event_bannerstringLunar festival: 2× coins!
shopjson{"sale": 0.2}
enemy_damage 25 → 30Khôi phục

Hiểu rõ từng người chơi

Đăng nhập khách tức thì, vẫn giữ nguyên sau khi khởi động lại, rồi liên kết với email hoặc Google qua một trang web bảo mật — tiến trình được chuyển theo.

Người chơi
Người chơiĐăng nhập
NovaGoogle
KaitoEmail
LunaKhách
RakaGoogle
MiraKhách
Nova
player_3f9c…
Ví
coins1.240
gems15
Bản lưu
progressr12
settingsr3

Lưu trữ đám mây

Lưu mọi đối tượng có thể tuần tự hóa cho từng người chơi kèm bản sửa đổi, để hai thiết bị không bao giờ âm thầm ghi đè lên nhau.

Lưu trữ đám mây
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

Gỡ lỗi bằng yêu cầu thực

Lưu lượng và lỗi theo ngày, cùng từng yêu cầu kèm trạng thái, độ trễ và ID yêu cầu.

Nhật ký
Lưu lượng yêu cầu
7 ngày
Yêu cầuTrạng tháiĐộ trễ
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

Từ con số không đến yêu cầu đầu tiên

  1. Tạo dự án

    Đăng ký, tạo dự án và chuẩn bị sẵn ID dự án cùng khóa client. Nội dung mẫu Starter được thêm sẵn cho bạn.

  2. Nhập Unity SDK

    Nhập file .unitypackage, mở Tools ▸ Majacloud ▸ Setup, dán khóa và kiểm tra kết nối.

  3. Nhấn Play

    Scene Starter sẽ đăng nhập, gửi điểm, lưu tiến trình, nhận phần thưởng và đọc cấu hình — sau đó bạn chỉ cần sao chép những gì cần dùng.

Không dùng Unity? Cùng backend này cũng chạy với Godot, Web SDK.

1.240Space Runner
CoinsĐặt lại hằng tuần
1Nova12.480
2Kaito12.290
3Luna12.010
4Raka11.840
5Mira11.620
Thưởng hằng ngàyNhận +50

Bảo mật ngay từ đầu

Những chỗ thường gặp sự cố trong backend game đều đã được xử lý sẵn cho bạn.

  • Khóa bí mật được lưu dưới dạng hash và chỉ hiển thị một lần; khóa client công khai chỉ có thể thao tác thay cho người chơi đã đăng nhập.
  • Access token ngắn hạn cùng refresh token xoay vòng và cơ chế phát hiện tái sử dụng.
  • Cấu hình từ xa được ký bằng RSA-SHA256 và được xác minh trên thiết bị trước khi sử dụng.
  • Điểm số, phần thưởng và ví được xác thực trên máy chủ, không bao giờ tin vào dữ liệu từ client.
  • Giới hạn tần suất, hạn mức hằng ngày và nhật ký từng yêu cầu kèm ID yêu cầu cho mọi dự án.
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"
}

Giá theo tháng, đơn giản

Thanh toán bằng Rupiah qua QRIS, ví điện tử, chuyển khoản ngân hàng hoặc thẻ qua Midtrans. Không tự động trừ tiền — gia hạn khi bạn muốn.

Free

Mọi thứ bạn cần để phát hành một game nhỏ.

0 ₫ / tháng

 

  • 4.000 yêu cầu API / ngày
  • 1.000 tài khoản người chơi
  • 1 dự án
  • 1 bảng xếp hạng mỗi dự án
  • 3 khóa cấu hình từ xa
  • 32 MB dung lượng lưu trữ đám mây
Bắt đầu miễn phí

Starter

Đủ chỗ để phát triển cho game đã có cộng đồng thực sự.

≈ 46.000 ₫ / tháng

Tính phí Rp29.000 bằng Rupiah

  • 10.000 yêu cầu API / ngày
  • 10.000 tài khoản người chơi
  • 3 dự án
  • 3 bảng xếp hạng mỗi dự án
  • 10 khóa cấu hình từ xa
  • 256 MB dung lượng lưu trữ đám mây
Chọn Starter

Max

Sức chứa tối đa cho game lớn, lưu lượng cao.

≈ 475.000 ₫ / tháng

Tính phí Rp299.000 bằng Rupiah

  • Không giới hạn yêu cầu API / ngày
  • Không giới hạn tài khoản người chơi
  • 25 dự án
  • 30 bảng xếp hạng mỗi dự án
  • 1000 khóa cấu hình từ xa
  • 10 GB dung lượng lưu trữ đám mây
Chọn Max

Giới hạn áp dụng theo từng tài khoản. Khi chạm giới hạn, API trả về lỗi plan_limit rõ ràng — không dữ liệu nào bị xóa. Giá theo VND chỉ mang tính ước tính. Bạn sẽ được tính phí bằng Rupiah Indonesia (IDR) qua Midtrans; tỷ giá cuối cùng do ngân hàng hoặc ví điện tử của bạn quyết định.

Câu hỏi thường gặp

Hỗ trợ những phiên bản Unity nào?

Unity 2021.3 LTS trở lên, bao gồm Unity 6. SDK không phụ thuộc thư viện bên thứ ba và hoạt động với pipeline Built-in, URP và HDRP.

SDK có chạy trên WebGL và di động không?

Có. SDK không dùng luồng (thread), nên các lệnh gọi async chạy được trên WebGL, Android và iOS. Mọi phương thức async cũng có phiên bản coroutine.

Tôi có thể dùng với Godot hoặc trên website không?

Có. Unity là SDK chính, ngoài ra còn có addon cho Godot 4 và một JavaScript SDK không phụ thuộc thư viện cho game HTML5, website và máy chủ Node.js. Tất cả đều dùng chung một REST API, nên bạn cũng có thể gọi từ bất kỳ engine nào khác.

Chuyện gì xảy ra khi người chơi offline?

Cấu hình từ xa vẫn hoạt động nhờ bộ nhớ đệm cục bộ đã được xác minh, phiên khách được khôi phục ở lần mở game tiếp theo, và mọi lệnh gọi đều trả về kết quả kèm mã lỗi thay vì ném ngoại lệ.

Chuyện gì xảy ra khi tôi chạm giới hạn của gói?

Các mục mới sẽ bị từ chối với lỗi plan_limit mà game có thể hiển thị. Người chơi và dữ liệu hiện có vẫn nguyên vẹn, và nâng cấp sẽ gỡ giới hạn ngay lập tức.

Thanh toán hoạt động thế nào?

Chọn một gói và thanh toán một tháng qua Midtrans. Thanh toán lại cho cùng gói sẽ cộng thêm một tháng. Chúng tôi gửi email nhắc trước khi hết kỳ.

Tôi có thể xem hoặc xóa dữ liệu người chơi không?

Có. Bảng điều khiển hiển thị mọi người chơi cùng điểm số, bản lưu và ví của họ, và cho phép bạn xóa bất kỳ dữ liệu nào trong số đó. Xóa một dự án sẽ xóa toàn bộ dữ liệu của dự án đó.

Thêm tính năng online cho game của bạn ngay hôm nay

Bắt đầu miễn phí. Yêu cầu đầu tiên chỉ cách bạn vài phút.