View Single Post
  #9  
Old 04-28-2013, 03:20 PM
a_gnoll_pup a_gnoll_pup is offline
Sarnak


Join Date: Apr 2013
Posts: 230
Default

Quote:
Originally Posted by Furinex [You must be logged in to view images. Log in or Register.]
Please do! This looks like its a good resolution but the implementation will be difficult for a normal everyday user. A program to automate this process after we can nail down the science exactly.

EDIT: So far the only thing I was able to edit was the aeglism entry you outlined, couple of times I royally jacked the file lol
It is a fixed byte header that reads until the file ends. Each entry, if you notice, has a version in the header, followed by a non-variable byte entry until EOF is read by the EQ client. The beginning of the entry should be the filename.

So, if you write a program to find the beginning of the file entries and scan based on length to edit the byte (the location of the byte you are changing to 0xC4 is base + a certain value) you can iterate through all the entries until EOF is hit, much like the eq client is doing now, writing the bytes to the file as you change them by keeping the entries in a struct in memory as opposed to keeping them in memory and doing nothing with them.

Alternatively, the EQ client could be patched via memory injection to read that byte as 0xC4 always when it reads that entry. To find out the length of the old spell file, cross-reference EQ for Mac's disassembly (it loads as readable code for the most part) versus EQ titanium's strings, find the byte, and force it to 0xC4.
Last edited by a_gnoll_pup; 04-28-2013 at 03:22 PM..