CAAD

Comunidad de Aventuras Conversacionales y Relatos Interactivos
Fecha actual 23 Jun 2017 06:19

Todos los horarios son UTC + 1 hora




Nuevo tema Responder al tema  [ 14 mensajes ] 
Autor Mensaje
NotaPublicado: 01 Nov 2014 11:40 
Desconectado
Elfito
Elfito

Registrado: 01 Nov 2014 11:29
Mensajes: 11
Hola!

Hace algunos años conocí (y compré) el parser PAW que era para el mítico Spectrum. Venia en un estuche con dos cintas y dos buenos manuales. Creo que realicé alguna aventurilla por aquella época.

Ahora estoy estudiando el lenguaje Python y me gustaría poder realizar una aventura (aunque fuera de solo texto) para ir practicando con el lenguaje. Eso sí, sin utilizar de momento la programación orientada a objetos. Sería, mas bien, utilizando la programación funcional.

Con esta idea se pueden practicar muchos conceptos de este (y otros lenguajes): Ciclos, bucles, definición de funciones, uso de matrices y listas, uso de excepciones, diccionarios, etc...

En el tema del inventario del personaje, lo tengo claro. Supongo que se utilizarán vectores (listas en Python). Y para movernos por las localidades es lo que me surge la duda ¿Cómo se definen para ir de una localidad a otra? Y que de esa forma, se puedan dejar objetos en una localidad y que al volver sigan allí.

El uso de la inteligencia artificial o PSI sería un poco mas complicado, creo...

Sería algo parecido a este ejemplo en inglés:

http://www.bluzeandmuse.com/final_site/how_to.html

Pero claro, hay cosas que no entiendo y aún lo veo un poco avanzado para mi ¿Sabéis si hay algo parecido en castellano?

Bueno, saludos y gracias por adelantado.


Arriba
 Perfil  
 
NotaPublicado: 01 Nov 2014 13:28 
Desconectado
Samudio
Samudio
Avatar de Usuario

Registrado: 09 Mar 2004 16:16
Mensajes: 5265
Ubicación: Coruña
Realmente es una pena que no quieras usar programación orientada a objetos, porque es que se adapta a la creación de aventuras como un guante. Creo que hay pocos dominios que parezcan más "hechos a propósito" para programar orientado a objetos que la creación de aventuras, porque las habitaciones, cosas, personajes, etc. son objetos muy naturales. Implementarlas de cualquier forma que no sea como objetos casi parece forzado.

De todas formas, si realmente no quieres usar objetos, supongo que lo más lógico será en Python que tengas una lista de habitaciones, y que cada habitación sea un diccionario con distintas entradas como "descripción", "inventario", "salidas", etc. Para lo que dices del movimiento, "salidas" podría ser una lista de tuplas, donde cada tupla tenga por ejemplo una dirección y el número de habitación (índice en la lista de habitaciones) al cual conduce. Para lo de los objetos que dejas en las habitaciones, "inventario" sería una lista de identificadores de cosas que estarían en una lista de cosas. De nuevo, las cosas podrían ser diccionarios con "descripción", etc.

Que conste que no tengo mucho nivel en Python, igual algún pythonero te dice una manera mejor.

_________________
Actúa siempre de tal modo que las decisiones de tu voluntad pudiesen servir como preceptos de una legislación universal (E. Kant)


Arriba
 Perfil  
 
NotaPublicado: 01 Nov 2014 13:46 
Desconectado
Elfito
Elfito

Registrado: 01 Nov 2014 11:29
Mensajes: 11
Muchas gracias Al-Khwarizmi. Bueno, de hecho no quiero decir que no vaya a tratar dentro de poco la POO. Pero claro, si estoy en fase de aprendizaje en Python (con las estructuras de control, funciones, secuencias...) me parece ir demasiado rápido querer también aprender a la vez la POO. Por eso, quiero hacer aunque sea de manera simple una pequeña aventura de manera más funcional.

Lo que me parece sorprendente que este lenguaje (Python) no tenga mas soporte para este tipo de temas. Me parece un lenguaje ideal para este tipo de aventuras de texto y gráficos.

Saludos!


Arriba
 Perfil  
 
