GMSQL is a project that allows you to connect to an online MySQL database server using DLLs. You can log on to the server through TCP/IP or an URL, perform any kind of MySQL query and retrieve ALL supported field types as a two-dimensional array. You can even retrieve binary files and save them locally with the game!
WARNING: For advanced GML scripters with MySQL database experience only.
What can you do with these DLLs?
With enough experience, you can...
- Create simple game play counters or record other game statistics
- Create online highscore lists: insert new scores and highscores and get the top rankings directly in your game without the need to call PHP pages
- Store player statistics and characteristics such as names, logon credentials and stats
- Create MMORPGs... If you're up to it. The tools are here.
- Two DLLs that enable the MySQL database server connection
- Easy access through a GML library file
- GMSQL Console, a console tool in editable GMD format
- A manual with examples in RTF format
** Download link removed **
The DLLs seem pretty stable and you should not encounter the dreaded "unexpected error" during execution. But if you do, please show me the script.
Any questions - only about using the DLL extensions, no generic questions about MySQL please - in this topic. I appreciate any bug reports and errors or omissions in the manual.
Thanks to Nelsobra for the idea and Alasdair Forsythe for providing the online test database.
Communication between client and MySQL server databases is susceptible to hacks on Internet connections because package sniffers can intercept username and password logon information. Therefore, GMSQL is only relatively safe on LAN connections and when Game Maker is used as a server-side application only.
Use Internet client / server connections at your own risk. This security risk is related to the MySQL client library, not to GMSQL. Therefore there is nothing I can do to fix this.
Client / server connections on the Internet may only be safe if clients have registered IP addresses at the server. Refer to the MySQL manual for more information on how to set this up.
Edit: A translation from GMD to GM6 of the console example, done by homebrewpc, can be downloaded from here. Special present for anyone unable to do a conversion themselves.
Edited by Smarty, 20 August 2008 - 01:15 PM.