test content
What is the Arc Client?
Install Arc

Constructive post: How to stop bots and gold selling in MMORPGs

zaodunzaodun Member Posts: 39
edited June 2013 in General Discussion (PC)
Hi all,
I've been playing MMORPGs for... well... as long as there have been MMORPGs. And the common problem a lot of them have are gold sellers (who sell more than just gold) and bots (used by players and gold sellers). There are two simple design techniques a gaming company (like PWE) can use to shut them down permanently.

1. Consolidated Auction House Sales
Instead of each player individually selling their item for a price they decide, players simply put their items up for sale. The AH itself then takes over. It groups all items which are the same together, and decides the price based on the value of the item, and the quantity for sale. So, instead of seeing "Uber Sword X" listed 50 times for varying prices, you'd see "Uber Sword (50 qty): 56g" (buyout only, there is no bidding in this model of AH) Anyone that wants to buy an "Uber Sword" pays 56g. If you get one you don't want, you list it, and if it sells, you get 56g. The system uses a randomized queue to determine who's "Uber Sword" is sold. As quantity dwindles, the price goes up - as quantity increases, the price goes down. Yes, its simplified - but that is the price you pay (pun intended) to combat bots/gold sellers.

This this simple auction house model, you essentially shut down the kinds of pricing games, buyout/repost at higher prices, and other schemes that botters/sellers use.

2. Truly Random Placement Engine
Instead of monsters, chests, nodes, etc (aka xp or loot) being in fixed positions on fixed maps, you have to use a random placement engine to move things around. Most bots rely heavily on precise scripts which move characters fixed distances in fixed directions, or don't move at all and just spam keys which farm a node, or invoke, or whatever. By moving things around randomly, you shut down most bots immediately.

Now, they could go even further with these ideas:
3. Lock loot to a mob.
You cannot loot (whatever it is) until a specific mob is killed. i.e. no free loot. To prevent bots from scripting the killing of the mob, ensure there is nothing visual nor programmatic about the mob the loot is tied to. Worst case is the bot has to kill everything in the local area to unlock the loot, which will cut heavily into its efficiency in farming.

4. Wandering Uber Mobs
Have super powerful mobs wander every single area of the game (open areas, not instances). Have the AI of this mob be such that it gives a LONG warning to players to leave the area before it attacks. Bots, of course, can't heed the warning, remain, and get annihilated. Players just back off a bit, let it pass by, and return to what they were doing. For fun, allow groups to be capable of downing the mobs, and have it drop cool loot or just be worth a lot of XP.

5. Add bot detection scripts to the game engine
Bots move in really obvious and predictable ways. The keystroke and mouse click stream from the client using a bot is uniform and nothing like a real players key/click stream. Some very simple code can detect bots, and ban the accounts, or at least alert admins/support staff to review the activity and then ban after investigation.
Post edited by zaodun on

