Something struck me like lightning today and I'm just doing some high level thinking.
I will need to store and retrieve a ton of data. As an example, I would want to store the stats for all Pokemon cards. Players will be able to view/edit/save the stats in real time.
I wanted to get a couple opinions and examples if you've worked with a ton of data in a Byond project. Example meaning, "I used it for such and such which worked fine".
My first thought was mysql or whatever else I can get my hands on.
I just wanted to mull over the options if there are any.
Thanks,
ts
ID:151756
![]() May 27 2009, 6:14 pm
|
|
Yes, SQL and friends is the obvious first choice for handling vast amounts of data, however, I'm not sure I understand what precisely you have in mind.
You said you want people to be able to edit the card statistics. Does this mean that you will have all of the cards in the game available, players will have instances of those cards and can modify their specific instances? That is, there might be 10 types of Pikachu cards, but you and I both have our own instances of the same specific one, and we have changed something about our personal copies? If this is the case, and you need to store a copy of every single card, not just every card, then yes, you will need something that can handle all that data. If you just mean that you aren't going to make card types for all the specific types of card in the game beforehand, so that, if someone else hasn't already used a certain card (and therefor it's not known by your game yet), they have to load up a card template and enter its stats, such that each player-entered card type is reusable by other players so there's only 1 instance of each type, then no. Wow, that was a long sentence. That is, if there's only 1 card per type, it's not really a ton of data. There's only what, a few thousand cards in the game? Each card, including all its stats, should take up less than 1kB I would think. That's only a few MB. So if this is the case, you could probably just use a Byond savefile and just save the list of types of cards when the world exits and load it up when the world is loaded. Regardless of what you need though, if you want to feel cool and don't mind putting in the extra effort, just use a real database management system no matter what. ;) |
Loduwijk wrote:
Regardless of what you need though, if you want to feel cool and don't mind putting in the extra effort, just use a real database management system no matter what. ;) Supported! :D After I finally got my linux system and mysql set up and working I felt very accomplished. :p |
AJX wrote:
Supported! :D After I finally got my linux system and mysql set up and working I felt very accomplished. :p Speaking of which, a great choice is Ubuntu Server. It's easy to use and set up, and it's a LAMP server, so once it's installed you'll have MySQL, but you'll also have Apache so you can easily do a website for the game on it as well. Buy a cheapo, old computer off of Ebay and set up a dedicated PC for your game and all its needs! |
Loduwijk wrote:
AJX wrote: Yerp. I iz using Ubuntu. And I have no idea wtf LAMP means, but ok! For me I had to install Apache2 separately from MySQL, and configure them separately. So yea... I dunno what automated service you used but I wish I had it before I spent 3 hours learning how to configure them both. :p And if you are REALLY cheap, don't even buy a cheapo computer! Just run a virtual machine and install it on there! }D /win. |
AJX wrote:
Yerp. I iz using Ubuntu. And I have no idea wtf LAMP means, but ok!LAMP = Linux, Apache, MySQL, PHP Other common setups are: WAMP = Windows, Apache, MySQL, PHP WIMP = Windows, IIS, MySQL, PHP Basically, when someone says it's a LAMP server, they're referring to a dynamic web-hosting infrastructure. @TSFreaks Regardless of architecture, I highly recommend MySQL or it's cousins if you're looking at storing and accessing a lot of data in near real time conditions. I'm certain you'll have no trouble working with it but gimme a page if you need help on anything. |
The pokemon thing was just an example that resembled what I wanted to do. I'm pretty certain a db is the only way to go but I wanted to get some opinions regarding it.
Getting the db hooked up is just work for me. I'm not looking forward to it at all actually. I'm mostly excited about the things which become enabled because of it. I certainly appreciate your thoughts on the matter though. ts |
From my personal experience MySQL is your best choice.
It takes a little bit to set up, but it is well worth it. Extremely efficient in every way that I've experienced. I don't even know if there is another option.