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 - Ashe de Freljord

16
Hola, quisiera saber, como recortar el sprite hasta los bordes.
quisiera que el limite de la imagen tocara el borde, en los Game Makers anteriores estaba la opcion "crop" pero aquí no la encuentro en ninguna parte
17
Preguntas y respuestas / Re:Ejecutar UNA sola vez
Noviembre 12, 2018, 12:55:25 PM
vecesSalto = vecesSalto+1
if vecesSalto <=1 vspeed =-10
if place_free(x,y+1) vecesSalto = vecesSalto-1     
18
Preguntas y respuestas / Re:cifrar binarios
Noviembre 10, 2018, 10:56:25 PM
No porque tenga unos y ceros es necesariamente Álgebra Booleana, es más, aqui no simplificamos circuitos, encriptamos numeros binarios.

Ahora, el algoritmo de NiuWeb basta para ofuscar una cadena binaria como podria ser "10100" a algo como "111001111111001111001" , lo cual es una salida claramente diferente de la entrada.

Aunque hizo un ejemplo muy poco útil, puesto que usó el corrimiento en las mismas posiciones que los digitos. Asi que la entrada es igual a la salida, sin embargo, podrías modificarlo para que la salida fuese distinta de la entrada:

[gml]
var a = 1;
var b = 0;
var c = 1;
var d = 1;
var e = 1;
var f = 0;

var num = (a<<8) | (b<<7) | (c<<9) | (d<<4) | (e<<3) | f;
[/gml]
Para la entrada : 101110 (64 en decimal, si se quiere)
la salida: 792 (1100011000, en binario, si se quiere).

El algoritmo cifra la entrada, claramente.



