Octubre 02, 2010, 04:15:47 PM Ultima modificación: Octubre 08, 2010, 11:10:58 PM por Delios
Necesito ayuda, quiero hacer un juego tipo RPG, y quiero q hayan rondas, como puedo hacerlas?

Disculpa mi ignorancia pero que Programa estas Empleando?
Game Maker 8 Pro?

No conozco nadie que aya hecho alg?n game con tus especificaciones (excepto en 3D),
Porque El ?nico que Genera Rondas en Un RPG es el "RPG Maker" (que es Estilo Pokemon Como referencia)

Si ya lo estas empleando RPG Maker, Mmmm Menuda respuesta Pero No podr? ayudarte.
si Estas Empleando "Game Maker 8 Pro", te recomendar?a que te pases al "RPG Maker"


Solo El Comienzo de algo Muestra Lo que realmente somos...

Uso GM8, pero por ejemplo Undead Frenzy:http://www.comunidadgm.org/index.php?topic=7038.0. Es RPG y tiene rondas(oleadas) y es eso lo q quiero.

#3 Octubre 02, 2010, 05:48:23 PM Ultima modificación: Octubre 02, 2010, 05:51:57 PM por DS
Si te refer?s a oleadas, rondas, hordas o lo que sea, pod?s manejarlo con variables, por ejemplo:
[gml]//Esta variable controla el n?mero de la ronda en la que est?s:
NumeroRonda = 1
//Esta variable controla la cantidad de enemigos que vienen por ronda
NumeroEnemigos = 10[/gml]
Entonces, supongamos que cada vez que se crea un enemigo:
[gml]|Evento de Alarm por ejemplo (o el evento que quieras) de un objeto llamado objControl|
if NumeroEnemigos > 0 {
instance_create(x,y,objEnemigo)
NumeroEnemigos -= 1
}[/gml]
Y cuando se acaben los enemigos:
[gml]if NumeroEnemigos = 0 && !instance_exists(objEnemigo){
NumeroRonda += 1
}[/gml]
Bueno, estoy un poco oxidado y no s? si el c?digo funcione, ya que no lo he probado, pero supongo que es as?  :-[
De todas formas, diganme si est? mal y corr?ganlo por favor en ese caso :D
Suerte!
Hay juegos que no se pueden hacer...
Para todo los demas existe Comunidad GM.

ORE WO DARE DA TO OMOTTE YAGARU?

Si, me refiero a eso, tu c?digo es muy bueno, lo he entendido perfectament, pero no acaba de funcionar. :-[ :'(
El problema es q en el Evento Alarm no se puede poner condiciones(if), i entonces lo e puesto en el Evento Step, pero entonces el problema esta en q se crea un enemigo sobre otro, i por lo tanto el enemigo no se mueve.

PD:Gracias por tu ayuda :), pero agradeceria si te mirases bn tu c?digo :P

Ya lo he solucionado usando
instance_create(random(room_width),random(room_height),objEnemigo);
Aunque no me convence mucho :(, te agradeceria si revisases tu c?digo. :)

[gml]if !place_meeting_(x,y,objEnemigo){
instance_create(x,y,objEnemigo)}[/gml]

y en las alarmas si se puede usar IF  :-X no entiendo lo que quisiste decir pero bueno

Este codigo esta bn, pero quiero q salgan des de fuera de la view i de diferentes puntos.

Cuando dije que en el Evento Alarm no se puede poner condiciones(if), ya se q si se puede poner, pero me referia a q en el Evento Step, justo cuando se cumple la condicion se hace la accion q le pidas, pero en el Evento Alarm no.

no pero puedes hacer que cuando se cumpla la condicion alarm[0]=1 aver si esto te sirve para hacer objetos alrrededor de la view

[gml]var xx, yy, a;
a=ceil(random(4))
if a=1{xx=view_xview+random(view_wview[0]) yy=view_yview+view_hview[0]+20}
if a=2{xx=view_xview+random(view_wview[0]) yy=view_yview-20}
if a=3{yy=view_yview+random(view_hview[0]) xx=view_xview-20}
if a=4{yy=view_yview+random(view_hview[0]) xx=view_xview+view_wview[0]+20}
while(!place_free(xx,yy)){
a=ceil(random(4))
if a=1{xx=view_xview+random(view_wview[0]) yy=view_yview+view_hview[0]+20}
if a=2{xx=view_xview+random(view_wview[0]) yy=view_yview-20}
if a=3{yy=view_yview+random(view_hview[0]) xx=view_xview-20}
if a=4{yy=view_yview+random(view_hview[0]) xx=view_xview+view_wview[0]+20}
}
instance_create(xx,yy,object1)[/gml]

WOW que largo pero no tenia tiempo para buscar otro metodo.

Muchas gracias  :D creo q ya esta solucionado.


#11 Octubre 03, 2010, 07:39:48 PM Ultima modificación: Octubre 03, 2010, 07:44:27 PM por Delios
Todavia no esta solucionado, aun hay algunos enemigos q aprecen sobre otros y entonces no se mueven. :'(
Y otros se salen de la room.

creo que eso no deveria de pasar pero por si acaso cambialo por esto
[gml]var xx, yy, a;
a=ceil(random(4))
if a=1{xx=view_xview+random(view_wview[0]) yy=view_yview+view_hview[0]+random(200)}
if a=2{xx=view_xview+random(view_wview[0]) yy=view_yview-random(200)}
if a=3{yy=view_yview+random(view_hview[0]) xx=view_xview-random(200)}
if a=4{yy=view_yview+random(view_hview[0]) xx=view_xview+view_wview[0]+random(200)}
while(!place_free(xx,yy)){
a=ceil(random(4))
if a=1{xx=view_xview+random(view_wview[0]) yy=view_yview+view_hview[0]+random(200)}
if a=2{xx=view_xview+random(view_wview[0]) yy=view_yview-random(200)}
if a=3{yy=view_yview+random(view_hview[0]) xx=view_xview-random(200)}
if a=4{yy=view_yview+random(view_hview[0]) xx=view_xview+view_wview[0]+random(200)}
}
instance_create(xx,yy,object1)[/gml]

#13 Octubre 03, 2010, 07:56:31 PM Ultima modificación: Octubre 03, 2010, 08:14:33 PM por Delios
 :-[
Ahora mejor, pero aun asi en menos ocasiones pero siguen apareciendo alguno sobre otro(solo una parte) y por lo tanto no se mueve. :'(

ah si lo olvide tus objetos dev?n de ser s?lidos o si no quieres que sean solidos cambia el place_free por un place_empty