NotaPublicado: 01 Nov 2014 13:56 
Desconectado
Betatester
Betatester
Avatar de Usuario

Registrado: 09 Feb 2012 20:33
Mensajes: 855
Bueno en python hay algo de Francisco Pinchentti. Este enlace lo publicó no hace mucho en fb. https://bitbucket.org/fj_pin/pysud/wiki/Home

Creo que esto exactamente no es lo que te interesa, ya que intentas crearlo todo desde cero, parser, habitaciones... y en el proyecto de Francisco Pinchentti creo que ya todo eso lo tiene hecho, sólo te tienes que preocupar de pensar la historia y montarla en base a la herramienta que ha creado. Y ojo digo CREO porque sólo lo he mirado muy por encima.

_________________
Te quiero... lo siento Yoda sólo tenemos café.


Arriba
 Perfil  
 
NotaPublicado: 01 Nov 2014 14:03 
Desconectado
Implementador
Implementador

Registrado: 13 Feb 2005 18:57
Mensajes: 1853
Hay un libro casi igual de clásico que lo de tu enlace. Es posible que te dé algunas ideas como punto de partida, aunque no está enfocado a python (y mucho menos a la programación funcional).

Programa tus propias aventuras en tu computadora de Plesa-SM, que es una traducción del Write Your Own Adventure Programs for Your Microcomputer.

Se ha mencionado un par de veces en el foro, pero ya no funcionan las descargas, en el msxblog sí.
viewtopic.php?f=16&t=2617
viewtopic.php?f=16&t=5092


Arriba
 Perfil  
 
NotaPublicado: 01 Nov 2014 14:28 
Desconectado
Implementador
Implementador

Registrado: 13 Feb 2005 18:57
Mensajes: 1853
Por cierto (ya decía yo que me sonaba)... Sobre tu enlace, hice un par de comentarios en viewtopic.php?f=10&t=5224


Última edición por dddddd el 01 Nov 2014 15:02, editado 1 vez en total

Arriba
 Perfil  
 
NotaPublicado: 01 Nov 2014 14:48 
Desconectado
Elfito
Elfito

Registrado: 01 Nov 2014 11:29
Mensajes: 11
Aquí dejo un pdf que también resulta interesante sobre el tema que comente. Lástima que sobre Python no encuentro casi nada...

http://e-archivo.uc3m.es/bitstream/handle/10016/11083/PFC_Alberto_Jose_Corrales_Garcia.pdf?sequence=2


Arriba
 Perfil  
 
NotaPublicado: 02 Nov 2014 02:52 
Desconectado
Betatester
Betatester
Avatar de Usuario

Registrado: 24 Dic 2010 14:37
Mensajes: 859
Ya hace tiempo que creo que el OO no es en realidad el paradigma más adecuado para la FI, porque la FI tiene más que ver con las excepciones que con lo común, pero bueno... no está de más volver a enlazar de nuevo esta vieeeeja presentación:

http://eblong.com/zarf/essays/rule-based-if/


Arriba
 Perfil  
 
NotaPublicado: 02 Nov 2014 18:09 
Desconectado
Elfito
Elfito

Registrado: 01 Nov 2014 11:29
Mensajes: 11
Johan Paz escribió:
Ya hace tiempo que creo que el OO no es en realidad el paradigma más adecuado para la FI, porque la FI tiene más que ver con las excepciones que con lo común, pero bueno... no está de más volver a enlazar de nuevo esta vieeeeja presentación:

http://eblong.com/zarf/essays/rule-based-if/


Ok. Eso me deja mas tranquilo. Miraré si encuentro algo de información para hace alguna aventura con programación modular.


Arriba
 Perfil  
 
NotaPublicado: 03 Nov 2014 21:14 
Desconectado
Elfito
Elfito

Registrado: 01 Nov 2014 11:29
Mensajes: 11
Bueno...me ha costado un poco, pero al final lo he encontrado :D (me refiero al tutorial). Me parecía increíble que tantos años que lleva Python y no hubiera algo parecido por la red.

Aquí dejo el enlace por si a alguien le puede interesar:

http://pythonwiki.wikispaces.com/file/view/Python+(Pr%C3%A1ctica+5).pdf


Arriba
 Perfil  
 
NotaPublicado: 03 Nov 2014 21:27 
Desconectado
Aventurero
Aventurero

Registrado: 04 Oct 2011 20:53
Mensajes: 6
Buenas, no conocía esa guía, gracias.

Aunque todo está en inglés (al final es la lógica del código lo que hay que ver), también te puede interesar https://www.youtube.com/watch?v=8CDePunJlck y en este enlace en adelante http://learnpythonthehardway.org/book/ex43.html

Hay otros recursos que investigué el año anterior:

http://www.daniweb.com/software-development/python/code/244474/pygame-text-python
http://inventwithpython.com/pygcurse/
https://github.com/soapy1/TextAdventure
http://livingcode.org/entries/2008-02-22_simple-text-adventure/
http://mail.python.org/pipermail/tutor/2005-December/043754.html
http://zephyrfalcon.org/weblog/arch_d7_2003_10_04.html#e361
http://www.awaretek.com/nowak/towards_advsys_1.html
http://ubuntuforums.org/showthread.php?t=1852665
http://forum.codecall.net/topic/65621-wippython-3-text-based-adventure-game/
https://onioncoder.wordpress.com/2012/08/19/how-python-text-adventure-game-works/
http://young-programmers.blogspot.com/2011/02/python-simple-text-adventure.html
http://black-pixel.net/python-text-adventure-game-displaying-text-slowly.html
http://www.daniweb.com/software-development/python/threads/55140/how-would-i-make-a-text-adventure
http://stackoverflow.com/a/5279825
http://coolnamehere.com/geekery/python/ifiction/index.html
http://williamedwardscoder.tumblr.com/post/21865366869/how-to-make-a-text-adventure


Ojalá sirva, saludos.


Arriba
 Perfil  
 
NotaPublicado: 09 Ene 2015 17:45 
Desconectado
Implementador
Implementador

Registrado: 13 Feb 2005 18:57
Mensajes: 1853
Citar:
This tutorial uses two Python modules, cmd and textwrap and makes minimal use of object-oriented programming, but you don't have to know OOP concepts to follow. [...] This tutorial is for beginner Python 3 programmers.

Making a Text Adventure Game with the cmd and textwrap Python Modules


Arriba
 Perfil  
 
NotaPublicado: 17 Feb 2015 03:34 
Desconectado
Aventurero
Aventurero

Registrado: 01 May 2014 14:46
Mensajes: 2
Uy se me paso esto fue hace tiempo pero por si las moscas.

Yo hace unos años tuve la misma inquietud que el autor original del thread y empecé a programar en python una pequeña libreria para aprenderlo (aunque si usé algunos principios de poo).
El repo se mudó a github y sigue siendo libre: https://github.com/francisco-pinchentti/pysud

Respecto a bibliografia en español para aprender python creo que inmersion en python es un buen punto de inicio yo empecé con ese entre otros. No enseña realmente fundamentos de poo pero en general ni un tutorial ni un manual de referencia de un lenguaje en particular apuntan a enseñar porgramación orientada a objetos. De este ultimo tema no soy un experto lo que se lo aprendi en la facultad y creo que es mejor estudiarlo por separado. Digamos así quedan bien separados los principios de la poo de las particularidades de tal o cual lenguaje.


Arriba
 Perfil  
 
NotaPublicado: 17 Feb 2015 15:36 
Desconectado
Elfito
Elfito

Registrado: 24 Feb 2012 00:35
Mensajes: 12
Echale un vistazo a esto http://www.albertogarcia.info/libros/sd ... %20SDL.pdf apartir de la pagina 13 a 23 , hay un ejemplo de diseño de un juego conversacional en c, que no te sea dificil implementar en python.


Arriba
 Perfil  
 
Mostrar mensajes previos:  Ordenar por  
Nuevo tema Responder al tema  [ 14 mensajes ] 

Todos los horarios son UTC + 1 hora


¿Quién está conectado?

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


No puede abrir nuevos temas en este Foro
No puede responder a temas en este Foro
No puede editar sus mensajes en este Foro
No puede borrar sus mensajes en este Foro

Buscar:
Saltar a:  
cron
Desarrollado por phpBB® Forum Software © phpBB Group
Traducción al español por Huan Manwë para phpBB-Es.COM