I never studied much into making something hacker proof. Basically, if there's any difference between what the player's computer knows, and what they know, that's one level of hacking possible. This level is almost impossible to detect.
Then there's the player's computer sending erroneous information to the server. This is easily avoided by enforcing the database to be self-consistant. I'd put packet interception here too. Anything where the player is modifying the communication between client and server without using the client.
Then there's the level where hackers aren't even using the client anymore, and are directly logging into the database and altering values. This is also the most destructive, and the area I've done the least amount of thinking, let alone research.
I have never liked the massive part of the MMO. I'll admit it's probably the selling point for most other people, but I absolutely detest being an anonymous no one in a game. If I wanted to be an anonymous no one, I'd play my real life. :D
Here's my list of things I'd want in a perfect MMO:
1. No spawning of anything. All items, monsters, etc. are in a closed system. Monsters must be born from another monster. Items must be crafted by someone or something. Ore must run out eventually and permanently. Merchants that run out of lychestra blue cannot sell lycestra blue untill they get some more from either an NPC or PC. "Ruined" crafting materials must turn into something else. Burned down forests must not regrow if there aren't any seeds to regrow from. Speaking of which, even trees must grow from seeds, and eventually die themselves.
It is a simple enough request, harder in the implementation, especially in trying to balance the game in a massive world so one player can't ruin the experience for everyone else. Which is why I'd propose not balancing the game, and letting people be griefers if they want. Let them destroy the world if they want.
2. Everyman a place to live, and solitude. Every PC needs a "home" they can go to. Other people need to be able to follow them to their home, and random strangers need to be able to stumble upon this PCs home.
Anyway, that rule applies to the plot of land. As part of #1, houses must be built from lumber and steel. That's not an easy amount of work, and takes time and/or money.
3. Everyman a Hero or villain, ie: no enforced anonymity. Every PC in the world has a part to play. Not even a side kick part, but an active part. I don't mean letting PCs fight in wars, I mean the PCs are declaring wars. Web games are better at this than other types.
If I'm a griefer and want to destroy the known world, I should be theoretically able to. It shouldn't even be terribly impossible.
A subset of this is that the game developers have no absolute control over the course of the game. Nor should they try. Two sides are battling? Good. One side is almost totally destroyed? Fine. Don't interfere. The world has run out of trees? It's some sort of Easter Island Apocalypse? Too bad, so sad, that's what you get. Plant a truffla tree.
That's not to say the DMs can't interfere, just that they shouldn't try to guide the course of the game if the players want to go another way. Don't artificially try to balance things. Some things are more powerful than others. It's just how things are.
In essence: No T-Rex's in the field. (If that reference passed over you, then you must not be as nerdy as I :P)
Another subset of this is that a player can play a no one if they want. Let them take over an NPCs job. It's sometimes relaxing to play a farmer and farm some food.
From these three rules I'd like to see a game be made. They're simple enough, but how to accomplish them? There are alot of problems.
What if the players absolutely destroy the world? Reset the server and let them do it again? Give them the tools to rebuild?
What happens if you get too popular? Are we really going to have room in our world for 50 heroes? Too many special people and no one's special.
I think you see the point.