views:

46

answers:

2

I play an MMORPG and there exists a third party program that can add things to the game's GUI. It can display your HP as a number (as opposed to the green bar), display how long until a power recharges, and other such nifty things.

What I can't understand is how on earth the third party program can extract this data? The MMORPG is not open source and provides no support for programmers to make these add-ons.

If I would like to one day be able to make such a program, what key words should I be googling and looking for books about?

+1  A: 

It depends on the target program's willingness to reveal information. Just because something is closed source it doesn't mean it's completely opaque. For example, Google is closed source, but it still exposes a number of APIs that allow you to query for data.

If that is not an option, the term you are looking for is hooking.

In computer programming, the term hooking covers a range of techniques used to alter or augment the behavior of an operating system, of applications, or of other software components by intercepting function calls or messages or events passed between software components. Code that handles such intercepted function calls, events or messages is called a "hook".

....

A wallhack is another example of malicious behavior that can stem from hooking techniques. It is done by intercepting function calls in a computer game and altering what is shown to the player to allow them to gain an unfair advantage over other players.

From: http://en.wikipedia.org/wiki/Hooking

Aillyn
A: 

Which MMORPG are you talking about?

For example, World of Warcraft does have a framework for third-party addons written in LUA. A closed source for a game doesn't mean it doesn't expose an API for accessing certain information.

If you want to develop addons for your game, you can start by googling "how to create [name of the game] addons".

Anna Lear
I'd bet it's FFXIV, and S-E is extremely hostile to addons (account banning for using one)
jkerian
I thought we weren't allowed to mention specific software by name in case it's spam, but since you asked it's City of Heroes.
randomable
Oh, interesting. Seems like it doesn't have any in-game addon stuff, so my answer is pretty much useless except for the keyword suggestions.
Anna Lear