2 puntos por GN⁺ 2024-09-12 | 1 comentarios | Compartir por WhatsApp

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

Lanzamiento de un nuevo juego de MiniGolf para Palm OS

  • Este verano, comenzó un proyecto para crear un nuevo juego para Palm OS
  • Después de menos de dos meses de programación intermitente, me da gusto lanzar "Captain's MiniGolf (v0.6)"
  • La característica principal del juego es que los usuarios pueden crear sus propios niveles
  • Se puede crear una base de datos de paquetes de niveles y compartirla con otros usuarios

Cómo jugar

  • Incluso sin un dispositivo Palm OS, se puede jugar directamente en el navegador gracias al emulador cloudpilot
  • Se ofrece la descarga del juego y un emulador dentro del navegador

Las dificultades de programar para Palm OS

  • Al programar en C, hubo varios aprendizajes:
    • Es fácil equivocarse porque no existen las funciones de comodidad que ofrecen los lenguajes modernos
    • Las fugas de memoria ocurren con frecuencia
    • Depurar formas poligonales y trayectorias es difícil, así que una compilación de depuración ayuda mucho
  • Programar es difícil por la falta de documentación de Palm OS
  • Se usaron las siguientes dos referencias:
    • The Palm OS Programmer Companion (parte del Palm OS SDK)
    • Palm OS Programming Bible
  • También se consultó código de juegos para Palm OS compartido por otros desarrolladores en GitHub

¿Por qué Palm OS?

  • Los dispositivos Palm OS pueden hacer muchas cosas gracias a su simplicidad y elegancia
  • Estas restricciones llevan a pensar de forma creativa y a encontrar soluciones alternativas
  • En los teléfonos modernos y potentes, normalmente no se presta atención a la optimización del código

Errores conocidos

  • La pelota puede quedarse atorada en una pared
  • Si se crea un nivel con una pared poligonal cerrada dentro de la pared principal del campo, el fondo o el recorrido no se colorean correctamente

Mejoras

  • Agregar opciones para eliminar o mover niveles
  • Agregar opciones para eliminar y compartir paquetes de niveles (por ahora hay que usar aplicaciones externas como FileZ)
  • La resolución está fija en 160x160 (o 320x320 en dispositivos Palm OS 5 de alta resolución), y debería cambiar dinámicamente según el tamaño de la pantalla

Compartir es cuidar

  • El código fuente completo de este juego se publica bajo la licencia GPL3
  • Ojalá sirva para inspirar o ayudar a que otras personas creen más juegos para Palm OS
  • Se proporciona el código fuente de Captain's MiniGolf

Resumen de GN⁺

  • Este artículo despierta nostalgia por Palm OS y destaca la diversión de encontrar soluciones creativas con recursos limitados
  • A diferencia de los dispositivos modernos y potentes, las restricciones de Palm OS exigen reto y creatividad por parte del desarrollador
  • Ofrece materiales de referencia y código fuente útiles para quienes estén interesados en desarrollar juegos para Palm OS
  • Como proyecto con funciones similares, se recomienda un proyecto de emulación como RetroArch

1 comentarios

 
GN⁺ 2024-09-12
Comentarios de Hacker News
  • Sugerencia de agregar una animación de "la pelota cayendo en el hoyo"

    • Ver cómo la pelota entra en el hoyo puede dar una sensación de logro
  • Sugerencia de agregar una breve animación de felicitación antes de cargar el siguiente nivel

    • El texto "Loading" aparece de forma tan repentina que da la impresión de que hiciste algo mal
    • Mostrar un texto como "Nice!" y enseñar cómo la pelota desaparece en el hoyo
    • El diálogo de carga podría mostrarse brevemente u omitirse
  • Experiencia compartida desarrollando un juego de golf miniatura para Macintosh en los años 1990

    • Está recuperando código fuente de hace 35 años y creando una imagen de disco para emulador
    • El primer intento en blanco y negro está en GitHub
    • El segundo intento a color está previsto para incluirse en Volume 2
  • Opinión sobre la utilidad práctica de ejecutables homebrew retro como los de Palm OS

    • Pueden ejecutarse en varias plataformas, sin conexión, de forma eficiente y sin distracciones
    • Juegos como Apotris pueden jugarse en varias consolas y computadoras sin instalación
    • Ventaja de un ejecutable único: puede seguir ejecutándose incluso después de mucho tiempo
  • Nostalgia por la Palm IIIxe

    • Tiene pocas notificaciones y ofrece solo las funciones necesarias
    • Lleva tiempo lograr que las notificaciones del iPhone sean silenciosas
    • Palm no envía notificaciones a menos que el usuario las pida
    • No querría volver, pero extraña algunas cosas
  • Sugerencia de mostrar cómo la pelota cae en el hoyo

    • Puede aumentar la satisfacción del jugador
  • Nostalgia por la Palm LifeDrive

    • La perdió al cambiarse a Blackberries
    • En ese momento era un dispositivo asombroso
  • Opinión sobre problemas comunes en el desarrollo de juegos

    • Las fugas de memoria, la depuración, etc., son problemas habituales
    • Motores de juego como Unreal, Unity y Godot abstraen muchos problemas
    • Al desarrollar juegos con C, OpenGL y límites de memoria, se pueden enfrentar problemas similares
    • Hay interés en implementar un editor de niveles
  • Elogios al diseño artístico del juego de golf miniatura

    • Parece que invertir la dirección del control con el mouse sería más natural
    • Si te gustan los juegos FOSS, recomiendan Neverball y Neverput
  • Opinión de que el juego es divertido en un emulador basado en navegador

    • Sugerencia de hacer ports para Android, iOS y navegador
    • Es muy divertido