Welcome, Guest. Please login or register.
July 01, 2025, 09:28:38 PM

Login with username, password and session length

Search:     Advanced search
we're back, baby
*
Home Help Search Login Register
f13.net  |  f13.net General Forums  |  The Gaming Graveyard  |  MMOG Discussion  |  Topic: Automated Bot'ing: WoWGlider vs Blizzard 0 Members and 1 Guest are viewing this topic.
Pages: 1 ... 3 4 [5] Go Down Print
Author Topic: Automated Bot'ing: WoWGlider vs Blizzard  (Read 48733 times)
Alkiera
Terracotta Army
Posts: 1556

The best part of SWG was the easy account cancellation process.


Reply #140 on: February 23, 2007, 02:30:12 PM

In WoW it's even easier, as you can build an addOn that pulls a lot of data (legally) from the client, such as your location, the distance to a mob, managing targetting, etc.  You can basically re-write the majority of the WoW UI out to a computer-readable format, and then have your process (the 'think' step) send commands either via an addon, or via DirectX calls, or otherwise faking input to the process.  Way easier than say EQ1, where you only have the text logs, and your image-matching.

--
Alkiera

"[I could] become the world's preeminent MMO class action attorney.  I could be the lawyer EVEN AMBULANCE CHASERS LAUGH AT. " --Triforcer

Welcome to the internet. You have the right to remain silent. Anything you say can and will be used as evidence against you in a character assassination on Slashdot.
Trippy
Administrator
Posts: 23657


Reply #141 on: February 23, 2007, 10:59:33 PM

C: Non MMOG fps games are commonly peer to peer, while MMO games are by definition Client/server based.
Not really. All the "serious" online PC FPSes are client-server based and have been since Quake. E.g. all the id-games from Quake on are client-server, all the Unreal (Tournament) engine games, all the Half-Life/Source engine games, all the BF games, and so on. And not only are they client-server but they also typically run on dedicated servers -- i.e. with no client running on them as well.
Trippy
Administrator
Posts: 23657


Reply #142 on: February 23, 2007, 11:17:36 PM

1) Sniff the data stream

This is traditionally been done with things like EQ radar, setting up some sort of proxy to grab the data coming into and leaving your computer. Because a lot of information is server side (to prevent the next issue), you may be able to get enough working information to use this as your input and create a bot feedback loop. I don't know that it's ever been done in practice, generally this is used for spoofing and additional information that gives the player an upper hand.
That's the way autoaim bots used to work (I haven't played FPSes competitvely in a long time so I haven't been keeping up on the latest bot trends). In online shooters (and also MMORPGs) in the data stream you receive regular updates about all the dynamic objects in a certain radius around you. This means that if somebody is behind you the server still sends you the exact position information about the person even though you can't "see" him/her/it on your screen. If you stick a proxy between your client and the server, though, the proxy can detect that somebody is behind you and alter your command stream back to the server to adjust for that -- e.g. by having your character turn and head shot the poor bastard. It doesn't have to be somebody out of sight either. If somebody is above you or to your side the proxy can automatically determine the optimum firing angle to hit that person since it knows both your exact position and facing information and the exact position and facing of the target.
Chenghiz
Terracotta Army
Posts: 868


Reply #143 on: February 24, 2007, 12:58:35 AM

In WoW it's even easier, as you can build an addOn that pulls a lot of data (legally) from the client, such as your location, the distance to a mob, managing targetting, etc.  You can basically re-write the majority of the WoW UI out to a computer-readable format, and then have your process (the 'think' step) send commands either via an addon, or via DirectX calls, or otherwise faking input to the process.  Way easier than say EQ1, where you only have the text logs, and your image-matching.

--
Alkiera

A lot of that information has since been denied user addons - specifically range - as well as the ability to move the character via addons or macros. Whatever wowglider does, it's done outside the context of what the client offers to the end-user.
Quinton
Terracotta Army
Posts: 3332

is saving up his raid points for a fancy board title


Reply #144 on: February 24, 2007, 01:57:06 AM

Not to mention fd_select(addr) or whatever the syntax is (been a LONG time) x 100,000 takes a bit more time overall than x 50?

This is not as much of a problem now that the world has epoll (linux) and kqueue (freebsd).  Of course you still have to *process* all those data streams, but bottlenecks in just handling the socket io events are not a serious issue in modern unix variants.

