يمكنك رفع لعبة WebGL إلى ذا جيمنج نست مباشرةً من التيرمنال عبر أداة TGN CLI، دون المرور على شاشة رفع في كل مرة تبني فيها اللعبة. في هذا الدليل نشرح تثبيت الأداة، ونشر بناء Unity أو Godot بأمر واحد، وإدارة الإصدارات بحيث يستغرق تحديث لعبة منشورة ثوانٍ معدودة بدل إعادة تصدير كاملة.
الرفع من المتصفح مقابل سطر الأوامر
كل لعبة على ذا جيمنج نست يمكن نشرها من المتصفح: اسحب مجلد البناء إلى صفحة النشر لتصبح اللعبة مباشرة. هذا أسرع طريق لأول رفعة. أما أداة سطر الأوامر فهي لكل ما يأتي بعد ذلك — الأحجام الكبيرة، والرفع المتكرر، والأتمتة.
استخدم tgn عندما:
- تعيد النشر كثيرًا (تجارب لعب، أو جام، أو تحديثات أسبوعية).
- ترفع بناء Unity ضخمًا، حيث شريط التقدّم في التيرمنال أفضل من مراقبة علامة تبويب في المتصفح.
- تريد خطوة النشر داخل سكربت أو خط CI.
- تفضّل ببساطة العمل بلوحة المفاتيح على نموذج ويب.
إن لم تُصدّر بناءً بعد، ابدأ من تصدير بناء WebGL من Unity، فالأداة ترفع أي مجلد يحتوي على index.html في جذره، وأنت بحاجة إلى هذا المخرج أولًا.
التثبيت بأمر واحد
تُوزَّع الأداة كأداة .NET عامة. تحتاج إلى حزمة .NET 8 SDK، ثم نفّذ:
```bash dotnet tool install --global TGN.CLI ```
بهذا يصبح الأمر tgn متاحًا في أي تيرمنال. تأكّد من ذلك:
```bash tgn --help ```
سترى مجموعات الأوامر: auth وprojects وdeploy وbuilds وstatus إضافةً إلى أدوات مساعدة. وللتحديث لاحقًا:
```bash dotnet tool update --global TGN.CLI ```
تدعم الأداة بناءات Unity وGodot وThree.js، أي حزمة WebGL ثابتة.
انشر أول بناء لك
شيئان يُوثّقان هويتك: مفتاح الأداة ومعرّف المشروع، وكلاهما من تبويب Manage WebGL في صفحة لعبتك.
1. احصل على مفتاح الأداة. من صفحة لعبتك افتح تبويب Manage WebGL وأنشئ مفتاحًا بصيغة tgn_k1_xxxxx. يُعرض مرة واحدة فقط، فانسخه فورًا وتعامل معه كأنه كلمة مرور. 2. سجّل الدخول. تتحقق الأداة من المفتاح لدى الخادم فورًا، فيظهر أي خطأ هنا لا في منتصف الرفع: ```bash tgn auth login tgn_k1_xxxxx ``` 3. انشر مجلد البناء. وجّه tgn deploy إلى المجلد الذي يحوي index.html: ```bash tgn deploy ./Builds/WebGL --project <PROJECT_ID> ``` يمنحك تبويب Manage WebGL الأمر جاهزًا بمعرّف مشروعك مملوءًا مسبقًا، فتنسخه فقط.
خلف الكواليس تنفّذ الأداة خمس خطوات: ضغط المجلد في ملف zip، وتهيئة الاستضافة عند أول نشر، وطلب رابط رفع موقّع لمرة واحدة، والرفع مباشرةً إلى التخزين مع شريط تقدّم، ثم فكّ الضغط وتفعيل الإصدار على الخادم. وعند الانتهاء تحصل على رابط حي:
``` https://thegamingnest.com/projects/<your-slug>/play ```
افتحه، فاللعبة قابلة للّعب في المتصفح دون أي تنزيل من اللاعبين.
أحجام أصغر مع --precompress
إن صدّرت بضغط Brotli أو Gzip، أو أردت أن تضغط الأداة الملفات المؤهّلة (.wasm و.data و.js) قبل الرفع، أضِف --precompress:
```bash tgn deploy ./Builds/WebGL --project <PROJECT_ID> --precompress ```
تتقلّص بناءات Unity المعتادة بمقدار 3 إلى 5 أضعاف، ما يعني رفعًا أسرع لك وتحميلًا أسرع للاعب. لا تضاعف الضغط: إن كان Unity يُخرج ملفات .br أصلًا، تجاوز هذا الخيار.
تخلّص من الأعلام بملف إعداد
نفّذ tgn init --project <PROJECT_ID> مرة واحدة داخل مجلد البناء لإنشاء ملف .tgnconfig.json. بعدها يكفي tgn deploy ./Builds/WebGL ليلتقط معرّف المشروع تلقائيًا. أودِع الملف في المستودع ليَنشر زملاؤك بالطريقة نفسها. وأضِف ملف .tgnignore (بصياغة gitignore) لإبعاد ملفات المصدر و.psd عن الرفع.
الإصدارات والتحديث الآمن
كل نشر هو إصدار جديد، وتبقى الإصدارات القديمة متاحة، وهذا ما يجعل التحديث آمنًا. اعرضها:
```bash tgn builds list --project <PROJECT_ID> ```
تحصل على جدول بحالة كل إصدار (Ready وSuperseded وFailed) وسهم على الإصدار الفعّال. تبديل الإصدار الحي فوري ولا يعيد الرفع:
```bash tgn builds activate 3 --project <PROJECT_ID> # الانتقال إلى أي إصدار tgn builds rollback --project <PROJECT_ID> # التراجع خطوة بعد تحديث سيئ ```
فالتحديث المعطوب يُصلَح في عشر ثوانٍ لا بإعادة تصدير طارئة. تحتفظ الباقة المجانية بعشرة إصدارات لكل مشروع، وتسمح حتى 300 ميغابايت للبناء الواحد. ويطبع tgn status الإصدار الفعّال وحجمه ورابط اللعب دفعة واحدة، بينما يشخّص tgn doctor أي عطل في النشر قبل أن تبلّغ عنه.
التحديث الفوري أثناء الجام
وقت الجام ضيّق، ولهذا في الأداة وضع مراقبة. تنشر أولًا، ثم تعيد النشر تلقائيًا (بتأخير بسيط) كلما حفظت بناءً جديدًا:
```bash tgn deploy ./Builds/WebGL --watch ```
صدّر من Unity أو Godot، ويتحدّث رابط اللعب العام وحده بينما يُبقي الحكّام والمجرّبون التبويب مفتوحًا. اضغط Ctrl+C للإيقاف.
انشرها الآن
تحوّل الأداة النشر إلى عادة راسخة: ابنِ، ثم tgn deploy، ثم شارك الرابط. إن كنت ما زلت تُعدّ التصدير، اقرأ كيف تنشر لعبة WebGL على ذا جيمنج نست للصورة الكاملة، ثم عُد لتربط التيرمنال. احصل على مفتاح الأداة من تبويب Manage WebGL، وشغّل أول tgn deploy، وضع لعبة تُلعب في المتصفح أمام مجتمع الألعاب العربي اليوم، ثم انطلق إلى الجام القادم ودع --watch يتولّى الرفع عنك.