Comments

  • dkcandydkcandy Member Posts: 1,555 Bounty Hunter
    edited June 2013
    Don't have to read your Wall of Text as it's very easy to stop Botting/Gold Farmers.

    Do not buy from 3rd party websites.
  • vorticanvortican Member, NW M9 Playtest Posts: 367 Arc User
    edited June 2013
    1. Horrible idea. Completely defeats the point of the auction house and keeps prices HIGH for all players, not to mention wrecks the economy. Stuff changes in price all the time but having fixed price for all levels of gear limits its use and makes it unusable or pointless for players of certain levels. Further, it isn't a scheme to buy low and sell high. That's basic economics and it's a fact of life. The only bots of concern in regards to the auction house are those which are spamming resources, depressing prices to artificially low levels. Stacks of enchants and resources are going to completely unbalance the economy, but what you're suggesting accomplishes the same thing, putting some gear out of reach by players and others too cheap to be of any value.

    The rest of the comments, I don't really care about as they do not relate to producing many, many pairs of pants.
  • kaietokaieto Member, Neverwinter Beta Users Posts: 3
    edited June 2013
    1. If there aren't any bids... why have it be an auction house at all?

    2. Can be bypassed, not trivial, but it's not exactly the hardest thing in the world.

    3. That is a terrible idea. Think of what it would do to legit players.

    4. The only problem with this being that bots CAN see the warning. See #2.

    5. std::rand() is a thing.
  • cipher9nemocipher9nemo Member, Neverwinter Beta Users Posts: 0 Arc User
    edited June 2013
    GW2 auction house (Blacklion Trading Post) does this...

    Instead of having no control over your auction in the OP's suggestion, it just gives you a recommended price to sell at that's the same as everything else wants to buy it (has orders placed). If you want it to sell fast you post it at that recommended price. If you don't mind waiting and want more from it, you can play the market. So you can fluctuate somewhere between the buy now and sell now prices to get the exact level of involvement you want in the AH.
    zaodun wrote: »
    5. Add bot detection scripts to the game engine
    Bots move in really obvious and predictable ways. The keystroke and mouse click stream from the client using a bot is uniform and nothing like a real players key/click stream. Some very simple code can detect bots, and ban the accounts, or at least alert admins/support staff to review the activity and then ban after investigation.

    Not true. The lazy, more casual botters might have predictable actions. But professional botters, the ones doing this for a living are running much more sophisticated software with AI. It doesn't take much work to throw a little randomness in your scripts/software for botting.
    cipher_jitn_sig.png
    Hammerfist Clan. Jump into the Night: NW-DMXWRYTAD
  • sasheriasasheria Member, Neverwinter Beta Users, Neverwinter Hero Users, Neverwinter Guardian Users, Neverwinter Knight of the Feywild Users Posts: 1 Arc User
    edited June 2013
    1. Consolidated Auction House Sales
    Instead of each player individually selling their item for a price they decide, players simply put their items up for sale. The AH itself then takes over. It groups all items which are the same together, and decides the price based on the value of the item, and the quantity for sale. So, instead of seeing "Uber Sword X" listed 50 times for varying prices, you'd see "Uber Sword (50 qty): 56g" (buyout only, there is no bidding in this model of AH) Anyone that wants to buy an "Uber Sword" pays 56g. If you get one you don't want, you list it, and if it sells, you get 56g. The system uses a randomized queue to determine who's "Uber Sword" is sold. As quantity dwindles, the price goes up - as quantity increases, the price goes down. Yes, its simplified - but that is the price you pay (pun intended) to combat bots/gold sellers.

    This this simple auction house model, you essentially shut down the kinds of pricing games, buyout/repost at higher prices, and other schemes that botters/sellers use.
    I think the EVE online system is good. It list the "cheapest buyout" first and the rest are "queue" in the back. First come first serve. The good part is that it is the same system, the exception is that there are no bidding and just buyout only.
    2. Truly Random Placement Engine
    Instead of monsters, chests, nodes, etc (aka xp or loot) being in fixed positions on fixed maps, you have to use a random placement engine to move things around. Most bots rely heavily on precise scripts which move characters fixed distances in fixed directions, or don't move at all and just spam keys which farm a node, or invoke, or whatever. By moving things around randomly, you shut down most bots immediately.
    Unfortunately, this won't help against bots. There are some sophisticated bot software that uses object recognition and can actually PLAY like a player with some pattern, but they could be just a player. There are also advance code you can randomize to make it look like a real player. I remember there is a whole Ragnarok Online bot software that was pretty easy to use to hunt, gather, deposit into banks, crafting, and EVEN give responses to tells. Heck there was even a run away function where you run low on health and such.
    3. Lock loot to a mob.
    You cannot loot (whatever it is) until a specific mob is killed. i.e. no free loot. To prevent bots from scripting the killing of the mob, ensure there is nothing visual nor programmatic about the mob the loot is tied to. Worst case is the bot has to kill everything in the local area to unlock the loot, which will cut heavily into its efficiency in farming.
    This is a bad idea. Servers are not the most stable so what happen if you manage to kill something got some loot but didn't kill the adds? what if the adds are "stuck" in the wall (it happen) and you can't touch the loot? it would take some serious coding to ensure there are no stuck mob or "auto" kill mob if all their buddies are dead etc etc.
    4. Wandering Uber Mobs
    Have super powerful mobs wander every single area of the game (open areas, not instances). Have the AI of this mob be such that it gives a LONG warning to players to leave the area before it attacks. Bots, of course, can't heed the warning, remain, and get annihilated. Players just back off a bit, let it pass by, and return to what they were doing. For fun, allow groups to be capable of downing the mobs, and have it drop cool loot or just be worth a lot of XP.
    Even with uber mob, you need to a way to kill it. Bot can still kill these with help. If it doesn't drop loot, then regular players will complain since these uber mobs are hindering regular gameplay.
    5. Add bot detection scripts to the game engine
    Bots move in really obvious and predictable ways. The keystroke and mouse click stream from the client using a bot is uniform and nothing like a real players key/click stream. Some very simple code can detect bots, and ban the accounts, or at least alert admins/support staff to review the activity and then ban after investigation.
    Good luck on this one. There are many anti-bot software out there but there will always be another one better. Even Call of Duty have aimbot that they can't go against.

    It is like spending MILLIONS on DRM and people still pirate. The best way is to have 24/7 GMs that can screen reports and check for botters and manually ban then (don't have auto system like chat ban)
    To grow old is inevitable, to grow up is optional.
    Please review my campaign and I'll return the favor.
Sign In or Register to comment.