Jump to content

A simple way to stop gold selling spam mail


LegitBrit

Recommended Posts

A simple way to stop gold selling spam mail, Please give us the option to click a button to only accept mail from friends and/or guild members, if you're not on my friends/guild list you can't send me mail. It's such a simple easy thing to do, STO does it and it's a very effective way to prevent unsolicited mail.
Link to comment
Share on other sites

Not simple from a SQL statement point of view. You're making multiple hits to the database just to bring up your mail.

First, the query has to bring up you.

Then a query has to run against the database for your friends list.

Then another query has to run, using that list to scrub any email you get not on that list

...all without also removing in-game system-generated mail.

 

Opening up your mail would take a lot longer, and be exponentially longer for the number of friends on your list * the amount of mail items you have.

 

It can be done, and they could write the entire code over one cup of coffee, but I'm not sure you'd appreciate the performance hit.

Edited by xordevoreaux
Link to comment
Share on other sites

ok, I'd rather have a little bit of mail lag if it means I stop getting spam mail and the only people taking a hit would be the gold sellers, it seems like a little bit of inconvenience for a lifetimes worth of peace, and let's be honest the only in game mail you're likely to receive is from the gtn at later levels, just straight trade with friends and guild members, if they have the time to code in 50 million companions you'll never use than they can easily implement a privacy mail function.
Link to comment
Share on other sites

  • 2 weeks later...
and then we will have problem how to receive the credit mails from individuals that bought our stuff from GTN

 

 

 

Ermm...the mails from the GTN are from the server, my idea has nothing to do with the GTN , The GTN handles all the transactions and mails, nothing to do with individual players. You didn't think your reply through much did you?

Link to comment
Share on other sites

Not simple from a SQL statement point of view. You're making multiple hits to the database just to bring up your mail.

First, the query has to bring up you.

Then a query has to run against the database for your friends list.

Then another query has to run, using that list to scrub any email you get not on that list

...all without also removing in-game system-generated mail.

Not necessarily when you open your mail. In fact, when you open your mail is the worst imaginable time to do it, but not because of any visible performance hit that might happen.

 

No, imagine the weirdness that you'd see: Bing, you have new mail. Open mail droid or a mailbox. No new mail because it was from a stranger and got purged. Or a weird weird weird message about mail from a stranger having been purged / bounced.

 

No, the time to do it is when you send mail *to* someone. System-generated mails (inventory overflows, GTN results, NPC letters, etc.) ignore this check, of course. The in-game mailer checks (on the server side) to see if the sender is on the recipient's legacy, and if not, on recipient's friend list (pretty cheap query(1)), and if not, in the same guild (order of evaluation TBC - 'same guild' should probably come before 'he thinks I'm a friend').

 

(1) None of those queries is expensive, unless the database is spectacularly badly designed, in which case we would see other problems. And we don't *know* absolutely whether it is SQL or something else. Yes, I agree, it probably is SQL, but I wouldn't want to rely on it. I previously worked as a programmer at a large supplier of financial information services, and while they *had* lots of SQL databases, the most important and most frequently consulted information stores were NOT SQL at all. (They weren't modern "NoSQL" either because they were much too old for that.)

Link to comment
Share on other sites

×
×
  • Create New...