Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mensajes - Silver_light

46
Juegos en desarrollo / Re:Ilíada Espacial
Mayo 24, 2015, 12:06:21 AM
Finalmente corregiste el problema del boss infranqueable?  :(

La verdad creo que no deberías agregar otro elemento nuevo, sino re-balancear los que ya están. De la manera más conveniente, por ejemplo, el colocar atributos internos a cada enemigo para que sean más o menos resistentes al tipo de elemento con el que se los ataca. Como así también al daño que provocan estos al jugador, dependiendo de qué elemento lo esté dañando.
Así en todo caso no sería un problema el tener que agregarle más vidas a los jefes de cada fase sino que sean más resistentes en cada caso. Pero claro, con una cuota razonable de vida extra adicional para reforzar. Es decir, que no se lleve un aumento neto de , no sé 10.000 de vida, sino una cuota más las resistencias por cada elemento.

Saludos! :D
47
Juegos en desarrollo / Re:Ilíada Espacial
Mayo 23, 2015, 12:58:55 AM
Buen juego por cierto :D

Me gustó bastante aunque al principio un poco frustrante el hecho de que todo se vea tan sucio lleno de disparos y no puedas moverte casi por ningún lado XD
Lo que si debo criticar :-[ es la curva de dificultad, que no se respeta de hecho. Puesto que en las primeras fases los niveles, por la cantidad de disparos es bastante complicado, pero luego matar a los Jefes finales resulta de lo más sencillo , claro, si guardas 4 o 5 bombas rojas y las detonas al mismo tiempo  XD XD XD
Como sea, luego, de eso, los jefes de los niveles 5, 8 y 13 se volvieron, personalmente, muy complicados comparados, claro con lo que fueron el resto que tomaron menos de 1 minuto en morir :o

De todas formas me gustó el hecho de que hayan muchos disparos, items volando por todos lados... si, digamos un relación de amor/odio con el diseño del juego XD
   Estaría bueno que tuviera un punto de guardado o algo por el estilo, sino es medio engorroso tener que pasar toooodo de nuevo.

Cuántas fases tiene? Llegué hasta la Nº14 o 15, creo... la cosa es que me pasó algo de lo más molesto :-X y es que mi nave se quedó pegada entre una lluvia de disparos. *adjunta una imagen* Que como se vé, la nave se me quedó en enfriamiento podemos decir, por lo que no se podía mover. Entonces la nave me disparaba, perdía vida, se repetía la fase de enfriamiento, y no me podia mover...me sacaba toda la vida, se enfriaba de nuevo, no me podía mover... y me seguían disparando y enfriaba y... y... y.. y.. así hasta que perdí todas las vidas :(
Estimo que es un bug XD

Después de todo creo que es un buen juego, aunque claro, no sé si todos lo jugarían por la elevada curva de dificultad con la que comienza :P supongo que eso podrías mejorarle. :D

Saludos!


48
Si, son equivalentes. Esos operadores se utilizan en Pascal si mal no recuerdo. Y si mal no recuerdo, también, lo habían hecho para que programadores que conocieran dicho lenguaje pudieran usar de manera más natural el GML.

Al igual que la sentencia "then", que se utiliza en Pascal luego de los if's, no tiene ningún uso especial. Al igual que utilizar o no punticomas al final de una expresión, no provoca errores. Es para que programadores tanto de C/C++ (que utilizaran !=, =, ; ) y programadores de Pascal (que utilizaran, <>, := , then) pudieran trabajar de manera más natural.

Es más, si no me equivoco  XD se podían hacer estrucutras de este tipo:

[GML]
if (a <> b) then
begin
   ... // codigo a ejecutar
end
[/GML]
que equivaldría a :
[GML]
if (a != b)
{
   ... // codigo a ejecutar
}
[/GML]

Todo porque es notación del lenguaje Pascal, como digo :P
Y que si tienen una función meramente especial, pues no, funcionan de igual manera.  :D
49
Juegos completos / Re:Space Invaders PC
Mayo 16, 2015, 06:34:57 PM
Cita de: 3dgeminis en Mayo 15, 2015, 09:33:44 PM
Para comenzar como base del juego esta bien, a simple vista no vi errores y el control responde como debe.
Ahora las quejas :P (es broma), la primera y mas importante, que paso con los enemigos? , despues de matarlos me quede un tiempo esperando y nada, supongo que vieron lo bueno que era matandolos y cancelaron la invasion 8) , aun siendo una demo tendrias que haber hecho que siguieran saliendo enemigos hasta cansarse. Falto el enemigo que se lanza en picada como kamikaze, y com tal siempre muere jeje. Con respecto a la nave cuando te moves a la derecha se pasa un poco del borde.

(Un ultimo comentario  personal respecto a los controles, podrias hacer tambien controles para los que usan la mano izquierda para mover y derecha para disparar.)

A lo mejor, el objetivo era aparentar no saber jugar para luego encontrarte de que los propios marcianos desarrollan su propia inteligencia Artificial. (?
   La verdad no me había dado cuenta de que no volvía a comenzar XD

Cita de: Marth en Mayo 15, 2015, 10:56:22 PM
Una vez lo terminas, el juego no sale ningún mensaje de victoria y sigue el juego a pesar de no haber más enemigos.

Si, es lo que comenta 3DGeminis más arriba  :P

La verdad no esperaba que lo comentaran xD ya que es un pseudo clónico de Space Invaders.
No creo que solucione los errores, ya que solo era de prueba, jaja, para ir calentando (?)

Se les agradece igualmente que lo hayan jugado  :D
50
Juegos completos / Space Invaders PC
Mayo 15, 2015, 07:27:20 PM

Space Invaders PC


Plataformas

GM5

Una especie de Clon del Space Invaders, que hice para practicar un poco.
No tiene dificultad gradual.



Adjunto

51
Ah, ya vale, muchas gracias!  :D
Lo pude solucionar con los parents :D
52
Preguntas y respuestas / Mover varias instancias
Mayo 15, 2015, 03:53:12 AM
Vale, hace mucho que no uso Game Maker y ando con problemas XD
Estoy haciendo un Space Invaders, o un intento de ello :-[
Me encuentro en un problema y es que quiero mover todas las instancias de marcianitos hacia los costados y no se muy bien cómo hacerlo.
El problema es que no son todos instancias de un solo objeto sino son varias filas de instancias de objetos. Me explico, son 3 filas de marcianitos cada fila son instancias de un determinado objeto.

Cómo podría hacer?  :D
53
General / Re:¿que estudiamos o de que trabajamos?
Abril 28, 2015, 07:29:39 PM
Supongo que todos lo que están acá quieren vivir del desarrollo de videojuegos, pero es tan solo una mera corazonada (?)  :D

Yo estudio para Analista en Sistemas, claro para tener un trabajo y por aparte, estudiar alguno que otro lenguaje para desarrollar aplicaciones (y claramente, juegos) para diversas plataformas.  :D Porque claro, no puedo viajar hasta Capital, hospedarme y luego pagar la Universidad para estudiar desarrollo de Juegos :(

De todas formas, hay que perseguir el sueño Jajaja
54
Preguntas y respuestas / Re:Duda A*
Marzo 30, 2015, 07:56:58 PM
Alguna vez hice un ejemplo para calcular caminos con grids, para un juego estilo maze, a lo mejor te sirve:

http://www.comunidadgm.org/index.php?page=verdescargas&accion=descargaD&download_id=2305

Saludos!
55
Bien, tengo un código para crear gravedad para mi personaje plataformero, el código es el siguiente:

[GML]
if (!place_meeting(x,y+vspeed,plataforma_normal))
{
    if (gravedad == 0)
        gravedad = cant_gravedad;
       
    vspeed += gravedad;
}

if (place_meeting(x,y+vspeed+1,plataforma_normal) && (vspeed >= 0))
{
    if (vspeed != 0)
        vspeed = 0;
   
    gravedad = 0;
   
    while (place_free(x,y+1))
        y += 1;
}
else
{
    if (place_meeting(x,y+vspeed+1,plataforma_normal) && (vspeed < 0))
        vspeed = 0;
}

if (!place_free(x,y))
    move_outside_solid(90,10);

if (vspeed > 12)
    vspeed = 12;
[/GML]
donde la variable gravedad esta definida en el personaje como una variable y cant_gravedad es una constante con valor unitario.

Luego los objetos que conforman las plataformas y las paredes son puramente sólidos sin contener ningún código de colisión.
Mi problema está en que a veces mi personaje se queda trabado por la parte de abajo y no sé porqué :-[

Gracias de antemano!
56
Preguntas y respuestas / Re:Bala con movimiento
Marzo 30, 2015, 05:16:42 PM
El código va en el objeto jugador, puesto que es desde allí ,donde queremos que se cree.

El codigo vá así:

[GML]
if !instance_exists(bala_jugador)  // Si no existe el disparo o que es lo mismo, el objeto "bala_jugador"...
{

disparo= instance_create(x,y,bala_jugador); //entonces creamos un disparo y almacenamos el ID del objeto para luego hacer referencia a este.

with(disparo) // Aqui al utilizar "with(bala)" hacemos que el siguiente código entre llaves se ejecute para el disparo creado anteriormente.
{
hspeed =10; // hacemos que dicho disparo se mueva
}//Aqui se cierran las llaves, por lo que cualquier código siguiente no valdrá para el disparo sino para el jugador.

[/GML]
57
Cuando utilizas font_add_sprite(spr, first, prop, sep), el parametro first debe ser el caracter con el que comienza el sprite, si están bien ubicadas las subimagenes, debería quedarte algo así:

font_add_sprite(spr_font, ord("!"), 1, 1);

Eso por poner un ejemplo.
58
Preguntas y respuestas / Re:encriptar archivos .ini
Marzo 27, 2015, 10:55:04 PM
Mi mensaje de hace 5 años me da pena y vergüenza  XD XD XD Dios




Vamos a lo que en verdad importa. Bien, lo que sucede es que al parecer el método que lee bytes desde el archivo no mueve el indicador (por lo menos no en Studio) , por lo tanto hay que hacerlo manualmente. Por ello es que se produce el efecto de repeticion de encriptado, por ejemplo, el mensaje quedaría: "oggoggoggoggo..."

Lo que hay que hacer, es mover manualmente el indicador, para ello solo bastaría crear un contador dentro del script y moverlo de a 1 por cada repeticion del ciclo:

[GML]
var file,read,keypos,key, pos;

if !file_exists(argument0) then return (-1);

//define all variables.
keypos=0;
key=argument1
read=0
file=0
pos = 0;

keypos=0;//make sure you are at the beginning of the key.

file=file_bin_open(argument0,2);//open the file, using basic binary functions

file_bin_seek(file,0);//make sure you are at the start of the file

//This is where you actually encrypt the file. Notice the actual encryption is only a few lines long.
repeat(file_bin_size(file))
{
    pos++; // Incrementamos nuestro contador con cada iteracion

    read=file_bin_read_byte(file);//read the chosen byte. Doing so will also advance to the next byte.
   
    file_bin_seek(file,file_bin_position(file)-1);//go to the byte before, returning to the byte that you just read.
   
    file_bin_write_byte(file,read ^ ord(string_char_at(key,keypos)));//write the encrypted byte where a byte was previously.It will advance to the next byte
   
    file_bin_seek(file,pos); // Esta nuevo linea es la que hace la magia!
   
    keypos+=1;//go to the next character in the key to encrypt with.
    if keypos>string_length(key) then keypos=1;
};

file_bin_close(file);//close the binary file when finished.

return (1);//returns 1 to confirm it worked.
[/GML]

Espero que te sea de ayuda  :)
59
Preguntas y respuestas / Re:encriptar y desencriptar
Marzo 26, 2015, 09:17:47 PM
Son 3 modulos independientes para encriptar, es decir , cada uno cumple con ecriptar la cadena y son independientes.
Los 2 primeros se encargan de encriptar cadenas de texto, mientras que el tercero y último es para encriptar archivos .  :)

El primero sirve para hacer una encriptacion sencilla del tipo: Dar una cadena y devolverla encriptada
Es decir:

[GML]
var str, str2, i, t;
str = argument0;
t = floor(string_length(key) / 2);
str2 = '';
for(i = 1; i <= string_length(str); i += 1) {
    str2 += chr(~ord(string_char_at(str, i)));
}
return str2;
[/GML]
un ejemplo de llamada sería:
[GML]
cadena = "Soy una cadena";
cadena_enc = script0(cadena);
[/GML]
Aunque viendo al script detenidamente tiene algunos datos incorrectos, como el uso de t y de key que no tienen uso.


Luego, el segundo script es parecido solo que encripta una cadena a base de otra.

[GML]
var str, str2, i, key, incr;
str = argument0;
key = argument1;
str2 = '';
increment = 0;
for(i = 1; i <= string_length(str); {i += 1; increment += 1}) {
    if(increment == string_length(key)) increment = 0;
    str2 += chr(~ord(string_char_at(str, i)) + ord(string_char_at(key, increment)));
}
return str2;
[/GML]

un ejemplo de llamada sería:
[GML]
cadena = "Soy una cadena";
cadena2 = "cadena para encriptar";

cadena_enc = script1(cadena,cadena2);

// o bien

cadena_enc = script(cadena, "llave");
[/GML]
Aqui también hay un error, ya que se declara incr pero se usa increment, nada grave.
Lo que hace es encriptar la primera cadena a base de la segunda, leyendo caracter por caracter de ésta ultima y encriptando la primera.

[GML]
/*
*   Simple file encryption by PlasticineGuy
*   file_crypt(filename)
*/
var buffer, buffer2, fp, i;
buffer = "";
buffer2 = "";
fp = file_bin_open(argument0, 2);
while(file_bin_position(fp) != file_bin_size(fp)){
    buffer += chr(file_bin_read_byte(fp));
}
file_bin_close(fp);
for(i = 1; i <= string_length(buffer); i += 1) {
    buffer2 += chr(~ord(string_char_at(buffer, i)));
}
fp = file_text_open_write(argument0);
file_text_write_string(fp, buffer2);
file_text_close(fp);
return 1;
[/GML]

EL algoritmo presentado hace lo siguiente:
1-abre un archivo especificado
2-carga todo el archivo en una cadena y lo cierra
3-encripta la cadena
4-vuelve a abrir el archivo especificado
5-vuelca el contenido encriptado anteriormente

Si mal no tengo entendido, usando el script una vez sobre el archivo lo encripta, mientras que si se lo vuelve a utilizar, lo desencripta.

Saludos :D
60
Propuestas y soporte / Re:GIA-5 (Concurso)
Marzo 23, 2015, 05:22:46 AM
Re - Bienvenido, Elvis? :o

Me hizo gracia el hecho de, que re-leyendo el post nuevamente, la respuesta de Luckylandia queda bastante fuera de lugar (?

Me alegro que hayas podido solucionar problemas tan pesados.  :-X Creo que todos, alguna vez, tenemos que reacomodar nuestra vida, ya me ha pasado. Pero ánimo!  :D




A lo mejor participe en esta GIA se haga de manera oficial o no, ya que nunca participé en ninguna... a lo mejor no perdí el toque como participante competente, Jajaja No te cras  XD
Bueno aunque de hecho no supe de que iba la temática original. ???