excess escribió:Una pregunta, ¿el GameMaker del Humble Bundle no podía exportar a OSX y Linux? Es que me suena que sí, pero ahora le he pinchado sin querer en Mac OS X para el target y me sale diciendo que necesito el módulo. Miro en About Gamemaker y tiene para Android + YYC, Windows + YYC, Windows8 (Javascript) y Windows8 (Native) + YYC.
speak121 escribió:excess escribió:Una pregunta, ¿el GameMaker del Humble Bundle no podía exportar a OSX y Linux? Es que me suena que sí, pero ahora le he pinchado sin querer en Mac OS X para el target y me sale diciendo que necesito el módulo. Miro en About Gamemaker y tiene para Android + YYC, Windows + YYC, Windows8 (Javascript) y Windows8 (Native) + YYC.
A mi me salen todos, escribe al support de yoyogames a ver que te dicen.. aunque to comprabaría que versión tienes instalada, la standard o la professional.
excess escribió:Es la Professional. Acabo de probar en Windows 10 porque en XP en la máquina virtual que probaba ayer cascaba el programa al actualizar la licencia, por si acaso... Pero en Windows 10 tampoco tengo los módulos de linux y os x...
Lo0k escribió:excess escribió:Es la Professional. Acabo de probar en Windows 10 porque en XP en la máquina virtual que probaba ayer cascaba el programa al actualizar la licencia, por si acaso... Pero en Windows 10 tampoco tengo los módulos de linux y os x...
Hola, creo recordar que ese humble solo traía el modulo para exportar a Android si pagabas la última opción, el resto de sistemas van por separado... Un saludo.
Pequadt escribió:Yo ando peleandome para crear una forma de que el mercado de mi juego genere 1 vez cada 4 turnos nuevos items para vender y con cantidades aleatorias. De momento tengo una parte funcional que va bien y puedo tirar con ello... pero he aprendido lo suficiente para saber que si sigo haciendolo como voy, va a ser un mega tocho de codigo cuando creo que con un scrip puedo crear una forma mas sencilla.
Pero claro, ya he tenido una limitacion con la que no contaba: las variables no pueden albergar nombres asi como asi. Queria que fuera tan sencillo como "tirada1=irandom(4)", despues "if tirada1=3 {p1=lana}". (lo mismo con cantidades y precio).
Asi en el mercado o en cualquier otro sitio (visitando a un vecino por ejemplo) tener productos seria tan facil como poner con un evento de draw un "scr_mercado(p1)" para que me genere un producto, "scr_mercado(c1)" para la cantidad y "scr_mercado(d1)" para el precio. No estoy al 100% seguro de que esto vaya a funcionar, pero espero que si no es asi sea parecido.
Ahora tendre que buscarme las castañas para que en el script me acepte meter palabras (en Reddit me han dicho que pruebe con "enum" y switch, pero tendre que investigar como hacerlo).
Por lo demas va avanzando bien mi juego, aunque desearia saber programar decentemente... quien me mandaba meterme en este berenjenal xDD
KristianSM escribió:Pequadt escribió:Yo ando peleandome para crear una forma de que el mercado de mi juego genere 1 vez cada 4 turnos nuevos items para vender y con cantidades aleatorias. De momento tengo una parte funcional que va bien y puedo tirar con ello... pero he aprendido lo suficiente para saber que si sigo haciendolo como voy, va a ser un mega tocho de codigo cuando creo que con un scrip puedo crear una forma mas sencilla.
Pero claro, ya he tenido una limitacion con la que no contaba: las variables no pueden albergar nombres asi como asi. Queria que fuera tan sencillo como "tirada1=irandom(4)", despues "if tirada1=3 {p1=lana}". (lo mismo con cantidades y precio).
Asi en el mercado o en cualquier otro sitio (visitando a un vecino por ejemplo) tener productos seria tan facil como poner con un evento de draw un "scr_mercado(p1)" para que me genere un producto, "scr_mercado(c1)" para la cantidad y "scr_mercado(d1)" para el precio. No estoy al 100% seguro de que esto vaya a funcionar, pero espero que si no es asi sea parecido.
Ahora tendre que buscarme las castañas para que en el script me acepte meter palabras (en Reddit me han dicho que pruebe con "enum" y switch, pero tendre que investigar como hacerlo).
Por lo demas va avanzando bien mi juego, aunque desearia saber programar decentemente... quien me mandaba meterme en este berenjenal xDD
No acabo de entender muy bien lo de no poder meter palabras.
Pero a juzgar por lo de {p1=lana}, ¿intuyo que se olvida entrecomillarlas?
Las palabras o frases (strings) siempre van entrecomilladas.
___________________________________________
#########
FATAL ERROR in
action number 1
of Step Event0
for object obj_market:
Push :: Execution Error - Variable Get 100245.wool(100046, -2147483648)
at gml_Script_scr_market (line 25) - else if e1=5 {p1=wool;}
###########
--------------------------------------------------------------------------------------------
stack frame is
gml_Script_scr_market (line 25)
called from - gml_Object_obj_market_StepNormalEvent_1 (line 2) - t1=scr_market(p1);
Pequadt escribió:Tocho
a1=irandom(5)
if a1=0 {p1="lana"}
etc
step event:
if global.season=0 [nota: es decir, el primer turno del juego y despues cada 4 turnos]
t1=script_mercado(p1) [de esta forma voy creando distintos item, y para evitar que se vendan dos veces el mismo item si t1=t2 lo repite hasta que sea disntinto.]
draw_set_color(c_black);
draw_set_halign(fa_left);
draw_set_valign(fa_middle);
draw_set_font(fnt_numbers);
draw_text_transformed(800,16,t1,2,2,0);
KristianSM escribió:Esto tiene que ser por algún fallo increiblemente tonto, porque no es normal.
Espero que lo encuentres : /
De todas formas, te recomendaría que antes de que sea demasiado tarde, cojas buenas costumbres de programación y no vicies cosas xD El formato de código es una de ellas.
Aunque creo que es más importante que a los scripts les pongas como nombre la función que hacen, y que ésta funcionalidad sea clara y específica. A la larga lo agradecerás.
Pequadt escribió:KristianSM escribió:Esto tiene que ser por algún fallo increiblemente tonto, porque no es normal.
Espero que lo encuentres : /
De todas formas, te recomendaría que antes de que sea demasiado tarde, cojas buenas costumbres de programación y no vicies cosas xD El formato de código es una de ellas.
Aunque creo que es más importante que a los scripts les pongas como nombre la función que hacen, y que ésta funcionalidad sea clara y específica. A la larga lo agradecerás.
No se que puede ser... juraria que no he tocado nada... pero es obvio que no es asi xDD
Tengo siempre siempre // que explican todo. Vamos, con la memoria que tengo mas mala no me la juego. Antes lo apuntaba todo en un documento en google drive, pero es mas facil con los //.
Pero si, los nombres de las variables que uso para crear numeros random no me los curro mucho
gokudera escribió:...
Pequadt escribió:....
var tienda = argument0;
switch (tienda) {
case 1: var devolver = "producto1"; break; //basicos
case 2: var devolver = "producto2"; break; //lujo
case 3: var devolver = "producto3"; break; //animales
case 4: var devolver = "cantidad1"; break; //mucha
case 5: var devolver = "cantidad2"; break; //normal
case 6: var devolver = "cantidad3"; break; //poca
case 7: var devolver = "precio1"; break; //barato
case 8: var devolver = "precio2"; break; //normal
case 9: var devolver = "precio3"; break; //caro
}
//Productos
if devolver == "producto1" {
var a1=irandom(5)
if a1=0 {devolver="Comida";}
else if a1=1 {devolver="Madera";}
else if a1=2 {devolver="Piedra";}
else if a1=3 {devolver="Pasto";}
else if a1=4 {devolver="Hierro";}
else if a1=5 {devolver="Lana";}
}
else if devolver == "producto2" {
var a1=irandom(3)
if a1=0 {devolver="esclavo";}
else if a1=1 {devolver="buey";}
else if a1=2 {devolver="medicina";}
else if a1=3 {devolver="vendas";}
}
else if devolver == "producto3" {
var a1=irandom(8)
if a1=0 {devolver="vaca_bebe";}
else if a1=1 {devolver="vaca_bebe";}
else if a1=2 {devolver="toro_bebe";}
else if a1=3 {devolver="toro_bebe";}
else if a1=4 {devolver="oveja_bebe";}
else if a1=5 {devolver="oveja_bebe";}
else if a1=6 {devolver="vaca";}
else if a1=7 {devolver="toro";}
else if a1=8 {devolver="oveja";}
}
//Cantidad
else if devolver == "cantidad1" {
var num;
num = (irandom(9)*10+irandom(9)+1);
devolver= num;
}
else if devolver == "cantidad2" {
var num;
num = (irandom(4)*10+irandom(9)+1);
devolver= num;
}
else if devolver == "cantidad3" {
devolver=(irandom(8)+1);
}
//Precio
else if devolver == "precio1" {
var desc, precio;
desc=irandom(8);
if desc=0 {desc=1;}
else if desc=1 {desc=1.1;}
else if desc=2 {desc=1.2;}
else if desc=3 {desc=1.3;}
else if desc=4 {desc=1.4;}
else if desc=5 {desc=0.9;}
else if desc=6 {desc=0.8;}
else if desc=7 {desc=0.7;}
else if desc=8 {desc=0.6;}
precio1=(50*desc)+irandom(9);
devolver=round(precio1);
}
else if devolver == "precio2" {
var desc, precio;
desc=irandom(8);
if desc=0 {desc=1;}
else if desc=1 {desc=1.1;}
else if desc=2 {desc=1.2;}
else if desc=3 {desc=1.3;}
else if desc=4 {desc=1.4;}
else if desc=5 {desc=0.9;}
else if desc=6 {desc=0.8;}
else if desc=7 {desc=0.7;}
else if desc=8 {desc=0.6;}
precio1=(100*desc)+irandom(9);
devolver=round(precio1);
}
else if devolver == "precio3" {
var desc, precio;
desc=irandom(8);
if desc=0 {desc=1;}
else if desc=1 {desc=1.1;}
else if desc=2 {desc=1.2;}
else if desc=3 {desc=1.3;}
else if desc=4 {desc=1.4;}
else if desc=5 {desc=0.9;}
else if desc=6 {desc=0.8;}
else if desc=7 {desc=0.7;}
else if desc=8 {desc=0.6;}
precio1=(200*desc)+irandom(9);
devolver=round(precio1);
}
return devolver;
Pequadt escribió:Vengo a consultar opinion a ver como puedo hacer esto sin variables globales:
gokudera escribió:Pequadt escribió:Vengo a consultar opinion a ver como puedo hacer esto sin variables globales:
no me hagas mucho caso pero creo que no es un problema de globales, el switch hasta donde yo se solo se ejecuta una vez (no se como funciona en GM) por lo que cuando le pases el parametro de tienda solo cogera el primer case y por mucho que cambies el valor los otros cases no los hara, si le pones un bucle para repetir hasta hacer un case de cada tipo uno de producto,cantidad y precio tampoco te funcionara porque el switch no terminaria hasta salir del bucle y cogeria el valor del ultimo case, vamos que tendrias que tener 3 variables de devolver una para cada tipo. Luego tienes el if hecho un desastre tienes que separlos por los tipos, ya que cuando se cumple una condicion ya no sigue con el resto de ifs, si devolver == "producto1" y se cumple no seguira porque el resto seran false. Otro cosa a tener en cuenta que esto suele pasar a mas de uno es que el programa no es inteligente y en tu caso por ejemplo (sin tener mas codigo no te puedo decir si sera asi o no) no tiene que saber que ese precio y esa cantidad son para ese objeto cuidado con eso para no llevarse sustos y mas teniendo randoms.
Como ya te he dicho en algun que otro comentario no se mucho de GameMaker asi que no se si esto se puede aplicar aqui, si es asi siento mucho haberte liado mas de lo que estabas.
Pequadt escribió:Buenas ^^
Justo el script es lo que si funciona,
gokudera escribió:Pequadt escribió:Buenas ^^
Justo el script es lo que si funciona,
pero porque no haces que cada objeto tenga esas variables ya definidas desde su codigo y te ahorras casi todo el switch y los ifs, me refiero a madera.cantidad = 10. asi si compras una madera y le haces madera.cantidad--; le estas restando a madera y no a una variable que controle al item madera.
Trabis escribió:Video tutorial en inglés que enseña como desarrollar un plataformas con multijugador.
Lo podeis ver GRATIS durante las próximas 24 horas.
https://www.udemy.com/make-a-multiplayer-platformer-in-gamemaker-studio/?couponCode=BLACKFRIDAYFREE2015