Ver la versión completa : [Ayuda] Lenguaje de programación para juego en windows
Va, la eterna pregunta, llevo diez mil millones de años para ponerme y ya el aburrimiento puede conmigo. Lo voy a hacer, voy a intentar hacer un juego un poco complejo, un paso más allá de mi Wartricks (http://wartricks.blogspot.com) mezclado con el Dofus Arena (http://www.youtube.com/watch?v=yvEqFQAse8E).
Conozco un poco de las bases del juego, manejo la programación pero me falta práctica y sufrir problemas reales.
Qué me recomendáis:
a/ C++ con SDL: La opción más clásica y más vista.
b/ Java a pelo: Se que se puede, da portabilidad simple pero es un coladero de memoria. Inútil a medio plazo.
c/ LWJGL (http://lwjgl.org/): Es meterle OpenGL a Java y unas pocas cosas más. Poca documentación por lo que he visto :(
d/ Pygame: la opción a pero con patines. Inútil a medio plazo.
e/ C++ con OpenGL: con esto no duro ni una semana, sospecho. He empezado con el manual básico y dan por supuestas muchas cosas.
f/ Juego en Flash: con todo lo que se ve por newgrounds parece que se pueden hacer juegos gráficos, buenos y de calidad. Y pega mucho con la idea que tengo en mente.
g/ HTML/PHP/Javascript: Sólo por preguntar.
h/ Móvil: J2ME, Android, iPhoneSDK. De J2ME tengo algo de experiencia, y fue HORROROSO incluso con las librerías de la empresa. Android me vendría bien pero no se como anda de librerías para juegos, para iPhone sería ya demasiado.
i/ Otros: Los makers, Fenix y tal...no me mola porque no es un lenguaje real real del todo.
DarkDijkstra
20/04/2009, 17:09
Yo te recomendaría XNA con C#...
Cierto, cierto, cierto, ese se me había olvidado y eso que tengo manales, el SDK y algunos ejemplos ya precompilados.
te recomiendo el libro que tiene Anarchy y ademas esta bastante barato, o la revista "solo programadores" esta haciendo una serie sobre programación de juegos con XNA.
DarkDijkstra
20/04/2009, 17:18
El libro que tiene Anarchy tiene muy muy buena pinta... a mi me tiene que llegar un día de estos de Amazon.uk... me está bien empleado por no mirar las novedades de HG a diario XD
Yo creo que hoy por hoy es una gran opción, ya que sin perder nada de la flexibilidad (obviamente no es un "gamemaker") que te da un lenguaje de programación, te facilita enormemente mucho del "trabajo sucio" (sonido, sprites, 3d...) y te permite concentrarte en lo que propiamente es "el juego"
Explícame porqué Fenix no es un lenguaje real del todo y cosas como PHP, Pygame o Flash si xD.
Creía que esta idea quedó en el pasado, pero veo que no...
Anyway, si lo que realmente te apetece es divertirte yo elegiría Flash, a mi el AS 4 me parece cojonudo y fácil.
te recomiendo el libro que tiene Anarchy y ademas esta bastante barato, o la revista "solo programadores" esta haciendo una serie sobre programación de juegos con XNA.Fixed
Explícame porqué Fenix no es un lenguaje real del todo y cosas como PHP, Pygame o Flash si xD.Fenix efectivamente es un lenguaje, pero con un propósito muy específico, tipo Pascal, que ayuda a aprender pero da malas costumbres. Pygame es SDL para Python, y Python es un lenguaje que aunque sea una capa de abstracción sobre C++ o Java (según la versión) se puede considerar independiente. Con PHP y Flash he patinado un poco, cierto :p
Re-fixed by Propeller: no te pases de listo.
Fenix efectivamente es un lenguaje, pero con un propósito muy específico, tipo Pascal, que ayuda a aprender pero da malas costumbres. Pygame es SDL para Python, y Python es un lenguaje que aunque sea una capa de abstracción sobre C++ o Java (según la versión) se puede considerar independiente. Con PHP y Flash he patinado un poco, cierto :p
Entonces, según ese criterio, Visual Basic no es un lenguaje de programación? Bien que lo usan aplicaciones de gestión...
Y las malas costumbres se cojen si se quiere. Yo he programado en Pascal y en Basic y no iba poniento "Gotos" porque si.
Por cierto, no es saltarse las normas ese "fixed" diciendo que en cierto lugar se puede obtener de forma fraudulenta?
Si te decides por Action Script 4 te puedo recomendar luego un libro cojonudo orientado a juegos.
Si te decides por Action Script 4 te puedo recomendar luego un libro cojonudo orientado a juegos.
Tu dilo, que aun estoy por decidirme. De XNA ya he visto que Microsoft ha puesto docu a mansalva en el entorno, on el libro ya redondeo.
Entonces, según ese criterio, Visual Basic no es un lenguaje de programación? Bien que lo usan aplicaciones de gestión... No me iba por la rama de la funcionalidad sino de la gramática o similitudes con el resto de lenguajes, por así decirlo. Todos son lenguajes de programación, si.
Y las malas costumbres se cojen si se quiere. Yo he programado en Pascal y en Basic y no iba poniento "Gotos" porque si.No me refería a esas malas costumbres. Me iba más a que los que aprenden en Java no saben nada de punteros y memoria, los de Pascal del viejo tienen problemones con pasos por valor, referencia y las funciones. Los de Basic por lo poco que se no parece ni un lenguaje de programación de bajo nivel como C o Pascal, parece más un ensamblador dopado :p
Es que no me acuerdo exactamente del título, luego te lo digo.
^MiSaTo^
20/04/2009, 17:36
Si realmente quieres dedicarte a los videojuegos, ponte con C++ que es lo que se usa de verdad ;)
Re-fixed by Propeller: no te pases de listo.Un poco estricto ahí, Propeler, pero se acepta la crítica.
No me refería a esas malas costumbres. Me iba más a que los que aprenden en Java no saben nada de punteros y memoria, los de Pascal del viejo tienen problemones con pasos por valor, referencia y las funciones. Los de Basic por lo poco que se no parece ni un lenguaje de programación de bajo nivel como C o Pascal, parece más un ensamblador dopado :p
Bufff....
Yo empecé precisamente a programar con Pascal, y no tengo el mínimo problema en paso de parámetros por valor o referencia y mucho menos con las funciones. Esas cosas existen en Pascal también. Y lo de que Basic parece un lenguaje ensamblador... en fin...lo que hay que leer xD
^MiSaTo^
20/04/2009, 17:41
Bufff....
Yo empecé precisamente a programar con Pascal, y no tengo el mínimo problema en paso de parámetros por valor o referencia y mucho menos con las funciones. Esas cosas existen en Pascal también. Y lo de que Basic parece un lenguaje ensamblador... en fin...lo que hay que leer xD
Completamente de acuerdo. Yo también empecé en pascal.
Si realmente quieres dedicarte a los videojuegos, ponte con C++ que es lo que se usa de verdad ;)
De todas maneras, según para que plataforma te quieras especializar, yo le daría un vistacillo al tema de XNA :)
^MiSaTo^
20/04/2009, 17:42
De todas maneras, según para que plataforma te quieras especializar, yo le daría un vistacillo al tema de XNA :)
Hombre yo no se como está el XNA, pero la 360 se programa con C++. Me refiero al SDK oficial ;)
Por supuesto lo mío sólo era un consejo.
Ñuño Martínez
20/04/2009, 17:44
Llego tarde, pero yo te recomiendo Object Pascal + OpenGL + OpenAL + [biblioteca para controlar el tiempo, las entradas del usuario y la comunicación por red].
Si queréis saber por qué, pues leeros esto (http://www.gameartspain.es/wiki/doku.php?id=programacion:pascal).
Hombre yo no se como está el XNA, pero la 360 se programa con C++. Me refiero al SDK oficial ;)
Por supuesto lo mío sólo era un consejo.
Con XNA puedes programar para la XBox 360, para PC y para Zune (fuente (http://www.hardcore-gamer.net/tienda/product_info.php/products_id/8327)).
Y para desarrollar en XNA no es obligatorio el C++ :)
Otro link de interes:
http://creators.xna.com/es-ES/
Bufff....
Yo empecé precisamente a programar con Pascal, y no tengo el mínimo problema en paso de parámetros por valor o referencia y mucho menos con las funciones. Esas cosas existen en Pascal también. Y lo de que Basic parece un lenguaje ensamblador... en fin...lo que hay que leer xD
Yo también empecé por pascal y he ido rozando con la mano el resto, y lo de Basic lo se de lo poco que he leído que no han sido diez líneas seguidas y no veía más que GOTOS y LOOPS.
< - >
Con XNA puedes programar para la XBox 360, para PC y para Zune (fuente (http://www.hardcore-gamer.net/tienda/product_info.php/products_id/8327)).
Y para desarrollar en XNA no es obligatorio el C++ :)
Otro link de interes:
http://creators.xna.com/es-ES/
Pero XNA sólo funcionan dentro de un sandbox y aún está por explotar en condiciones por los profesionales, ^Misato^ se refiere al SDK oficial y a los juegos del Live Arcade y demás.
^MiSaTo^
20/04/2009, 17:53
Pero XNA sólo funcionan dentro de un sandbox y aún está por explotar en condiciones por los profesionales, ^Misato^ se refiere al SDK oficial y a los juegos del Live Arcade y demás.
Sí, me refería al SDK de desarrollo oficial. Vamos a lo que usan las empresas de videojuegos ;)
Pero vaya que aprender C# tampoco es malo ;)
Ñuño Martínez
20/04/2009, 17:55
Y para desarrollar en XNA no es obligatorio el C++ :) Exacto. También puedes utilizar Pascal (XNA puede accederse por .Net + Delphi puede compilar para .Net). (Sí, yo insisto, ¿algún problema? :p)
Yo también empecé por pascal y he ido rozando con la mano el resto, y lo de Basic lo se de lo poco que he leído que no han sido diez líneas seguidas y no veía más que GOTOS y LOOPS.
Y también existen los bucles While, If, For, ... al igual que el resto de lenguajes. Por lo que el programar mal es simplemente culpa de los malos programadores (o de los que querian optimizar mucho). Porque Pascal también tiene gotos y son perfectamente evitables.
Wild[Kyo]
20/04/2009, 17:57
Yo me estoy mirando también XNA porque se pueden hacer barbaridades. Además, que es el futuro. Si lo logras controlar, trabajo no te va a faltar.
Ñuño Martínez
20/04/2009, 17:57
Pero vaya que aprender C# tampoco es malo ;)
Y C, C++ y java tampoco son malos para aprender. [Ahhh]
Con razón hay tanto mal programador suelto por ahí (no lo digo por nadie de aquí, que conste).
^MiSaTo^
20/04/2009, 17:57
Y C, C++ y java tampoco son malos para aprender. [Ahhh]
Con razón hay tanto mal programador suelto por ahí (no lo digo por nadie de aquí, que conste).
Yo al final te prendo fuego xDDDDD
(es coña :P)
Ñuño Martínez
20/04/2009, 18:01
Yo al final te prendo fuego xDDDDD
(es coña :P) Cuando tu quieras. ;)
(¿Es coña? :llorosa:)
Ahora en serio, me pongo malo cada vez que leo/oigo/me dicen que C o uno de sus derivados (C++, Java, C#, D...) es bueno para aprender. Eso es como decir que pilotar un Boeing-747 es bueno para aprender a volar. :loco: <--- Aquí debería ir una carita haciendo el movimiento de "Estáis locos".
^MiSaTo^
20/04/2009, 18:03
Cuando tu quieras. ;)
(¿coña? :llorosa:)
Ahora en serio, me pongo malo cada vez que leo/oigo/me dicen que C o uno de sus derivados (C++, Java, C#, D...) es bueno para aprender. Eso es como decir que pilotar un Boeing-747 es bueno para aprender a volar. :loco:
Yo para aprender SIEMPRE recomiendo pascal. Pero si se quiere dedicar a los juegos, lo que se usa es C++. Si se va a dedicar a la gestión, que aprenda Java o .NET...
Y así podemos seguir aumentando la lista de condicionales.:brindis:
Ñuño Martínez
20/04/2009, 18:07
Yo para aprender SIEMPRE recomiendo pascal. Pero si se quiere dedicar a los juegos, lo que se usa es C++. Si se va a dedicar a la gestión, que aprenda Java o .NET...
Y así podemos seguir aumentando la lista de condicionales.:brindis: Ah, bueno, si matizamos las cosas cambian. :brindis:
Yo para aprender SIEMPRE recomiendo pascal. Pero si se quiere dedicar a los juegos, lo que se usa es C++. Si se va a dedicar a la gestión, que aprenda Java o .NET...
Y así podemos seguir aumentando la lista de condicionales.:brindis:
Los telecos empiezan (y acaban) aprendiendo en Java. Y en los institutos se da Visual Basic en plan consola...flipo.
^MiSaTo^
20/04/2009, 18:13
Ah, bueno, si matizamos las cosas cambian. :brindis:
Nah no cambian. A la hoguera! xD
Hombre Pascal a mi me parece interesante para aprender a programar. Pero es cierto que en el mundo real de los negocios (el que sea, ya sean videojuegos, gestion o lo que quieras) ya no se usa
< - >
Los telecos empiezan (y acaban) aprendiendo en Java. Y en los institutos se da Visual Basic en plan consola...flipo.
Lo de que se da VB depende de donde y lo de Java lo mismo. Cada uni/instituto es un mundo ;)
Los telecos de la UPM que yo sepa aprenden C ;)
danihm_moz
20/04/2009, 18:14
Los telecos empiezan (y acaban) aprendiendo en Java. Y en los institutos se da Visual Basic en plan consola...flipo.
en mi instituto "enseñaban" (mas bien aprendí yo solo) C y al llegar a la carrera y empezar con pascal le cogí un poco de tirria ( más que al lenguaje en sí a las 3 biologas que lo enseñaban)
DarkDijkstra
20/04/2009, 18:15
Dejémonos todos de redencillas sobre qué lenguaje es mejor...
...y usemos haskell
^MiSaTo^
20/04/2009, 18:15
en mi instituto "enseñaban" (mas bien aprendí yo solo) C y al llegar a la carrera y empezar con pascal le cogí un poco de tirria ( más que al lenguaje en sí a las 3 biologas que lo enseñaban)
qué otro de la UPM no? XDDD
pues que sepas que siguen ahí
< - >
Dejémonos todos de redencillas sobre qué lenguaje es mejor...
...y usemos haskell
Para que usar haskell cuando podemos usar 0 y 1 directamente!!! XDD
Nah no cambian. A la hoguera! xD
Hombre Pascal a mi me parece interesante para aprender a programar. Pero es cierto que en el mundo real de los negocios (el que sea, ya sean videojuegos, gestion o lo que quieras) ya no se usa
< - >
Lo de que se da VB depende de donde y lo de Java lo mismo. Cada uni/instituto es un mundo ;)
Los telecos de la UPM que yo sepa aprenden C ;)
Idem con la opinión de ^Misato^. Aqui he tenido compañeros teleco que aprendian C y a usarlo conjunto con assembler. Yo en cambio empecé con Java, luego tuve unos escarceos amorosos con Modula 2 y terminemos pasando a C (y yo estudié informática). Como nota, en el instituto yo daba Pascal (y digo daba porque algunas clases las impartía yo xD).
< - >
Para que usar haskell cuando podemos usar 0 y 1 directamente!!! XDD
Pues yo se podría decir que estoy en ello (y no es broma) xD
^MiSaTo^
20/04/2009, 18:18
Pues yo se podría decir que estoy en ello (y no es broma) xD
Tú si que eres un "macho" y lo demás son tonterías xDDD
Ya fuera de broma, qué estás haciendo para tener que meter binario a pelo?
Tú si que eres un "macho" y lo demás son tonterías xDDD
Ya fuera de broma, qué estás haciendo para tener que meter binario a pelo?
Nada, es por hobby. Estoy preparando una web sobre ingenieria inversa aplicada a la seguridad informatica (con emulación de código, etc.). Y aunque estoy mirando también .NET y el bytecode de Java, me tira más de siempre el ensamblador de Intel xD
Ahora en serio, me pongo malo cada vez que leo/oigo/me dicen que C o uno de sus derivados (C++, Java, C#, D...) es bueno para aprender. Eso es como decir que pilotar un Boeing-747 es bueno para aprender a volar. :loco: <--- Aquí debería ir una carita haciendo el movimiento de "Estáis locos".Hombre, para aprender a programar con el paradigma procedural/estructurado, Pascal sin duda, pero claro, es que Pascal fue creado por Niklaus Wirth (http://es.wikipedia.org/wiki/Niklaus_Wirth) explicitamente para dicho proposito, es como "programar" con pseudocódigo (solo que en inglés), y C o C++ no fueron diseñados con ese prosito en mente. A pesar de ello, creo que C y C++, si se imparte/estudia correctamente puede usarse como lenguajes de programación para "aprender a programar", no están a tan alto nivel de abstracción o cercanos al lenguaje humano como Pascal, pero no por ello resulta resulta imposible aprender de primeras y bien con ellos.
Hace poco Bjarne Stroustrup publicó un libro titulado "Programming: Principles and Practice Using C++ (http://www.research.att.com/~bs/programming.html)" con esta idea en mente, aprender a programar basandose en el paradigma de la OO, siendo C++ la herramienta usada como lenguaje para conseguirlo, al parecer tiene buenas críticas.
^MiSaTo^
20/04/2009, 18:31
Hace poco Bjarne Stroustrup publicó un libro titulado "Programming: Principles and Practice Using C++ (http://www.research.att.com/~bs/programming.html)" con esta idea en mente, aprender a programar basandose en el paradigma de la OO, siendo C++ la herramienta usada como lenguaje para conseguirlo, al parecer tiene buenas críticas.
Esque Stroustrup siempre hace unos libros cojonudos. No me extraña que tenga buenas críticas.
DarkDijkstra
20/04/2009, 18:31
Para que usar haskell cuando podemos usar 0 y 1 directamente!!! XDD
Ceros y unos!?! pero eso sería remotamente comprensible...
Mejor usar whitespace...
^MiSaTo^
20/04/2009, 18:32
Ceros y unos!?! pero eso sería remotamente comprensible...
Mejor usar whitespace...
:quepalmo::quepalmo::quepalmo::quepalmo::quepalmo: :quepalmo:
No tengo demasiada idea de programación (la que me han dado en 1º de ing. electrónica), pero estoy atento a este hilo, porque me interesa. Sobretodo el XNA, aunque para este no tienes que pagar?
Nope, sólo pagas si quieres publicar juegos en la 360.
DarkDijkstra
20/04/2009, 22:24
Bueno, realmente, publiques o no publiques, si quieres hacer un "deploy" en tu 360 (léase: probar lo que has hecho en la consola) necesitas pagar...
yo por ahora estoy currandome la logica del juego que me estoy haciendo en ratos libres en C++ puro... luego ya le implementare SDL. Por ahora lo importante es que la logica funcione a la perfeccion...
si la logica funciona (y es mucho curro), como la carga grafica del juego es minima (se podria jugar igual a 10 fps que a 60) el trabajo seria pequeño
para aquellos que tengais curiosidad, estoy haciendome un remake del sistema de batalla de Snk vs Capcom: Card Fighters Clash 1
y tiene un curro bastante considerable... no espereis nada hasta veranito, como minimo...
yo por ahora estoy currandome la logica del juego que me estoy haciendo en ratos libres en C++ puro... luego ya le implementare SDL. Por ahora lo importante es que la logica funcione a la perfeccion...
si la logica funciona (y es mucho curro), como la carga grafica del juego es minima (se podria jugar igual a 10 fps que a 60) el trabajo seria pequeño
para aquellos que tengais curiosidad, estoy haciendome un remake del sistema de batalla de Snk vs Capcom: Card Fighters Clash 1
y tiene un curro bastante considerable... no espereis nada hasta veranito, como minimo...
Fucking amazing. Siempre he querido hacer algo similar pero de momento me queda algo grande me da a mi. Implementar cada carta, todo el sistema, el editor y demás...soy muy n00b aun.
De todas formas mi idea (diseño :p) para juego anda por el mismo nivel de profundidad, pero es algo más fácil a nivel de implementación, lo he comentado con wildkyo y parece que no es mala idea.
bah, no es tan complicado si lo haces orientado a objetos...
A mi tambien me queda enorme, pero es un reto que me lleva en la cabeza desde verano, como ahora estoy enseñando c++ en la academia, aprovecho para practicar lo que voy a enseñar con esto.
este ya es la tercera version del codigo, y me parece el mas versatil de todos que me he hecho, con (por ahora) 2 objetos:
cardset: su constructor se encarga de cargar en memoria todos los datos de todas las cartas, y luego se convierte en el sistema de informacion... este objeto tendra como "friend" tapete, que le pedira info pasandole el ID de la carta. Lo mas coñazo, sin duda, insertar tooodas las caracteristicas de las cartas, que son 300
tapete: solo es el tapete de juego, donde se guardan los datos (HP y SP de cada jugador. ID, BP y si ha sido utilizada de cada carta en juego. Y los Mazos, manos y descartes de los jugadores). La lucha se hara sobre el tapete, por lo que las funciones de lucha estaran implementadas aqui
por ahora me conformo conque el juego me calcule bien las batallas
Lo del cálculo de batallas en plan lógica son dos ratos de debugueo, tres si tienes que meter el sistema de ataque conjunto. Lo que no he pillado es que hace cardset y que info de las cartas almacena tapete...explica again plis.
suponiendo que has jugado al juego y Programacion orientada a objetos:
el juego consta de 300 cartas distintas.
Por ahora estoy utilizando 2 clases/objetos, que son cardset y tapete
Cardset:
Toda la info de las 300 cartas se encuentra en una estructura
struct
{
int HP;
int SP;
int SpecialAbilityID;
char Rank;
char SpecialAbilityType;
int BackUp[MAXBACKUP];
char name[MAXNOMBRE];
char SpecialAbilityName[MAXABILITYNAME];
char SpecialAbilityExplain[MAXABILITYEXPLAIN];
}card[MAXCARD+1];
Al crear el objeto cardset se llama a su constructor, que inicializa la estructura card[] con los datos que debe tener. El objeto cardset ademas tiene unos metodos/funciones que si tu les pasas el numero de la carta, te devuelven el nombre, el HP, el SP, o lo que sea(en realidad cualquier variable de la estructura)
Por lo tanto Cardset es un simple sistema de informacion para tapete. Por eso tapete es una clase "friend" de cardset
Tapete:
el objeto tapete tiene un porron de variables, y metodos/funciones para modificarlos u obtenerlos, ya que los datos que hay que controlar (por ahora) :
HP, SP
Mazo (cartas por usar)(max 50 por jugador)
Mano(cartas en mano)(max 50 por jugador)
Descartes(cartas usadas)(max 50 por jugador)
Cartas en juego(max 3 por cada jugador, cada una con su BP y si se le ha sido asignada una accion)
como ves, hay un total de 100 cartas en juego(repetidas o no), y guardar la informacion completa de cada una de ellas en memoria es absurdo teniendo el objeto cardset, que nos provee de informacion. Solo guardo el numero de la carta...
En tapete implementare el sistema de lucha, el sistema de backup y el sistema de habilidades y de cartas de accion
ha quedado mas claro?
Si, lo que ocurre es que el Cardset no contempla los "hechizos", sólo las criaturas y eso es lo que me había despistado. Supongo que para cada hechizo habría que implementar una función distinta >.<
Si, lo que ocurre es que el Cardset no contempla los "hechizos", sólo las criaturas y eso es lo que me había despistado. Supongo que para cada hechizo habría que implementar una función distinta >.<
en realidad una sola funcion, que te elige lo que hay que hacer con un switch~case. Y iria en el tapete, que es donde se encuentra el sistema de lucha
Para que crees que esta la funcion
int cardset[x].getSpecialAbilityID();
???
XD
Cierto, sería sólo meter el HP y el SP a un negativo por ejemplo, para saber que son cartas de hechizo. Aunque yo separaría los struct de criatura y de hechizo por el tema de habilidades de cuando entran, activadas y demás...pero es una opinión.
no, porque las mismas criaturas tienen habilidades raras... simplemente, con el numero de la carta tengo suficiente, ya que las cartas superiores a 240 son todas actioncards... y al usarse no ocupan sitio en el tapete, pero las inferiores a 240 si, porque son criaturas, pero hay algunas como Guile, que deshabilitan las demas habilidades, o como Terry, que puede contraatacar aunque haya sido atacado... Y ademas, hay algunas habilidades que solo se usan al entrar, pero ya tengo preparado mi chivato de tipo de habilidad
por lo demas no hay diferencia, las actioncard tienen SP negativo,nombre, HP=0, una explicacion de lo que hacen...
aunque es una sugerencia tomar en cuenta...
Ouki, alomejor no me iba mal echarte un cable con el programita y tu le echas un ojo a mi idea a ver si es bien implementable. Lo mio es la lógica, eso está claro, pintado suX :p
lo mismo digo
hasta que no vaya bien por la ventanita negra con sus cout's...
y le hechare encantado un vistazo a tu programa... pero yo tb soy algo noob, eh?
lo mio es el ensamblador de 8051...
Ñuño Martínez
21/04/2009, 09:37
Nah no cambian. A la hoguera! xD
Hombre Pascal a mi me parece interesante para aprender a programar. Pero es cierto que en el mundo real de los negocios (el que sea, ya sean videojuegos, gestion o lo que quieras) ya no se usa Pues no se te ocurra decírselo a estos de aquí (http://www.clubdelphi.com/foros/memberlist.php?&order=DESC&sort=posts&pp=30), porque entonces sí que vas a la hoguera... :p
Y en esa página sólo hay hispanoparlantes de Delphi, que faltan los de Lazarus, Free Pascal y, sobretodo, no hispanoparlantes...
Dejémonos todos de redencillas sobre qué lenguaje es mejor...
...y usemos haskell
Ceros y unos!?! pero eso sería remotamente comprensible...
Mejor usar whitespace...
Piet (http://www.dangermouse.net/esoteric/piet/samples.html). :rever:
a mi pascal me gusta, porque es muy claro, pero no lo veo como lenguaje dominante, quiza porque es demasiado claro... hay que mantener la magia de que el profano no entienda lo que programas...
como amo ensamblador...
Pues no se te ocurra decírselo a estos de aquí (http://www.clubdelphi.com/foros/memberlist.php?&order=DESC&sort=posts&pp=30), porque entonces sí que vas a la hoguera... :p
Y en esa página sólo hay hispanoparlantes de Delphi, que faltan los de Lazarus, Free Pascal y, sobretodo, no hispanoparlantes...
Piet (http://www.dangermouse.net/esoteric/piet/samples.html). :rever:
Brainfuck (http://es.wikipedia.org/wiki/Brainfuck)
Ñuño Martínez
21/04/2009, 15:41
Brainfuck (http://es.wikipedia.org/wiki/Brainfuck)
Befunge (http://es.wikipedia.org/wiki/Befunge)
Befunge (http://es.wikipedia.org/wiki/Befunge)
Coge uno de la lista que no haya salido. (http://es.wikipedia.org/wiki/Lenguaje_de_programaci%C3%B3n_esot%C3%A9rico)
Ñuño Martínez
21/04/2009, 15:53
¡Tramposo! :p
;)
DarkDijkstra
21/04/2009, 16:24
Venga, ya, dejémonos de tonterías...
...
http://p-nand-q.com/humor/programming_languages/java2k.html
Venga, ya, dejémonos de tonterías...
...
http://p-nand-q.com/humor/programming_languages/java2k.html
Lo que me he reido con esa pagina...
Y piet me parece G-E_NI_AL
@jurk: Una pequeña idea. En vez de meter las cartas en structs, podrías meterlas en una clase, y sobrecargar el operador () para usar las cartas como funciones. En la función que evalúen el momento del turno en que están y ya se verá si el efecto es aplicable o no.
Para las cartas con efecto a largo plazo, un par de flags aquí y allá y tirando.
Yo me decanto por C++ y OpenGL sin duda.
@jurk: Una pequeña idea. En vez de meter las cartas en structs, podrías meterlas en una clase, y sobrecargar el operador () para usar las cartas como funciones. En la función que evalúen el momento del turno en que están y ya se verá si el efecto es aplicable o no.
Para las cartas con efecto a largo plazo, un par de flags aquí y allá y tirando.
Es que las cartas ya estan en una clase...
Yo tenia pensado en llamar a una funcion diciendole la carta que entra, y que en la funcion se eligiese lo que habria que hacer...
pero le hechare un vistazo a la idea...
< - >
porcierto, ahorita mismo estoy dandole a ver si hago que me calcule las luchas unidas bien...
Es que las cartas ya estan en una clase...Son un ¿array? de structs dentro de una clase que hace más cosas. Yo me refería a hacer un array de clases con una clase nueva llamada Carta que tenga de atributos los del struct y funciones relacionadas directamente con cada carta individualmente, como calcular los ataques, los daños y demás; en vez de trabajar sobre el conjunto de cartas. Así cuando uses o jueges una carta con invocar al objeto como una función cartaMay() te hace su efecto correspondiente, en vez de llamar a una función dentro de otra clase con dicha carta como parámetro.
EDIT: Si, me aburro mucho. Si, tengo ganas de hacer algo de ésto.
Son un ¿array? de structs dentro de una clase que hace más cosas. Yo me refería a hacer un array de clases con una clase nueva llamada Carta que tenga de atributos los del struct y funciones relacionadas directamente con cada carta individualmente, como calcular los ataques, los daños y demás; en vez de trabajar sobre el conjunto de cartas. Así cuando uses o jueges una carta con invocar al objeto como una función cartaMay() te hace su efecto correspondiente, en vez de llamar a una función dentro de otra clase con dicha carta como parámetro.
EDIT: Si, me aburro mucho. Si, tengo ganas de hacer algo de ésto.
Si, lo son
Por cierto, ahora, mejor explicado, (que si veo codigo lo entiendo, pero nadie me ha enseñado c++, soy bastante autodidacta) me parece que es una buena idea. Eso si, si hago esto me hago una faena, porque ahora de esta forma tendria que inicializar cada objeto independientemente...
por cierto, me parece que te gusta el SvsC CFC
Y ya me funcionan los calculos de las batallas combinadas, pero todavia no ha sido implementado en el programa... por ahora se encuentra solo, aislado, para pruebas y perrerias
(que si veo codigo lo entiendo, pero nadie me ha enseñado c++, soy bastante autodidacta) me parece que es una buena idea
Doy clase de "Iniciación cutre al C++ básico de mi facultad" en una academia, punto a favor para echarte un cable.
por cierto, me parece que te gusta el SvsC CFCPara mi después de Magic es EL juego de cartas. No hay ports ni remakes ni manera de jugar en el Magic Workstation asi que estoy deseandito que tu proyecto tenga éxito e incluso que se pudiera ampliar la base de cartas de juego y/o usar el motor para otros por el estilo.
EDIT: Ahora te hago un mensaje de como veo el código.
Doy clase de "Iniciación cutre al C++ básico de mi facultad" en una academia, punto a favor para echarte un cable.
Para mi después de Magic es EL juego de cartas. No hay ports ni remakes ni manera de jugar en el Magic Workstation asi que estoy deseandito que tu proyecto tenga éxito e incluso que se pudiera ampliar la base de cartas de juego y/o usar el motor para otros por el estilo.
EDIT: Ahora te hago un mensaje de como veo el código.
Anda, como yo! Pero yo doy c++ a un nivel bastante aceptable (punteros, funciones, clases, struct... y mas y mas) a estudiantes de Empresariales que se quieren sacar la doble titulacion (empresariales + tecnicos en sistemas de informacion)
Tambien doy Pascal ultra-basico(no pasan de las matrices bidimensionales y de las instrucciones de control de flujo)
C++ SDL / C++ OpenGL... Con esas dos opciones además el juego puede ser multiplataforma (cosa que joderías con DirectX, XNA... etc). Y vamos, como dicen por ahi, es lo que se usa a casi todos los niveles, desde homebrew a profesional... y es que es normal. A mi me gustan los lenguajes de programación, trabajo normalmente con varios tipos de ensamblador, C, C++, PHP, Ruby, Java... incluso PureData xD, pero realmente, si puedo hacer algo en C, lo hago en C...
El resto es cuestion de gustos, pero la verdad es que tienes un compilador de C desde para sistemas viejunos como gameboys o spectrums, sistemas embebidos como AVR's o PIC's... hasta cualquier mainframe con el sistema operativo mas exclusivo del mundo.
punteros, funciones, clases, struct... y mas y masEso se presupone que se sabe de la asignatura de C, a mi me toca dar todo lo de C++: el concepto de POO, sobrecarga de punteros, herencias simples y múltiples, templates, funciones objeto, clases virtuales y polimorfismo. Todo a nivel muy básico, de "vamos a probar a ver cómo va ésto con una pila" pero es lo que piden en la asignatura.
C++ SDL / C++ OpenGL... SDL es más en plan amateur, OpenGL me da que me sobrepasa bastante. En realidad intento evitar el C++ sólo para intentar evitar a mi archinémesis los punteros, y me jode infinito no tener nada de listas/pilas/colas ya implementado.
pues para estos no, y eso que han dado pascal el año pasado... y deberian controlar al menos los fors...
Eso se presupone que se sabe de la asignatura de C, a mi me toca dar todo lo de C++: el concepto de POO, sobrecarga de punteros, herencias simples y múltiples, templates, funciones objeto, clases virtuales y polimorfismo. Todo a nivel muy básico, de "vamos a probar a ver cómo va ésto con una pila" pero es lo que piden en la asignatura.
SDL es más en plan amateur, OpenGL me da que me sobrepasa bastante. En realidad intento evitar el C++ sólo para intentar evitar a mi archinémesis los punteros, y me jode infinito no tener nada de listas/pilas/colas ya implementado.
?????
http://en.wikipedia.org/wiki/Standard_template_library
?????
http://en.wikipedia.org/wiki/Standard_template_library
Me cago en la pvta Universidad Pontificia de Salamanca, en Domingo el diplomado profesor, en su mujer rusa de catálogo que es la que realmente sabe del tema, en Vidal el director de la siesta, en San Judas Tadeo y en la gente que no sabe diferenciar el haber de a ver.
Ñuño Martínez
22/04/2009, 09:02
Vuelvo a decirlo: No me extraña que me encuentre con tanto mal programador por ahí suelto.
Una cosa es que os obliguen a escribir vuestra propia biblioteca de clases/funciones para manejar pilas, colas y listas, para saber cómo funcionan, pero que no os digan que ya están implementadas tiene delito. A saber qué más cosas han "olvidado" explicaros. :rolleyes:
^MiSaTo^
22/04/2009, 09:18
SDL es más en plan amateur, OpenGL me da que me sobrepasa bastante. .
Sabías que los juegos de Id Software están hechos con OpenGL Y SDL? ;)
De todos modos ya te digo, si lo que quieres es dedicarte profesionalmente hay que aprender OpenGL y C++ que es lo que normalmente se usa.
No te preocupes Pakoito, yo cuando terminé la carrera tampoco sabía lo que era la STL, la tuve que aprender en el trabajo. Y la verdad es que si no existiera algo parecido, hace tiempo que el C++ se hubiera dejado de usar.
P.D. Si te ha gustado la STL, cuando veas la Boost (http://www.boost.org/) vas a flipar...
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions Inc. All rights reserved.