ultima03 wrote...
Non sql data storage is not reliable. (more like horrible)
Perhaps you've failed to note that both SQL and Non-SQL options are available in the above posts.
ultima03 wrote...
Non sql data storage is not reliable. (more like horrible)
kalbaern wrote...
ultima03 wrote...
Non sql data storage is not reliable. (more like horrible)
Perhaps you've failed to note that both SQL and Non-SQL options are available in the above posts.
Modifié par ultima03, 05 janvier 2012 - 06:12 .
ultima03 wrote...
kalbaern wrote...
ultima03 wrote...
Non sql data storage is not reliable. (more like horrible)
Perhaps you've failed to note that both SQL and Non-SQL options are available in the above posts.
In wich realm did I state that there is no other option than non-sql?
anyway all funkyswerve work is always so messy and unreadable, unprofessional. Now he offers a natural bioware Database system wich is just idiotic knowing that database's ugly flaws will make his system useless with a ratio of 100%. why no notice ? And, anyway, this is just a workaround that pretend that the first to log in is the legitimate owner, wich is stupid.
Modifié par ultima03, 06 janvier 2012 - 11:25 .
FunkySwerve wrote...
Lol, thanks for the eloquent defense, guys. I wonder if this is one of the clowns we banned.As far as the anti-Bioware-database rant goes, I'm not a huge fan of it either, which is why we use SQL.
Many developers out there, however, prefer the added simplicity of the bioware database, which is entirely sufficient for this purpose. Anyone who doesn't understand that development decisions like choice of database involve balancing alternatives and not black and white dichotomies, simply doesn't have any idea what they're talking about. Some developers don't want to invest the additional time required to learn how to make use of NWNX and nwnx_mysql. There are MANY legitimate, blindingly obvious reasons for such developers to opt for the native database solution - it's a simple question of zots. This is very easy to understand for anyone who's actually spent much time developing. And, in fact, you can find numerous discussions of the pros and cons out there. I've always advocated for learning NWNX/MySQL, but the simple fact is that there are a lot of devs out there that haven't, and their servers need protection as well.
As for calling my work sloppy and unprofessional....lolz. Perhaps he should post some of his own work to show all of us heathens exactly what we're doing wrong?
Some people...^^
Funky
ultima03 wrote...
Why natural bioware database is not reliable, and why no dev should offer a solution using it :
- Limited to 32 chars, brutally truncated if longer
-
Var name must be unique throughout the entire database no matter if it
is an int or a float, or a string... (if not, it will be simply crushed)
-
Getter and Setter for CampaignLocation are absolutly not reliable, the
database can get invalid if u change the area layout in the toolset (!)
-
Database grow big and fast because the data that you asked for deletion
will not be deleted but simply flagged as deleted. uglier : If you try
to modify an entry, instead of overriting it, it will make a new one and
flag this one as deleted.
- One last : it's a slow database solution.
Why
would funkyswerve or anyone serious provide a solution using this,
especially concerning a Security problem ? he should just delete it and
leave the one with mysql. Its just like the people from Avlis providing a
craft system with
bioware db, and next to it a mysql version, the first one can be thrown
directly to the bin.
Modifié par ultima03, 25 janvier 2012 - 02:40 .
Not a bug. Does not affect reliability as long as your code is correct.ultima03 wrote...
Why natural bioware database is not reliable, and why no dev should offer a solution using it :
- Limited to 32 chars, brutally truncated if longer
Does not break the database as long as you use unique var names, which you should do anyway.-
Var name must be unique throughout the entire database no matter if it
is an int or a float, or a string... (if not, it will be simply crushed)
Erm... "Getter and Setter"... If you alter an existing map, previous references to locations in that map may become invalid. This is not a bug. Properly structured code will check to ensure that locations are valid and have a fallback location in place for use in the event that a mod builder must change an existing area.-
Getter and Setter for CampaignLocation are absolutly not reliable, the
database can get invalid if u change the area layout in the toolset (!)
It is also very easy to empty the database and eliminate the bloat whenever you want.-
Database grow big and fast because the data that you asked for deletion
will not be deleted but simply flagged as deleted. uglier : If you try
to modify an entry, instead of overriting it, it will make a new one and
flag this one as deleted.
Speed does not prevent proper and stable use. It is the easiest db solution and a popular one. Not everyone wants to go through the effort and learning curve of a SQL solution. PW's which use a minimal amound of DB calls have no reason to go through the extra effort for the speed of SQL. The default DB is plenty fast for basic db management.- One last : it's a slow database solution.
Because there is nothing wrong with the default db and a lot of people use it.Why
would funkyswerve or anyone serious provide a solution using this,
especially concerning a Security problem ? he should just delete it and
leave the one with mysql. Its just like the people from Avlis providing a
craft system with
bioware db, and next to it a mysql version, the first one can be thrown
directly to the bin.
100%? Really? If you have had this issue, I recommend that you learn how to use it. It is stable for any properly programmed solution, such as this one.Why would you provide a solution concerning anything, but in this special case ; security, with the bioware db system to back it up? Are you blind? Or clueless?
You say 'not everyone wants to nwnx + mysl so ima give them a bioware bd that will get corruptd with a ratio of 100%, but it's okay for them'.
You should do some reading and maybe learn to program in Aurora and study some basic db use so that you understand the issues before you troll the threads concerning them.Blah Blah Troll Blah Trouble Blah Blah My +3 Imaginary Pixel Sword Blah Troll
Modifié par wyldhunt1, 25 janvier 2012 - 03:58 .
ultima03 wrote...
You funny guy. Just remove it, plain and simple, and leave only the nwnx-mysql version of your pretention of a fix. Or simply delete all your work. You probably already have caused a lot of trouble out there with your flaws. And if not, atleast clean that code, and clean your room.
FunkySwerve wrote...
What has Knat's got to do with anything?
WhiZard wrote...
FunkySwerve wrote...
What has Knat's got to do with anything?
Read many of Ultima's posts outside this forum (he does mention a very high regard to Knat's work). Also compare the list of Ultima's "shortcomings" with Knat's script comments concerning fixes. The two lists have a high level of correspondence.
Modifié par ultima03, 27 janvier 2012 - 03:41 .
mysql> select count(*) from pwdata where name like 'PlayernameKey%'; +----------+ | count(*) | +----------+ | 25940 | +----------+ 1 row in set (0.00 sec) mysql> select count(*) from pwdata where name like 'PlayernameKey%' and CHAR_LENGTH(val) > 26; +----------+ | count(*) | +----------+ | 95 | +----------+ 1 row in set (0.00 sec) mysql> select 95/25940; +----------+ | 95/25940 | +----------+ | 0.0037 | +----------+ 1 row in set (0.00 sec) mysql> select count(*) from pwdata where name like 'PlayernameKey%' and CHAR_LENGTH(val) = 62; +----------+ | count(*) | +----------+ | 5 | +----------+ 1 row in set (0.00 sec) mysql> select 5/25940; +---------+ | 5/25940 | +---------+ | 0.0002 | +---------+ 1 row in set (0.00 sec) mysql>
wyldhunt1 wrote...
NBDE doesn't work on Linux?
'Tis a wall I was unaware of... Although in this case, it may just be because I default to assuming that 'software' does not work on Linux...
ultima03 wrote...
Anyone can enter any account without knowing the password. Period. Now I can go and make a lot of companies laugh about this joke. If MSA has any security breach, bioware/atari must secure it as a priority or cut the entire traffic. And when the MSA falls like time to time before, after the timeout it shouldnt grant access to servers like it always did. Now you say that checking Account/Keys and password matching require client patch? And yes pretending that the first to enter an account is the legitimate owner as the workaround of that funky guy declare is completly wrong.
Balduvard wrote...
Oh, but wait, our player account protection does not actually end with the password. In order for such an attack to be successful, wherein the offender manages to log into a server before the proper owner of the account does, or tries to log into the server after the account owner has failed to set a password, they would have to possess the exact CD Key of the account owner. Why? Because in addition to offering password protection, each account is tied to a single CD Key (reference Funky's provided scripts) unless otherwise authorized (which the real account owner will immediately discover on their first login to the server, permitting a red flag to be brought to the attention of server admins to handle the offending CD/IP).
ultima03 wrote...
I will provide a MSA Workaround of my own. It will use the same principles as the funkySwerve's system but will allow unlimited CD-KEY storage, I dont quite understand why he limited it to 7 especially for the mysql version, also will protect the user against some problems that I explain in the description. Database will be NBDE, wich is perfect and I also use a tokenizer (yes both systems are from Knat, so what, he's the best) wich mimics useful function that can be found in other powerful langages not available in aurora, like arrays (set, get, push, count, explode).
Modifié par ultima03, 27 janvier 2012 - 06:54 .
Modifié par Lightfoot8, 27 janvier 2012 - 11:10 .