These are chat archives for Kuree/Sims4Tools

2nd
Nov 2014
Keyi Zhang
@Kuree
Nov 02 2014 14:46
My current decoding code can parse 0x025ED6F4-0x00000000-0x61B4C36E2B02A9FD
but failed to parse 0x025ED6F4-0x00000000-0x31F7DA1A7DD35737
I think I found the reason
Keyi Zhang
@Kuree
Nov 02 2014 14:54
the one that failed to be parsed is very different from others
for normal SIMO it has slider float value
but these ones doesn't have such slider rederence
Keyi Zhang
@Kuree
Nov 02 2014 14:59
They're totally different
Keyi Zhang
@Kuree
Nov 02 2014 15:06
I hard coded one filed as it is almost unused in most resource, however, that part is used in these abnormal ones
Snaitf
@Snaitf
Nov 02 2014 17:45

Looking at your current committed code:
I'm pretty sure that unknown9 is age, unknown10 is gender, and unknown11 is a TONE IID.
I see that your sub-class is called UnknownRederence (with a D instead of an F), was that on purpose or a typo?

I've also noticed that the first count (unknown18's size, right after the TONE IID) is equal to the number of TGI's in the first set of the TGI list (the 0x9D1AB874's), and the second count (sliderReferences1.SliderReferece.count) plus the third count (sliderReferences2.SliderReference.count) is equal to the second set (0xC5F6763E). Leaving the 3rd set (0x034AEECB) equal to the tgi count minus those 2 values.

If you look at 0x025ED6F4-0x00000000-0x0B07596E1B1F187A you'll see that it looks like a "normal" one, but it's not, notice that unknown18 is acutally 9x8 instead of 9x9.

Just before the TGI list, there is a list of DATA IIDs preceded by a count (look at 0x025ED6F4-0x00000000-0xE8EF84103B89A6 and 0x025ED6F4-0x00000000-0x61B4C36E2B02A9FD)

Hope all this helps, I'll keep studying...

Keyi Zhang
@Kuree
Nov 02 2014 18:42
uh that's a typo
Thank you for you information
I will look at them once I got time
Keyi Zhang
@Kuree
Nov 02 2014 19:38
@Snaitf Would you please explain the unknown18 parts in details?
Snaitf
@Snaitf
Nov 02 2014 22:56
Oh, I don't know, I just see that normally it is 01 00 00 00 00 00 00 00 00 02 00 00 00 00 00 00 00 00 ... 09 00 00 00 00 00 00 00 00 which is why you use a dataBlob of 9x9, I was pointing out that some of them (like the one I mentioned) only go to 08 instead of 09, I thought maybe you could use this information when trying to figure out what it is. :question:
Keyi Zhang
@Kuree
Nov 02 2014 22:58
My thought is that I have something missing in the 54 bytes block
it might have a count or other flags
Snaitf
@Snaitf
Nov 02 2014 22:59
inbetween the two sliderRefrence blocks, you mean?
I have been trying to figure that out, too
Keyi Zhang
@Kuree
Nov 02 2014 23:00
yes
 // In some resources, especially those without slider reference, expand these part, thus is not 54 bytes any more 
this.unknown13 = new DataBlobHandler(RecommendedApiVersion, OnResourceChanged, r.ReadBytes(54));
            this.unknown14 = new UnknownReferenceList(OnResourceChanged, s, tgiList);
Snaitf
@Snaitf
Nov 02 2014 23:00
right
Keyi Zhang
@Kuree
Nov 02 2014 23:00
duh
I hate this formating
nvm
Snaitf
@Snaitf
Nov 02 2014 23:01
lol
Keyi Zhang
@Kuree
Nov 02 2014 23:02
failed to do a markdown \
Snaitf
@Snaitf
Nov 02 2014 23:02
hmm, noob question: what's a markdown?
Keyi Zhang
@Kuree
Nov 02 2014 23:03
it's a markup language used by github
and gitter
like bbcode
Snaitf
@Snaitf
Nov 02 2014 23:04
oic
Keyi Zhang
@Kuree
Nov 02 2014 23:04
but much better as it's based on css
var test = 1;
Snaitf
@Snaitf
Nov 02 2014 23:04
yea, this chat takes some getting used too, but I actually rather like it
Keyi Zhang
@Kuree
Nov 02 2014 23:04
cool it can recognize C# markdown
all the conversations are archived
Snaitf
@Snaitf
Nov 02 2014 23:05
yea, that's a definate plus
*definite
Keyi Zhang
@Kuree
Nov 02 2014 23:06
any other discovery about TS4?
cool even latex code is supported here
latex
Snaitf
@Snaitf
Nov 02 2014 23:06
ummmm, in general? not much. Oh, i've identified a few of the ExcludePartFlags in CASP files
Keyi Zhang
@Kuree
Nov 02 2014 23:07
I would rather wait for EA's explanation for that part
Snaitf
@Snaitf
Nov 02 2014 23:07
well, it's definately a 64 bit binary flag (much like the parmFlags)
and setting certain bits on will make those items not appear on the sim when wearing the item with them flagged
Keyi Zhang
@Kuree
Nov 02 2014 23:08
interesting
I need to do homework. have two exams this week
ttyl
Snaitf
@Snaitf
Nov 02 2014 23:10
like, if you make some CC shoes, for example, and in the shoes' CASP file, set the ExcludePartFlags to 0x000000000000000C, when your sim wears the shoes, the sims head will be invisible
oh, ok then, have fun with the hw
cya
Snaitf
@Snaitf
Nov 02 2014 23:47

Ok, so here's something.

If you look at 0x025ED6F4-0x00000000-0x61B4C36E2B02A9FD again, refering to the space between the 2 slider blocks, there's the 54 byte dataBlob, then the unknownReferenceList (Size of 9, in this case). But after that, there are 26 bytes, then ANOTHER unknownReferenceList (again, with the size of 9), and then 26 more bytes, and yet ANOTHER unknownReferenceList (9), and then another 26 bytes, and another list (9), then another 26 bytes, and another list (this time, size 10 [0x0A]), which is followed by the repetition of the slider block.

So, that paticular file has a total of 5 unknownRefereceLists

Thought I'd point that out, in case you hadn't noticed the pattern.