Yerel sunucudan başlat
Oyun geliştirme ve test sürecini kolaylaştırmak için oyunu yerel bir sunucudan başlatabilirsiniz. Testler prod- ve dev-ortamlarında yapılabilir.
Oyunu yerel sunucudan başlattıktan sonra SDK'nın tüm işlevlerini kullanabilirsiniz.
Prod-ortamı
Dikkat
Oyunu moderasyon için göndermeden önce son kontrol aşamasında kullanılabilir. Bu modda oyun, gerçek Yandex Oyunlar platformuyla etkileşime girer.
Özellikler:
- Oyun yandex.com.tr/games adresinden açılır.
- Harici hostlara istek göndermek için bunların CSP kurallarına eklenmesi gerekir.
- Gerçek reklamlar gösterilir.
- Oyuncu Yandex Passport üzerinden giriş yapar.
- Oyuncu verileri ve liderlik tabloları sunucuda saklanır.
- Ürün kataloğu sunucudan yüklenir, satın alımlar sunucuda işlenir.
- Hata ayıklama için adres çubuğuna
&debug-mode=16parametresi eklenerek debug paneli kullanılabilir.
Prod-ortamında yerel oyun sürümünü başlatmayı şu şekilde ayarlayabilirsiniz:
Yerel sunucuyu manuel ayarlama
localhostsunucusunu ayarlayın.- Oyunu taslak modunda açın.
- Adres çubuğuna
?game_url=https://localhostparametresini ekleyin.
Not
Güvenlik nedeniyle game_url parametresinde sadece localhost domaini desteklenir.
npm paketi ile yerel sunucu ayarlama
-
Node.JS sitesindeki talimatları izleyerek
npmkurun. -
npmile @yandex-games/sdk-dev-proxy paketini kurun:npm install -g @yandex-games/sdk-dev-proxy -
Oyunu başlatın. Şunları yapabilirsiniz:
Yerel sunucuya proxy yapınOyun kaynaklarının bulunduğu klasörü belirtinnpx @yandex-games/sdk-dev-proxy -h <Yerel sunucu adresi>npx @yandex-games/sdk-dev-proxy -p <Oyun dosyalarının yolu>Paket, SDK kaynaklarına yapılan istekleri oyunun barındırılacağı sunucuya yönlendirir.
Eğer --app-id parametresini eklerseniz, başlatma sırasında oyun yandex.com.tr/games adresinden açılacaktır:
npx @yandex-games/sdk-dev-proxy -p <Oyun dosyalarının yolu> --app-id=<Oyun ID>
Eğer --app-id belirtmezseniz, konsolda oyun için şablon link ve yerel sunucu linki görüntülenecektir.
Başlatma parametreleri
|
Parametre |
Açıklama |
|
|
Yardım. |
|
|
Oyunun yerel sunucusunun host adresi (örneğin |
|
|
Oyun kaynaklarının bulunduğu klasör yolu. |
|
|
Sunucunun açılacağı port (varsayılan: 8080). |
|
|
Oyun taslağı ID'si. |
|
|
|
|
|
İsteklerin konsola kaydedilmesini aktif eder (varsayılan: açık). |
|
|
|
|
|
|
Dev-ortamı
Not
Yandex Oyunlar platformunda hesap oluşturma ve oyun taslağı gerekmez.
Aktif geliştirme ve oyun mantığını debug etme aşamasında uygundur. Bu modda oyunun Yandex Oyunlar platformuyla gerçek bir bağlantısı yoktur ve tüm SDK çağrıları mocklar ile değiştirilmiştir, bu sayede sayfa hızlıca yeniden yüklenebilir ve güncellemeler görülebilir.
Özellikler:
- Oyun doğrudan
https://localhostadresinden açılır. - CSP kısıtlaması yoktur, harici hostlara istek gönderilebilir.
- Reklamlar yerine sahte içerikler gösterilir, tüm callback fonksiyonları prod-ortamındaki gibi çalışır.
- Oyuncu girişi tarayıcı mock dialogu üzerinden yapılır.
- Oyuncu verileri ve liderlik tabloları
localStorage'da saklanır. - Ürün kataloğu yerel dosyadan yüklenir, satın alımlar
localStorage'a kaydedilir. - Debug için tarayıcı adres çubuğundan parametreler ayarlanabilir.
- Tarayıcı konsolunda tüm SDK çağrıları modüllere göre gruplandırılarak otomatik olarak kaydedilir.
Dev-ortamında başlatma da @yandex-games/sdk-dev-proxy npm paketi üzerinden yapılabilir. Kurulum talimatları prod-ortamı ile aynıdır, sadece başlatırken --dev-mode=true parametresi eklenmelidir.
Şunları yapabilirsiniz:
npx @yandex-games/sdk-dev-proxy -h <Yerel sunucu adresi> --dev-mode=true
npx @yandex-games/sdk-dev-proxy -p <Oyun dosyalarının yolu> --dev-mode=true
Tarayıcı adres çubuğu için kullanılabilir parametreler
export interface SDKMocks {
/** Masaüstüne kısayol ekleme izni var mı? */
canShowPrompt?: boolean;
/** Oyuncu giriş yapmış mı? */
isAuthorized?: boolean;
/** Oyunun yönelimi kilitli mi? */
lockedOrientation?: ELockedOrientation;
}
/** Mobil ekranda oyunun kilitli yönelimi. */
export enum ELockedOrientation {
/** Oyun sadece yatay modda desteklenir. */
LANDSCAPE = 'landscape',
/** Oyun her iki yönelimde de desteklenir. */
NONE = 'none',
/** Oyun sadece dikey modda desteklenir. */
PORTRAIT = 'portrait',
}
Örnek
localhost:8080?mocks={"canShowPrompt":true,"isAuthorized":true,"lockedOrientation":"landscape"}
Yerel ürün kataloğu ayarlama
Ürün kataloğunu mocklamak için proje kökünde purchases-catalog.json dosyası oluşturun ve içine Geliştirici Konsolu'na eklediğiniz veya ekleyeceğiniz satın alma listesini ekleyin. SDK dev modunda bu dosyadan satın alma listesini yükleyecektir.
Örnek
[
{
"description": "Well styled modern avatar image",
"id": "avatar",
"imageURI": "{path-to-image}",
"price": "100 RUB",
"priceCurrencyCode": "RUB",
"priceValue": "100",
"title": "Premium avatar",
"getPriceCurrencyImage": "return ''"
}
]
Satın alma işlemi çağrıldığında, başarılı ve iptal edilmiş satın alma senaryolarını test etmek için mock dialog gösterilecektir.
Yatay yönelim.
Dikey yönelim.
Gerçek nesne veya fonksiyonların taklit edilmiş hali. Harici kaynak veya bileşenlere bağımlılık olmadan kod test etmek için kullanılır.
'' içine görselin yolu yazılabilir.