2 puan yazan GN⁺ 2024-09-12 | 1 yorum | WhatsApp'ta paylaş

Holy smokes, I just released a MiniGolf game for Palm OS in 2024

Yeni Palm OS MiniGolf oyununun çıkışı

  • Bu yaz yeni bir Palm OS oyunu yapma projesine başladım
  • İki aydan kısa süren aralıklı kodlamanın ardından, "Captain's MiniGolf (v0.6)" sürümünü yayımlamaktan mutluluk duyuyorum
  • Oyunun en önemli özelliği, kullanıcıların kendi seviyelerini oluşturabilmesi
  • Seviye paketi veritabanı oluşturup bunu diğer kullanıcılarla paylaşmak mümkün

Oyun nasıl oynanır

  • Palm OS cihazınız olmasa bile, cloudpilot emülatörü sayesinde doğrudan tarayıcıda oynayabilirsiniz
  • Oyun indirilebilir ve tarayıcı içi emülatör de sunuluyor

Palm OS için kod yazmanın zorlukları

  • C diliyle kod yazarken fark ettiğim bazı noktalar:
    • Modern programlama dillerinin sunduğu kullanım kolaylıkları olmadığından hata yapmak kolay
    • Bellek sızıntıları sık yaşanıyor
    • Çokgen şekilleri ve yörüngeleri debug etmek zor; bu yüzden debug build çok yardımcı oluyor
  • Palm OS için dokümantasyon eksikliği kod yazmayı zorlaştırıyor
  • Şu iki kaynağı kullandım:
    • The Palm OS Programmer Companion (Palm OS SDK'nin bir parçası)
    • Palm OS Programming Bible
  • GitHub'da başka geliştiricilerin paylaştığı Palm OS oyun kodlarına da baktım

Neden Palm OS?

  • Palm OS cihazları sadelik ve zarafetle çok şey başarabiliyor
  • Bu tür kısıtlar yaratıcı düşünmeyi ve alternatif çözümler bulmayı teşvik ediyor
  • Günümüzün güçlü telefonlarında kod optimizasyonuna pek dikkat edilmiyor

Bilinen hatalar

  • Top duvara sıkışabiliyor
  • Ana oyun alanı duvarlarının içinde kapalı çokgen duvarlar olan bir seviye oluşturursanız, arka planı/kursu doğru şekilde boyayamıyor

İyileştirmeler

  • Seviye silme/taşıma seçenekleri ekleme
  • Seviye paketi silme ve paylaşma seçenekleri ekleme (şu an bunun için FileZ gibi harici bir uygulama kullanmak gerekiyor)
  • Çözünürlük 160x160'a sabit (veya Palm OS 5 yüksek çözünürlüklü cihazlarda 320x320); ekran boyutuna göre dinamik olarak değişmesi gerekiyor

Paylaşmak önemsemektir

  • Bu oyunun tüm kaynak kodu GPL3 lisansı ile yayımlandı
  • Umarım başkalarına daha fazla Palm OS oyunu yapmaları için ilham verir ya da yardımcı olur
  • Captain's MiniGolf kaynak kodu da sunuluyor

GN⁺ özeti

  • Bu yazı Palm OS nostaljisini canlandırırken, sınırlı kaynaklarla yaratıcı çözümler bulmanın keyfini vurguluyor
  • Modern ve güçlü cihazların aksine, Palm OS'nin kısıtları geliştiriciden hem meydan okumaya açık olmasını hem de yaratıcılık göstermesini istiyor
  • Palm OS oyun geliştirmeyle ilgilenenler için yararlı referanslar ve kaynak kod sunuyor
  • Benzer işlevlere sahip projeler arasında RetroArch gibi emülatör projeleri öneriliyor

1 yorum

 
GN⁺ 2024-09-12
Hacker News yorumları
  • "Topun deliğe düşmesi" animasyonunun eklenmesi önerisi

    • Topun deliğe girdiğini görmek bir başarı hissi verebilir
  • Bir sonraki seviye yüklenmeden önce kısa bir kutlama animasyonu eklenmesi önerisi

    • "Loading" metni aniden belirdiği için sanki yanlış bir şey yapılmış hissi veriyor
    • "Nice!" gibi bir metin gösterilip topun deliğin içinde kaybolması gösterilebilir
    • Yükleme diyaloğu kısa süre gösterilebilir ya da atlanabilir
  • 1990'larda Macintosh için minyatür golf oyunu geliştirme deneyiminin paylaşılması

    • 35 yıllık kaynak kodu geri yükleniyor ve emülatör için disk imajı oluşturuluyor
    • İlk siyah-beyaz deneme GitHub'da yer alıyor
    • İkinci renkli deneme Volume 2'ye dahil edilecek
  • Palm OS gibi retro homebrew çalıştırılabilir dosyaların pratikliği hakkında görüş

    • Çeşitli platformlarda çalışabiliyor, çevrimdışı, verimli ve dikkat dağıtıcı unsurlar yok
    • Apotris gibi oyunlar birçok konsol ve bilgisayarda kurulum olmadan oynanabiliyor
    • Tek bir çalıştırılabilir dosyanın avantajı: çok uzun zaman sonra bile çalıştırılabilir olması
  • Palm IIIxe hakkında nostalji

    • Az bildirim vardı ve yalnızca gerekli işlevleri sunuyordu
    • iPhone bildirimlerini sessizleştirmenin zaman aldığı belirtiliyor
    • Palm, kullanıcı istemedikçe bildirim göndermiyordu
    • Geri dönmek istemeseler de bazı yönleri özleniyor
  • Topun deliğe düştüğünü göstermeye yönelik öneri

    • Oyuncu memnuniyetini artırabilir
  • Palm LifeDrive hakkında nostalji

    • Blackberries'e geçerken kaybedilmiş
    • O dönem için inanılmaz bir cihazdı
  • Oyun geliştirmede yaygın sorunlara dair görüş

    • Bellek sızıntıları, debugging gibi sorunlar yaygındır
    • Unreal, Unity, Godot gibi oyun motorları birçok sorunu soyutlar
    • C, OpenGL ve bellek kısıtlarıyla oyun geliştirirken benzer sorunlar yaşanabilir
    • Seviye editörü uygulamasına ilgi var
  • Minyatür golf oyununun sanat tasarımına övgü

    • Fare kontrol yönünün ters çevrilmesi daha doğal gelebilir
    • FOSS oyun hayranları için Neverball ve Neverput öneriliyor
  • Tarayıcı tabanlı emülatörde oyunun eğlenceli olduğuna dair görüş

    • Android, iOS ve tarayıcı için port öneriliyor
    • Oldukça eğlenceli