2 poin oleh GN⁺ 2024-09-12 | 1 komentar | Bagikan ke WhatsApp
  • Pada 2024, game minigolf Palm OS baru, Captain's MiniGolf v0.6, dirilis, diselesaikan dengan coding sesekali selama kurang dari sekitar dua bulan
  • Intinya adalah struktur yang memungkinkan pemain membuat dan mengekspor database level pack sendiri untuk dibagikan dengan pengguna lain
  • Meski tidak memiliki perangkat Palm OS sungguhan, game ini bisa langsung dijalankan di browser melalui emulator cloudpilot
  • C dan lingkungan Palm OS lama kembali menunjukkan keterbatasan pengembangan seperti kebocoran memori, debugging poligon dan lintasan, serta dokumentasi yang minim
  • Kode sumber dirilis dengan lisensi GPL3, dan dapat dimanfaatkan sebagai referensi bagi orang lain yang ingin membuat game Palm OS

Captain's MiniGolf v0.6 dirilis

  • Captain's MiniGolf v0.6 adalah game minigolf untuk Palm OS yang baru dibuat pada 2024
  • Dimulai sebagai proyek sampingan musim panas, lalu dirilis setelah coding sesekali selama kurang dari dua bulan
  • Fitur terbesarnya adalah pengguna dapat membuat database level pack sendiri
    • Level pack yang dibuat dapat diekspor dan dibagikan
    • Kesenangan melihat lapangan seperti apa yang akan dibuat pengguna lain masih menjadi hal yang dinantikan
  • Meski tidak memiliki perangkat Palm OS, game ini bisa dijalankan di browser melalui emulator cloudpilot

Pengalaman pengembangan Palm OS dan materi yang dipublikasikan

  • Saat membuat game Palm OS dengan C, kembali terlihat bahwa tanpa pelindung dari bahasa modern, kesalahan kecil dapat berkembang menjadi masalah yang lebih besar
  • Kebocoran memori terjadi lebih sering dari perkiraan, dan debugging bentuk poligon serta lintasan bola juga tidak mudah
    • Build debug yang memvisualisasikan logika internal sangat membantu dalam mengidentifikasi masalah
  • Palm OS memiliki dokumentasi yang minim sehingga tingkat kesulitan pengembangan tinggi, dan materi berikut digunakan sebagai referensi
  • Bug yang diketahui adalah masalah bola tersangkut di dinding, serta masalah ketika poligon dinding tertutup dibuat di dalam area permainan utama, warna latar belakang atau warna lapangan tidak diproses dengan benar
  • Item yang direncanakan untuk perbaikan mencakup penghapusan dan pemindahan level, penghapusan dan berbagi level pack, serta dukungan resolusi dinamis sesuai ukuran layar
    • Resolusi saat ini tetap di 160x160
    • Pada perangkat Palm OS 5 beresolusi tinggi, berjalan pada 320x320
  • Seluruh kode sumber dirilis dengan lisensi GPL3
  • Draf ditulis di Palm Zire 72

