Both suck terds. BNET isn't like single player mode. World layouts change because games aren't permanently stored like they are in single player mode. Say you use maphack, it shows you were the monsters are -- even if the game doesn't show you it (like behind a closed door). When you add teleport to the ability to instantly see the entire map and see it at a range normally not visible to your character (light radius), then you are being unfair in all aspects. And if you are on one of my games, I'll remove your character using my NPS (see above posting). I hate hack users and my main goal is to remove them from the game or make it so they waste tons of time rebuilding and regathering everything. I run a list on my program too, so once you are tagged on that account, you will always be "lagged out", "5 minute ban", and "deleted" from bnet. So far I have 4 account IDs on my list.
As for bots. A Bot is nothing more than writing some program to have it move your mouse and click your mouse keys. It makes it unfair to those playing the game legitmently because they are mainly used for 3 purposes: quickly level a guy without you using the guy, magic find, and display those annoying advertisements for websites selling serves to get diablo2 items for someone (selling BNET diablo2 items basically).
Personally I think BNET should configure their server to check to see if a command to do something with a character (one of the game guys) is generated from the actual mouse and/or keyboard, and delete (yes I said DELETE) all accounts (yes I said ALL ACCOUNTS that were accessed by that CD Key ever) tied to the CD Key that is doing it, and ban the CD Key awaiting an e-mail response from the person as to why they should be allow to reuse their CD Key on BNET.
By doing that it does two great things. One, it reduces server storage usage. Two, those people are usually the ones who use hacks, bugged items, or run those selling websites. Three, less accounts with bugs means better server performance with less lagging.
If everyone didn't know, BNET servers lag when people using bugged items. It corrupts BNET server memory sectors which eventually forces certain BNET servers to have to be rebooted.
Duping. You really want to know how the experts dupe? Its actually easy. Write a C++ object oriented program that uses the diablo2 LOD DLLs which generate the items by sending a command packet to a BNET server containing the action the BNET server needs to do. This is undetectable, BNET is too stupid not to check I guess, as of now. But this is how those "experts" do it.
I'll break it down a little first. First, everything in Diablo2 is action driven. What that means is that the diablo2 program is reactionary and will do something when told something happens. Like create item when monster killed. Learn how to tell the server that you killed a monster with 1000 mf and the monster you killed is say hell baal, and you got yourself a way to produce tons of unique/rare items. All perm because server is the one that is telling the DLLs to do it).
Duping takes it one step further. By writing the C++ program and using the objects stored in the Diablo2 LOD DLLs to do the work, you can make the game think you are "picking up an item' off the ground that is in your inventory and repeat 38 times.
Why are dupes unperm? Because dupes created this way don't have an item id tag that is generated when the server actually does the request. Diablo2 then doesn't automatically remove the item, but puts it in the temporary status (unperm). Personally I think BNET wants unperm dupes because I think they think it makes people want to play their game more because of people being able to trade for items and such. Personally BNET, these issues are EASY fixes (I'm a great C++ programmer in DLLs). Fix is easy, just adjust your DLLs to check if the server is generating them. If it is not, don't use it. Most People cannot write a program to fake the OS into saying one program is another. Most OS aren't that easy to fool.
Oh "heads up", I wrote my own Network Packet Sniffer (NPS) that looks at network packets being sent to and from the server I'm connected. Each packet is unencrypt using the unencrypt function found in their DLLs whenever another person dies, enters, or leaves the game. This is not a hack program. A hack program requires changing of the original program. No this is a network packet sniffer which is not current illegal according to BNET online playing aggreement I read. Since my program isn't changing the way the BNET servers work, it isn't hacking.
Wonder what I use it for? I use it to teach mean and evil people a lesson. People who townguard and naked kill (NK) people just to get their gold to repair an item or gamble with it. For these people I sell their items off, and leave the gold in their stash (as much that will fit) so they always have plenty of gold to "repair" new stuff or gamble with.
I also use it when I find another person using a hack program which is way easy to identify. For those people they lose their entire account. When I am on, they will lag out for a second, be unable to reenter for 5 minutes, then find out their account has been deleted from BNET. This is borderline hacking, maybe. But these people so deserve it.
And these people doing these things is the reason why I wrote this program in the first place. To take out all those types of people who "ruin" the game for others like myself.
I don't mind telling you this because this is all I use it for. I hate jerks and hack users who use it to get an unfair advantage, and if BNET won't stop them, and I know I have reported plenty of them to them, then I will. I like to play Diablo2 to find new items or runes legitmentally to create rune words. I never trade, and only use what I find that way I know they are 100% legit. I think people ruin the game when they use hacks, dupes, and such.
Oh my guys suck in the game, I won't say otherwise. I hear it all the time. They are not even near as good as some I have seen, but I love to play them none the less. I love their look, their abilities, and their kick buttness in the game. I have seen the PvP characters that kill other players but can't kill a monster because it has immunity to their one type of attack which is all they use. It makes me laugh.
But it makes you wonder how did they get up there. Because other people, their friends, rushed them to it. That's why I think BNET should just not allow someone already completed a difficulty to return to that difficulty period. This would kill grushes (a guy below lvl 20 teamed up with someone able to finish the baal quest, but gets the baal quest even if they haven't done the ancients quest). I would jump up and down with glee.
I've seen people I helped out come back and nk me without giving it second thought. That's why now I laugh at someone when he/she crys "HELP ME PLEASE" or "DO YOU HAVE ANY WAY POINTS I CAN HAVE". I always tell them "FIND IT YOURSELF" or "IF YOU CAN'T GET THERE ON YOUR OWN YOU ARE NOT READY TO FIGHT HER/HIM AND MOVE ON".