Oyunları Derleme ve Yayınlama
Tek bir oyun modülü aynı kaynaktan masaüstü, web ve Android’e derlenir.
import "arcade" ve import "tame" üçünde de aynı davranır.
Masaüstü
Section titled “Masaüstü”tulpar oyun.tpr # derle + çalıştırtulpar build oyun.tpr oyunum # bağımsız yerel ikiliWeb (WebAssembly)
Section titled “Web (WebAssembly)”tulpar build --target=web oyun.tpr cikti/oyun# → cikti/oyun.html + cikti/oyun.js + cikti/oyun.wasm- Dosyaları HTTP üzerinden servis edin (
file://değil). - Çıktı dizini önceden var olmalı.
- Çıktı adı bir tabantır:
.html/.js/.wasmeklenir (kendi yazdığınız sondaki.htmlsoyulur, yani-o oyunve-o oyun.htmleşdeğerdir). - Her web derlemesi bedava bir dokunmatik gamepad alır — yalnız dokunmatik cihazlarda görünür ve oyunu sentetik tuş olaylarıyla sürer, yani arcade oyunları tarayıcıda ekstra iş olmadan mobil-oynanır.
Android (APK / AAB)
Section titled “Android (APK / AAB)”tulpar build --target=android oyun.tpr cikti # APK hazırlığı (arm64-v8a + x86_64)tulpar build --apk oyun.tpr cikti # → tek adımda imzalı APKtulpar build --aab oyun.tpr cikti # → Play Store paketiSürücü tek derlenmiş modülden hem cihaz (arm64-v8a) hem emülatör (x86_64)
nesnelerini üretir ve bir NativeActivity uygulamasına linkler. import "arcade"
cihazda değişmeden çalışır ve ekran-üstü D-pad / joystick / aksiyon butonu her
arcade oyununu dokunmatik oynanır kılar.
Uygulamanın kimliği (paket adı, etiket, ikon, yön, sürüm) tulpar.toml’daki
[android]’den gelir — aşağı bakın.
Varlıklar
Section titled “Varlıklar”Resim, font ve sesleri web/Android derlemesine gömün:
TULPAR_WEB_ASSETS=./varliklar tulpar build --apk oyun.tpr ciktiDosyalar gömülür, böylece load_texture("oyuncu.png"), load_font(...),
load_sound(...) her platformda çalışma anında çözülür.
tulpar.toml config build
Section titled “tulpar.toml config build”Uzun bir komut ezberlemek yerine hedefi tulpar.toml’da bir kez tanımlayın ve
argümansız tulpar build çalıştırın:
name = "benim-arcade"version = "1.0.0"
[android]package = "dev.ornek.arcade"name = "Benim Arcade'im"icon = "icon.png"orientation = "landscape"version_code = "1"version_name = "1.0"
[build]target = "apk" # desktop | web | android | apk | aabentry = "oyun.tpr"output = "benim-arcade"tulpar build # [build]'i okur → imzalı benim-arcade.apk üretirCLI bayrakları hâlâ kazanır (tulpar build --target=web oyun.tpr manifesti ezer),
yani config bir varsayılandır, kilit değil.
Yayınlama
Section titled “Yayınlama”- Web:
.html/.js/.wasm(ve varsa.data) dosyalarını herhangi bir statik host’a kopyalayıp HTTP üzerinden servis edin. - Android: imzalı
.apkdoğrudan kurulur (adb install -r app.apk);.aabise Google Play Console’a yüklediğinizdir. Her yayında[android]’dekiversion_code’u artırın.
Yayınlanan Tulpar Arcade uygulaması — tek launcher’da 13 oyun — tam olarak böyle derlenir.