- Q
Venkman
Terracotta Army
Posts: 11536


Reply #145 on: February 24, 2007, 10:41:35 AM

Quote from: Trippy
Not really. All the "serious" online PC FPSes are client-server based and have been since Quake. E.g. all the id-games from Quake on are client-server, all the Unreal (Tournament) engine games, all the Half-Life/Source engine games, all the BF games, and so on. And not only are they client-server but they also typically run on dedicated servers -- i.e. with no client running on them as well.
But these are still user-hosted servers right? While that works for that clan and whatever tournament they are in, it's not something that seems equally accessible to everyone who chooses to play that game.

I invite correction though. I know less about FPS games than I do sports :)
bhodi
Moderator
Posts: 6817

No lie.


Reply #146 on: February 24, 2007, 11:01:10 AM

Not really. All the "serious" online PC FPSes are client-server based and have been since Quake. E.g. all the id-games from Quake on are client-server, all the Unreal (Tournament) engine games, all the Half-Life/Source engine games, all the BF games, and so on. And not only are they client-server but they also typically run on dedicated servers -- i.e. with no client running on them as well.
Warcraft3 uses p2p netcode... as does homeworld and most other RTS games.
Trippy
Administrator
Posts: 23657


Reply #147 on: February 24, 2007, 06:38:05 PM

Quote from: Trippy
Not really. All the "serious" online PC FPSes are client-server based and have been since Quake. E.g. all the id-games from Quake on are client-server, all the Unreal (Tournament) engine games, all the Half-Life/Source engine games, all the BF games, and so on. And not only are they client-server but they also typically run on dedicated servers -- i.e. with no client running on them as well.
But these are still user-hosted servers right? While that works for that clan and whatever tournament they are in, it's not something that seems equally accessible to everyone who chooses to play that game.

I invite correction though. I know less about FPS games than I do sports :)
There's a whole ecosystem of FPS servers out there. There are servers that players setup and either make public or private (password protected). This is the most common type. Then for some games the game publisher will setup public servers. And there are "game server hosters" that will rent out servers that support various games. BF2 servers were/are mostly hosted in the later fashion cause EA restricted who could host servers that generate stats to prevent modifying the code and altering stats for people who play on them. You can setup your own BF2 server but it won't be able to send stats back to the Borg.

In any event there are many many publically accessible FPS servers out there for people to play on. In fact there are so many out there for some games that it causes my ancient router to throw up its hands and stop accepting packets cause it can't handle that many incoming connections when I try to refresh the server list (it overflows its NAT table of something).
Trippy
Administrator
Posts: 23657


Reply #148 on: February 24, 2007, 07:08:36 PM

Not really. All the "serious" online PC FPSes are client-server based and have been since Quake. E.g. all the id-games from Quake on are client-server, all the Unreal (Tournament) engine games, all the Half-Life/Source engine games, all the BF games, and so on. And not only are they client-server but they also typically run on dedicated servers -- i.e. with no client running on them as well.
Warcraft3 uses p2p netcode... as does homeworld and most other RTS games.
No WC III uses client/server netcode, where the "host" starts off as the server though that can change if the host drops out. StarCraft used p2p which is why if one player was fricking slow everybody was slow.
Trippy
Administrator
Posts: 23657


Reply #149 on: February 24, 2007, 07:17:46 PM

In any event there are many many publically accessible FPS servers out there for people to play on.
Some examples, as of right now there are 142,811 servers online that are tracked by Steam, and there are 4,555 BF2 servers as tracked by bf2tracker.com. Note that those aren't all publically accessible servers but it gives you an idea of just how many dedicated FPS servers there are out there.

Trouble
Terracotta Army
Posts: 689


Reply #150 on: February 24, 2007, 07:35:49 PM

Just an FYI on the way WoWglider works. As written by bhodi, a bot is basically sense-think-act machine, or in computer tersm, input-logic-output.

Input:
Glider receives the input by reading the memory of WoW. All the data it gets comes directly from WoW memory. It can "see" everything in your visual range, it can see all the details available to the client. Are you in the global cooldown? What is your current x, y, z location? What is your health and mana/rage/energy? Etc. It utilizes pretty much everything a real player would utilize and grabs the info directly from memory. There's nothing that it can see (I believe) that a player doesn't have access to, either with the basic Blizzard UI or through the use of legal UI modifications. There's no ShowEQ going on here, just basic input required for understanding the world around you.

