Tiledata.mul (Later clients)

Discussion in 'Ultima SDK' started by Triss, Sep 5, 2011.

  1. Triss

    Triss Sorceror

    Messages:
    1
    I was generating some paperdoll images and gump art was not matching.

    The old relation between a given object's Animation in tiledata and the gump data holds, but Ultima SDK can no longer read this data correctly, resulting in the data found in the item table to have the incorrect Animation ID.

    I have not verified if the Item tiledata has changed encoding, because land data (which is found first in the file) has changed significantly. I am assuming Item tile data is different as well because of how much encoding of land data changed.

    A comparison between 5.0.4d and 7.0.16.3 shows rather significant changes to header entries (0, 32, 64; anything that does not pass a bit wise and with 0x1F). Flags are also different on each respective tile. Header bytes on the first entry have been moved forward 4 bytes. The only data that remained the same is the ASCII name and texture ID word (Int16)-- and not even that is much to stand on because every other header entry appears to contain an extra 4 slots available for the name. (Don't quote me on the last bit here, that's the part I'm still analyzing)

    I am still working on updating Tiledata.cs within the Ultima.dll source on CodePlex but wanted to know if anyone had any insights into the format change.
  2. -hash-

    -hash- Sorceror

    Messages:
    51
    Attached is my file format for tiledata.mul as of 7.0.18.0.

    I haven't run any tests yet to see if any items make use of the extended Flags. I'll post more info if I find some that do make use of it.

    Edit:

    Updated the file to include what *might* be the new Flags. Still need to test to confirm.

    Edit #2:

    So far:

    * AlphaBlend is used by land tiles that transition from one type to another (e.g. half dirt, half grass)
    * PixelBleed is used by the High Seas ship tiles.
    * ArticleThe is used by various tiles (most sensibly with the profession tiles that can be found near the spell icons)
    * HoverOver is used on one or two things
    * MultiMovable is used only on old school ship masts it seems.
    * NoHouse is used by things like lava tiles, cave tiles...
    * NoShadow is used on several posts, poles, ruined walls.
    * There is a flag I have not documented 0x800000000 that is used by a few animated waterfall tiles. One instance is static tile 0x3524.

    All right. I'm fairly satisfied the file now contains accurate definitions (though, that's not to say it's 100% complete).

    And for the curious, this new format was introduced with v7.0.9.0 (Win32_UOSA 27) patch.

    Attached Files:

  3. Vorspire

    Vorspire Knight

    Messages:
    12,406
    From what I remeber when working on the PHP version of the UOSDK, I had to read in a flag of 0x40000 or close enough, which was apparently the new flag for wearable (also the first flag in the tile-data header I think), but not sure when this actually happened, all I know is that it's working now.
    Not even sure if it has anything to do with your problem, just thought I'd mention it since you're generating Paperdolls.

Share This Page