jueves, 19 de julio de 2018

Numpy Console

Para continuar con el desarrollo de Como el Rogue en Kivy he decidido trabajar con la librería Numpy.

http://www.numpy.org/

Numpy es un universo nuevo que debo explorar, he revisado algunos tutoriales y ejemplos y hacer pequeños experimentos.

Uno de los ejemplos favoritos para presentar Numpy es el algoritmo del juego de la vida (Conway's Game of Life) Recomiendo altamente buscar información si no están familiarizados :)

El Juego de la vida en Numpy está implementado con el siguiente código:

def life_iterate(Z):
  '''
  Conway's Game of Life Iteration (Z=0s,1s matrix)
  '''
  # Count neighbours
  N = (Z[0:-2,0:-2] + Z[0:-2,1:-1] + Z[0:-2,2:] +
       Z[1:-1,0:-2]                + Z[1:-1,2:] +
       Z[2:  ,0:-2] + Z[2:  ,1:-1] + Z[2:  ,2:])
  # Apply rules
  birth = (N==3) & (Z[1:-1,1:-1]==0)
  survive = ((N==2) | (N==3)) & (Z[1:-1,1:-1]==1)
  Z[...] = 0
  Z[1:-1,1:-1][birth | survive] = 1
  return Z

Aquí un video de mi Conway's Game of Life en Python, con Numpy+Kivy:

https://youtu.be/fL5TVq0-YY8



miércoles, 14 de junio de 2017

Algoritmos de Visualizacion y Generacion de Mapas

Ya he implementado algoritmos para hacer el Scrolling del mapa, Campo de Visión del personaje (FOV en inglés: Field of Vision), y he mejorado la visualización del terreno utilizando gradientes de ruido Perlin. Lo que sigue es implementar la iluminación (tanto del personaje como iluminaciones de antorchas, y el sol en el exterior) para lo cual reutilizaré parte del codigo de la versión anterior de Como el Rogue.

El algoritmo FOV utilizado es el de MoyTW:
https://github.com/MoyTW/roguebasin_rpas
http://www.roguebasin.com/index.php?title=Restrictive_Precise_Angle_Shadowcasting


FOV=False

FOV=True




lunes, 29 de mayo de 2017

Hola Kivy!

Hola Kivy!

El proyecto de hacer un roguelike en Español ha revivido, ahora en Python+Kivy

La idea es rehacer completamente el código de Como el Rogue, pero rescatando todo lo bueno que había realizado, y desechar aquello con lo que no me sentía a gusto.

Para acostumbrarme a Kivy, he comenzado a realizar algunas pruebas simples, pequeños Hola mundos de Roguelike, aqui algunos pantallazos:



Hasta ahora, un pequeño mapa creado a mano (hardbuild town) y un pequeño ejemplo de mapa generado por BSP, el cual ha sido modificado ya que en la version anterior de como el rogue se me complicó demasiado el codigo y no funcionaba correctamente el 100% de las veces.

De a poco ire integrando todas las características que poseía Como el Rogue con Libtcod, lo cual me significará escribir mis propias funciones para crear menus, moustros, items, nombres de personas, etc...

Por otra parte prefiero comenzar a practicar codigo para generar terrenos con Perlin Noise, para generar mapas exteriores y mejores calabozos.

lunes, 22 de abril de 2013

Último Source Code

Ya no estoy trabajando en Como el Rogue, aquí está el último source code de la version 2.8

Tips:

1.- Compila con Python 2.7.x (de 32 bits), usando la libtcod 1.5.1
www.python.org
http://doryen.eptalys.net/libtcod/

2.-para hacer el .exe necesita otra libreria, winexe

3.- usa tambien pymedia

4.- dejar todos los archivos (graficos, data, sonidos) en la misma carpeta que el código source.

Cualquier duda consultar. pero al menos debieran saber python y consultar el tutorial de jotaf http://roguebasin.roguelikedevelopment.org/index.php/Complete_Roguelike_Tutorial,_using_python%2Blibtcod

SOURCE 2.8

miércoles, 21 de marzo de 2012

Nueva Version!



Pasó mucho tiempo desde que anuncié esta versión.

No es que haya hecho mucho trabajo desde Enero, pero me alejé un poco del desarrollo estos meses y recién lo retomé para finalizar los últimos toques de esta versión que basicamente es la anunciada en Enero con unas mejoras.

Aun falta mucho para estar conforme con una versión 3, pero éstas serían las principales mejoras desde la última versión:

cambios v26:
- armadura y escudo deben ocupar lugares distintos en equipaje
- item seleccionado de inventario que corresponda a la letra escogida
- manejar suma de pesos del inventario, dificultar pelea a mayor peso
- INCORPORAR ACCION VER con el mouse
- INCORPORAR persistencia de objetos de vendedores
- usar varias musicas diferentes
- cambiar musica al seleccionar continuar ultimo juego
cambios v25:
-todos los items seran stackables, se anade precio base (price) y peso (weight)
-anadir id en items
-no usar count directamente en inventario, contar manualmente los items para desplegar en menu
-lo anterior implica volver a implementar inventario mas simple (no de tupla count-item)
v2.4
08-01-2012
cambios v24:
-se anaden archivos monsters.txt e items.txt para las funciones populate_items y populate_monsters
cambios v23:
-se puede escoger nombre y sexo, y nombres al azar para el player al inicio
-se anaden flags: USEBUFFER, NOSOUND
-se imprime fps en terminal (no)http://www.blogger.com/img/blank.gif
cambios v22:
-se salva el pueblo en cada nuevo juego
-se anade color en Tile
-se anade ruido para generacion de suelo y rocas en cavernas
-mejora reproduccion de musica si no estaba tocando
cambios v21:
-se cambia snd por music_player, se anade volumen a la música

Si alguien se interesa por la versión Linux de ComoelRogue, entonces que me ayude para saber como hacer el ejecutable en Linux y como usar Pymedia porque he tenido muchos problemas en compilar pymedia en linux :(

Aqui para Descargar: DESCARGA COMO EL ROGUE V26

viernes, 20 de enero de 2012

pronto una nueva version

solo falta depurar y agregar algunas cosas antes de lanzar una nueva version demo de Como el Rogue, aqui una imagen de como se veria esta nueva version