Bueno, amigos, necesito que me ayuden   :)
El caso es que estoy desarrollando un juego, se trata de algo tipo monopolio pero avanzas de casilla cuando respondes bien una pregunta, todas las preguntas están guardadas en una base de datos de MySQL, saben como debo de hacerle para sacar las preguntas de la base de datos y mostrarlas en pantalla?

Por favor, ayuden a esta pobre damisela en apuros (8
:'(  :'(  :'(

Te dejo esta pagina con dll's
http://www.gmtoolbox.com/
Hay dll's para conectar con mysql, y sino tenés la 39dll, desde ella podés correr un script php y obtener los resultados




No te recomiendo usar MySQL directo con GM, es muy vulnerable (lo quize hacer ya, pero el amigo eduardo960 me advirtió de sus inconvenientes). Como dice Texic podes usar una DLL para enviar consultas del tipo HTML a un servidor web y de ahí descargar el contenido, guardarlo en un *.txt (download_file.dll lo hace todo solo) y después podes leerlo en forma de *.ini (lógicamente lo que recibis tiene que tener estructura de archivo INI). Después para evitar inconvenientes podes borrar el archivo con file_delete("file"); y antes guardar el contenido.

Cita de: Iros en Febrero 07, 2013, 04:43:16 PM
No te recomiendo usar MySQL directo con GM, es muy vulnerable (lo quize hacer ya, pero el amigo eduardo960 me advirtió de sus inconvenientes). Como dice Texic podes usar una DLL para enviar consultas del tipo HTML a un servidor web y de ahí descargar el contenido, guardarlo en un *.txt (download_file.dll lo hace todo solo) y después podes leerlo en forma de *.ini (lógicamente lo que recibis tiene que tener estructura de archivo INI). Después para evitar inconvenientes podes borrar el archivo con file_delete("file"); y antes guardar el contenido.

a que te refieres con vulnerable? :o

Digamos que puede caber la posibilidad de que usen un programa de fuerza bruta o un simple editor para obtener algunos datos de tu juego, esos datos pueden ser los datos de la base de datos y CRASH!!!, chau base de datos. Ese es el único problema de vulnerabilidad. Y si mal no recuerdo existía un descompilador para el GM6 así que puede que hayan hecho alguno para el GM8 >.<

Cita de: Iros en Febrero 08, 2013, 04:22:58 AM
Digamos que puede caber la posibilidad de que usen un programa de fuerza bruta o un simple editor para obtener algunos datos de tu juego, esos datos pueden ser los datos de la base de datos y CRASH!!!, chau base de datos. Ese es el único problema de vulnerabilidad. Y si mal no recuerdo existía un descompilador para el GM6 así que puede que hayan hecho alguno para el GM8 >.<

Ése problema existe en cualquier ámbito que uses un gestos de Base de Datos (programación Web con PHP, C#, Java, Python, etc); y como en todos debe ser trabajo del administrador de la BD y del programador validar tanto las entradas de las consultas como las salidas para evitar esas vulnerabilidades. Para empezar evitar las inyecciones MySQL. También, en el caso de los programas para PC, se puede llegar a leer las variables que están en memoria así que los datos como el usuario y contraseña de la BD no es bueno en ese caso tenerlas en variables... o bien tenerlos en una forma encriptada... todo ese royo de seguridad informática.
Mmm... no creo que deba ser un motivo de desanimo el que haya una vulnerabilidad. Todos los métodos son vulnerables (guardarlos en txt, .ini...) siempre se pueden leer, aunque estén encriptados se puede usar fuerza bruta, así que sigue con tu proyecto :P

Cita de: knd144 en Febrero 08, 2013, 10:22:40 PM
Cita de: Iros en Febrero 08, 2013, 04:22:58 AM
Digamos que puede caber la posibilidad de que usen un programa de fuerza bruta o un simple editor para obtener algunos datos de tu juego, esos datos pueden ser los datos de la base de datos y CRASH!!!, chau base de datos. Ese es el único problema de vulnerabilidad. Y si mal no recuerdo existía un descompilador para el GM6 así que puede que hayan hecho alguno para el GM8 >.<

Ése problema existe en cualquier ámbito que uses un gestos de Base de Datos (programación Web con PHP, C#, Java, Python, etc); y como en todos debe ser trabajo del administrador de la BD y del programador validar tanto las entradas de las consultas como las salidas para evitar esas vulnerabilidades. Para empezar evitar las inyecciones MySQL. También, en el caso de los programas para PC, se puede llegar a leer las variables que están en memoria así que los datos como el usuario y contraseña de la BD no es bueno en ese caso tenerlas en variables... o bien tenerlos en una forma encriptada... todo ese royo de seguridad informática.
Mmm... no creo que deba ser un motivo de desanimo el que haya una vulnerabilidad. Todos los métodos son vulnerables (guardarlos en txt, .ini...) siempre se pueden leer, aunque estén encriptados se puede usar fuerza bruta, así que sigue con tu proyecto :P
Pero yo me puedo descargar un descompilador de gml muy fácilmente y obtener la contraseña en un 2x3 sin ningún problema.

CitarPero yo me puedo descargar un descompilador de gml muy fácilmente y obtener la contraseña en un 2x3 sin ningún problema.
Te tomarías la molestia por un juego de gm?
Yo creo que lo mejor es programar el juego, y si algún idiota se aprovecha de la vulnerabilidad, ahí cambiás el sistema. Ni que tuvieras guardados datos tan importantes en la db
Además hay un antidecompiler para gm8 y funciona de maravilla




Cita de: Texic en Febrero 09, 2013, 05:42:07 AM
CitarPero yo me puedo descargar un descompilador de gml muy fácilmente y obtener la contraseña en un 2x3 sin ningún problema.
Te tomarías la molestia por un juego de gm?
Yo creo que lo mejor es programar el juego, y si algún idiota se aprovecha de la vulnerabilidad, ahí cambiás el sistema. Ni que tuvieras guardados datos tan importantes en la db
Además hay un antidecompiler para gm8 y funciona de maravilla
Pues YO no me tomaría la melestia, pero el plan es que a quien se la tome le sea más dificíl, sobre lo del antidecompiler tienes razón, lo habia olvidado es probable que funcione aunque no es infalible, seguro que igual la puedes conseguir pero ya sería algo muy complicado, ademas no sé mucho sobre esté tema así que preferiría no discutir.

#9 Febrero 11, 2013, 06:34:03 PM Ultima modificación: Febrero 11, 2013, 07:16:06 PM por Gutic
Brunoxzx e Iros tienen razón. Yo seriamente tampoco os lo recomiendo.

Knd 144, no es igual que php porque se ejecuta en un servidor por lo que realmente es seguro (si lo montas bien, ya sabes xD).

Sin embargo con un simple sniffer podrías ver la contraseña y el usuario de la DB (hablando de GM). A no ser que esté en un servidor cifrado y GM permita autentificación cifrada con la DLL, que lo dudo.

Texic, sobre que no guardas datos importantes en la DB, ten en cuenta que podrían trastocar los datos de los demás usuarios, cosa que echaría el juego a perder. A parte de poder modificar la estructura de la DB. No se podría arreglar cambiando simplemente el sistema porque el daño estaría hecho.

Pero cómo todo en la vida, hay una solución, PinkPrincess.

Con la DLL para descargar archivos (por ejemplo la que bien ha dicho Texic, aunque hay otras más sencillas como Download Manager) podrías simular el http_get() y http_post() de GM: Studio. Si conoces PHP crea los scripts en dicho lenguaje y que tu aplicación llame a los scripts de tu servidor (puedes pasarle los argumentos de varias formas con variables $_GET por ejemplo.). Los scripts se encargarían de acceder a la DB actuando como interfaz entre la DB y tu aplicación y darían más seguridad.

En el peor de los casos el jugador podría modificar algún dato de su pertenecia, nunca a los demás, ni mucho menos tocar el sistema. Es cuestión de diseñarlo bien.

Y si van a leer preguntas, ni siquiera modificar, porque el código de php sólo capturaría los datos y los enviaría a la aplicación.

PHP es muy sencillo, aprenderás rápido si no lo conoces ya. Además, si tienes mySQL en tu servidor seguramente podrás usar php. Así que por supuesto, no te desanimes. ¡Mucha suerte!

Si bien, ningún sistema es 100% seguro xD .

¡Un saludo!

   Saludos makeros:

  ¿No se podría crear otro programa con el mismo GM que realice la función de PHP del lado del servidor?  ???

  Me explicaré:  :-[

  1*  La aplicación del lado del cliente se comunicará con otra del lado del servidor mediante mensajes cifrados. Ya saben, llave publica, encriptación, etc.

  2* Luego la aplicación del lado del servidor se comunicará con el gestor de base de datos MySQL que se encuentra en la misma PC.

  Listo, todo funcionaría sin tantos problemas de seguridad y no tienes que aprender PHP, todo sería en GML. Claro solo es posible si tienes el poder de instalar dicha aplicación del lado del servidor.  :-[

  Bueno, solo era una posibilidad... ;D


hola yo te diria que te armaras un script en php y mandes solo los datos necesarios (menos de 6000 en 24 horas)<-(solo cuenta si no tienes un vps xD) los datos los puedes preparar de la siguiente manera score logros etc en un txt pero por secciones y solo hagas el guardado en la nube cuando sea necesario no a cada rato y trata de hacer la consulta lo mas simple posible para no saturar la bd xD
El primer video juego que juego Pacman tuve buena infancia XDD

Cita de: walleta en Febrero 20, 2013, 05:54:33 AM
hola yo te diria que te armaras un script en php y mandes solo los datos necesarios (menos de 6000 en 24 horas)<-(solo cuenta si no tienes un vps xD) los datos los puedes preparar de la siguiente manera score logros etc en un txt pero por secciones y solo hagas el guardado en la nube cuando sea necesario no a cada rato y trata de hacer la consulta lo mas simple posible para no saturar la bd xD
para que aprender php???? preferible en gml,como dice ferhand,sin problemas de seguridad y facil de usar,
oh,me salío el presentador de un producto!!!
tambien pueden ayudar con eso de seguridad con un script que desarrollaron en desarrollo de scripts para
prevenir trampas y el uso del cheat engine(por ejemplo)
CREADOR DE JUEGOS GM.


- Como hacer preguntas inteligentes
- Reglamento General

HOLA COMUNIDAD,HOLA A TODOS




uso game maker 8 pro 8) y game maker studio Master Collection