Pack File Manager 2.4.1 - Compatability Features added
*Mods, please take care to not do anything to change the id of this thread (494248) by merging it into another or whatever; you'd break the PFM's autoupdate which relies on this.
The old schema.xml file is obsolete. Also, all new schema definitions will not be usable by old versions.
Please update your PFM if you're interested in receiving further table definitions update.
I rehosted download location to Sourceforge to save TWC the bandwidth, and we can upload it together with the installer in one place.
There is a new autoupdate feature which will automatically update your PFM after it found a new version.
It will only kick starting next version of course; it worked fine for the test runs I did, if there is any trouble, let me know.
Feel free to post bugs and request features. I'm pretty sure I can include any function you can think of (especially concerning the DB tables).
If anyone provides me with structures for new file types, I'll be happy to integrate them.
A list of possible features that could be implemented are available here.
Change log:
Previous Versions
Version 2.4, Update 16.10.12
Features:
- Added "Minimize DB Files" feature (support for inter-mod compatability)
- Added "Rename Files" feature (support for inter-mod compatability)
- Improved Autoupdate version lookup performance
- Added Game icons, showing depending on what game is being modded
Bug Fixes:
- Fixed Directory Dialog setting the prompt instead of the path field
- Fixed rename of files not being reflected in the tree view
- Fixed CSV/TSV export writing all data into a single line
Version 2.3.4, Update 13.10.12
Added features:
- Added editor for hiding multiple columns
- Added Copy/Paste to LOC editor
- Integrated Esf editor contains "Move Array Node" from EditSF 1.0.7
- Setting icon depending on edited game
Bugs:
- Corrected dialog box behavior on browse
Version 2.3.3, Update 07.10.12
Fixed Bugs:
- Fixed TSV import ignoring the first line
- Fixed failed TSV import quitting PFM
- Fixed doubleclick pack problem with reading configuration files
Version 2.3.2, Update 19.09.12
- Added pfm.exe, a simple command-line packer/unpacker
- Row numbers now starting at 1
Bugs:
- Doubleclick pack to open fixed
- Corrected references when loading all game files
- Corrected tsv export extension if none set
- Corrected tsv import
- Refreshing tree view upon DB schema update
- Corrected DB schema always updating
Version 2.3.1, Update 07.09.12
- Rearranged Menus: MyMods Menu now in File menu; Game Menu now in main menu
- Changed Set Game behavior: now asks if current mod's game should be adjusted
- Added currently modded game to window title
- Added Open Directory features; Game: game, data, encyclopedia directories; User: user, scripts, replay directories; MyMod: data directory
- Added Load All Game Files feature
Version 2.3, Update 03.09.12
New features:
- Added buildings model editor
- Added row number to header column
- Improved DecodeTool
Bugs:
- Added file path to invalid PFH header error message
- Error-proofed GUID table lookup for tables with wrong GUID
Version 2.2, Update 12.08.12
Features:
- Allows switching between games (ETW, NTW, S2TW)
- Resolves references also from current game packs (should always be able to fill Combobox cells now)
- Allows for several db table definitions with same table/version
- Added Open DecodeTool for any file
- Added Duplicate/Delete functionality of EditSF 1.0.6
Bugs:
- Fixed "Install MyMod" which copied file without .pack extension
- Fixed Tuple editing (ESF editor)
- Fixed String editing for pre-ABCF files (ESF editor)
- TSV export now removes trailing whitespaces (space or newline)
- Improved handling of moved Steam installations (will query game directory when not found)
- Fixed bug with importing files with space in name
Versions 2.1.x
Version 2.1.5, Update 15.05.12
Major feature release.
- added MyMod pack file management feature
- added "All all to TSV" feature
- added integrated ESF Editor
- added paste into multiple fields in DB editor
- added paste across multiple PFM instances
- changed shader file header handling (game wouldn't load with the old one)
- added groupformation.bin editing (starting 2.1.2)
- Fixed bug where paste left out empty cells
Version 2.1.4, Update 12.05.12
- Fixed copy/paste with header column selected (fixes copy/paste between different packs)
- Fixed add locations when adding files or importing tsvs with active MyMod
- Added option for default TSV export extension
- Prevent adding the "- version XX" indication to DB files on rename
Version 2.1.3, Update 06.05.12
- Fixed the obnoxious GridData error message box
- Added install/uninstall feature to MyMods
- Added "Open CA pack" feature
- Fixed doubleclicking of pack files when using MyMods
- Fixed some menu items becoming incorrectly disabled
- Using improved TSV export for LOC files
- Added LOC files to "Export all to TSV"
- Added LOC files to "Import TSV file"
- Fixed TSV import/export to use MyMod paths
Version 2.1.2, Update 27.04.12
- Fixing negative integers again
- Added first support for groupformations.bin
Version 2.1.1, Update 23.04.12
- Fixing Add File for non-MyMod managed packs
- Fixing modification indication for added files
- Adding save query for modified packs on New File
Versions 2.0.x
Version 2.0.6, Update 13.04.12
- Add "add to all in column" feature (allowing adding to and renumbering all fields in a number column)
- Re-enable user-defined description for columns
- Remember last import/export location
- Showing of DecodeTool now optional when selecting unknown table
- Allow setting DB types from DecodeTool
- Mark empty files in PFM tree
- Add reference editing to DB Editor
- Allow saving of empty pack entries
- Make all user settings persistent between sessions
- Forces update when schema.xml does not exist at all
- Common rewritten to unified interface
Version 2.0.5, Update 30.03.12
- enabled replacing several packs with a patch file (fixes patch 16)
- repaired Ctrl-O shortcut for opening pack file
Version 2.0.4, Update 29.03.12
- Fixes exception with empty DB files (FotS patch 15)
Version 2.0.3, Update 09.03.12
- integer columns now interpreted as signed numbers (allow values < 0 as some tables had)
- added shader pack file support
- added missing Pack Types in menu (BootX, Shader1, Shader2)
- removed "Base Packed Files Where" dialog if Shogun 2 was not installed
- fixed "CA packs read only" issue
- fixed "Rename directory" context menu action
- fixed "Add folder"
- changed "Add folder" to not abort when a file already exists (still only adds non-existing ones though)
- fixed file type in TSV import and export dialogs
- added "CSV" extension to TSV import/export dialogs
- fixed DB reference feature in DB editor
- fixed crash when selecting Pack Type with no pack file opened
- fixed descending db column sorting
Version 2.0.2, Update 19.02.12
- exception on save pack fixed
- TSV import/export improved
- text files can now be edited with the integrated text editor
- copy/paste of text between table cells and from other text clipboard sources (LM)
- files can now be extracted by drag/drop to explorer (LM)
Version 2.0.1, Update 15.02.12
- added "add empty directory" feature
- added "add files from TSV" feature
- fixed row deletion not registering as change
- fixed TSV import in DB editor
Version 2.0, Update 14.02.12
- uses schema.xml instead of DBFileTypes
- supports all db files since etw except two or three
- add files/directory from anywhere on the file system
- now supports boot.pack file
- larger column width in DB editor
- rearranged menus
- opening several images with same name fixed
- corrected total file count and progress bar when loading pack file
Versions 1.7.x
Version 1.7.10, Update 05.02.12
- added decode tool (standalone and opens on unknown db files)
- fixed window title bug when doubleclicking pack file
Version 1.7.9, Update 24.01.12
- fixed bug with db tables containing a conditional string as first entry
Version 1.7.8, Update 15.01.12
- fixed Add Row to add row after the currently selected row and add row to empty tables
- fixed image viewer
(for documentation purposes: both FreeImageNET.dll (compiled) and FreeImage.dll (in "Files") are required, the latter needs to be manuallycopied to the output folder)
Version 1.7.7, Update 10.12.11
- added support for newer (i.e., Shogun 2) unit_variant files
- added automatic opening of text editor for file types ".tai", ".xml.rigging", ".placement", ".hlsl"
- added "open as text" feature for any file (context menu)
- corrected display of unsupported db files in tree view
- improved performance of display of supported db files
Version 1.7.6, Update 05.12.11
- fixed setting of pack type
Version 1.7.5, Update 19.11.11
- now opens all ETW, NTW and TWS2 db files for which DBTypes are available
- fixed bug that prevented opening PFH2 pack files
Version 1.7.4, Update 15.11.11
- added copy/paste for range of cells
- added ctrl-c/ctrl-v keyboard shortcut for copy/paste
- much smoother hiding and revealing of db columns
- caught several errors crashing the PFM
- started adding support for older PFH files (NTW/ETW)
Version 1.7.3, Update 13.11.11
- added in-tool editing of table column description
- added possibility to hide columns in table
- added references between tables, making only valid values available in editor
- added check for new software version (no automatic download )
Video Introduction of the 1.7 features:
Feature Introduction Video
Version 1.7.2, Update 12.11.11
- Fixed bug that wouldn't let you save PFH3 tables (patch 9/10)
- Tree view now displays table entries for files with an outdated version with yellow background
- Added automatic update for outdated table versions
The automatic update fills new integer fields with 0s and string fields with empty strings.
Version 1.7.1, Update 11.11.11
- Fixed a bug that prevented using the DB with the highest version index (unit_stats_land)
- Tree view now displays table entries for files without the proper version file in red
- includes table description for most db tables now, only missing names_royalty and stats_clan.
Version 1.7.0, Update 11.11.11
As already announced, I started working on the Pack File Manager to get it up to date.
This now includes the additional data files provided by davidlallen.
Other changes:
- PFM will now read all files in the DBFileTypes folder named "DBFileTypes_[num]"
- provides update option to check for newer distribution of DBFileTypes
This should mean that it will be easier to add new updates to the DB descriptions and will not require a new version of the PFM itself.
There is no need to manually download the attachment.
Note: If you only want to change the type of your pack file:
I added a little tool so you can change it after saving.
You'll have to call it from the command line, like this:
Code:
setPackType.exe <packtype> [packfiles]
Valid <packtype>s are (b)oot, (r)elease, (p)atch, (m)od, mo(v)ie.
Make sure the files in the parameter list are packfiles; you'll probably break other files.
Note 2:
Again, you don't need to manually download the attachments here, the PFM has an automatic update feature to download and install them.
Last edited by daniu; September 29, 2013 at 04:54 AM.
Reason: added schema_26.zip
I made a breakthrough and can now read all databases from ETW/NTW and S2 (for which there is a db definition file of course).
If there isn't urgent demand for that, I'm not distributing it for the time being and implement some other features I have in mind.
Last edited by daniu; November 17, 2011 at 01:46 AM.
If you want to try out the automatic update, I put up a new DBFileTypes (avatar_units enabled).
Hit "Search For Updates" in your PFM to see if it's downloaded.
Had to issue 1.7.1 as a hotfix, previous version failed to open unit_stats_land due to a bug.
- Fixed a bug that prevented using the DB with the highest version index (unit_stats_land)
- Tree view now displays table entries for files without the proper version file in red
- includes table description for most db tables now, only missing names_royalty and stats_clan.
Hi! It still has error. When I've changed any value in the patch 10 file, then I can't save it and open it again. Could you test PFM 1.7.1 once more, please! When I use PFM 1.6.7 with davidlallen's DBFileTypes, it has no problem.
Okay, found the problem and fixed it, uploaded version 1.7.2.
- Fixed bug that wouldn't let you save PFH3 tables (patch 9/10)
- Tree view now displays table entries for files with an outdated version with yellow background
- Added automatic update for outdated table versions
The automatic update fills new integer fields with 0s and string fields with empty strings.
I'm sorry for the bumpy start, but AFAICT most stuff works now.
I hope the automatic update feature will be useful to keep mods up to date between table structure changes upon arrival of a patch;
I'm not a modder but would imagine that can be quite a drag.
If there is anything else that's a common problem during modding, let me know.
Last edited by daniu; November 12, 2011 at 04:12 AM.
- added in-tool editing of table column description
- added possibility to hide columns in table
- added references between tables, making only valid values available in editor
- added check for new software version (no automatic download )
Feature introduction video
Last edited by daniu; November 13, 2011 at 02:05 PM.
Shame I'm not modding any more, always wanted stuff like this.
Ultimate challenge could be cntrl-c, cntrl-v . Some players would also probably love it if you could add in functionality for the shogun .unit_variant files.
Last edited by The Hedge Knight; November 13, 2011 at 03:59 PM.
There is a copy/paste row, but it doesn't behave as I would expect.
My version actually copies the rows and creates new rows with the same data in them.
You think people would want that? Because I totally have that working.
Or do you mean copy/paste of cells? I'm sure that's possible too. Honestly, I'm pretty sure I can provide any function to the db editor people ask me for.
Accessing new file types is a different matter which requires analysing the files by going through them with a hex editor rather than writing code.
If anyone provides me with structures for new file types, I'll be happy to integrate them.
Some players would also probably love it if you could add in functionality for the shogun .unit_variant files.
The ones below "variantmodels"?
If anybody can tell me what they are supposed to do, or how they would be edited... I'm no modder.
PFM does open them, but they look strange.
Last edited by daniu; November 14, 2011 at 03:11 AM.
The ones below "variantmodels"?
If anybody can tell me what they are supposed to do, or how they would be edited... I'm no modder.
PFM does open them, but they look strange.
Yes, those.
Check the ntw ones, they are the same but pfm can read them properly. Taws tools do them, its great for mass changes but not so great for tiny tweaks.
Or do you mean copy/paste of cells? I'm sure that's possible too. Honestly, I'm pretty sure I can provide any function to the db editor people ask me for.
He means single cells, in the old pfm you have to do all changes for single cells by hand, which can get annoying if you have to do it for several units.
Btw, is the new PFM compatible with the older games, or will it be limited to S2?
No, this version will work with all previous games. AFAIK, anyway, I don't own any of them. The program code is the same; and the data files are versioned by CA and all the different versions are stored separately in the PFM data files. So PFM will pick up the proper definition for the older versions.
Yes, those. Check the ntw ones, they are the same but pfm can read them properly. Taws tools do them, its great for mass changes but not so great for tiny tweaks.
Hmmm... that would be integrating new (or in this case, changed) file structure... if the new ones work with taw's stuff, it'll be easier, but it's pretty low on my list right now.
Originally Posted by Primergy
He means single cells, in the old pfm you have to do all changes for single cells by hand, which can get annoying if you have to do it for several units.
Okay I'll put that in.
Funnily, the new feature of hiding cells get in the way of this: if a partial row has been selected, and there are hidden rows in the selection, should the values contained in them also get copied and pasted later? I think it's easier to copy them along, so I'll go with that first.
Originally Posted by davidlallen
No, this version will work with all previous games. AFAIK, anyway, I don't own any of them. The program code is the same; and the data files are versioned by CA and all the different versions are stored separately in the PFM data files. So PFM will pick up the proper definition for the older versions.
You'd think that, but it's actually rather confusing. When adapting PFM for S2, the code for the previous header structures seems to have been taken out... you'll get a "unknown db header" message with NTW. I'm sure I can get all files working, but again, this will cause other problems; for instance, the references between table are not the same for all db versions, and neither are the table definitions themselves. Even if I re-enable NTW packs, I'll have to take care not to update the contained db tables to a version that was only introduced in S2.
However, getting PFM to work on all Warscape games is the most worthwhile long term endeavor in my eyes. I'll definitely be getting into that.
When adapting PFM for S2, the code for the previous header structures seems to have been taken out... you'll get a "unknown db header" message with NTW. I'm sure I can get all files working,
That is too bad. I had not looked into the program code of PFM, but it would have been nice if both the old and new header formats could have been supported.
but again, this will cause other problems; for instance, the references between table are not the same for all db versions, and neither are the table definitions themselves. Even if I re-enable NTW packs, I'll have to take care not to update the contained db tables to a version that was only introduced in S2.
I am pretty sure that is not an issue. The header for each file contains the version number. And PFM can definitely deal with multiple version numbers for the same file. For example, unit_stats_land is defined for six different version numbers, in different db file type files. So assuming the headers can be read, dealing with different table versions is already supported and the data is all there.