1 komentar

 
GN⁺ 2024-09-12
Komentar Hacker News
  • Pada 1990-an saya dua kali mulai membuat game mini golf untuk Macintosh, tetapi pada akhirnya tidak pernah selesai atau dirilis.
    Belakangan ini saya sedang memulihkan source code yang usianya hampir 35 tahun dan membuat image disk untuk dipakai di emulator. Percobaan MiniGolf hitam-putih yang pertama ada di sini: https://github.com/EngineersNeedArt/SoftDorothy-UnfinishedTa...
    Percobaan kedua adalah versi berwarna yang dibuat saat kemampuan pemrograman saya sudah lebih baik, dan rencananya akan masuk ke Volume 2. Saat ini saya sedang merakit image disk tersebut

    • Glider adalah franchise ikonik dari era Mac 68k. Melihatnya dikerjakan lagi benar-benar mengharukan
    • Grafiknya benar-benar bagus. Saya suka gayanya
    • Waktu kecil saya sering sekali memainkan Glider. Mungkin ini satu-satunya kesempatan saya untuk mengatakannya, jadi terima kasih banyak karena telah membuat game-game itu
    • Terima kasih, John. Repositori ini berisi sedikit dari semua hal yang saya sukai: seni, rekayasa, sejarah, dan yang terutama adalah seninya. Sangat menginspirasi
  • Keren sekali!
    Saya penasaran apakah pernah terpikir untuk menambahkan animasi bola masuk ke lubang. Di video, tampaknya level baru dimuat begitu bola dan lubang cukup saling tumpang tindih
    Dari sudut pandang pengguna, rasanya akan jauh lebih memuaskan kalau bisa melihat bolanya benar-benar masuk. Mungkin juga memberi rasa pencapaian lebih besar sebelum level berikutnya dimuat

    • Sekarang akan saya pertimbangkan, terima kasih
  • Pekerjaan yang luar biasa, dan terima kasih!
    Belakangan ini saya mulai berpikir bahwa Palm OS atau format executable homebrew retro lain mungkin bisa punya kegunaan nyata, bukan sekadar nostalgia
    Palm OS .prc, ROM homebrew .gb di itch.io, dan sejenisnya bisa dijalankan di desktop, iOS, Android, maupun perangkat game asli, efisien secara offline, bebas gangguan, dan tidak punya kemungkinan pembelian dalam aplikasi
    Misalnya Apotris: selama bertahun-tahun saya sudah membeli banyak versi resmi Tetris dan kemungkinan akan terus begitu, tetapi ini adalah implementasi yang sangat mulus dan bisa berjalan di semua konsol. Berkat emulator GBA berbasis WASM seperti RetroArch Web dan dukungan gamepad bawaan di browser modern, game ini bisa dimainkan di hampir komputer mana pun tanpa instalasi
    Selain itu, ada rasa tenang karena memiliki satu executable mandiri yang kemungkinan besar masih bisa dijalankan 1 tahun, 10 tahun, atau 20 tahun lagi. Saya rasa itu mungkin tidak berlaku untuk banyak game iOS atau game indie web yang saya sukai

    • Akan sangat menyenangkan kalau ada ponsel Palm OS modern yang mempertahankan filosofi UI aslinya dan bisa menjalankan semua judul lama. Akan lebih bagus lagi kalau itu bisa dilakukan, meski lewat emulasi
  • Sekitar tahun 1999 saya menulis kode untuk PalmOS. Yang paling saya ingat adalah cara pengujian aplikasinya
    Sepertinya itu fitur emulator yang terus melemparkan event ke software. Saya lupa detailnya, tetapi misalnya kalau bisa bertahan 1.000 event berarti lulus, 10 ribu bagus, dan 100 ribu sudah sangat hebat
    Saya menganggap diri saya programmer C++ yang lumayan baik, tetapi saat memakai alat itu saya kaget melihat betapa cepat aplikasi saya tumbang. Itu pengalaman yang cukup merendahkan dan membuka mata
    Saya sering teringat betapa efektifnya alat sesederhana itu untuk mengungkap bug, tetapi saya rasa cara yang sama tidak akan langsung cocok untuk perangkat modern yang multitasking dan terhubung ke internet
    Hal lain yang saya ingat adalah CodeWarrior merupakan IDE pertama yang punya kotak drop-down yang menampilkan semua fungsi dalam source file saat ini. Itu kemajuan yang cukup besar dari sisi produktivitas
    Tambahan lagi, pada 2010 ketika tinggal di Jepang saya masih memakai Palm Tungsten. Ada aplikasi kamus bahasa Jepang yang sangat sederhana untuk Palm; kalau kita mempelajari aturan dasar urutan dan arah goresan, kita bisa meniru karakter yang terlihat dengan stylus dan mencari kanji yang cocok. Saya cukup sering berhasil menemukan jalan dengan meniru kanji yang tidak saya kenal dari rambu-rambu

    • > drop-down box with all the functions
      Saya ingat #pragma - yang dipakai untuk memisahkan fungsi. Sekarang hal seperti itu sudah tidak ada. Sebagai pengganti ada #pragma region untuk melipat blok kode, tetapi itu berbeda
    • Saya jadi membayangkan seseorang mencoba mem-port Rust ke PalmOS. Semoga itu tidak terjadi
  • Saat membayangkan menjalankan ini di perangkat keras asli, saya sadar sama sekali tidak tahu apa yang terjadi pada Palm LifeDrive saya saat beralih ke BlackBerry
    Saya merindukan PDA kecil yang agak gempal itu. Untuk zamannya, itu benar-benar luar biasa
    https://en.wikipedia.org/wiki/LifeDrive

    • Minggu lalu saat bersih-bersih saya menemukan Palm Tungsten E2 lama saya. Kalau pengisinya juga ketemu, saya akan coba menyalakannya dan memberi kabar
    • LifeDrive benar-benar Palm yang aneh
      Di satu sisi saya tidak menyukainya karena waktu muatnya menjengkelkan dibanding perangkat-perangkat sebelumnya. Itu karena OS yang awalnya dirancang untuk menyimpan semuanya di RAM/ROM, dan pada awalnya bahkan tidak punya konsep memori berbasis file/blok, jadi hampir setiap akses memori tak terduga membangunkan hard disk. Ukurannya juga relatif besar
      Di sisi lain, kapasitasnya 4GB. Bisa memuat lebih dari dua film penuh. Itu juga Palm pertama dengan Wi‑Fi, yang saya sukai
      Secara keseluruhan, bagi saya itu terasa seperti simbol bahwa Palm sedang cepat tertinggal dari arus modern. Misalnya, Symbian memang tidak ada bandingannya dengan Palm OS dari sisi kegunaan, tetapi dari sudut pandang OS ia jauh lebih maju, lalu tentu saja setelah itu datang iPhone dan Android
  • Saya sangat menyukainya, dan terutama desain art-nya bagus sekali. Pekerjaan yang hebat
    Secara pribadi, satu hal yang ingin saya ubah adalah saat membidik, menggerakkan mouse ke arah berlawanan terasa lebih alami. Banyak game mini golf Miniclip dulu melakukan itu
    Kalau Anda suka game open source bebas, saya merekomendasikan Neverball dan Neverput. Neverput adalah simulator golf 3D dengan grafik yang cukup bagus

    • Palm aslinya menggunakan stylus, jadi tidak seperti ponsel layar sentuh berbasis jari, titik bidik tidak tertutup. Mungkin itu juga membantu memberi lebih banyak ruang di sisi arah pukulan
  • Indah! Ini membuatku merindukan IIIxe milikku
    Jika dilihat lewat filter nostalgia yang serba indah dan kurang akurat, mungkin itu salah satu perangkat portabel yang paling mendekati puncak produktivitas. Fiturnya cukup untuk selalu dibawa ke mana-mana dan mengingatkanku pada hal-hal yang perlu diperhatikan, tetapi benar-benar kekurangan notifikasi yang memecah perhatian
    Butuh waktu bagiku untuk membuat iPhone diam agar tidak terus menggangguku, tetapi Palm sejak awal bersifat opsional. Ia tetap diam kecuali kita secara langsung menyuruhnya memberi tahu sesuatu
    Aku sebenarnya tidak akan benar-benar kembali menggunakannya, tapi di satu sisi aku merindukannya

    • Aku merasakan hal yang sama. Aku benar-benar menyukai IIIxe milikku
      Kalau melihatnya lagi sekarang, mungkin aku akan terkejut dengan pengalaman penggunanya, tetapi saat itu perangkat itu sangat meningkatkan produktivitasku. Bahasa input tulisan tangan-nya juga sangat bagus. Aku bahkan benar-benar menulis laporan dengannya
      Sangat hebat bisa menulis di bus atau saat bepergian tanpa harus membawa laptop. Itu perangkat yang luar biasa
    • Kontrol notifikasi adalah salah satu fitur pengalaman pengguna paling kuat yang bisa dipakai. Aku aktif memanfaatkan mode fokus berbasis lokasi dan waktu untuk beberapa notifikasi yang memang kuizinkan
  • Suka sekali! Ini usulan singkat: akan bagus kalau ada sedikit waktu untuk memperlihatkan momen saat bola masuk ke lubang sebelum level berikutnya dimuat. Mengambil kepuasan itu dari pemain bisa terasa menjengkelkan

  • Proyek yang menarik. Masalah seperti kebocoran memori atau debugging ternyata jauh lebih umum dalam pengembangan game daripada yang dibayangkan
    Banyak dari masalah seperti ini diabstraksikan oleh game engine seperti Unreal, Unity, dan Godot, tetapi jika mengembangkan game dengan C, OpenGL, dan batasan memori, terutama saat perangkat keras memaksakan batasan itu, kita bisa mengalami trial-and-error awal yang sama
    Editor level adalah elemen yang bagus. Aku penasaran bagaimana implementasinya; seri Tony Hawk juga punya fitur yang mirip, dan itu berlanjut ke Tony Hawks Pro StrCpy: https://icode4.coffee/?p=954
    Namun, jailbreak atau eksekusi kode arbitrer tampaknya akan jauh lebih mudah dicapai di PalmOS daripada proyek sampingan mini golf

  • Aku mencobanya di emulator berbasis browser dan gamenya benar-benar menyenangkan. Aku hampir tersedot ke mode latihan
    Akan menyenangkan kalau ada versi port atau versi terinspirasi untuk Android, iOS, atau browser. Ini benar-benar seru