2012-02-16 19 views
7

Estoy buscando crear un RPG basado en terminal, ¿cuáles son los métodos aceptados y recomendados para escribir esto de forma cruzada? No estoy seguro de qué idioma usaré todavía, pero necesitaré algo con la funcionalidad para mover el cursor y cambiar el color de primer plano. Inspirado en juegos como NetHack, este tipo de control sería ideal, y Quiero poder escribirlo para poder lanzarlo para sistemas Windows y Unix. He usado ncurses para C++ y me preguntaba si hay algo similar a esto para usar con proyectos multiplataforma.RPG basado en terminal

Considerando: Java C++ C C#

Respuesta

2

Si planea hacer gráficos de terminal, puede escribir sus propias funciones de envoltura para los códigos de escape del terminal VT-100, que pueden, entre otras cosas, cambiar el color de fondo y de fondo y mover el cursor. Todo lo que tienes que hacer es escribir los códigos de escape adecuados.

http://www.termsys.demon.co.uk/vtansi.htm

Además, Java es probablemente la forma más sencilla de ser multiplataforma, aunque lo hace preciso que la th0e personas que dirigen su juego ha instalado el tiempo de ejecución de Java. C y C++ también pueden ser bastante multiplataforma si escribe su código con cuidado, especialmente si no tiene demasiadas dependencias externas (que no deberían ser necesarias para un juego de texto).

2

Es probable que desee ver en la PDCurses library ... que soporta un número de diferentes plataformas.

3

No creo que haya una alternativa independiente de la plataforma a ncurses. Su mejor opción sería utilizar ncurses para sistemas Unix y pdcurses para Windows. Dado que las API son en gran parte iguales, es de esperar que no termines con demasiado código duplicado, solo un par de #ifdef s aquí y allá.

+0

¿La versión X11 de pdcurses no le permitirá usar la misma biblioteca en ambas plataformas? – Jason

+0

@Jason No si quiere que esté basado en terminal (lo que el OP hace de acuerdo con el título). La versión X11 se ejecutará en su propia ventana, no en la terminal. – sepp2k

+0

El terminal en sí es una aplicación X11 ... No trato de ser intencionalmente desagradable, pero no creo que haya mucha diferencia en la "apariencia" de la aplicación a menos que quiera ejecutar el juego en el modo de terminal de solo texto real en Linux/Unix. – Jason