Raised This Month: $120 Target: $400
 30% 

Signature Request Thread


Post New Thread Reply   
 
Thread Tools Display Modes
Chrisber
AlliedModders Donor
Join Date: Jul 2007
Location: localhost
Old 02-12-2009 , 20:42   Re: Signature Request Thread
Reply With Quote #21

Hi.
I'm searching the sig and the mask for CBasePlayer::FireBullets currently.

Thanks,
- Chris
Chrisber is offline
your-name-here
Member
Join Date: May 2007
Old 02-13-2009 , 00:43   Re: Signature Request Thread
Reply With Quote #22

Quote:
Originally Posted by Chrisber View Post
Hi.
I'm searching the sig and the mask for CBasePlayer::FireBullets currently.

Thanks,
- Chris
What game?

@CrimsonGT: I couldn't find that sig lol, it's one of those ones that are "unsiggable" unless you tried patchdiff'ing between hl2dm and tf2 :/
your-name-here is offline
Chrisber
AlliedModders Donor
Join Date: Jul 2007
Location: localhost
Old 02-13-2009 , 08:27   Re: Signature Request Thread
Reply With Quote #23

Hi.
For Counterstrike: Source.

Thanks,
- Chris
Chrisber is offline
Keeper
Senior Member
Join Date: Nov 2006
Old 02-13-2009 , 10:20   Re: Signature Request Thread
Reply With Quote #24

Can't you just hook that function?

Virtual offset 101...

http://wiki.alliedmods.net/CBasePlayer_Offset_List_(Counter-Strike:_Source)
Keeper is offline
Chrisber
AlliedModders Donor
Join Date: Jul 2007
Location: localhost
Old 02-13-2009 , 10:39   Re: Signature Request Thread
Reply With Quote #25

How I should do this? I can't lay a hook about all player instances, that not possible. For that, I need the sig and mask, do I!?

~ Chris
Chrisber is offline
Keeper
Senior Member
Join Date: Nov 2006
Old 02-13-2009 , 10:58   Re: Signature Request Thread
Reply With Quote #26

You can hook when a player connects, then unhook when they leave. I do this for FireBullets, TraceAttack...

Works fine.
Keeper is offline
Chrisber
AlliedModders Donor
Join Date: Jul 2007
Location: localhost
Old 02-13-2009 , 11:34   Re: Signature Request Thread
Reply With Quote #27

Nice!
Very cool idea, and yep, it works.
Thank you so much

Thanks,
- Chris
Chrisber is offline
CrimsonGT
Veteran Member
Join Date: Oct 2007
Location: Gainesville, FL
Old 02-13-2009 , 12:44   Re: Signature Request Thread
Reply With Quote #28

Quote:
Originally Posted by your-name-here View Post
What game?

@CrimsonGT: I couldn't find that sig lol, it's one of those ones that are "unsiggable" unless you tried patchdiff'ing between hl2dm and tf2 :/
haha damnit, ah well. I was hoping
__________________
CrimsonGT is offline
L. Duke
Veteran Member
Join Date: Apr 2005
Location: Walla Walla
Old 02-13-2009 , 14:18   Re: Signature Request Thread
Reply With Quote #29

Anyone have any ideas on how I could go about finding CTFGameStats::IncrementStat(CTFPlayer *, TFStatType_t, int) ???
__________________
"Good grammar is essential, Robin."
- Batman
L. Duke is offline
your-name-here
Member
Join Date: May 2007
Old 02-13-2009 , 19:30   Re: Signature Request Thread
Reply With Quote #30

Quote:
Originally Posted by L. Duke View Post
Anyone have any ideas on how I could go about finding CTFGameStats::IncrementStat(CTFPlayer *, TFStatType_t, int) ???
I think this is another unsiggable function because each time I get to a function that references it, I get:

Code:
  v11 = 684 * (*(int (__stdcall **)(_DWORD))(*(_DWORD *)dword_1047E1B8 + 72))(*(_DWORD *)(v3 + 24));
  ++*(_DWORD *)(v11 + v4 + 156);
  ++*(_DWORD *)(v11 + v4 + 248);
  ++*(_DWORD *)(v11 + v4 + 340);
  return v11 + v4 + 148;
It doesn't look like it's being directly called :S

What you can probably do is use this:
Code:
\x2A\x2A\x2A\x2A\x2A\x83\xB8\x18\x03\x00\x00\x04\x53\x2A\x2A\x2A\x2A\x56\x57\x8B\xF1\xBF\x01\x00\x00\x00\x75\x39
Which is the (untested) signature for CTFGameStats_Event_PlayerFiredWeapon which calls CTFGameStats::IncrementStats. From there....

Code:
void* pfnIncStats = NULL;
void* pfnFireWeaponFunc = gSigMngr.findsignature(laddr, the_sig_above, length_of_above_sig);

typedef void (*IncrementStatsFunc)( void* /* this */, int /* TFStat Type */, int /* Some random integer :S */);
IncrementStatsFunc pStatsFunc;

//Not sure if this is right. Very low level and only for windows :/
memcpy( pfnIncStats, ((char *)pfnFireWeaponFunc + 0x65), sizeof(char *) );

//Call the function :D
//....
This should rip the pointer to CTFGameStats__IncStats directly from eax (assuming I did the hex right )

Let me know if it works for you.

Last edited by your-name-here; 02-13-2009 at 19:42.
your-name-here is offline
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 15:29.


Powered by vBulletin®
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Theme made by Freecode