Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Recomendadme

Iniciado por Warchief, 10 de Octubre de 2004, 05:33:39 PM

« anterior - próximo »

Warchief

 Saludos.

Tengo un objetivo bien claro y necesito que me aconsejéis sobre el tema.

Estoy buscando una "abstracción 2d" (sí, ya se que por el foro ya se ha preguntado, pero soy incapaz de recuperar el hilo por más que busco) (¿A lo mejor necesito consejos sobre como buscar?  (nooo) ).

Vayamos más directamente:
Supongamos que tengo que hacer un ajedrez 2d. Busco un motor o librería tan sencilla que me evite tener que pelearme con gráficos, etc, puesto que lo que más me interesa es la lógica del juego y la IA. Es decir, me basta con poder:
- Cargar imagen
- Pintar imagen (x,y)
- Capturar ratón
(No me importa ensuciarme las manos con C++; es decir, que no busco un GameMaker, pero no descarto motores con lenguajes de script). Lo busco lo más sencillo que exista (porque la parte que tengo que hacer jodia es la IA): paso de pegarme con gráficos, música e input.

¿Quizá lo que busco se llama Allegro?
¿Y si es isométrico en vez de 2d?
¿Y si además viene con doc en español? (no tengo problemas para leer inglés, pero la materna, es la materna).
¿Y si quiero poder hacer la lógica con Script (pe LUA?)

Gracias y perdón por repetir un tema tan trillao.

PD ARGGG: He olvidado decir que ANSI C please, que seguramente necesitaré que rule en Linux, pero quiero desarrollar en Win.

Warchief

 ANSI C means portable, jeje, la costumbre, he de abandonar C de una vez.

Warchief

 Bueno, cuanto más navego más me doy cuenta de que Allegro puede ser lo que buscaba, y que hago el idiota buscando otra cosa.

Cambiémos pues, el asunto del hilo (comentarios serán bienvenidos en cualquier caso).

¿Que opinais de Stratagus ?
Parece interesante, pero no hay doc ninguna, ni ejemplos, ni nada.

La cuestión que se me planteó al poner el hilo era si existiría alguna cosa parecida para juegos por turnos, pero con algo de documentación, no sólo un par de juegos hechos.

Sacrifai

 Joder  (genial) , le voy a incar el diente a stratagus.

manko

 Hola, no se si entendi bien:

quieres aprender una pequeña libreria para graficos en 2d y pusiste el ejemplo de un chess, o realmente te vas a poner con un ajedrez?

Si realmente es un ajedrez lo que quieres programar te recomiendo el interface Winboard ( doc en ingles , busca el enlace que se encuentra rápido). Pero es muy sencillo de usar solo tienes que enlazar la salida de tu prog al estandar de los mensajes que recibe el winboard. Y el te crea el tablero , mueve, te deshace movimientos etc... tu desde tu codigo solo tienes que pasarle los mensajes (muy sencillo)

Yo tengo hecho un motor de ajedrez y uso esta interface, si quieres mas info pide.

Hasta luego.

Warchief

 Gracias por la respuesta, manko;

En realidad era un ejemplo. Es un juego de estrategia por turnos con celdas hexagonales y un par de sprites como tropas, etc.

De momento he empezado con allegro y ya sé pintar polígonos  (ole)

En realidad es un PFC de IA, por lo que los gráficos me importan más bien poco, así que de momento me peleo un poco con allegro.

Aún así sigo abierto a otras recomendaciones.

Para que nos hagamos una idea, es como www.wesnoth.org (pero en sencillo, muuuuucho más sencillo ;)).

CoLSoN2

 como no es para un proyecto comercial, PTK te saldrá gratis y es genial
Manuel F. Lara
Descargar juegos indie  - blog sobre juegos indie y casual
El Desarrollo Personal.com  - blog sobre productividad, motivación y espíritu emprendedor

manko

 valla que casualidades, estoy desarrollando ahora mismo justo un modulo para juegos de tablero hexagonal por turnos con la libreria allegro.

Tengo una clase tablero que representa un tablero hexagonal con los metodos:

   Tablero(int tamLado);
   Tablero(int Ancho, int Alto);
   void iniciar(char* fichero);
   void iniciar(int columnas,int filas);
   
       void dibujar(BITMAP* dest,Punto origen);
   
       void resize(int tamLado);
   void resize(int Ancho, int Alto);
   
        Punto getTam();

   Punto mapear(Punto casilla);
   Punto mapearInverso(Punto posicion);
   
   int* verticesCentro(Punto casilla);
   
   void set(Punto casilla,int valor);
   void setPosicion(Punto posicion,int valor);
   
   Punto movimiento(int direccion,Punto origen);
   void mover(int direccion,Punto* casilla);
   void desmover(int direccion,Punto* casilla);
   Punto* posiblesMovimientos(Punto origen);
   bool enRango(Punto casilla);

   void setOcupada(Punto Casilla);
   void setFree(Punto Casilla);
   bool ocupada(Punto casilla);

   Punto tamCasilla();

Al que si le pasas un archivo de texto sencillito en plan...

s = water.bmp
p = mountain.bmp
a = river.bmp

sssssssss
ssppapps
ssppapss
sssppsss
sssspsss

te dibuja el tablero hexagonal entero. Ademas las funciones de mapeo Casillas <--> pixeles es muy util para el uso del raton.

Buendo esta clase te puede ser muy util si la quieres te la paso. Ademas tengo implementadas ya bastantes cosas sobre pool Piezas a colocar, moverlas por el tablero, pathfinder etc... aunq supongo que eso es lo que te gustara hacer a ti.

Pues nada lo dicho, me dejas tu mail y te envio la clase Tablero.

Un saludo

Warchief

 
Cita de: "CoLSoN2"como no es para un proyecto comercial, PTK te saldrá gratis y es genial
Tiene buena pinta, le echaré un vistazo aunque Currently supported systems : Apple Mac OS X ( Carbon ) & Microsoft Windows ( Win32 ); y creo que Linux es casi necesario para mi proyecto.

Lo has probado? Qué tal de tutoriales, ejemplos? Es suficiente lo que hay en esa página?, porque el foro estaba poco animado. Es fácil? (vs allegro?)


Cita de: "manko"
valla que casualidades, estoy desarrollando ahora mismo justo un modulo para juegos de tablero hexagonal por turnos con la libreria allegro.
Buendo esta clase te puede ser muy util si la quieres te la paso. Ademas tengo implementadas ya bastantes cosas sobre pool Piezas a colocar, moverlas por el tablero, pathfinder etc... aunq supongo que eso es lo que te gustara hacer a ti.

Joooños, sí que es casualidad. De momento sí que la quiero hacer yo (ya he tomado ideas de tu interfaz XD), pero si me estanco o el proyecto zozobra, es posible que te la pida para echarla un vistazo, ya que como dije el proyecto es la IA, así que cuanto antes nos quitemos los gráficos mejor.


Gracias a ambos.






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.