I seem to have found another version of the MODL block, of type 21...
Now, this just seems very odd to me; the difference between type 20 and 23 were 24 byte, while the difference between type 20 and 21 are 8 byte. Now, anyone else notice that 8*3 = 24, like the number kinda denotes how many 8-byte something there is in the chunk? This surely cannot be a coincidence?
Or it might be flags, that's a possibility too. But I don't think the number is merely some ID, it has some other meaning to it.
Okay, I think they are flags, pretty much deciding which data to read. I guess each flag represent an optional entry in the struct, but dunno. At least that would make sense with the MODL chunk.