martes, 25 de octubre de 2011

Un paso adelante

Bueno en el post anterior hable de un tutorial que enseña a hacer un juego y ahora lo que haré es mostrar los pasos que a mi por lo menos me interesa seguir después de eso.

Espero me puedan ayudar con algunas dudas que tendré y si estoy haciendo algo mal me avisan :D

SL2


Bueno siempre e soñado con tener un juego mio :D

y esta es la gran oportunidad después de seguir el tutorial anterior.

pero ahora lo que me interesa es hacer modificaciones en una base de datos para poder tener un juego más estable :)

Según lo que he leido por ahi por lo general en mython los tutoriales usan SQLite pero la verdad es que yo la use en mis proyectos con AIR de FLEX y la verdad es que no me gusto la base de datos por que la encontre un poco limitada, tonteras mias :)

Por lo que me interesa usar Mysql y para esto busque en google como instalar e intente instalar de varias formas y en todas tenia errores y en una me funciono supuestamente pero la verdad es que según creo una de als instalaciones erroneas es la que está funcionando :P esto debido a que despues de estos intentos fallidos se me ocurrio probar si avia tenido suerte con algúno y me funciono :P el problema es que no se con cual :D


pero bueno si alguno de ustedes encuentra cual era definitivamente me avisa si no una vez que formatee en unos 4 meses más lo intentare de nuevo y les aviso :D.

Estas dos versiones instale en esta me aparece un par de errores pero según lo que entiendo esta es la que está funcionando.

mysql-python



Está dice que instalo bien pero no estoy seguro de que haga algo :S





Bueno espero que a ustedes también les resulte :D

ya que a mi si me funciono :D



lunes, 24 de octubre de 2011

Crear un juego

Hola a todos .

los salud nuevamente y esta vez para contarles que encontré un tutoríal en el que se puede crear un juego en python de forma muy simple :D

la verdad es que me sorprendió lo simple que es :)

por lo que seguí el tutorial este es el enlace :

http://www.youtube.com/watch?v=ejodLulpowI&feature=related

En este post tiene el código de todo el juego que se desarrollo en el tutorial :


import random
class Jugador(object):
    def __init__(self, nombre="Jugador" ):
        self.nombre= nombre
        self.hp_max=random.randrange(45,55)
        self.mp_max=random.randrange(40,50)
        self.fuerza=random.randrange(3,7)
        self.inteligencia=random.randrange(2,5)
        self.hp=self.hp_max
        self.mp=self.mp_max
        self.habilidades=[Bola_de_fuego(),Golpe_letal(),Golpiar()]
    def __str__(self):
        return str(self.nombre)+" HP" +str(self.hp_max)+"/"+str(self.hp)

    def stats(self):
        print self.nombre
        print "Hp: ",self.hp_max,"(max) / ",self.hp
        print "Mp: ",self.mp_max, "(max)/ ", self.mp
        print "Fuerza:",self.fuerza
        print "Inteligencia:",self.inteligencia

    def eleccion(self):
        print "Elija una habilidad"
        print "0-Bola de fuego **10mp"
        print "1-Golpe Letal **5mp"
        print "2-Golpiar **no requiere mp)"
        x= input("? ")
        return x

class AI(object):
     def __init__(self):
        self.hp_max=random.randrange(45,55)
        self.mp_max=random.randrange(40,50)
        self.fuerza=random.randrange(3,7)
        self.inteligencia=random.randrange(2,5)
        self.hp=self.hp_max
        self.mp=self.mp_max
        self.habilidades=[Bola_de_fuego(),Golpe_letal(),Golpiar()]
     def __str__(self):
        return "AI: " + " HP" +str(self.hp_max)+"/"+str(self.hp)
     def stats(self):
        print "Hp: ",self.hp_max,"(max) / ",self.hp
        print "Mp: ",self.mp_max, "(max)/ ", self.mp
        print "Fuerza",self.fuerza
        print "Inteligencia",self.inteligencia
     def eleccion(self):
         x=random.randrange(0,3)
         return x

class Bola_de_fuego(object):
    def __init__(self):
        self.dano=0
        self.nombre="BOLA DE FUEGO"
    def devolver_ataque(self,origen):
        if origen.mp<10:
            return 0
        else:
            self.dano=random.randrange(13,19)+origen.inteligencia
            origen.mp+= -10
            return self.dano


class Golpe_letal(object):
    def __init__(self):
        self.nombre="GOLPE LETAL"
        self.dano=0
    def devolver_ataque(self,origen):
        if origen.mp<5:
            return 0
        else:
            self.dano=random.randrange(7,15)+origen.fuerza
            origen.mp-=5
            return self.dano


