Holy smokes, I just released a MiniGolf game for Palm OS in 2024
新しいPalm OS MiniGolfゲームを公開
- この夏、新しいPalm OSゲームを作るプロジェクトを始めた
- 2か月にも満たない断続的なコーディングの末、"Captain's MiniGolf (v0.6)" を公開できてうれしい
- このゲームの主な特徴は、ユーザーが自分でレベルを作れること
- レベルパックのデータベースを作成して、他のユーザーと共有できる
遊び方
- Palm OSデバイスがなくても、cloudpilotエミュレーターのおかげでブラウザ上で直接プレイ可能
- ゲームのダウンロードとブラウザ内エミュレーターを提供
Palm OSコーディングの難しさ
- C言語でコーディングしていて気づいたことがいくつかある:
- 現代のプログラミング言語にある便利な機能がなく、ミスしやすい
- メモリリークが頻繁に発生する
- 多角形の形状や軌道のデバッグが難しく、デバッグビルドが大いに役立つ
- Palm OSはドキュメント不足のため、コーディングが難しい
- 次の2つの参考資料を使用した:
- The Palm OS Programmer Companion (Palm OS SDKの一部)
- Palm OS Programming Bible
- GitHubで他の開発者が共有しているPalm OSゲームのコードも参考にした
なぜPalm OSなのか?
- Palm OSデバイスは、シンプルさと優雅さで多くのことを実現できる
- こうした制約条件が、創造的な発想や代替的な解決策を見つけるきっかけになる
- 現代の高性能な携帯電話では、コード最適化をあまり気にしない
既知のバグ
- ボールが壁に挟まることがある
- メインフィールドの壁の内側に閉じた多角形の壁があるレベルを作ると、背景/コースを正しく塗れない
改善点
- レベルの削除/移動オプションを追加
- レベルパックの削除と共有オプションを追加(現在はFileZのような外部アプリケーションを使う必要がある)
- 解像度が160x160(またはPalm OS 5の高解像度デバイスでは320x320)に固定されており、画面サイズに応じて動的に変更する必要がある
共有は思いやり
- このゲームの全ソースコードをGPL3ライセンスで公開
- 他の人がさらに多くのPalm OSゲームを作るための刺激や助けになればうれしい
- Captain's MiniGolfのソースコードを提供
GN⁺のまとめ
- この記事はPalm OSへのノスタルジーを呼び起こし、限られた資源で創造的な解決策を見つける楽しさを強調している
- 現代の高性能デバイスとは異なり、Palm OSの制約条件は開発者に挑戦と創造性を求める
- Palm OSゲーム開発に関心のある人にとって有用な参考資料とソースコードを提供している
- 似た機能を持つプロジェクトとして、RetroArchのようなエミュレータープロジェクトを薦めている
1件のコメント
Hacker Newsの意見
「ボールが穴に落ちる」アニメーションを追加してはどうかという提案
次のレベルを読み込む前に短いお祝いアニメーションを追加してはどうかという提案
1990年代の Macintosh 向けミニチュアゴルフゲーム開発経験の共有
Palm OS のようなレトロなホームブリュー実行ファイルの実用性についての意見
Palm IIIxe へのノスタルジー
ボールが穴に落ちる様子を見せる提案
Palm LifeDrive へのノスタルジー
ゲーム開発でよくある問題についての意見
ミニチュアゴルフゲームのアートデザインへの称賛
ブラウザベースのエミュレーターでこのゲームが楽しいという意見