این سند از اصطلاحات زیر استفاده می کند (به دنبال RFC 2119 ):
- باید و نباید - اینها الزامات سختی هستند که همه بازی ها ملزم به رعایت آنها هستند.
- باید و نباید - اینها توصیه هایی هستند که ضروری نیستند اما ممکن است هنگام تصمیم گیری در مورد نحوه رتبه بندی یا فیلتر کردن بازی های نمایش داده شده به کاربران استفاده شوند. برای مثال، اگر صفحه نمایش کاربر افقی است، GameSnacks ممکن است فقط بازی هایی را توصیه کند که از این نسبت تصویر پشتیبانی می کنند.
- ممکن است - اینها پیشنهاداتی هستند که مورد نیاز نیستند و برای فیلتر کردن بازی ها استفاده نمی شوند، مگر در مواردی که به صراحت توسط کاربر درخواست شده باشد. برای مثال، ویژگیهای آینده میتوانند به کاربر اجازه دهند فهرستی از بازیهایی را که از ورودی گیمپد پشتیبانی میکنند، مشاهده کند.
شرایط زیر برای بازی شما و دارایی های آن اعمال می شود:
ساختار بازی
بازی شما بهعنوان بستهای از فایلها آپلود میشود که شامل کد و منابع زمان اجرا خود بازی، داراییهای بازاریابی برای نمایش آن در کاتالوگ GameSnacks و یک فایل game.json
است که ابردادههای توصیف بازی را ذخیره میکند و همه منابع را برمیشمارد. در بسته نرم افزاری
game.json
فایل پیکربندی حاوی متادیتای بازی.
- بازی شما باید شامل یک فایل
game.json
باشد که شامل تمام فیلدهای ضروری باشد . - این فایل باید در پوشه اصلی بازی قرار گیرد.
نقطه ورود HTML
سند HTML که بازی شما را بارگیری می کند.
- نقطه ورود شما باید یک فایل HTML معتبر باشد.
این فایل باید حداکثر شامل یک عنصر
head
و یک عنصرbody
باشد.- هر دو عنصر، در صورت وجود، باید دارای هر دو برچسب شروع و پایان باشند.
محتوای خارج از این عناصر و ویژگی های این عناصر نادیده گرفته می شود.
بهجای تنظیم مستقیم ویژگیها روی عنصر
body
، میتوانید از:-
onload
: رویداد بارگذاریWindow
-
style
: یک ظاهر طراحی CSS
-
فایل ها
همه فایلهای جداگانه در بسته شامل بازی و داراییهای بازاریابی مرتبط با آن باید با موارد زیر مطابقت داشته باشند:
- هر فایل باید کمتر از 10 مگابایت باشد.
- فایل ها فقط باید با استفاده از مسیرهای نسبی ارجاع شوند.
- مسیرها باید فقط
/
به عنوان جداکننده دایرکتوری استفاده کنند. - نام فایلها فقط باید از نویسههای رزرو نشده استفاده کنند (RFC 3986) .
- نام فایل ها و تمام مسیرها باید با حروف کوچک باشد.
اندازه بازی
اندازه بازی حجم کل همه کدها و منابعی است که در دستگاه کاربر دانلود می شود.
- حجم بازی نباید بیشتر از 100 مگابایت باشد.
الزامات فنی
بازی شما باید با شرایط فنی زیر مطابقت داشته باشد.
GameSnacks SDK
- بازی شما باید با GameSnacks Developer SDK شامل تمام رابط های مورد نیاز ادغام شود.
- بازی شما نباید مستقیماً هیچ API تبلیغاتی را بارگیری کند (مثلاً تزریق یک برچسب تبلیغاتی مانند adsbygoogle.js).
- GameSnacks همه خدمات تبلیغاتی مورد نیاز را برای شما بارگیری می کند.
- برای اطلاعات بیشتر در مورد حمایت از تبلیغات در بازی خود ، الزامات کسب درآمد را ببینید.
سازگاری با مرورگر
- بازی شما باید از Canvas API یا WebGL برای رندر استفاده کند.
- بازی شما باید در دو نسخه اصلی مرورگرهای زیر به درستی اجرا شود:
- Chrome در Android، iOS، Windows و macOS
- سافاری در iOS و macOS
- فایرفاکس در اندروید و ویندوز
- Edge در ویندوز
- بازی شما باید در نماهای وب در آخرین نسخه دو نسخه اصلی اخیر اندروید و iOS به درستی اجرا شود:
- WebView در اندروید
- WKWebView در iOS
- بازی شما باید تا حد امکان بر روی طیف وسیعی از دیگر رندرهای وب مستقل و تعبیه شده آزمایش شود.
حداقل قابلیت های دستگاه
بازی شما باید روی دستگاه های ارزان قیمت به خوبی اجرا شود. برای راهنمایی، موارد زیر نشاندهنده حداقل قابلیتهای دستگاه مورد نیاز برای بازیهای GameSnacks است.
بازی شما باید با سرعت 30 فریم در ثانیه یا بیشتر در هر دستگاهی با مشخصات زیر یا بهتر اجرا شود:
- CPU: Qualcomm 215، Samsung Exynos 7570، Mediatek MT6737 یا مشابه
- رم: 2 گیگابایت
- پردازنده گرافیکی: Arm Mali-T720 MP1، Qualcomm Adreno 308 یا مشابه
گوشیهای نمونهای که با این مشخصات مطابقت دارند عبارتند از JioPhone Next، Nokia 1.4، LG K22، Samsung J2 Core و Motorola Moto E4.
اندازه اولیه دانلود
اندازه دانلود اولیه مقدار داده ای است که برای شروع بازی به مشتری دانلود می شود.
- دانلود اولیه باید کمتر از 15 مگابایت باشد.
- دانلود اولیه باید کمتر از 5 مگابایت باشد.
الزامات عملکردی
بازی شما باید با الزامات کاربردی زیر مطابقت داشته باشد.
زمان بارگذاری
زمان بارگذاری زمانی است که برای اجرای کد اولیه و شروع بازی صرف می شود.
- بازی شما باید صفحه بارگیری را نشان دهد یا در کمتر از 1 ثانیه در هر اتصال حداقل 10 مگابیت در ثانیه تعاملی باشد.
- بازی شما باید در کمتر از 15 ثانیه با هر اتصال حداقل 10 مگابیت در ثانیه قابل اجرا باشد.
تصادف می کند
- بازی شما نباید باعث خرابی های تکرارشونده شود.
- بازی شما نباید باعث خرابی های قابل تکرار مداوم در برنامه ها یا وب سایت هایی شود که آن را جاسازی کرده اند.
نسبت ابعاد
GameSnacks یک فریم برای رندر بازی شما ایجاد می کند. اندازه و نسبت ابعاد این فریم بسته به سطح توزیع، دستگاه و وجود تبلیغات در اطراف بازی متفاوت خواهد بود. اگر برای مثال، کاربر پنجره مرورگر خود را تغییر اندازه دهد، این فریم می تواند اندازه را تغییر دهد.
- بازی شما باید از تمام فضای موجود در قاب برای محتوای تعاملی استفاده کند – بدون بالشتک یا پرکننده اضافی.
- بازی شما باید از نسبت تصویر پرتره 9:16 پشتیبانی کند.
- بازی شما باید از نسبت تصویر 16:9 پشتیبانی کند.
- بازی شما باید از نسبت تصویر 1:1 پشتیبانی کند.
- در حالت ایدهآل، بازی شما باید واکنشگرا باشد و از طیف وسیعی از نسبتهای عمودی، منظره و مربع پشتیبانی کند.
- هنگامی که اندازه فریم تغییر می کند، بازی شما باید فوراً اندازه آن را تغییر دهد تا از این الزامات پیروی کند.
- بازی شما باید به آرامی به اندازه جدید تبدیل شود.
- بازی شما نباید جهت مرورگر را قفل کند.
تعامل بازی
- بازی شما باید کاملاً با استفاده از ورودی لمسی قابل بازی باشد.
- بازی شما باید کاملاً با استفاده از ورودی ماوس قابل بازی باشد.
- بازی شما باید کاملاً با استفاده از ورودی صفحه کلید قابل بازی باشد.
- ممکن است بازی شما کاملاً با استفاده از ورودی گیم پد قابل بازی باشد.
- تمام عناصر رابط کاربری نمایش داده شده در بازی شما باید به درستی اجرا شده و کار کنند.
- بازی شما نباید دارای کنترل های غیرفعال باشد – اگر ویژگی در دسترس نباشد باید به طور کامل از رابط کاربری حذف شود.
- این شامل درخواست های پاداش می شود. فقط در صورتی یک درخواست پاداش ارائه میکند که پاسخ تماس
beforeReward
برای آن استراحت آگهی فراخوانی شود.
- این شامل درخواست های پاداش می شود. فقط در صورتی یک درخواست پاداش ارائه میکند که پاسخ تماس
- بازی شما نباید درخواست های اشتراک گذاری درون بازی را نمایش دهد.
- بازی شما نباید رابط کاربری یا پیوندهای درون بازی را نمایش دهد که کاربر را به بازیهای خارجی، سایتها یا محتوای دیگر میبرد.
- بازی شما باید زمانی که کاربر آخرین سطح را به پایان رساند یا بازی را به پایان رساند، به وضوح با او ارتباط برقرار کند.
- بازی شما نباید از کلماتی مانند «خرید» یا «خرید» استفاده کند که ممکن است با ویژگیهای خرید درونبرنامهای که برای بازیهای GameSnacks پشتیبانی نمیشوند اشتباه گرفته شود.
- اگر بازی شما دارای بازخورد لمسی است، کاربر باید بتواند آن را خاموش کند.
راه اندازی بازی
بازی شما باید به درستی با زمان اجرا GameSnacks در هنگام راه اندازی هماهنگ شود. رابط GameSnacks Game
عملکردهایی را برای سیگنال دادن به وضعیت بارگیری بازی شما ارائه می دهد، از جمله: firstFrameReady
هنگامی که برای اولین بار آماده نمایش به صفحه نمایش هستید، و زمانی که کاربر می تواند با بازی شما تعامل برقرار کند، ready
.
- وقتی اولین فریم بازی شما آماده رندر شد، بازی شما باید
firstFrameReady
را صدا کند. - زمانی که بازی شما برای تعامل با کاربر
ready
باشد، باید آماده تماس باشد. - بازی شما نباید در حالی که هنوز عناصر غیرتعاملی نمایش داده میشوند، مانند صفحههای اسپلش یا صفحههای بارگیری، آماده
ready
نیست.
بیصدا کردن کنترلها و کنترل صدا
بازی شما باید به کنترل های صوتی پلتفرم GameSnacks احترام بگذارد.
- بازی شما نباید یک دکمه بیصدا کلی نشان دهد و در عوض باید به کنترل بیصدا پلتفرم GameSnacks برای این کار تکیه کند.
- بازی شما باید با رابط صوتی ادغام شود و باید به روش
audio.isEnabled
احترام بگذارد. - بازی شما ممکن است دارای کنترلهای صوتی دانهای جداگانه در بازی باشد، مانند موسیقی پسزمینه یا جلوههای صوتی، اما همچنان باید این الزامات را رعایت کند.
مکث و از سرگیری
بازی شما باید از توقف و ازسرگیری پشتیبانی کند.
- بازی شما باید با رابط Game
onPause
وonResume
برای توقف و ازسرگیری بازی ادغام شود. - بازی شما نباید از Web Page Visibility API یا APIهای وب مشابه استفاده کند.
- اگر بازی شما متوقف شود باید به وضوح با کاربر ارتباط برقرار کند.
- بازی شما باید پیشرفت کاربر را در زمان توقف ذخیره کند.
داده گردانی
فقط از API های ذخیره سازی GameSnacks برای مدیریت داده ها استفاده کنید.
- بازی شما فقط باید از رابط ذخیره سازی برای ذخیره داده های بازی استفاده کند.
- بازی شما نباید از هیچ شکل ذخیرهسازی دیگری از جمله کوکیها،
localStorage
،sessionStorage
وIndexedDB
استفاده کند. - بازی شما نباید هیچ گونه اطلاعات کاربری را جمع آوری کند.
- بازی شما نباید با استفاده از هیچ پروتکلی، هیچ تماس خارجی یا درخواست داده به یا از هیچ سروری انجام ندهد.
- بازی شما نباید هیچ گونه قرارداد اضافی کاربر، سیاست های حفظ حریم خصوصی، یا سایر جمع آوری داده ها یا پیام های نظارتی را نمایش دهد.
صرفه جویی در پیشرفت
پیشرفت کاربر را ذخیره کنید و زمانی که کاربر به بازی بازگشت، بتواند پیشرفت او را بازیابی کند.
- بازی شما باید از رابط Storage استفاده کند تا زمانی که کاربران پیشرفت مادی داشته باشند، مانند تکمیل یک سطح، پیشرفت را ذخیره کند.
- حجم کل بازی ذخیره شده باید کمتر از 3 مگابایت و کمتر از 500 کیلوبایت باشد.
- هنگام شروع بازی، بازی شما باید هرگونه پیشرفت ذخیره شده را بازیابی کند.
- بازی شما باید بتواند پیشرفت ذخیره شده نسخه های قبلی بازی را بازیابی کند.
نمرات بالا
بالاترین امتیاز کاربر را ذخیره کنید یا پیشرفت او را با استفاده از معیارهای متفاوت پیگیری کنید.
- اگر بازی شما امتیاز دارد، بازی شما باید آنها را با استفاده از رابط رابط Score ردیابی کند.
- اگر بازی شما امتیازی ندارد ، باید یک معیار پیشرفت جایگزین مانند تعداد سطوح تکمیل شده را دنبال کنید.
محتوای بازی
شرایط زیر برای محتوای بازی شما اعمال می شود:
رابط کاربری بازی
- بازی شما باید به وضوح در رزولوشن های مختلف صفحه نمایش داده شود. برای مثال، عناصر رابط کاربری نباید تار، پیکسلی یا کشیده باشند.
- بازی شما نباید از دارایی های شطرنجی شده با وضوح پایین استفاده کند که در مقیاس بزرگتر تار به نظر می رسند.
- بازی شما نباید از نمادهایی استفاده کند که ممکن است با نمادهای موجود در نوار اکشن GameSnacks اشتباه گرفته شود.
- بازی شما نباید دارای دکمه های خروج یا خروج در بازی باشد. برنامه یا سایتی که بازی شما را جاسازی می کند، این کار را انجام می دهد.
محلی سازی و دسترسی
- بازی شما باید از زبان انگلیسی پشتیبانی کند.
- بازی شما باید بهترین تلاش را بکند تا در دسترس باشد. ما توصیه میکنیم که دستورالعملهای دسترسی به محتوای وب (WCAG)، سطح AA را رعایت کنید.
- متن بازی شما باید در همه دستگاه ها و اندازه صفحه نمایش خوانا باشد. WCAG 2.2 §1.4.3 را ببینید.
محتوایی برای کودکان
- بازی شما نباید به طور خاص کودکان را هدف قرار دهد. برای اطلاعات بیشتر به «تعیین اینکه محتوای شما برای کودکان ساخته شده است» مراجعه کنید.
حقوق و مجوزها
- بازی شما باید کاملاً دارای حقوق مالکیت معنوی شخص ثالث باشد.
- بازی شما نباید علامت تجاری شخص ثالث یا حقوق لباس تجاری را نقض کند.
- بازی شما باید تمام حقوق موسیقی لازم را داشته باشد.
- بازی شما باید تمام حقوق شخصیتی لازم، از جمله نام و شباهت را داشته باشد.
بازی های من کجا نمایش داده می شوند؟
ما بازیهای GameSnacks را بر روی طیف وسیعی از سطوح، هم در محصولات Google و هم در سایتها و برنامههای شریک GameSnacks، در تلفن همراه و دسکتاپ منتشر میکنیم. برخی از نمونههایی از جایی که بازیهای GameSnacks را منتشر میکنیم شامل برنامه بازیهای Google Play، در دستگاههای Android و وبسایت gamesnacks.com است. این جایی است که بیشتر ترافیک ما در حال حاضر از آنجا می آید. با این حال، مکانهایی که بازیها را در آن منتشر میکنیم دائماً در حال تغییر هستند و ما همیشه به دنبال افزایش مخاطبان بازیهای GameSnacks هستیم. بنابراین با گذشت زمان ممکن است سطوح جدید Google یا شرکای توزیع اضافه کنیم. گاه به گاه ممکن است در حین کار با سطوح توزیع جدید آزمایشاتی را نیز اجرا کنیم.
کسب درآمد
GameSnacks از بازی شما درآمدزایی می کند و به ازای توافقنامه مجوز توسعه دهنده GameSnacks سهمی از آن درآمد را برای شما فراهم می کند.
GameSnacks میتواند بهطور خودکار تبلیغات را در رویدادهای طبیعی بازی مانند پیشبازیها، رویدادهای سطح بعدی و پایانی قرار دهد. همچنین میتوانید با استفاده از رابط تبلیغ SDK توسعهدهنده GameSnacks، وقفههای تبلیغاتی اضافی را در بازی خود قرار دهید (هم به صورت بینابینی و هم با پاداش).
بازیهایی که فرصتهای بسیار کمی برای کسب درآمد دارند یا درآمدزایی ضعیفی دارند، ممکن است کمتر ظاهر شوند یا برای توزیع تأیید نشوند. یک قانون سرانگشتی خوب این است که مطمئن شوید حداقل یک بار در دقیقه فرصتی برای تبلیغ وجود دارد . این شامل تبلیغات بینابینی و پاداشی می شود که قرار می دهید و وقفه های تبلیغاتی که GameSnacks به طور خودکار برای شما تنظیم می کند.
با این حال، این بدان معنا نیست که ما همیشه یک تبلیغ نشان می دهیم. GameSnacks به دقت بار تبلیغات، تعامل و تجربه کاربر را متعادل می کند. بنابراین، میتوانید با خیال راحت در هر جایی که به خوبی در بازی شما قرار میگیرد، استراحت ایجاد کنید (یعنی بیش از یک بار در دقیقه) و به GameSnacks اجازه دهید نرخ نهایی نمایش تبلیغات را تنظیم کند.
الزامات کسب درآمد:
بازی شما باید یک تجربه پیوسته و بدون وقفه از گیم پلی اصلی را با فرصت های کافی برای نمایش تبلیغات بینابینی و پاداش ارائه دهد که باید با استفاده از رابط تبلیغاتی پیکربندی شوند.
شما نباید هیچ شکل دیگری از تبلیغات یا کسب درآمد را وارد کنید. این شامل تبلیغات درون بازی، پرداختها، حمایتهای مالی و قرار دادن محصولات، پیامهای رسانههای اجتماعی و پیوندهایی است که کاربران را به بازیهای خارجی، سایتها یا محتوای دیگر میبرد.
باید مطمئن شوید که بازیهایتان فرصتهای کافی برای نمایش تبلیغات را فراهم میکنند تا هم شما و هم شرکای توزیع GameSnacks بتوانید درآمد پایدار ایجاد کنید. یا به صورت ارگانیک به دلیل رویدادهای عادی بازی (مثلاً سطح بعدی) یا به طور صریح با استفاده از روش های رابط تبلیغاتی در سایر لحظات مناسب در طول بازی خود.
هنگام استفاده از روشهای رابط تبلیغاتی برای قرار دادن تبلیغات در بازی خود ، باید از همه خطمشیهای رفتاری بینابینی و پاداشی مرتبط پیروی کنید. همچنین این مجموعه از بهترین روشها را برای راهنماییهای بیشتر در مورد پیکربندی تبلیغات درون بازی ببینید.
اگر در حال قرار دادن تبلیغات بینابینی در بازی خود هستید، باید اطمینان حاصل کنید که در وقفههای طبیعی در گیمپلی اتفاق میافتند. تبلیغات باید متناسب با جریان بازی شما باشد. شما نباید فقط در میانه یک دوره بازی مداوم، موارد بینابینی را فعال کنید.
اگر مکانیکهای بازی شما از آن پشتیبانی میکنند، باید آگهیهای پاداشی قرار دهید. این فرصتهای پاداش باید اختیاری باشند، باید آنها را به وضوح توصیف کنید، و نباید کاربر را تشویق کنید که روی تبلیغات کلیک کند. سیاست های رفتاری را برای نیازهای کامل ببینید.