Go Back   BWHacks > Development > Reverse Engineering

Reverse Engineering Game hacking discussion and open source development.

Reply
 
LinkBack Thread Tools

Old 10-06-2007, 07:44 AM   #1 (permalink)
Titan
Pervali on Battle.net
Senior Member
Retired Staff Member

Blessed
 
Titan's Avatar
 
Join Date: May 2004
Posts: 2,143
Titan is a jewel in the rough
Default [StarCraft] SCLib Beta v0.3

This is a development tool for hack makers, not a hack. If you're looking for a new hack, leave the thread now.

SCLib Beta v0.3 has functions for 3 things:
1.) Print client side text messages.
2.) Check state of hack user.
3.) Draw to Starcraft's screen.
4.) A simple map hack

Screenshot of drawing to SC's screen (source code to drawExample.dll is included).


I have attached the library and necessary instructions. Note: make sure SCLib.dll is in the same folder as Starcraft.exe when you test.

I, personally, am excited. I think using SCLib.dll is much easier than managing an independent drawing routine. However, I know it's only useful if it is used. So, I encourage those interested/skeptic of the SCLib idea to try this version out, see what you like or dislike, then let me know what you think!

Thanks in advance,
Titan
----------------------------------------------------
Update SCLib Beta v0.2.

Note the following important changes:
getState now returns:
- 0 = User is in an unknown location.
- 1 = User is in a Battle.net channel.
- 2 = User is in a game lobby.
- 3 = User is in a game (actively playing).

Drawing functions have been changed for the better with the following procedures:
regDrawProc
drawSCText
drawSCRect
drawSCTransRect
unRegDrawProc

Drawing works differently. Now, you register your own drawing procedure that is called by SCLib when the screen refreshes. Then, you place all drawing functions(drawSCText, ect.) in that procedure.

Here is a screenshot of the updated drawExample (source code is included).


----------------------------------------------------
Update: SCLib Beta v0.3.
Beta version 0.3 adds an exciting new feature, a simple map hack.

"Simple" map hack vs "full" map hack?
This simple map hack does not:
- Have a "third" state, only on and off
- Display minerals/gas in mini-map
- Display zerg creep if you don't have real vision
^^The above features currently cause a loss and thus are not included.

