Ayuda: creando un programa en terminal/consola

Si tienes alguna duda sobre cómo usar pilas, o tienes problemas para instalar o hacer algo en pilas comentalo aquí.

Ayuda: creando un programa en terminal/consola

Notapor MrBB4 » Dom Abr 22, 2012 10:22 pm

buenas.
hace un par de semanas empecé a jugar un juego llamado balzhur que es un MUD. Para los que no sepan, un MUD es un Multi User Dungeon (Calabozos mutiusuario) que son los antecesores de los MMORPG actuales puesto que son juegos con un entorno visual echo completamente por texto. Son juegos como en Dragons & Dungeons (Dragones y calabozos) pero en una pc y con el servidor como narrador.
La cosa es que los programas Cliente que existen no me gustan, así que pensé: "¿Por que no hago uno yo?". El problema está en como quiero hacer el cliente, puesto que quiero que se ejecute directamente en la terminal/consola del usuario, independientemente del SO; y tambien tiene que poder imprimir información en pantalla sin olvidar lo que el usuario estaba escribiendo en ese momento.
Modulos (estandar) para crear cosolas encontré dos: cmd y curses.
cmd está genial, pero no está hecho para que funcione de forma lineal, osea que hasta queel usuario no preciona la teca enter no pasa nada (o por lo menos así lo entendí), pero como se trata de un MUD, hay infomación que se esta constantemente actualizando y el usuario tiene que poder leerla al vuelo, no puede ser que no se entere de lo que sucede a su alrededor porque el programa espera su input. Por el otro lado, curses es perfecto, con la ecepción que está diseñado para que funcione en una ventana aparte de la consola del usuario, que a verdad está genial pero no es lo que busco.

Así que mi pregunta es si saben de algún manual sobre como hacer un programa en terminal/consola; o si talves me lo pudieran explicar uds, aunque ahi se vuelve mas complicado. Lo que busco es como cambiar lo que está impreso en pantalla: no lo que se va a imprimir siguiente, para eso está print, sino que para cambiar lo que ya está impreso en pantalla. Eso y que las letras tengan color.

Espero que se entienda, sinó me avisan y yo lo explico más a fondo.

Saludos y gracias de antemano.

PD: Para los que entiendan de MUDs no se preocupen, el progama incluiría Macros, timers, alias, posibemente triggers; sobre scripts no estoy seguro; y tendría un mapper escrito con pygame.
Avatar de Usuario
MrBB4
 
Mensajes: 49
Registrado: Mar Dic 14, 2010 11:39 pm
Ubicación: Purto Madryn, Chubut, Argentina.

Re: Ayuda: creando un programa en terminal/consola

Notapor shackra » Lun Abr 23, 2012 8:16 pm

esta consulta va en esté foro? creo que no.
por otro lado, ya hace un tiempo estaba desarrollando un warhack, todo lo estaba haciendo con pygame, creo que por ahí tengo el código todavía xD. La mejor sugerencia que te puedo hacer es, usa un motor para juegos 2D, Pilas o PySFML o Pygame. Ya con ésto podrás manejar la entrada de datos por parte del usuario e ir presentarlé sucesos por pantalla al vuelo.

También existe otra posibilidad y es usar select, viene de manera nativa en Python, pero en windows solo es posible revisar si viene algo de input de sockets, no del stdin (del teclado, supongo) como en GNU u otros sistemas tipo UNIX.

bueno, creo que sera mejor usar un motor para juegos 2D y emular ahí una "terminal".

saludos!
Avatar de Usuario
shackra
 
Mensajes: 308
Registrado: Lun Jun 15, 2009 4:10 pm
Ubicación: Costa Rica


Volver a Consultas, problemas o bugs.

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado