أفكار وميزات للعبة

ميزتك التالية

الإجراءات الموثّقة

اجعل الخادم يتحقّق من إجراءات اللعبة.

SDK: فرع developتتطلب جلسة لاعب
Unity
النتيجة المرئية

يُقبل الإجراء الصحيح ويُرفض الإجراء غير الصحيح.

التحقق من إجراءات اللعبة3:12

يُشغّل هذا الدرس باللغة الإنجليزية.

فتح الفيديو بشكل منفصل ↗

أضف هذه الميزة

يمكنك الاطلاع على الدليل. يتطلب التنفيذ مفتاح مشروع نشطًا. تجهيز المشروع

SDK مُثبّت وإعداد المشروع مُستورد واللاعب مسجّل الدخول.

يستخدم مثال SDK هذا فرع develop. تحقّق من وجود واجهات API المطلوبة في SDK المثبّت.

C#
Assets/Scripts/ValidatedActionsDemo.cs
استدعاء horizOnالتهيئة
1using UnityEngine;
2using PM.horizOn.Cloud.Core;
3using PM.horizOn.Cloud.Manager;
4​
5// أرفق هذا السكربت بـ GameObject في المشهد الأول.
6public class ValidatedActionsDemo : MonoBehaviour
7{
8 async void Start()
9 {
10 // التهيئة: التهيئة والاتصال وتسجيل دخول لاعب.
11 HorizonApp.Initialize();
12 await new HorizonServer().Connect();
13 await UserManager.Instance.SignUpAnonymous("PlayerName");
14​
15 byte[] inputLog = System.Array.Empty<byte>();
16​
17 // horizOn: ابدأ جولة، وسجّل المدخلات، وأرسل النتيجة الموثّقة.
18 // 1. Dashboard: turn on "Validated submissions only" for the board "weekly"
19 var va = ValidatedActionsManager.Instance;
20​
21 // 2. Round start: single-use ticket plus server seed
22 var run = await va.StartRun("weekly");
23 if (run == null) { Debug.Log(va.LastErrorCode); return; } // e.g. RUN_RATE_LIMITED
24 var random = new System.Random(run.seed);
25​
26 // ... play, record the inputs into inputLog (byte[]) ...
27​
28 // 3. Round end: score plus input log (the SDK sends its SHA-256 hash)
29 var result = await va.SubmitValidated(18250, inputLog);
30 if (result == null)
31 {
32 Debug.Log($"{va.LastErrorCode}, run kept: {va.HasActiveRun}"); // e.g. DURATION_TOO_SHORT
33 }
34 }
35}

اختبر ميزتك الجديدة.

يُقبل الإجراء الصحيح ويُرفض الإجراء غير الصحيح.

اختر في لوحة التحكم المشروع نفسه الموجود في إعداد لعبتك.

نقاط النهاية
  • POST/validated-actions/runs
  • POST/validated-actions/submit
كل نقاط النهاية في مرجع API
اقتراحنا لخطوتك التالية

أضف رقمًا قياسيًا لكل جولة.

احفظ النتيجة بعد الجولة وأظهر المتصدر. واصل استخدام اتصالك وجلسة اللاعب.

فيديو تعليمي

الإجراءات الموثّقةUnity3:28

يُشغّل هذا الدرس باللغة الإنجليزية.

فتح الفيديو بشكل منفصل ↗
القيم التي يديرها الخادمUnity4:44

يُشغّل هذا الدرس باللغة الإنجليزية.

فتح الفيديو بشكل منفصل ↗
سجل الإدخالUnity5:13

يُشغّل هذا الدرس باللغة الإنجليزية.

فتح الفيديو بشكل منفصل ↗