Skip to content

TeoTwawki/DatFFXITool

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 

Repository files navigation

DatFFXITool

FFXI Dat File Manager - Extract and Re-Package

To Do List:

  1. Create a separate file for Encryption/Decoding
  • Move Integer rotate() method - DONE
  • Rename to ror, create a rol - DONE
  • Need to create something to translate special characters (auto-trans brackets, element icons, probably more...)
  1. Possible additions to BinData
  • ??? (May need some changes/additions to string? see #7)
  1. Complete Graphics portion for armor prototype - DONE
  • Need to finish researching DAT format to extract the graphic portion of items - DONE
  1. Refactor BinData::Records for reusability and DRYness, with other item types in mind
  • Header, Graphic portions should be reusable
  • Think of a way to simplify string section
  1. Save output in a useful & workable format
  • What would be the most useful way for end users to make modifications?
  • Thinking a database would be good for mass changes
  • JSON would also be good for small one off changes
  • Need to do more research and think about this some more...
  1. Load output (json, db?? see #5) to rebuild custom DAT's
  • Read in output format, assign to BinData::Records, use .to_binary_s to convert to binary, rotate back & build the .DAT file
  1. Handle String Sizes
  • Two Options:
    • Change all offsets to allow for larger names (should be more than enough space to fit the longest of descriptions) -- test and make sure client accepts this and doesn't break?
    • Compare current string size (check :length on the strings) and see if the input fits, if not, adjust offsets to accomodate before assigning (would cause a mismatch between what gets written as an offset and what is being passed in, though... but in that case those wouldn't need to be maintained anyway, could probably not write them and just always calculate on the upload?)
  • Contemplate and come up with a solution
  1. Use FFXI directory to grab files, maybe just for initialization? Move to working directory?

  2. Organize output dat files

  3. Set up input arguments, or a prompt, to do various things (main program logic)

  4. Re-use work to add support for more dat's

About

FFXI Dat File Manager - Extract and Re-Package

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Ruby 100.0%