Since I decided to close the game for the remainder of beta testing, I decided to go ahead with a little downtime and replace the backbone of the game. After almost 12 years I'm moving off MySQL in favor of a new database engine. It's scary stuff just like last year when we moved off managed hosting out on our own and I had to learn a lot of new stuff. The unknown! Skeery! hehehe :D
We'll be moving from MySQL to MongoDB. Mongo isn't a relational database. It allows for a new way of storing the data as objects that will make it easier for me to work with on the back end and the frontend both. I won't have to do a lot of monster cool queries anymore to load data and I will be able to finally move to Object Oriented models for the core of the game. That will make working with the data a lot easier in the game scripts. A lot. Bunches.
It's a little bit of a learning curve, because it works completely differently, but so far it has been very intuitive. I got the Mongo server set up and running yesterday and today I learned how to add and retrieve data and loaded all the user data into it already. It went surprisingly fast (pulling the data from MySQL was the actual bottleneck there). I'm actually surprised how fast I'm picking it up. It's pretty darned cool and I'm actually liking it.
Since I have to touch all the scripts anyway to get things going with the new front end UI client, I can just as easily convert them to use the new models instead of pulling the data from MySQL. It will all make later maintenance on the game and later expansion of the game so much easier too.
So with changing the very backbone and the core getting changed too, the game is going to be a whole new game. And with that, there will be surprises when you come back! *squeee* I can't wait for you all to see them.