Jump to content

  • Log In with Google      Sign In   
  • Create Account


Trevanian

Member Since 30 Aug 2011
Offline Last Active Aug 25 2013 04:17 AM

#4976818 being realistic

Posted by Trevanian on 05 September 2012 - 07:59 AM

You can make anything if you have enought time and are brave enought, a single man made http://www.eternal-lands.com/, so yes, you can make big things with SDL, just don't forget that making a game is a long race, if you run too fast but get tired after first 5 minutes,... then better forget about it...


#4856172 (MM)O(RPG) database design

Posted by Trevanian on 01 September 2011 - 01:08 AM

Looks like I've been trying to walk over the flames..

There is no simple solution for everything, if you are a programmer the "good" solution is the one that works to you, I told before I don't like MS Access, but guess what? I have used it many times and I still use it to store data for simple projects, not every project needs a true SQL database...

I have made just ONE project using a socket server, I used it to give support to a certain amount of users (300+), the users connected to the server that had a temporary memory structure to store the users connected but almost all the data was stored into a MS SQL server (user/passwords pairs, user info, logs, messages), it was only a MS Desktop Engine, but when it was filled with all the users it only used about 1% processor time from a single-socket Pentium 4...

I made the project in vb.net and I assure you it is not my "favourite" language, not at all, but hey!, is a tool that meet the needs of the project...

BTW: You have a project pretty advanced, I have seen the web and it looks good, you have applied the rule "divide a huge project into smaller parts, if they are still too big, divide again", it is a very good aproach making it easy to code, debug and well actually finish the project.



(I don't know if all this rambling would be useful for WIXNER)


#4855809 (MM)O(RPG) database design

Posted by Trevanian on 31 August 2011 - 03:48 AM

I lied then ;)

There are many ways to achieve data redundancy, for me the best from all them is hardware RAIDs, SCSI, SAS, FDI all them are good, if your project becomes real big you need a cluster (cloud) of computers of course, then you have many ways to achieve this, with a big amount of cheap computers in a farm, with a super computer like an HP 9000, SUN Fire 15k and up with many processors and plenty of GBs RAM, but I Agree the best protection against real disasters is Tape backups , altought in my opinion NAS solution to make backup is an emergin way to provide backups, I have seen that in a few companyes , but it does not solve the "fire in the datadenter" problem....

Now there are two kinds of disasters that can strike in a project.

-Physical failure:If a disk fail, and you've got a raid 1 /5/6/10/50 whatever then no problem, same for PSUs, if you've got a cluster and a computer turns off ok no problem..
-Logical failure: those are the real BAD ones, what if a virus get into all your computers? what if you made an update that did what it was not suposed to do? what if you used a SQL DELETE FROM without the WHERE statement? you can f**k your database real good, and the worse is that you will f**k the database in all your RAID disks, your cluster nodes and basically anything redundant...

Ok, if MYSQL does not provide an automated way to make the backup you will loose data from the time there was the last backup, know what? I have been in many, many companies repairing servers, and nobody made more than a backup every day (at night), even goverment with a SUN FIRE 15K with 80 64-Bit Ultra sparc processors and a Hitachi cabin for data Storage.... sad but true...

Before anybody blames me, want to make a backup every our? every minute? it is ok!you wont loss date at all but performance will drop when doing it, that's why companyes make backups at night when nobody is working on the computers..

JB


#4855620 (MM)O(RPG) database design

Posted by Trevanian on 30 August 2011 - 02:45 PM

I think I've been greatly misunderstood, maybe it is just my natural language It's not English...

I'm not telling that Oracle or MS SQL Server are bad products, absolutely! but the truth is that a novice user needs help, so ok tell that the better and more expensive database is the best suite for an starting project... come on boys!

Am I telling lies if I assume that NOBODY here is a member of a company like Blizzard, EA,etc??, a good advice is use something you can afford, use standards, write a dll to access the database and later if your project turns into a success and it really gives you good earnings, buy the BEST DB, the BEST Clustered hardware, buy whatever you need to make it ever better...

JB


#4855516 (MM)O(RPG) database design

Posted by Trevanian on 30 August 2011 - 10:37 AM

It is if you've ever tried to run an actual global network that someone actually based on it. Then it's "interesting" approach to replication, distribution and failover starts to make it look a teensy bit plasticy-primary-coloured-made-in-chinaery.


Hello

I know what you can do (and the cost) with both MS-SQL server and with ORACLE, because I'have seen both working:

-MS-SQL Server: Buy two 2008 server licenses (+hardware), buy the SQL server with clustering services...

-Oracle:Buy a SUN Ultra-Sparc server + Solaris an then pay the license for Oracle...

Both sollutions are strong, granite solid Katie, but know that? Our friend is STARTING to design a MMORPG he/she is not a big team so I don't think he/she is looking for a sollution that will cost THOUSANDS of dollars /euros, probably just want a database that does the work, and does it in a cheap way..

I am making my own MMORPG and I won't use the "big" SQL databases...


#4855346 (MM)O(RPG) database design

Posted by Trevanian on 30 August 2011 - 01:56 AM

Hello Wixner

I see you speak about Account Database and Character Database, obviously you just show schemas, not a real database definition, you still don't know how to do that, and here many people is showing you which data your game should include, that's good, you can take decissions based in that but what will give you a real idea about what you should include is to write actually the code, let me explain you that, you can't just write a "generic" database for every single mmorpg because every game is diferent, not only player characters, but NPCs, spells, items, maps, monsters...

Where is all that data defined in your database?

I'm a programmer and I've finished many projects using DBs, using Interbase, MS SQL server and MYSQL, using various programming languages: Pascal, c++, php, visual.net and the best advice is to stop thinking in an abstract way!, think in real things: the objects in the game , How will you handle them? , how will you store them?, then you will realize that you need a DB Table with X fields, the same for monsters, characters and everything else...

There are NOT GENERIC DATABASES, not for an MMORPG, not for a Game , not for any program..

I've engaged in a project to build (oh, yes!) my own MMORPG and I have already writen a draft for the DB, but i know it will change in the time I bring the game from "smoke" to "alpha" when I will start to actually test it and I will receive feedback from the testers...

BTW, mysql is not a "toy" database Wodinoneeye, a toy database can't handle millions of registry entries and GBs of info:

http://en.wikipedia.org/wiki/Comparison_of_relational_database_management_systems


...a "toy" database is something like MS Access, with it's wonderfull performance and annoying database corruption every X months.. yeah love it pal... ;)

Hope this helps


PARTNERS