Logic:
There's two main parts to the logic. One is the navigation. Glider uses a waypoint system. You put it into "waypoint capture" mode and run around the world where you want the bot to go. As you're running it will record the coordinates of your location and add them. You either create a loop where it just goes from the end point to the beginning or a wander and back where it will go to the end then reverse and go back. Very basic stuff really.

The second is how to actually play the game. It has custom created rulesets for every class which tell it completely how to play that class, at least as much as the bot needs to know. For a mage it knows to pull with the spell you put in bar #3 or whatever, it knows to frost nova when the mob is close to you, it knows to back up and cast some more, etc. It has a very well made and complete ruleset for every class and it's actually quite amazing how much time and effort has been put into making it play efficiently at every class in the game. There's also many settings that can be changed for each class, an example being as a rogue to only use "Kick" when your target is casting and under a certain percent health. The purpose being if you're grinding on healers that heal themselves at a set health to interrupt to heals.

Output:
The output differs from other current bots (bots created using innerspace for example) and previously well known bots in that it uses full uses keyboard and mouse commands. This is the trick that makes it much less detectable than the other bots. Most other bots directly manipulate the memory of WoW to input commands, the process being called memory injection. Glider is pretty much indistinguishable from a human player because it presses keys and moves the mouse. This also means you can't really use your computer to do other things while botting.

Some of the biggest bots in the past, most notably WoWsharp, used injection for output and this was their downfall. Blizzard was able to find ways to detect this direct memory manipulation and automatically ban people engaging in it.


As a side note, bots made using innerspace today are undetected still despite using injection methods of output. This is due to the creation of something called ISXWarden which is basically a tool for mano-a-mano against Warden: Blizzard's main tool for detection of cheating. ISXWarden basically goes in and takes out Warden's capability of detecting the memory injection and then the bot itself can do whatever the hell it pleases as long as it doesn't set off any server side sanity checks.

Glider recently contracted out to the creator of ISXWarden to manage the security component of the bot. Basically, the creator of Glider was tired of playing cat and mouse with Blizzard and wanted to focus more on the featureset of the bot rather than dealing with the cold war of beating WoW's security. This will see a shift from a one time payment of $25 for the program to a monthly fee in order to cover the cost of ISXWarden.

To go even further back, this switch to using iSXWarden dates back to massive ban wave on November 14th, 2006. On that day Blizzard let drop the hammer and they seemingly had found a way of automatically detecting Glider versus all previous bannings which come as a result of player reportings of botters. Two weeks before the ban wave the creator of ISXWarden reported a new, unknown version of Warden being run by clients and with that he predicted something big was in the works. This change to Warden flew under Glider's radar and subsequently ended up with thousands, perhaps tens of thousands of his customers being banned.
robusticus
Terracotta Army
Posts: 30


Reply #151 on: February 26, 2007, 07:24:58 AM

Now that I think about it, Halflife DID have a filter for servers that allowed cheats.  So my overall view of the tolerance is skewed by being sharded to the non-cheater side off the bat - I clicked it once and never looked at it again.

And I suppose if all players were using the same aimbot it would be a valid game.  A different game, but balanced, nonetheless.
Hoax
Terracotta Army
Posts: 8110

l33t kiddie


Reply #152 on: February 26, 2007, 10:02:05 AM

The second is how to actually play the game. It has custom created rulesets for every class which tell it completely how to play that class, at least as much as the bot needs to know. For a mage it knows to pull with the spell you put in bar #3 or whatever, it knows to frost nova when the mob is close to you, it knows to back up and cast some more, etc. It has a very well made and complete ruleset for every class and it's actually quite amazing how much time and effort has been put into making it play efficiently at every class in the game. There's also many settings that can be changed for each class, an example being as a rogue to only use "Kick" when your target is casting and under a certain percent health. The purpose being if you're grinding on healers that heal themselves at a set health to interrupt to heals.

