• Hey Guest! Ever feel like entering a Game Jam, but the time limit is always too much pressure? We get it... You lead a hectic life and dedicating 3 whole days to make a game just doesn't work for you! So, why not enter the GMC SLOW JAM? Take your time! Kick back and make your game over 4 months! Interested? Then just click here!

Development Does Runescape by Jagex, use a database to manage their Grand Exchange for their game?

I used to play a game called Runescape by Jagex, and they have a really elaborate list of items ( that I call goods ) that players can trade ( or not ) on their market system called the grand exchange. Its like a stock market of goods that you can buy and sell. Well I wanted to know, if they are using a database to manage the prices, record the quantities of their goods, as well as remember the history of their price changes to show how each good has increased or decreased in prices in the past?

When I played it long ago, Jagex had a feature for Runescape ( on a separate website listing ) where you could see a listing of all the goods ( actually player tradable items ), with a feature where you could select a good, see a line graph showing how each good goes up and down in the past history of that specific item. That design idea was probably one of the fewest impressive things about that game that I liked.

I dont know if the idea of using a database has ever been used for a game, in that application.

This brings me to the question, can you design a database to use with a game designed with GMS, for the same application of managing prices and good quantities for a online or offline game?

I have no idea if you you can integrate something like a make-shift ODBC ( for Microsoft Access ) into a GMS game to do queries, on a windows system. It might be possible on the Linux Ubuntu version of GMS with MySQL, but I dont use that license to know if it can or cant be done. And if it has been done with GMS, then the question is - if anyone has made an GMS asset for that purpose?


*note : creeping featurism and software bloat is defined on the website called FOLDOC :
creeping featurism
software bloat
 

NightFrost

Member
Well sure. In an online game the client would just need to throw some API calls across the interwebs to the server and render the returned data. The biggest problem in a popular MMO would be the amount of data that piles up, so the DB would need to be designed in a very efficient manner or the queries will start turning slooooow when you have millions of data points to search across. In an offline game (that is, as singleplayer game) the amount of data would be much smaller, you wouldn't generate individual goods transactions but just handwave some daily aggregate effect as your economy simulation. Not sure how many players would be keen on a game that requires loading, installing and running an SQL service to play, so you'd just write the market history into files and read to memory at game start. And maybe cut it at thirty days or something, so there will never be bloat issues.
 

rIKmAN

Member
Not sure how many players would be keen on a game that requires loading, installing and running an SQL service to play, so you'd just write the market history into files and read to memory at game start. And maybe cut it at thirty days or something, so there will never be bloat issues.
If it was a single player game the best option is to use SQLite as @chamaeleon mentioned, no need for any SQL server / services as it's all run locally.

There is already a good SQLite extension for GMS, Windows version can be found here but it's also available for Mac, Linux, iOS and Android.
It's the fastest database system out of all I tested with GMS2 (pre v2.3) and by a fair margin - I used a database of ~100k records to test with.
 
Top