Hopefully this is all figured out soon as the models in this game are really nice looking.






a bit?o0DemonBoy0o wrote:[...]and saves a bit of time
Code: Select all
0. -32, last addrFI (act.): 5700 (5700), vStart: 14c0 CORRECTION vertex count (944->937)!
1. 196496, last addrFI (act.): 3c580 (3c580), vStart: 6c80 --
2. 173312, last addrFI (act.): 3c580 (3e400), vStart: c5f0 --
3. 150752, last addrFI (act.): 3c580 (3ff80), vStart: 12050 --
4. 127280, last addrFI (act.): 3c580 (42400), vStart: 178a0 --
5. 103808, last addrFI (act.): 3c580 (43980), vStart: 1d450 --
6. 80624, last addrFI (act.): 3c580 (44e00), vStart: 23000 --
7. 57440, last addrFI (act.): 3c580 (46900), vStart: 28a90 --
8. 33984, last addrFI (act.): 3c580 (48480), vStart: 2e510 --
9. 10368, last addrFI (act.): 3c580 (49a00), vStart: 340c0 --
10. 16, last addrFI (act.): 3c580 (4ac80), vStart: 39cf0 CORRECTION vertex count (576->571)!
11. -48, last addrFI (act.): 4bd80 (4bd80), vStart: 4b5d0 CORRECTION vertex count (144->138)!
12. -32, last addrFI (act.): 4c300 (4c300), vStart: 4c050 CORRECTION vertex count (40->36)!
13. 7136, last addrFI (act.): 53a00 (53a00), vStart: 4c540 --
14. -64, last addrFI (act.): 53a00 (55c00), vStart: 51e20 CORRECTION vertex count (400->396)!
15. 32, last addrFI (act.): 57200 (57200), vStart: 564c0 CORRECTION vertex count (240->234)!
16. 80, last addrFI (act.): 57c80 (57c80), vStart: 57a20 no corr.
17. 32, last addrFI (act.): 57f00 (57f00), vStart: 57dc0 no corr.
18. 64, last addrFI (act.): 5b500 (5b500), vStart: 58070 CORRECTION vertex count (744->742)!
19. 32, last addrFI (act.): 5ee80 (5ee80), vStart: 5c940 CORRECTION vertex count (528->525)!
20. 16, last addrFI (act.): 64f80 (64f80), vStart: 5fae0 CORRECTION vertex count (984->980)!
21. 39456, last addrFI (act.): 75500 (75500), vStart: 65fc0 --
22. 15984, last addrFI (act.): 75500 (76b80), vStart: 6bae0 --
23. 0, last addrFI (act.): 75500 (78000), vStart: 71690 CORRECTION vertex count (888->887)!
24. 48272, last addrFI (act.): 8a600 (8a600), vStart: 78ee0 --
25. 24800, last addrFI (act.): 8a600 (8bf80), vStart: 7e970 --
26. 1472, last addrFI (act.): 8a600 (8d480), vStart: 84520 --
27. -80, last addrFI (act.): 8a600 (8ec80), vStart: 8a020 CORRECTION vertex count (88->83)!
28. 48, last addrFI (act.): 91880 (91880), vStart: 8ef40 CORRECTION vertex count (584->581)!
29. -32, last addrFI (act.): 92800 (92800), vStart: 92270 CORRECTION vertex count (104->98)!
30. 98768, last addrFI (act.): b1900 (b1900), vStart: 92ca0 --
31. 71152, last addrFI (act.): b1900 (b2f00), vStart: 99720 --
32. 43872, last addrFI (act.): b1900 (b4100), vStart: a0310 --
33. 16432, last addrFI (act.): b1900 (b5880), vStart: a6d90 --
34. -112, last addrFI (act.): b1900 (b6c80), vStart: ad8d0 CORRECTION vertex count (752->745)!
35. 112, last addrFI (act.): b9780 (b9780), vStart: b78d0 no corr.
36. 64, last addrFI (act.): bbb00 (bbb00), vStart: b9c80 no corr.
37. -64, last addrFI (act.): c0a00 (c0a00), vStart: bc000 CORRECTION vertex count (864->859)!
38. 41968, last addrFI (act.): d2b00 (d2b00), vStart: c1bd0 --
39. 14512, last addrFI (act.): d2b00 (d3e80), vStart: c8710 --
40. 80, last addrFI (act.): d2b00 (d5200), vStart: cf250 CORRECTION vertex count (656->654)!yep. Updated the download link above.I'm guessing it searches for 00 00 00 01 00 02 instead of going to the offset here?

Code: Select all
switch (FVFtype[cnt]) { // 0AE0-> FVF= 18 statt 14 bei Feisar!
//case 0x0C00:
case 0x09C0: strcpy(lines[2], "22 18") ; lastFVF= 22 ; break ;
//case 0x0AE0:
case 0x0A50: strcpy(lines[2], "18 14") ; lastFVF= 18 ; break ;
//case 0x0B70:
case 0x0AE0: strcpy(lines[2], "14 10") ; lastFVF= 14 ; break ; // set to 0AE1 for 'other'
case 0x0: break ; // leave last type
default: fprintf(stream, "ERROR with H2O%d: unknown FVFtype %x\n", cnt, FVFtype[cnt]) ;
}
cool finding!o0DemonBoy0o wrote:Thanks again. I think I might have found a solution for the FVFtype that seems to work on most if not all ships.
Looks like all we had to was not use those numbers as identifiers but go to that address itself.
It's limited to 99 submeshes which I thought to be sufficient for normal models.Also does Make_H2O have a limit on how many h2o files it can make? I wanted to try extracting a stage but those can have hundreds of meshes.