class Golpiar(object):
    def __init__(self):
        self.nombre="Golpiar"
        self.dano=0
    def devolver_ataque(self,origen):
        self.dano=origen.fuerza+origen.inteligencia
        return self.dano






def main():
    print " BIENVENIDOS A CHELINGAME\n"
    print "Modo de juego"
    print "1-Single Player"
    print "2-Multiplayer"
    modo=input("? ")
    if modo==1:
        j2=AI()

    if modo==2:
        print "ingrese su nombre j2"
        name=raw_input("? ")
        j2=Jugador(name)

    print "ingrese su nombre j1"
    name=raw_input("? ")
    j1=Jugador(name)
    print"STATS J1"
    j1.stats()
    tiempo=raw_input("..,.")
    print "STATS J2"
    j2.stats()
    tiempo=raw_input(".....")
    while j1.hp>0 and j2.hp>0:

        print "Turno J1"
        print j1
        print "mp",j1.mp
        print j2
        elec1=j1.eleccion()
        print "Se utilizo la hablidad",j1.habilidades[elec1].nombre
        dano1=j1.habilidades[elec1].devolver_ataque(j1)
        print "dano efectuado",dano1
        j2.hp-=dano1
        if j1.hp<=0 or j2.hp<=0:
            break
        tiempo=raw_input(".....")
        print "...."
        print "Turno J2"
        print j1
        print j2
        print "mp",j2.mp
        elec2=j2.eleccion()
        print "Se utilizo la hablidad",j2.habilidades[elec2].nombre
        dano2=j2.habilidades[elec2].devolver_ataque(j2)
        print "dano efectuado",dano2
        j1.hp-=dano2
        tiempo=raw_input(".....")
    if j1.hp>0:
        print "Gano j1"
    else:
        print "Gano j2"

main()





En los próximos post iré explicando como seguí desarrollando este juego.


Esto lo además de otro tutorial que sigo por lo que tendré varios post medios intercalados.


SL2

viernes, 14 de octubre de 2011

Nuevo desafio Google App Engine

Hola a todos

Después de seguir este primer tutorial de python la verdad es que me gusto mucho pero encontré gusto a poco.

Quería seguir viendo la segunda parte que es la que se dicto en Mejorandolaconferencia pero antes de seguir ese tutorial quería colocar los ejemplos funcionales de esto.

Leyendo por ahí recordé que google tiene un servicio donde nos presta sus servidores para efectuar desarrollos en python así que dije esta es la mía.

en tema no fue tan fácil por que yo estaba acostumbrado que en los servicios de google por lo general solicitando solo la cuenta gmail uno puede acceder a ellos. Pero en este caso no es así :S

El App Engine te pide tu numero de teléfono y te envía un cms con un código y una vez que tienes eso te permite el acceso. Pero esto al parecer no funciona para chile por lo que después de pasar muchas rabies y decepcionarme un poco de google comencé a buscar soluciones al tema por Internet ya que no hay que echarse a morir tan rápido.

:D

La cosa es que en un foro leí que google responde a los correos solicitando permiso en un formulario que está donde te pide el código que es para la gente que tiene problemas.

Envié un mensaje donde di mis datos y explique mi problema ( pude escribir un texto resumido en ingles describiendo el problema en breves palabras y después lo chequee en el traductor de google y tenia un solo error lo cual no es malo ara mi por lo menos).

Bueno espere que en algún momento alguien lo leyera "no sabia cuando claro". pero para mi agrado todo salio bien y me respondieron después de un rato  :D  ESE ES GOOGLE :D.

en el correo me indicaban que la cuanta ya estaba habilitada :D

bueno baje la aplicación de google app y la instale la ruta para descargarla es la siguiente :

http://googleappengine.googlecode.com/files/GoogleAppEngine-1.5.5.msi

Una vez instalado hay que pi char en file new aplication :


Colocamos el nombre de la aplicación que creamos en google app engine y le damos la ruta donde almacenarlo. esto nos creara los archivos necesarios para realizar un Hola Mundo :D

después vamos a edit preferences y realizamos la siguiente configuración :


Con esto lo seleccionamos y pinchamos Run. y nos montara un server de desarrollo en el localhost.

después seleccionamos el proyecto y pinchamos en browser y nos aparecerá la página como está quedando.

bueno eso por hoy y espero en estos días dedicarle más tiempo.

SL2