Si no es eso, entonces?
19
Preguntas y respuestas / Re:cifrar binarios
Noviembre 09, 2018, 05:02:16 PM
Cita de: Goganpis en Noviembre 09, 2018, 02:07:46 PM
Ok Ya creo que entendi por cierto en el ejemplo querias usar creo que 10+17 ya que 11+17 = 28  :-[

No es una suma bit a bit, es una comparacion con el OR logico, bit a bit.

El cifrado de NiuWeb solo usa binarios, mi ejemplo pasa de decimales a binario. En ese caso, el efecto que tiene es simplemente ir desplazando el bit, de manera que da la impresion de que "se va elevando al cuadrado".

El cifrado en realidad tiene como objetivo hacer ilegible los datos originales.
Supongamos que Kostra guarda en un archivo puro binario:
000011110001100

Esos datos se procesan segun un algoritmo usando los operadores ya explicados y obtiene
1111

Y ya está.
Ahora si quiere hacer otro cifrado, lo pasa a decimal, lo que equivaldria (1111) al numero 15
Entonces cuando algun curioso vaya  a ver el archivo INI lo abrirá y verá simplemente:

15

Que a usos practicos no tiene. Hay que descrifrarlo, haciendo el proceso inverso, para luego interpretarlo dentro del juego.

Respondiendo a la pregunta:

"Pero sigo sin entender el cifrado, quiere decir que 46 caracteres se colocaran como cifrado?"
No, 46 es el resultado de cifrar el contenido del archivo.

20
Preguntas y respuestas / Re:cifrar binarios
Noviembre 09, 2018, 03:03:18 AM
Te dejo unas imagenes que hice explicando como se opera con el bitwise or "|" y shift left "<<"
El resto del codigo de Niuweb se deduce solo.


21
Preguntas y respuestas / Re:Duda sobre image_index
Noviembre 04, 2018, 11:33:09 PM
Puedes implementarlo usando listas, e imitar el comportamiento de una baraja de cartas.

Inicialmente crearías una lista con los numeros del 0 al 9 representando las subimagenes.
Luego crearías 1 carta, leerías el valor que esta al inicio y lo descartarías. De esta menera te asegurarías de que no se vuelva a repetir.
Luego repites el proceso para los 2 objetos siguientes.


adjunto un ejemplo en base a lo anterior, simula una baraja.
22
Puedes usar la funcion choose() para elegir entre esos tres valores. Es decir, entre las constantes de colores:

choose(c_red, c_lime, c_blue)

Luego la guardarías en una variable para utilizarla en el evento draw:

color = choose(c_red, c_lime, c_blue)

y para que cambie constantemente, podrías colocarlo en un evento alarm:

EV_ALARM

color = choose(c_red, c_lime, c_blue)
alarm[0] = 20


EV_DRAW

draw_set_color(color)
draw_text(0, 0, "TABLA");




Te dejo un ejemplo para que lo analices.
23
Usa string_replace antes de dibujar la cadena:

EJEMPLO:

EV_CREATE
f3 = -23.14


EV_DRAW
var cad3 = string_replace( string(f3), ".", ",");
draw_text(0, 0, cad3);
24
Buenos scripts.

En el decodificador me parece que sería más optimo operar 10^N que hacer el ciclo N veces. Al menos las veces donde la seguidilla es de ceros.

Edit: Estuve pasando el codigo a C++ solo para practicar para la universidad XD
Y me dí cuenta que el código alarga la cadena para coincidencias de 2 y 3 caracteres, mientras que con 4 simplemente no hay optimizacion.

Ej:
a003315588800
13
a0(2)3(2)15(2)8(3)0(2)
22

Creo que sería bueno tener en cuenta esos casos en particular. 
25
Con random pocas veces vas a lograr cubrir todo el sprite, puesto que es aleatorio, es muy probable que se acumule de un lado y deje vacio el resto.

Tendrías que idearte una manera de que la distribucion fuese un poco mas uniforme. Hay varias maneras, pero es super tedioso.

Lo que querés hacer, de recorrer el sprite entero se puede hacer con un ciclo dentro de otro, pero como dije anteriormente el costo es multiplicativo m x n.
20 de ancho por 20 de alto = 400 ciclos para un sprite chico. uno de 90 x 90, 8100 ciclos lo cual es una barbaridad.

Qué estas intentando hacer concretamente?
26
Propuestas y soporte / Re:Propuesta mas que pregunta!
Noviembre 01, 2018, 04:23:11 PM
Está buena la idea.

El problema es que la gente necesita dinero y especular solo por un sueño, como que no convence a nadie.

Generalmente este tipo de propuesta fracasa porque la emocion se diluye a las 2 semanas y comienzan las excusas, es que el trabajo, es que los estudios, es que se me quemo la PC (super ultra mega frecuente en cualquier ambito).

A lo sumo podés postear un trabajo a medio terminar, que sea prometedor a ver si conseguis colaboradores.  Pero hacer un proyecto de cero... mmm, como que la gente prefiere invertir en su propio proyecto porque sabe que va a cumplir con el plazo de entrega.
27
A efectos practicos yo creo que no, suponiendo que uno tuviera un sprite de 20 x 20, si, super pequeño, un ciclo debería iterar 20 veces en horizontal por cada ciclo en vertical. O mejor dicho unas 400 veces
Lo que es mejor que se repita solo 50 veces con un repeat

a lo mejor me equivoco, pero esa es mi impresion.
28
intenta utilizar la funcion"ranzomize()" dentro del repeat a ver que sucede.
29
Preguntas y respuestas / Re:inventario que se mueve
Octubre 29, 2018, 02:00:54 PM
Podrías usar el evento "draw GUI" para no tener que hacer calculos extras y que se muestre siempre donde va la view.
30
Preguntas y respuestas / Re:Llamar estado ataque desde GML
Septiembre 12, 2018, 06:38:04 PM
El problema es que estas usando with, deberias usar if.

Para comparar cosas se hace con if:


If (jugador_1.ataque == 1){
instance_create(x, y, obj_muerte_enemigo);
instance_destroy(); 

}

Nota que si hay varias acciones a realizar deben estar dentro de { y de }