Results 1 to 14 of 14

Thread: Unifying PFM data with TAWS data

  1. #1

    Default Unifying PFM data with TAWS data

    Both PFM and TAWS have formats for a number of the db tables. However, the format information is not consistent between them. I have done some initial work to compare the format data. Attached is a spreadsheet with my result so far. There are 446 total tables documented in one tool or the other. Out of those:

    a. 1 Present in PFM, missing from TAW
    b. 136 Missing in PFM
    c. 234 Present in both, signatures (record size) match
    d. 75 Present in both, signature does not match

    For (a), it could be added to TAW. This is the unit_special_ability_types table in DBFileTypes_0.txt. It is not very exciting, it just has one string.

    For (b), I can write a script which will add these tables to PFM. For PFM users, this will reduce the number of unsupported tables. Personally, I am able to use PFM easily but I am not yet able to successfully install and use TAWS. So I suppose there are more users of PFM than of TAWS.

    For (c), there are a number of fields in PFM where there is a useful name like "Agent ID", where the TAWS name is only like "unknown21". I can write a script which will add this data into the schema.xml file of TAWS.

    For (d), it means that either PFM or TAWS isn't really able to read the table correctly. I will have to investigate these, and either update the PFM data (more likely) or the TAWS data (less likely).

    In column B, I show the different PFM versions. PFM contains a number of different files like DBFileTypes_nn.txt, where nn is the version number of the table. So a table may be defined in DBFileTypes_0.txt as well as DBFileTypes_1.txt. I have shown this as "0 1" in column B. There is a mystery file DBFileTypes.txt and DBFileTypes_1-2.txt, which I show as "base" and "1-2" respectively.

    If anybody can help out by explaining the meaning of these two mystery files in the PFM distribution it would be great. It isn't clear how the data in these two files should be used to show different versions. Also, in many cases there is the *same* format information for a table, repeated in the different files. This does not seem correct either; so any explanation would help.

    In column C, I show the different TAWS versions. In the schema.xml file, some of the fields have a "version_start" field. This documents in which table version a new field was added. If no fields were ever added, I show "base" in this column. If there are some different "version_start" values in the schema, I show these as numbers. So "base 2 3" means that there is at least one "version_start=2" and at least one "version_start=3" in the table definition.

    Theoretically, PFM and TAWS should have the same version information. But as you see, it hardly ever lines up. I am a little interested in getting these to line up; but not very. It would be awfully time-consuming to test.
    Last edited by davidlallen; July 27, 2011 at 07:04 PM.

  2. #2
    Artifex
    Patrician

    Join Date
    Oct 2008
    Location
    London, UK
    Posts
    1,332

    Default Re: Unifying PFM data with TAWS data

    PietroMicca sent me updated schema.xml today, I checked it and uploaded to etwng.
    It only changes column names.

    Could you use that?

  3. #3

    Default Re: Unifying PFM data with TAWS data

    OK, I have found all the places in the PFM data where PFM has a useful field title, and PietroMicca's newest schema.xml has "unknownN". There are 79 such places. Please find attached an updated schema.xml and also a file "changes.txt", which enumerates the exact changes. I am sure you will use "diff" or similar on schema.xml anyway.

    My next step is investigating the tables where the signature does not match. Then I will try generating DBFileType files, so that PFM users can benefit from all the table data in schema.xml.

  4. #4

    Default Re: Unifying PFM data with TAWS data

    I need some advice on how to "prove" whether PFM or TAWS is correct when the signatures don't match. For the 75 tables shown in my spreadsheet with non-matching signatures, I have gone through the first ten.

    a. 2 tables where the size does match and TAWS has more detail => use TAWS table

    b. 5 tables where the size is clearly different, and when I use PFM on patch7 files, it works => this evidence shows that TAWS is wrong

    c. 2 tables where the size is different, and PFM fails to open the patch7 file => "assume" that TAWS works and use TAWS table

    d. 1 table where the size is different, PFM opens it but shows a blank file => I suppose PFM is right, but the evidence is weak.

    For (b), I am surprised that so many tables "appear" to have wrong data in TAWS. I have still not been able to get TAWS installed and working, so I can't prove it. But PFM is able to load it, so I suppose it must have the right signature and TAWS must have the wrong signature.

    Details in the spoiler below.
    Spoiler Alert, click show to read: 

    The line "x" is the signature, a summary of the fields in the TAWS schema.xml file: "str" is string, "ostr" is optional string, "bool" is boolean, etc. The line "d" is a summary of the fields in the PFM DBFileTypes files. So for the "abilities" table, PFM has an extra string compared to TAWS, and PFM "appears" to be right.

    abilities
    x: str ostr str bool
    d: str ostr str str bool
    patch7: d works

    achievements
    x: str ostr
    d: str ostr str
    patch7: d works

    advice_levels
    x: str str int int str str str (15: int int bool int bool bool) str (4: ostr bool bool bool) str str bool
    d: str str int int str str str blob-15 str blob-4 str str bool
    size matches, x is better

    agent_culture_details
    x: str str str ostr int ostr int ostr ostr
    d: str str str ostr str int ostr str int ostr str ostr str
    patch7: d works

    agents
    x: str int int int bool str ostr bool str ostr int
    d: str int int int bool ostr str bool str ostr str int int int str str str str str str str str
    patch7: d works

    ancillaries
    x: str str str (3: bool bool bool) int int int (3: ostr ostr bool) str bool str
    d: str str str blob-3 int int int blob-3 str bool str
    size matches, x is better

    avatar_aesthetic_sets
    x: ostr str str str
    d: ostr str str str str
    patch7: d works

    avatar_aesthetics_localised_source_lookups
    x: str ostr
    d: str str
    patch7: d fails

    battle_script_strs
    x: str str str str
    d: str str str
    patch7: d fails

    battle_sky_types
    x: str str str str ostr str blob-2
    d: str str str str ostr str str blob-2
    patch7: d shows empty file?

  5. #5
    Artifex
    Patrician

    Join Date
    Oct 2008
    Location
    London, UK
    Posts
    1,332

    Default Re: Unifying PFM data with TAWS data

    Does PFM even check that it got all data etc.?
    If it silently ignores extra data at end of file, pads fille with zero,
    and ignores other errors, its "working" is a bad evidence of anything.

    You need to at least look at the data.

    I've seen quite a few db tables in mods which clearly come
    from tools that used wrong schema. Not sure if it was from old PFM or what.

    I checked my converter against patch7, and here are the results:
    abilities
    x: str ostr str bool
    d: str ostr str str bool
    patch7: d works
    x is correct, d is wrong
    achievements
    x: str ostr
    d: str ostr str
    patch7: d works
    x is correct, d is wrong
    advice_levels
    x: str str int int str str str (15: int int bool int bool bool) str (4: ostr bool bool bool) str str bool
    d: str str int int str str str blob-15 str blob-4 str str bool
    size matches, x is better
    x works
    agent_culture_details
    x: str str str ostr int ostr int ostr ostr
    d: str str str ostr str int ostr str int ostr str ostr str
    patch7: d works
    x works, d looks like reading frame failure. What's in int column?
    If it's numbers like 52*0x10000 etc. then yeah, d is 100% wrong
    agents
    x: str int int int bool str ostr bool str ostr int
    d: str int int int bool ostr str bool str ostr str int int int str str str str str str str str
    patch7: d works
    Table not supported by x, DB.xsd doesn't support removing columns,
    so I only support ETW schema. PFM is most likely correct, but I cannot merge it.

    ancillaries
    x: str str str (3: bool bool bool) int int int (3: ostr ostr bool) str bool str
    d: str str str blob-3 int int int blob-3 str bool str
    size matches, x is better
    x works

    avatar_aesthetic_sets
    x: ostr str str str
    d: ostr str str str str
    patch7: d works
    x works, d is wrong
    avatar_aesthetics_localised_source_lookups
    x: str ostr
    d: str str
    patch7: d fails
    x works, d is wrong

    battle_script_strs
    x: str str str str
    d: str str str
    patch7: d fails
    x works, d is wrong

    battle_sky_types
    x: str str str str ostr str blob-2
    d: str str str str ostr str str blob-2
    patch7: d shows empty file?
    It's empty in all S2TW packs anyway.
    x works with non-empty battle_sky_types in ETW/NTW.

  6. #6

    Default Re: Unifying PFM data with TAWS data

    I have learned that the mystery files DBFileTypes.txt and DBFileTypes_1-2.txt are not used, which makes my PFM version summary less confusing. I have updated my comparison spreadsheet (attached) to focus on tables where both PFM and schema.xml contain multiple versions of the table, but the version information does not match.

    For example if we look at the "agents" line, column B says that PFM has information for a version 0, version 1 and version 4 of the table. That is, there is a definition in DBFileTypes_0.txt, DBFileTypes_1.txt and DBFileTypes_4.txt. However the schema.xml contains only a base version with no version_start info. So it "may be" that PFM has useful information.

    For example if we look at the "battles" line, column C says that schema.xml has at least one version_start=3, at least one version_start=4, and at least one version_start=5. So here schema.xml seems to have more information; but still PFM has a version 1 which "may be" valuable.

    Can you suggest how I can tell which version information from PFM may be correct and useful?

    abilities
    x: str ostr str bool
    d: str ostr str str bool
    patch7: d works
    x is correct, d is wrong
    Can you explain more about how to tell PFM ("d") is wrong for this table? PFM never displays optional strings. For this table, it displays three valid strings and a bool. If the table size is wrong, I do not see how PFM could display it.

  7. #7

    Default Re: Unifying PFM data with TAWS data

    Quote Originally Posted by davidlallen View Post
    Can you explain more about how to tell PFM ("d") is wrong for this table? PFM never displays optional strings. For this table, it displays three valid strings and a bool. If the table size is wrong, I do not see how PFM could display it.
    I have learned more about the PFM format, and I agree your schema is right for this one. It turns out that in PFM, an optional string is represented by *both* a bool and a string:

    ->,Boolean,1;Value,string;

    Appears to be two separate elements, but that is how an optional string is represented. In my printouts I have (incorrectly) assumed that the "->,Boolean,1" was the entire optional string. But actually it is just a marker that the following string is optional. I will check, but I can "assume" that everywhere the "->,Boolean,1" marker appears, there is a string immediately following. This should greatly reduce the number of apparent size mismatches between the records.

    On the PFM thread, there is a lot of request to update either/both of PFM and TAWS to the latest patch; apparently key file unit_stats_land is no longer working in either tool.

  8. #8
    Artifex
    Patrician

    Join Date
    Oct 2008
    Location
    London, UK
    Posts
    1,332

    Default Re: Unifying PFM data with TAWS data

    Versions in schema.xml usually start at 1, as that's ETW's data.pack, and it's pretty much all supported.

    My converter doesn't support 16 (iirc) s2tw tables, including unit_stats_land and agents. I have full list of what's not supported on another computer.
    If you don't see any version_start for current version, it typically means it only works with older versions.
    Each version would typically add more columns.

    unit_stats_land and a few other such huge tables should totally work with converter
    if you updated schema.xml based on PFM's information. Every tables which only got columns
    added not deleted/changed can be represented in schema.xml
    Last edited by taw; July 30, 2011 at 01:23 PM.

  9. #9

    Default Re: Unifying PFM data with TAWS data

    Quote Originally Posted by taw View Post
    My converter doesn't support 16 (iirc) s2tw tables, including unit_stats_land and agents. I have full list of what's not supported on another computer.
    I found this post which lists 19 tables not yet supported in your converter. Is there any update?
    advice_levels
    agents
    avatar_campaign_maps
    avatar_units
    building_levels
    campaign_map_settlements
    campaign_map_slots
    campaign_map_towns_and_ports
    character_traits
    historical_characters
    ministerial_positions_by_gov_types
    missions
    models_building
    models_naval
    technologies
    uniform_to_faction_colours
    uniforms
    unit_stats_land
    unit_stats_naval

  10. #10

    Default Re: Unifying PFM data with TAWS data

    Well, adding the PFM data into schema.xml did not work as well as I hoped, and I had to manually edit a lot. Please find attached a new schema.xml. I am sure you will use "diff" to inspect the changes. You may reject any number of them. I do not have a way to test the schema.xml, but the data I have added is taken from PFM data which seems to work with patch7. I do not have a way to add version_start information.

    Here are the tables and the status.

    advice_levels - present in PFM but nonsensical
    agents - included
    avatar_campaign_maps - not present in PFM either
    avatar_units - you already got
    building_levels - included but still has unknowns
    campaign_map_settlements - included
    campaign_map_slots - included but still has unknowns
    campaign_map_towns_and_ports - present in PFM but nonsensical
    character_traits - included but still has unknowns
    historical_characters - included but still has unknowns
    ministerial_positions_by_gov_types - included
    missions - included
    models_building - not present in PFM either
    models_naval - not present in PFM either
    technologies - you already got
    uniform_to_faction_colours - included
    uniforms - included
    unit_stats_land - included, not working in either, pfm data "may help"
    unit_stats_naval - included

    It has been claimed that the new unit_stats_land has one boolean added at the end, but PFM itself sadly needs a software change to test this. If you have time, you could try that to see if it works. Many people have requested an update to PFM which supports this key file.

    My next step is to add about 130 tables from schema.xml into PFM, and then correct about 40 PFM tables where the schema.xml information seems "better". But I think I have extracted all the useful information from PFM into this schema.xml.

  11. #11
    Artifex
    Patrician

    Join Date
    Oct 2008
    Location
    London, UK
    Posts
    1,332

    Default Re: Unifying PFM data with TAWS data

    Here's the full status. Test set is every file from every pack I have plus a few random mods,
    organized as "<game>/<pack>/db/<table>/<file>".

    This is then analyzed by table. If all files for a table (from all games/packs) convert correctly,
    it's not listed here and you can assume it converts correctly.

    Otherwise there's count of files by game - correct/all.

    If some files from the same game convert and some don't, there's also a list of failing files. This currently happens only in one of two cases:

    • Some mods have broken tables.
    • Some ETW tables have patch.pack and newer supported, but nobody bothered fixing main.pack data, which is of only historical interest anyway.
    • Occasionally a new patch comes out and changes schema, but all these have been fixed.

    At the end there's list of failing tables by game.

    models_naval_tables/models_building_tables are not really tabular data and cannot be supported this way. 302 models_building_tables and 92 models_naval_tables constitute 70% of all failing db files.

    There's separate converter for models_building_tables which seems to even work on most
    S2TW models_building_tables files, except the most important one (models_building_tables/models_building).

    models_naval_tables doesn't even have a converter like that because it's just ridiculously complicated.

    Did it help, or do you need to know more?

    agents_tables (4/16):
    * etw: MIXED (4/5; failing: main.pack:agents)
    * ntw: FAIL (0/2)
    * s2tw: FAIL (0/7)
    * s2tw_demo: FAIL (0/2)

    avatar_campaign_maps_tables (0/9):
    * s2tw: FAIL (0/7)
    * s2tw_demo: FAIL (0/2)

    battlefield_buildings_tables (53/54):
    * etw: OK (2/2)
    * ntw: FAIL (0/1)
    * s2tw: OK (49/49)
    * s2tw_demo: OK (2/2)

    battles_tables (16/20):
    * etw: OK (7/7)
    * ntw: FAIL (0/4)
    * s2tw: OK (7/7)
    * s2tw_demo: OK (2/2)

    building_levels_tables (12/21):
    * etw: OK (9/9)
    * ntw: OK (3/3)
    * s2tw: FAIL (0/7)
    * s2tw_demo: FAIL (0/2)

    campaign_map_settlements_tables (4/13):
    * etw: OK (2/2)
    * ntw: OK (2/2)
    * s2tw: FAIL (0/7)
    * s2tw_demo: FAIL (0/2)

    campaign_map_slots_tables (4/13):
    * etw: OK (2/2)
    * ntw: OK (2/2)
    * s2tw: FAIL (0/7)
    * s2tw_demo: FAIL (0/2)

    campaign_map_towns_and_ports_tables (4/13):
    * etw: OK (2/2)
    * ntw: OK (2/2)
    * s2tw: FAIL (0/7)
    * s2tw_demo: FAIL (0/2)

    character_traits_tables (5/14):
    * etw: OK (3/3)
    * ntw: OK (2/2)
    * s2tw: FAIL (0/7)
    * s2tw_demo: FAIL (0/2)

    events_tables (11/12):
    * etw: OK (2/2)
    * ntw: FAIL (0/1)
    * s2tw: OK (7/7)
    * s2tw_demo: OK (2/2)

    factions_tables (14/16):
    * etw: OK (5/5)
    * ntw: FAIL (0/2)
    * s2tw: OK (7/7)
    * s2tw_demo: OK (2/2)

    historical_characters_tables (3/12):
    * etw: OK (1/1)
    * ntw: OK (2/2)
    * s2tw: FAIL (0/7)
    * s2tw_demo: FAIL (0/2)

    message_event_strings_tables (16/17):
    * etw: MIXED (4/5; failing: main.pack:message_event_strings)
    * ntw: OK (3/3)
    * s2tw: OK (7/7)
    * s2tw_demo: OK (2/2)

    ministerial_positions_by_gov_types_tables (5/14):
    * etw: OK (3/3)
    * ntw: OK (2/2)
    * s2tw: FAIL (0/7)
    * s2tw_demo: FAIL (0/2)

    missions_tables (2/11):
    * etw: OK (1/1)
    * ntw: OK (1/1)
    * s2tw: FAIL (0/7)
    * s2tw_demo: FAIL (0/2)

    models_building_tables (0/302):
    * etw: FAIL (0/3)
    * ntw: FAIL (0/1)
    * s2tw: FAIL (0/242)
    * s2tw_demo: FAIL (0/56)

    models_naval_tables (0/92):
    * etw: FAIL (0/2)
    * ntw: FAIL (0/1)
    * s2tw: FAIL (0/77)
    * s2tw_demo: FAIL (0/12)

    technologies_tables (15/18):
    * etw: MIXED (4/7; failing: CB_Light_Core.pack:CB_Mughal_technologies, DMUC_Core.pack:Darth_technologies_tables, darthmod.pack:Darth_technologies_tables)
    * ntw: OK (2/2)
    * s2tw: OK (7/7)
    * s2tw_demo: OK (2/2)

    uniform_to_faction_colours_tables (4/13):
    * ntw: OK (4/4)
    * s2tw: FAIL (0/7)
    * s2tw_demo: FAIL (0/2)

    uniforms_tables (4/13):
    * ntw: OK (4/4)
    * s2tw: FAIL (0/7)
    * s2tw_demo: FAIL (0/2)

    unit_special_ability_types_tables (0/1):
    * ntw: FAIL (0/1)

    unit_stats_land_tables (39/52):
    * etw: OK (39/39)
    * ntw: FAIL (0/4)
    * s2tw: FAIL (0/7)
    * s2tw_demo: FAIL (0/2)

    unit_stats_naval_crew_to_factions_tables (17/18):
    * etw: MIXED (8/9; failing: CB_Light_Core.pack:CB_Kosj_unit_stats_naval_crew_to_factions)
    * ntw: OK (2/2)
    * s2tw: OK (7/7)

    unit_stats_naval_tables (6/17):
    * etw: OK (6/6)
    * ntw: FAIL (0/2)
    * s2tw: FAIL (0/7)
    * s2tw_demo: FAIL (0/2)

    units_tables (49/54):
    * etw: OK (40/40)
    * ntw: FAIL (0/5)
    * s2tw: OK (7/7)
    * s2tw_demo: OK (2/2)

    warscape_equipment_items_tables (13/14):
    * etw: MIXED (2/3; failing: DMUC_UnitsPack.pack:warscape_equipment_items)
    * ntw: OK (2/2)
    * s2tw: OK (7/7)
    * s2tw_demo: OK (2/2)

    s2tw_demo:
    * agents_tables: FAIL (0/2)
    * avatar_campaign_maps_tables: FAIL (0/2)
    * building_levels_tables: FAIL (0/2)
    * campaign_map_settlements_tables: FAIL (0/2)
    * campaign_map_slots_tables: FAIL (0/2)
    * campaign_map_towns_and_ports_tables: FAIL (0/2)
    * character_traits_tables: FAIL (0/2)
    * historical_characters_tables: FAIL (0/2)
    * ministerial_positions_by_gov_types_tables: FAIL (0/2)
    * missions_tables: FAIL (0/2)
    * models_building_tables: FAIL (0/56)
    * models_naval_tables: FAIL (0/12)
    * uniform_to_faction_colours_tables: FAIL (0/2)
    * uniforms_tables: FAIL (0/2)
    * unit_stats_land_tables: FAIL (0/2)
    * unit_stats_naval_tables: FAIL (0/2)

    s2tw:
    * agents_tables: FAIL (0/7)
    * avatar_campaign_maps_tables: FAIL (0/7)
    * building_levels_tables: FAIL (0/7)
    * campaign_map_settlements_tables: FAIL (0/7)
    * campaign_map_slots_tables: FAIL (0/7)
    * campaign_map_towns_and_ports_tables: FAIL (0/7)
    * character_traits_tables: FAIL (0/7)
    * historical_characters_tables: FAIL (0/7)
    * ministerial_positions_by_gov_types_tables: FAIL (0/7)
    * missions_tables: FAIL (0/7)
    * models_building_tables: FAIL (0/242)
    * models_naval_tables: FAIL (0/77)
    * uniform_to_faction_colours_tables: FAIL (0/7)
    * uniforms_tables: FAIL (0/7)
    * unit_stats_land_tables: FAIL (0/7)
    * unit_stats_naval_tables: FAIL (0/7)

    ntw:
    * agents_tables: FAIL (0/2)
    * battlefield_buildings_tables: FAIL (0/1)
    * battles_tables: FAIL (0/4)
    * events_tables: FAIL (0/1)
    * factions_tables: FAIL (0/2)
    * models_building_tables: FAIL (0/1)
    * models_naval_tables: FAIL (0/1)
    * unit_special_ability_types_tables: FAIL (0/1)
    * unit_stats_land_tables: FAIL (0/4)
    * unit_stats_naval_tables: FAIL (0/2)
    * units_tables: FAIL (0/5)

    etw:
    * agents_tables: MIXED (4/5; failing: main.pack:agents)
    * message_event_strings_tables: MIXED (4/5; failing: main.pack:message_event_strings)
    * models_building_tables: FAIL (0/3)
    * models_naval_tables: FAIL (0/2)
    * technologies_tables: MIXED (4/7; failing: CB_Light_Core.pack:CB_Mughal_technologies, DMUC_Core.pack:Darth_technologies_tables, darthmod.pack:Darth_technologies_tables)
    * unit_stats_naval_crew_to_factions_tables: MIXED (8/9; failing: CB_Light_Core.pack:CB_Kosj_unit_stats_naval_crew_to_factions)
    * warscape_equipment_items_tables: MIXED (2/3; failing: DMUC_UnitsPack.pack:warscape_equipment_items)

  12. #12

    Default Re: Unifying PFM data with TAWS data

    Quote Originally Posted by taw View Post
    s2tw:
    * agents_tables: FAIL (0/7)
    * avatar_campaign_maps_tables: FAIL (0/7)
    * building_levels_tables: FAIL (0/7)
    * campaign_map_settlements_tables: FAIL (0/7)
    * campaign_map_slots_tables: FAIL (0/7)
    * campaign_map_towns_and_ports_tables: FAIL (0/7)
    * character_traits_tables: FAIL (0/7)
    * historical_characters_tables: FAIL (0/7)
    * ministerial_positions_by_gov_types_tables: FAIL (0/7)
    * missions_tables: FAIL (0/7)
    * models_building_tables: FAIL (0/242)
    * models_naval_tables: FAIL (0/77)
    * uniform_to_faction_colours_tables: FAIL (0/7)
    * uniforms_tables: FAIL (0/7)
    * unit_stats_land_tables: FAIL (0/7)
    * unit_stats_naval_tables: FAIL (0/7)
    I agree. If you use my schema.xml you will see that 11 of these tables will now work (agents building_levels* campaign_map_settlements campaign_map_slots* character_traits* historical_characters* ministerial_positions_by_gov_types missions uniform_to_faction_colours uniforms unit_stats_naval). Several of the tables (with *) will now work; but even the PFM data still shows some unknowns. So this is an improvement over your schema, but it is still not perfect. For the other tables you quoted, PFM cannot help.

    Can I give you any additional information about these 11 tables, or do you feel you can add these changes into your schema.xml?

    In other news ...

    There are about 136 tables in your schema.xml which do not exist at all in the current pfm data. I have converted these to pfm. About half of them now work, which is good. But half do not. The reason seems to be that your schema does not indicate a general version number, so the best I can do is "assume" it is version 0. However, if pfm finds a version 1 table, it will not apply the version 0 data. I guess your converter does not care if the version has a mismatch like this. So pfm is a little more strict.

    I have manually investigated a few tables, which I actually care about (the dilemma tables, remember? :-)) and moved the converted schema data into the proper DBFileTypes_nn.txt file. I don't think there is a good automatic way to do this. So probably when I release updated pfm tables, it will only include about 70 new tables.

    In still other news ...

    There was a news announcement a few weeks ago that CA had released all the table data for older programs (not TWS2). T.C has updated the NTW PFM table data. See this thread. Have you seen this? I do not know enough about how schema.xml is generated, to know if you can benefit from this. Can you get any information from this to add into your schema.xml?

  13. #13

    Default Re: Unifying PFM data with TAWS data

    I was able to add information to my translator to use the correct version for the tables where the only known version is not 0. I have released a new version of the pfm data tables with 24 tables fixed, and 128 new tables added. Please see this thread for details. That completes my project for now.

    Several people have requested updating your converter for unit_stats_land. This ""should be easy"" for you to do given my above schema, and the extra information that patch7 adds 18 bytes to the end of the field. Please see this thread for more details.

    I have looked briefly at the CA table data mentioned in my previous post. Although that data was helpful for NTW, it seems that most of the tables are already available, with later version numbers, in your schema.xml. I will look further; perhaps some field names may be useful; but I did not find anything that got me really excited.

  14. #14
    Artifex
    Patrician

    Join Date
    Oct 2008
    Location
    London, UK
    Posts
    1,332

    Default Re: Unifying PFM data with TAWS data

    Here's updated list of failing tables. I fixed a lot of NTW tables and removed badly encoded mods from ETW test set.

    agents_tables (2/15):
    * etw: MIXED (2/3; failing: main.pack:agents)
    * ntw: FAIL (0/2)
    * s2tw: FAIL (0/8)
    * s2tw_demo: FAIL (0/2)

    avatar_campaign_maps_tables (0/10):
    * s2tw: FAIL (0/8)
    * s2tw_demo: FAIL (0/2)

    avatar_units_tables (9/10):
    * s2tw: MIXED (7/8; failing: patch8.pack:avatar_units)
    * s2tw_demo: OK (2/2)

    battlefield_buildings_tables (61/62):
    * etw: OK (2/2)
    * ntw: FAIL (0/1)
    * s2tw: OK (57/57)
    * s2tw_demo: OK (2/2)

    building_levels_tables (8/18):
    * etw: OK (5/5)
    * ntw: OK (3/3)
    * s2tw: FAIL (0/8)
    * s2tw_demo: FAIL (0/2)

    campaign_map_settlements_tables (4/14):
    * etw: OK (2/2)
    * ntw: OK (2/2)
    * s2tw: FAIL (0/8)
    * s2tw_demo: FAIL (0/2)

    campaign_map_slots_tables (4/14):
    * etw: OK (2/2)
    * ntw: OK (2/2)
    * s2tw: FAIL (0/8)
    * s2tw_demo: FAIL (0/2)

    campaign_map_towns_and_ports_tables (4/14):
    * etw: OK (2/2)
    * ntw: OK (2/2)
    * s2tw: FAIL (0/8)
    * s2tw_demo: FAIL (0/2)

    character_traits_tables (5/15):
    * etw: OK (3/3)
    * ntw: OK (2/2)
    * s2tw: FAIL (0/8)
    * s2tw_demo: FAIL (0/2)

    historical_characters_tables (3/13):
    * etw: OK (1/1)
    * ntw: OK (2/2)
    * s2tw: FAIL (0/8)
    * s2tw_demo: FAIL (0/2)

    message_event_strings_tables (17/18):
    * etw: MIXED (4/5; failing: main.pack:message_event_strings)
    * ntw: OK (3/3)
    * s2tw: OK (8/8)
    * s2tw_demo: OK (2/2)

    ministerial_positions_by_gov_types_tables (3/13):
    * etw: OK (1/1)
    * ntw: OK (2/2)
    * s2tw: FAIL (0/8)
    * s2tw_demo: FAIL (0/2)

    missions_tables (2/12):
    * etw: OK (1/1)
    * ntw: OK (1/1)
    * s2tw: FAIL (0/8)
    * s2tw_demo: FAIL (0/2)

    models_building_tables (0/342):
    * etw: FAIL (0/3)
    * ntw: FAIL (0/1)
    * s2tw: FAIL (0/282)
    * s2tw_demo: FAIL (0/56)

    models_naval_tables (0/104):
    * etw: FAIL (0/2)
    * ntw: FAIL (0/1)
    * s2tw: FAIL (0/89)
    * s2tw_demo: FAIL (0/12)

    uniform_to_faction_colours_tables (4/14):
    * ntw: OK (4/4)
    * s2tw: FAIL (0/8)
    * s2tw_demo: FAIL (0/2)

    uniforms_tables (4/14):
    * ntw: OK (4/4)
    * s2tw: FAIL (0/8)
    * s2tw_demo: FAIL (0/2)

    unit_special_ability_types_tables (0/1):
    * ntw: FAIL (0/1)

    unit_stats_land_tables (6/20):
    * etw: OK (6/6)
    * ntw: FAIL (0/4)
    * s2tw: FAIL (0/8)
    * s2tw_demo: FAIL (0/2)

    unit_stats_naval_tables (5/15):
    * etw: OK (3/3)
    * ntw: OK (2/2)
    * s2tw: FAIL (0/8)
    * s2tw_demo: FAIL (0/2)

    s2tw_demo:
    * agents_tables: FAIL (0/2)
    * avatar_campaign_maps_tables: FAIL (0/2)
    * building_levels_tables: FAIL (0/2)
    * campaign_map_settlements_tables: FAIL (0/2)
    * campaign_map_slots_tables: FAIL (0/2)
    * campaign_map_towns_and_ports_tables: FAIL (0/2)
    * character_traits_tables: FAIL (0/2)
    * historical_characters_tables: FAIL (0/2)
    * ministerial_positions_by_gov_types_tables: FAIL (0/2)
    * missions_tables: FAIL (0/2)
    * models_building_tables: FAIL (0/56)
    * models_naval_tables: FAIL (0/12)
    * uniform_to_faction_colours_tables: FAIL (0/2)
    * uniforms_tables: FAIL (0/2)
    * unit_stats_land_tables: FAIL (0/2)
    * unit_stats_naval_tables: FAIL (0/2)

    s2tw:
    * agents_tables: FAIL (0/8)
    * avatar_campaign_maps_tables: FAIL (0/8)
    * avatar_units_tables: MIXED (7/8; failing: patch8.pack:avatar_units)
    * building_levels_tables: FAIL (0/8)
    * campaign_map_settlements_tables: FAIL (0/8)
    * campaign_map_slots_tables: FAIL (0/8)
    * campaign_map_towns_and_ports_tables: FAIL (0/8)
    * character_traits_tables: FAIL (0/8)
    * historical_characters_tables: FAIL (0/8)
    * ministerial_positions_by_gov_types_tables: FAIL (0/8)
    * missions_tables: FAIL (0/8)
    * models_building_tables: FAIL (0/282)
    * models_naval_tables: FAIL (0/89)
    * uniform_to_faction_colours_tables: FAIL (0/8)
    * uniforms_tables: FAIL (0/8)
    * unit_stats_land_tables: FAIL (0/8)
    * unit_stats_naval_tables: FAIL (0/8)

    ntw:
    * agents_tables: FAIL (0/2)
    * battlefield_buildings_tables: FAIL (0/1)
    * models_building_tables: FAIL (0/1)
    * models_naval_tables: FAIL (0/1)
    * unit_special_ability_types_tables: FAIL (0/1)
    * unit_stats_land_tables: FAIL (0/4)

    etw:
    * agents_tables: MIXED (2/3; failing: main.pack:agents)
    * message_event_strings_tables: MIXED (4/5; failing: main.pack:message_event_strings)
    * models_building_tables: FAIL (0/3)
    * models_naval_tables: FAIL (0/2)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •