This question is rather old but my Idea of how to handle it is as valid as it was asked as it is today. If you're using a relational database you need to reduce the load on it so this idea should help. Store all public info on a local DB on each client system as well as in the servers DB. Store all tables with items on the client database. Instead of the client looking to the server when you mouse over that weapon for stats, the client just checks the local database for stats. The server has its own database for pulling stats when calculating and just forwards damage and health remaining to the clients. Worst case with this idea is that everyone can see the stats to all weapons if they manage to get into the clients database. it doesn't matter though cause even if they change the values, the database values on the server are what does the calculating in the game.