While it is impressive (I've seen the priest vers. of Glider-botting) it is also sad.  It makes it clear just how lame pve is for anyone who was still pretending pve activities have any redeeming factor.  The priest version goes something like:  PW:S, Mind Blast, SW:P, mind flay (can be set to skip if you are not in range because mob is a caster), then you just set a # of seconds that you want the bot to wand before it casts mind blast again.  Done.  I played a priest to 60, that is exactly what I did every time I ever solo'd.  That is pve.  A set order of hotkey presses, with two actual choices (move into range for mind flay, how long before you nuke a second time).  Are there types of pve that require more skill within WoW?  Yes.  But the vast majority of the solo content that everyone jizzes about can be done by a bot, no problem.

Remind me why its a bad thing if some program lets me skip that?  Outside of game economy concerns, -which are meaningless to my enjoyment of any mmo- there just dont seem to be any.

A nation consists of its laws. A nation does not consist of its situation at a given time. If an individual's morals are situational, then that individual is without morals. If a nation's laws are situational, that nation has no laws, and soon isn't a nation.
-William Gibson
Nebu
Terracotta Army
Posts: 17613


Reply #153 on: February 26, 2007, 10:07:57 AM

While it is impressive (I've seen the priest vers. of Glider-botting) it is also sad.  It makes it clear just how lame pve is for anyone who was still pretending pve activities have any redeeming factor. 

Hence why so many of us opt for pvp-centered games.  Humans are much more interesting and dynamic opponents.

"Always do what is right. It will gratify half of mankind and astound the other."

-  Mark Twain
Merusk
Terracotta Army
Posts: 27449

Badge Whore


Reply #154 on: February 26, 2007, 10:11:18 AM

Anything, with any ruleset is going to be similarly limiting.

Or are you going to tell me that UO MDKs were somhow more than just using a few predetermined skills faster/ better than the person on the other side of the screen, because that'd be wrong.  You're not going to Jackie Chan up a wall, pick up that chair, break a leg off and shove it through some guy's skull.  It's just not happening, because the rules dont allow it.

The past cannot be changed. The future is yet within your power.
Nebu
Terracotta Army
Posts: 17613


Reply #155 on: February 26, 2007, 10:18:09 AM

Anything, with any ruleset is going to be similarly limiting.

Or are you going to tell me that UO MDKs were somhow more than just using a few predetermined skills faster/ better than the person on the other side of the screen, because that'd be wrong.  You're not going to Jackie Chan up a wall, pick up that chair, break a leg off and shove it through some guy's skull.  It's just not happening, because the rules dont allow it.

I can tell you that 8v8 in DAoC is significantly more dynamic than any PvE encounter I've come across.  Yes, the number of skills are the same but the different permutations in their use is quite large relative to any PvE encounter you could design.  PvP requires a much more dynamic use of tools and could not be scripted as effectively as any PvE encounter. 

Humans are much more creative in the use of tools than AI.  At least for now. 

"Always do what is right. It will gratify half of mankind and astound the other."

-  Mark Twain
Hoax
Terracotta Army
Posts: 8110

l33t kiddie


Reply #156 on: February 26, 2007, 05:22:21 PM

Anything, with any ruleset is going to be similarly limiting.

Or are you going to tell me that UO MDKs were somhow more than just using a few predetermined skills faster/ better than the person on the other side of the screen, because that'd be wrong.  You're not going to Jackie Chan up a wall, pick up that chair, break a leg off and shove it through some guy's skull.  It's just not happening, because the rules dont allow it.

You saw the part where I said two choices right?  Two.  That is solo'ing w/ a priest.  Two choices and only one if the mob isn't a caster mob.    Yes rules limit options (thanks Capt. Obvious) but drawing the conclusion that therefore fighting a human opponent involves a similar amount of variables as a crappy foozle AI opponent...

Not so fucking much.

A nation consists of its laws. A nation does not consist of its situation at a given time. If an individual's morals are situational, then that individual is without morals. If a nation's laws are situational, that nation has no laws, and soon isn't a nation.
-William Gibson
Pages: 1 ... 3 4 [5] Go Up Print 
f13.net  |  f13.net General Forums  |  The Gaming Graveyard  |  MMOG Discussion  |  Topic: Automated Bot'ing: WoWGlider vs Blizzard  
Jump to:  

Powered by SMF 1.1.10 | SMF © 2006-2009, Simple Machines LLC