However it does have:
- Safe clicks
- Not detected by Warden (won't give a loss)
- View enemy units & buildings in full/mini map.

It is my hope that by including a simple map hack, the need to combine several hacks will lessen because of the few map hacks that presently exist. As a consequence, hackers will have more independence and hack users less incompatibility and less inconvenience from combining many DLLs.

Screenshots of Map Hack (source code for mapHack.dll is included, of course).
On:

Clicking on a unit:

Off:
Attached Files
File Type: zip SCLibBeta03.zip (15.4 KB, 218 views)
__________________


Last edited by Titan : 10-13-2007 at 04:17 AM.
Titan 15 0FF11|\|3   Reply With Quote
Advertisement
 
Advertisement
Advertisement Sponsored links


Old 10-06-2007, 08:55 AM   #2 (permalink)
dt
Administrator

Inquisitor
 
dt's Avatar
 
Join Date: Jul 2004
Location: Germany
Posts: 4,545
dt has a reputation beyond reputedt has a reputation beyond reputedt has a reputation beyond reputedt has a reputation beyond reputedt has a reputation beyond reputedt has a reputation beyond reputedt has a reputation beyond reputedt has a reputation beyond reputedt has a reputation beyond repute
Default

I'm moving this here cause the download forum is only for hacks.

Btw Titan, want to be put back to GHS status?
dt 15 0FF11|\|3   Reply With Quote

Old 10-06-2007, 01:50 PM   #3 (permalink)
MasterOfChaos

Deviant
 
MasterOfChaos's Avatar
 
Join Date: Oct 2007
Posts: 53
MasterOfChaos is on a distinguished road
Default

Checkstate:
returning 3 for unknown is not very extensable. Use 0 or -1 instead
Init/UnInitdraw:
You could add reference counting so it is uninstalled when nobody needs it any longer.
MasterOfChaos 15 0FF11|\|3   Reply With Quote

Old 10-06-2007, 05:43 PM   #4 (permalink)
Titan
Pervali on Battle.net
Senior Member
Retired Staff Member

Blessed
 
Titan's Avatar
 
Join Date: May 2004
Posts: 2,143
Titan is a jewel in the rough
Default

Quote:
Originally Posted by MasterOfChaos View Post
Checkstate:
returning 3 for unknown is not very extensable. Use 0 or -1 instead
You're right. I should return NULL for an unknown location.
Quote:
Init/UnInitdraw:
You could add reference counting so it is uninstalled when nobody needs it any longer.
Right again, I should call init on regText if it's the first string added and I should call unInit if someone uses unRegText on the last string registered.

Good ideas MasterOfChaos, thanks for the input!
__________________

Titan 15 0FF11|\|3   Reply With Quote

Old 10-06-2007, 06:11 PM   #5 (permalink)
n0.obAtroN

Deviant
 
n0.obAtroN's Avatar
 
Join Date: Oct 2007
Location: 127.0.0.1
Posts: 146
n0.obAtroN is on a distinguished road
Default

very nice, Ill have to check this out
n0.obAtroN 15 0FF11|\|3   Reply With Quote

Old 10-07-2007, 10:39 AM   #6 (permalink)
LordRaiden
Banned

Deviant
 
Join Date: Jul 2007
Posts: 91
LordRaiden is on a distinguished road
Default

Of course, it's a quite nice project, even thought I think that finding everything alone is the best part of gamehacking besides getting everything to work alone.
LordRaiden 15 0FF11|\|3   Reply With Quote

Old 10-08-2007, 08:54 AM   #7 (permalink)
MasterOfChaos

Deviant
 
MasterOfChaos's Avatar
 
Join Date: Oct 2007
Posts: 53
MasterOfChaos is on a distinguished road
Default

Wouldn't it be better if you replaced the RegisterText function by a RegisterDrawCallback and a DrawText function? Or has this approach problems with refreshing?
MasterOfChaos 15 0FF11|\|3   Reply With Quote

Old 10-08-2007, 03:42 PM   #8 (permalink)
deathknot

Advocate
 
deathknot's Avatar
 
Join Date: Jul 2006
Posts: 188
deathknot will become famous soon enough
Send a message via AIM to deathknot
Default

If i remeber correctly NULL i just defined as 0.
*edit*
Its defined as '\0'
deathknot 15 0FF11|\|3   Reply With Quote

Old 10-08-2007, 08:01 PM   #9 (permalink)
Zephyrix
Ereetu.
Senior Member
Game Hacking Staff

High Priest
 
Zephyrix's Avatar
 
Join Date: Oct 2005
Location: xor 1D27,1337
Posts: 1,565
Zephyrix is a name known to allZephyrix is a name known to allZephyrix is a name known to allZephyrix is a name known to all
Default

Quote:
Originally Posted by deathknot View Post
If i remeber correctly NULL i just defined as 0.
*edit*
Its defined as '\0'
NULL is defined as (void*)0 but returning 0 should be the same thing.
__________________


Zephyrix 15 0FF11|\|3   Reply With Quote

Old 10-09-2007, 03:26 AM   #10 (permalink)
Titan
Pervali on Battle.net
Senior Member
Retired Staff Member

Blessed
 
Titan's Avatar
 
Join Date: May 2004
Posts: 2,143
Titan is a jewel in the rough
Default

Quote:
Originally Posted by MasterOfChaos View Post
Wouldn't it be better if you replaced the RegisterText function by a RegisterDrawCallback and a DrawText function? Or has this approach problems with refreshing?
No problems with refreshing using that method. You're correct, it would be both better and easier doing it that way. Looks like I'm going to be rewriting some functions (when I have the time).

Thanks again MasterOfChaos!
__________________

Titan 15 0FF11|\|3   Reply With Quote

Old 10-12-2007, 10:33 PM   #11 (permalink)
MasterOfChaos

Deviant
 
MasterOfChaos's Avatar
 
Join Date: Oct 2007
Posts: 53
MasterOfChaos is on a distinguished road
Default

You could seperate drawSCTransRect into to functions. One Draws the Border, the other the striped filling. So one can also combine the border drawing function with the drawSCRect function.

edit:
I just noticed the getState function is missing.

edit2:
Added a Pascal/Delphi header and Demo
Attached Files
File Type: zip SclibTest.zip (924 Bytes, 37 views)
__________________
We are the Others. We serve different forces, but in the Twilight there is no difference between the absence of darkness and the absence of light.

Last edited by MasterOfChaos : 10-12-2007 at 11:07 PM.
MasterOfChaos 15 0FF11|\|3   Reply With Quote

Old 10-13-2007, 04:10 AM   #12 (permalink)
n0.obAtroN

Deviant
 
n0.obAtroN's Avatar
 
Join Date: Oct 2007
Location: 127.0.0.1
Posts: 146
n0.obAtroN is on a distinguished road
Default

VERY nice Titan. Most impressive. I like the open source (if it will be). ^^
__________________
Redneck to the core

Leader of the NeXuiZ Team

"Put a boot in your ass, 'cuz thats the American way"

Last edited by n0.obAtroN : 10-13-2007 at 04:27 AM. Reason: Don't quote such a huge post :)
n0.obAtroN 15 0FF11|\|3   Reply With Quote

Old 10-13-2007, 04:13 AM   #13 (permalink)
Titan
Pervali on Battle.net
Senior Member
Retired Staff Member

Blessed
 
Titan's Avatar
 
Join Date: May 2004
Posts: 2,143
Titan is a jewel in the rough
Default

MasterOfChaos: Very neat, not many people making hacks in Pascal.

I have posted an update to version 0.3, which includes a simple map hack. Enjoy!
__________________

Titan 15 0FF11|\|3   Reply With Quote

Old 10-13-2007, 06:56 PM   #14 (permalink)
Perma
rol 3905h, 8
Senior Member
Administrator

Saint
 
Perma's Avatar
 
Join Date: Jul 2004
Location: Canada
Posts: 5,414
Perma has disabled reputation
Default

At least that transparency algorithm went to good use. Looks cool so far Titan.
Perma 15 0|\|11|\|3 |\|0\/\/   Reply With Quote

Old 10-13-2007, 07:07 PM   #15 (permalink)
ViperSRT3g

Zealot
 
ViperSRT3g's Avatar
 
Join Date: Feb 2006
Location: Jacksonville, NC
Posts: 856
ViperSRT3g has a spectacular aura about
Send a message via AIM to ViperSRT3g Send a message via MSN to ViperSRT3g Send a message via Skype™ to ViperSRT3g
Default

Wow, VERY good job Titan. This is already much more than I had anticipated when you first started this project.
ViperSRT3g 15 0|\|11|\|3 |\|0\/\/   Reply With Quote

Old 10-14-2007, 08:47 AM   #16 (permalink)
punture
Senior Member

Saint
 
punture's Avatar
 
Join Date: Jul 2004
Location: Vancouver, B.C. Canada
Posts: 6,127
punture has much to be proud ofpunture has much to be proud ofpunture has much to be proud ofpunture has much to be proud ofpunture has much to be proud ofpunture has much to be proud of
Send a message via AIM to punture Send a message via MSN to punture
Default

If source code for maphack is included.... wouldn't that just cause other people to copy it.?
__________________
punture 15 0FF11|\|3   Reply With Quote

Old 10-14-2007, 09:48 AM   #17 (permalink)
Polie13
****ING COCK SUCKER
Senior Member

High Priest