Project 1999

Go Back   Project 1999 > Blue Community > Blue Server Chat

Closed Thread
 
Thread Tools Display Modes
  #1  
Old 09-30-2019, 01:26 PM
Mblake81 Mblake81 is offline
Banned


Join Date: Jan 2011
Location: Bristlebane <Reckless Fury>
Posts: 1,811
Default It's a Unix System

Quote:
Originally Posted by Rogean [You must be logged in to view images. Log in or Register.]
Frankly this argument annoys me. You guys underestimate the difficulty of client side changes. We don't have access to Client source code. We have very limited dissassembly skillsets, and occasionally we rely on pseudocode. Haynar is better than I am at finding specific memory addresses and offsets, and I'm somewhat decent at finding/following code paths for functions to hook and modify their arguments and/or return values. Secrets is better than both of us at anything related to dissassembly, but often too busy to help us.

The Client psuedocode is 468,710 lines of code long, and most of it looks a lot like this:

Now, the function I just listed above is a good example, because it handles the client's visual display of the values of skills in the skill window. In this function, it's handling a lot of processing on those values to check various caps based on class and skill ID, which it really should have no reason to do because we just want it to display what the server tells us it is.

So, we hook it. Hooking is essentially rewriting the running code in memory at the location of this function to do a JMP (Jump/Detour) to our own custom function. At which point we access the Skill Value directly, using a global client pointer to the character's data, and return it:

And this is actually one of the easier examples.
-Programmed from Rogeans SGI Crimson & Machintosh Quadra

Now we wait for the storm to steal the dino dna. [You must be logged in to view images. Log in or Register.]
Last edited by Mblake81; 09-30-2019 at 01:29 PM..
  #2  
Old 09-30-2019, 01:32 PM
Bardp1999 Bardp1999 is offline
Planar Protector

Bardp1999's Avatar

Join Date: Feb 2015
Location: Maceland
Posts: 1,443
Default

Quote:
Originally Posted by Mblake81 [You must be logged in to view images. Log in or Register.]
Now we wait for the storm to steal the dino dna. [You must be logged in to view images. Log in or Register.]
[You must be logged in to view images. Log in or Register.]
__________________
Forum Quest
Spyder73 (BANNED)
NecroP1999 (BANNED)

#LobsterClan
#FreeWuTang
Closed Thread


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 08:38 AM.


Everquest is a registered trademark of Daybreak Game Company LLC.
Project 1999 is not associated or affiliated in any way with Daybreak Game Company LLC.
Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.