OBD:TURR: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
m (changed family; terminology) |
||
(11 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
:''This is about the turret class resource. For turret instances, see [[OBD:BINA/OBJC/TURR]] | :''This is about the turret class resource. For turret instances, see [[OBD:BINA/OBJC/TURR]]. | ||
{{OBD_File_Header | type=TURR | prev=TStr | next=TXAN | name=Turret | family= | {{OBD_File_Header | type=TURR | prev=TStr | next=TXAN | name=Turret | family=Level | align=center}} | ||
Line 6: | Line 6: | ||
[[ | [[Image:turr_a.gif]] | ||
Line 12: | Line 12: | ||
{{OBD_Table_Header}} | {{OBD_Table_Header}} | ||
|- ALIGN=CENTER VALIGN=TOP | |- ALIGN=CENTER VALIGN=TOP | ||
{{OBDtr| 0x000 | res_id |FF0000| 01 BF 01 00 | 447 | | {{OBDtr| 0x000 | res_id |FF0000| 01 BF 01 00 | 447 | ID for TURRsap_turret_floor }} | ||
{{OBDtr| 0x004 | lev_id |FFFF00| 01 00 00 00 | 0 | level 0 }} | {{OBDtr| 0x004 | lev_id |FFFF00| 01 00 00 00 | 0 | level 0 }} | ||
{{OBDtr2|0x008 | char[64] |FFC8C8| sap_turret_floor | name of this file }} | {{OBDtr2|0x008 | char[64] |FFC8C8| sap_turret_floor | name of this file }} | ||
{{OBDtr| 0x048 | int32 |FFFFC8| 00 00 00 00 | 0 | unknown; always zero }} | {{OBDtr| 0x048 | int32 |FFFFC8| 00 00 00 00 | 0 | unknown; always zero }} | ||
{{OBDtr| 0x04C | char[8] |C8FFC8| AD DE | dead | unused }} | {{OBDtr| 0x04C | char[8] |C8FFC8| AD DE | dead | unused }} | ||
{{OBDtr| 0x054 | int16 |C8FFFF| 00 00 | 0 | unknown; always zero }} | {{OBDtr| 0x054 | int16 |C8FFFF| 00 00 | 0 | unknown; always zero; (ignored) amount of shots? }} | ||
{{OBDtr| 0x056 | int16 |C8FFFF| 07 00 | 7 | amount of | {{OBDtr| 0x056 | int16 |C8FFFF| 07 00 | 7 | amount of particles (the array contains space for 16 elements) }} | ||
{{OBDtr| 0x058 | int16 |C8FFFF| 01 00 | 1 | unknown; always the same }} | {{OBDtr| 0x058 | int16 |C8FFFF| 01 00 | 1 | unknown; always the same; amount of firing modes? }} | ||
{{OBDtr| 0x05A | char[6] |FFC8FF| AD DE | dead | unused }} | {{OBDtr| 0x05A | char[6] |FFC8FF| AD DE | dead | unused }} | ||
{{OBDtr| 0x060 | link |FFC800| 01 C0 01 00 | 448 | link to | {{OBDtr| 0x060 | link |FFC800| 01 C0 01 00 | 448 | link to [[M3GM]]00448 - turret body }} | ||
{{OBDtr| 0x064 | link |FFC800| 00 00 00 00 | 0 | obsolete [[OBLS]] link | {{OBDtr| 0x064 | link |FFC800| 00 00 00 00 | 0 | obsolete [[OBLS]] link }} | ||
{{OBDtr| 0x068 | link |FFC800| 00 00 00 00 | 0 | unknown; always zero; | {{OBDtr| 0x068 | link |FFC800| 00 00 00 00 | 0 | unknown; always zero; body-something? }} | ||
{{OBDtr| 0x06C | link |FFC800| 01 C3 01 00 | 451 | link to | {{OBDtr| 0x06C | link |FFC800| 01 C3 01 00 | 451 | link to [[M3GM]]00451 - turret head }} | ||
{{OBDtr| 0x070 | link |FFC800| 00 00 00 00 | 0 | unknown; always zero; | {{OBDtr| 0x070 | link |FFC800| 00 00 00 00 | 0 | unknown; always zero; head-something? }} | ||
{{OBDtr| 0x074 | link |FFC800| 01 C4 01 00 | 452 | link to | {{OBDtr| 0x074 | link |FFC800| 01 C4 01 00 | 452 | link to [[M3GM]]00452 - turret gun }} | ||
{{OBDtr| 0x078 | link |FFC800| 00 00 00 00 | 0 | unknown; always zero; | {{OBDtr| 0x078 | link |FFC800| 00 00 00 00 | 0 | unknown; always zero; gun-something? }} | ||
{{OBDtr| 0x07C | float |C800C8| 0D F8 C1 34 | 0.000000... | X translation for turret | {{OBDtr| 0x07C | float |C800C8| 0D F8 C1 34 | 0.000000... | X translation for turret head (body-relative) }} | ||
{{OBDtr| 0x080 | float |C800C8| CF B4 07 41 | 8.481642 | Y translation for turret | {{OBDtr| 0x080 | float |C800C8| CF B4 07 41 | 8.481642 | Y translation for turret head (body-relative) }} | ||
{{OBDtr| 0x084 | float |C800C8| 13 A2 03 34 | 0.000000... | Z translation for turret | {{OBDtr| 0x084 | float |C800C8| 13 A2 03 34 | 0.000000... | Z translation for turret head (body-relative) }} | ||
{{OBDtr| 0x088 | float |C800C8| DA F5 9F B1 |-0.000000... | X translation for turret | {{OBDtr| 0x088 | float |C800C8| DA F5 9F B1 |-0.000000... | X translation for turret gun (head-relative) }} | ||
{{OBDtr| 0x08C | float |C800C8| 1D FC 33 32 | 0.000000... | Y translation for turret | {{OBDtr| 0x08C | float |C800C8| 1D FC 33 32 | 0.000000... | Y translation for turret gun (head-relative) }} | ||
{{OBDtr| 0x090 | float |C800C8| F7 FE 3F B3 |-0.000000... | Z translation for turret | {{OBDtr| 0x090 | float |C800C8| F7 FE 3F B3 |-0.000000... | Z translation for turret gun (head-relative) }} | ||
|} | |||
;Particle array (see [[ONWC]]) | |||
:The particle elements are not exactly the same as in ONWC (4 bytes shorter) | |||
{{Table}} | |||
{{OBD_Table_Header}} | |||
{{OBDtrBK}} | {{OBDtrBK}} | ||
{{OBDtr2|0x000 | char[16] |C87C64| w2_sap_e01 | 3D particle name (reference to | {{OBDtr2|0x000 | char[16] |C87C64| w2_sap_e01 | 3D particle name (reference to [[OBD:BINA/PAR3|BINA/PAR3]]w2_sap_e01) }} | ||
{{OBDtr| 0x010 | int32 |B0C3D4| 00 00 00 00 | 0 | | {{OBDtr| 0x010 | int32 |B0C3D4| 00 00 00 00 | 0 | runtime only: pointer to particle class }} | ||
{{OBDtr| 0x014 | int32 |B0C3D4| 05 00 00 00 | 5 | | {{OBDtr| 0x014 | int32 |B0C3D4| 05 00 00 00 | 5 | delay between shots in frames; here, 5/60 <nowiki>=</nowiki> 0.0833 s }} | ||
{{OBDtr| 0x018 | float |E7CEA5| B0 90 9F B8 | -0.000076 | x1 coefficient of transform matrix ^_^ }} | {{OBDtr| 0x018 | float |E7CEA5| B0 90 9F B8 | -0.000076 | x1 coefficient of transform matrix ^_^ }} | ||
{{OBDtr| 0x01C | float |E7CEA5| 9E C1 7F 3F | 0.999048 | y1 coefficient of transform matrix ^_^ }} | {{OBDtr| 0x01C | float |E7CEA5| 9E C1 7F 3F | 0.999048 | y1 coefficient of transform matrix ^_^ }} | ||
Line 52: | Line 59: | ||
{{OBDtr| 0x048 | char[4] |FFDDDD| AD DE | dead | unused }} | {{OBDtr| 0x048 | char[4] |FFDDDD| AD DE | dead | unused }} | ||
|} | |} | ||
[[Image:turr_e.gif]] | |||
[[ | |||
;Firing mode (see [[ONWC]]) | |||
:Turret firing spreads are not shown for [[ai2_showfiringspreads]]=1, which makes it harder to check the floats at 0x588, 0x58C, 0x590, 0x5C8, 0x5CC, 0x5D0. | |||
{{Table}} | |||
{{OBD_Table_Header}} | |||
|- ALIGN=CENTER VALIGN=TOP | |||
{{OBDtr| 0x554 | int32 |64AAAA| 00 00 00 00 | 0 | firing mode options; the following bits are possible (values in hex): 0x01 00 00 00 - No wild shots }} | |||
{{OBDtrMatrix4x3|0x0DC|EBEBEB|81 FD 7F 3F|8E A7 47 39|1A F8 0E 3C|8E A7 47 39|A0 C1 7F 3F|6F A9 32 BD|1A F8 0E BC|6F A9 32 3D|21 BF 7F 3F|00 00 00 00|00 00 00 00|00 00 00 00|0.999962|0.000190|0.008726|0.000190|0.999048| -0.043619| -0.008726|0.043619|0.999010|0.000000|0.000000|0.000000|targeting inverse transform matrix - the inverse of the matrix that gives the targeting direction}} | |||
{{OBDtrVector3| 0x588 |FF00C8| 62 F8 0E 3C | C9 A9 32 BD | 21 BF 7F 3F | 0.008726 | -0.043619 | 0.999010 | targeting direction }} | |||
{{OBDtrVector3| 0x594 |FF00C8| 44 57 B9 BD | 73 27 D9 3D | D1 99 B1 3B | -0.090498 | 0.106032 | 0.005420 | targeting origin }} | |||
{{OBDtr| 0x5A0 | float |F0F096| 00 00 96 44 | 1200.000000 | prediction speed }} | |||
{{OBDtr| 0x5A4 | float |F0F096| 00 00 00 00 | 0.000000 | inaccuracy tolerance; always 0 for TURR }} | |||
{{OBDtr| 0x5A8 | float |F0F096| 00 00 20 40 | 2.500000 | aim radius; always the same for TURR and ONWC }} | |||
{{OBDtr| 0x5AC | float |F0F096| 00 00 48 44 | 800.000000 | sound sphere radius; always the same for TURR }} | |||
{{OBDtr| 0x5B0 | float |F0F096| 00 00 00 00 | 0.000000 | minimal shooting distance; always 0 for TURR }} | |||
{{OBDtr| 0x5B4 | float |F0F096| 00 00 00 00 | 0.000000 | maximal shooting distance; always 0 for TURR }} | |||
{{OBDtr| 0x5B8 | int16 |00C864| 05 00 | 5 | maximum startle misses }} | |||
{{OBDtr| 0x5BA | int16 |00C864| 00 00 | 0 | AI shooting skill ID; always 0 for TURR }} | |||
{{OBDtr| 0x5BC | int32 |00C864| 00 00 00 00 | 0 | fight timer; always 0 for TURR; 240 for ONWCw4_psm, 200 for ONWCv6_vdg }} | |||
{{OBDtr| 0x5C0 | float |00C864| 00 00 00 00 | 0.000000 | ballistic projectile speed (150 for ONWCw5_sbg, 160 for w11_ba1); always 0 for TURR }} | |||
{{OBDtr| 0x5C4 | float |00C864| 00 00 00 00 | 0.000000 | ballistic projectile gravity (0.5 for ONWCw5_sbg, 0.3 for w11_ba1); always 0 for TURR }} | |||
{{OBDtr| 0x5C8 | float |00C864| 00 00 00 00 | 0.000000 | length of firing spread; always 0 for TURR }} | |||
{{OBDtr| 0x5CC | float |00C8FF| 00 00 00 00 | 0.000000 | width of firing spread; always 0 for TURR }} | |||
{{OBDtr| 0x5D0 | float |00C8FF| 00 00 00 00 | 0.000000 | skew angle of firing spread; always 0 for TURR }} | |||
|} | |||
;Same as in [[ONCC]] at 0x140-0x158 | |||
{{Table}} | |||
{{OBD_Table_Header}} | |||
{{OBDtr| 0x5D4 | float |00C8FF| 00 00 00 3F | 0.500000 | unknown; something with prediction? always the same for TURR and ONCC }} | |||
{{OBDtr| 0x5D8 | float |00C8FF| 00 00 F0 42 | 120.000000 | unknown; something with prediction? always the same for TURR and ONCC }} | |||
{{OBDtr| 0x5DC | float |00C8FF| 00 00 80 3F | 1.000000 | unknown; something with prediction? always the same for TURR }} | |||
{{OBDtr| 0x5E0 | int32 |00C8FF| 00 00 00 00 | 0 | unknown frame count; something with prediction; always the same for TURR }} | |||
{{OBDtr| 0x5E4 | int32 |C80040| 05 00 00 00 | 5 | unknown frame count; something with prediction; always the same for TURR }} | |||
{{OBDtr| 0x5E8 | int32 |C80040| 0F 00 00 00 | 15 | unknown frame count; something with prediction; always the same for TURR }} | |||
{{OBDtr| 0x5EC | int32 |C80040| 3C 00 00 00 | 60 | unknown frame count; something with prediction; always the same for TURR }} | |||
|} | |||
;Shooting skill (see [[ONCC]]) | |||
:All the TURR have the same shooting skill. | |||
{{Table}} | |||
{{OBD_Table_Header}} | |||
{{OBDtr| 0x5F0 | float |FFCD96| 9A 99 99 3E | 0.300000 | recoil compensation amount (0.0 <nowiki>=</nowiki> min, 1.0 <nowiki>=</nowiki> max) }} | |||
{{OBDtr| 0x5F4 | float |FFCD96| BE F9 0E 3C | 0.008727 | best aiming angle in radians }} | |||
{{OBDtr| 0x5F8 | float |FFCD96| 00 00 00 00 | 0.000000 | shot grouping error }} | |||
{{OBDtr| 0x5FC | float |FFCD96| 00 00 00 3F | 0.500000 | shot grouping decay }} | |||
{{OBDtr| 0x600 | float |FFCD96| 00 00 80 3F | 1.000000 | shooting inaccuracy multiplier }} | |||
{{OBDtr| 0x604 | int16 |FFCD96| 00 00 | 0 | minimum delay between shots in frames }} | |||
{{OBDtr| 0x606 | int16 |FFCD96| 00 3F | 16128 | maximum delay between shots in frames }} | |||
|} | |||
;Turret specific options | |||
{{Table}} | {{Table}} | ||
{{OBD_Table_Header}} | {{OBD_Table_Header}} | ||
{{OBDtr| 0x608 | int32 |C8C864| 84 03 00 00 | 900 | timeout in frames; here, 15 seconds }} | {{OBDtr| 0x608 | int32 |C8C864| 84 03 00 00 | 900 | timeout in frames; here, 15 seconds }} | ||
{{OBDtr| 0x60C | float |0096C8| C2 B8 B2 BE | -0.349066 | minimum elevation in radians; here, 20°}} | {{OBDtr| 0x60C | float |0096C8| C2 B8 B2 BE | -0.349066 | minimum elevation in radians; here, 20°}} | ||
Line 117: | Line 127: | ||
{{OBDtr| 0x61C | float |0096C8| AE 4B 6E 3C | 0.014544 | maximum vertical speed in radian/frame; here, 50°/s }} | {{OBDtr| 0x61C | float |0096C8| AE 4B 6E 3C | 0.014544 | maximum vertical speed in radian/frame; here, 50°/s }} | ||
{{OBDtr| 0x620 | float |0096C8| AE 4B 6E 3C | 0.014544 | maximum horizontal speed in radian/frame; here, 50°/s}} | {{OBDtr| 0x620 | float |0096C8| AE 4B 6E 3C | 0.014544 | maximum horizontal speed in radian/frame; here, 50°/s}} | ||
{{OBDtr2|0x624 | char[32] |FF80C0| turret_active | active turret sound (reference to | {{OBDtr2|0x624 | char[32] |FF80C0| turret_active | active turret sound (reference to OSBDturret_active.[[OBD:OSBD|amb]]) }} | ||
{{OBDtr| 0x644 | int32 |D0C0AF| 00 00 00 00 | 0 | | {{OBDtr| 0x644 | int32 |D0C0AF| 00 00 00 00 | 0 | runtime only }} | ||
{{OBDtr| 0x648 | char[24] |EEDDFF| AD DE | dead | unused; always the same }} | {{OBDtr| 0x648 | char[24] |EEDDFF| AD DE | dead | unused; always the same }} | ||
|} | |} | ||
;Turret geometry | |||
*The body geometry is used during play, it is only used at design time. Once a turret is added to a level the body is baked into the [[OBD:AKEV|environment]]. The head and gun geometries are used because unlike the body they are not fixed, they need to move during play. | |||
Here you can download the complete overview of all turrets as a text file.<BR> | Here you can download the complete overview of all turrets as a text file.<BR> | ||
Copy it to a spreadsheet calculation program like Excel. | Copy it to a spreadsheet calculation program like Excel. | ||
*[http://ssg.oni2.net/subfold/text/oni_turr_part_1_dc.txt part 1 (header)] with decimal commas (3 kb) | |||
*[http://ssg.oni2.net/subfold/text/oni_turr_part_2_dc.txt part 2 (particle array)] with decimal commas (56 kb) | |||
*[http://ssg.oni2.net/subfold/text/oni_turr_part_3_dc.txt part 3 (end)] with decimal commas (7 kb) | |||
*[http://ssg.oni2.net/subfold/text/oni_turr_part_1_dp.txt part 1 (header)] with decimal points (3 kb) | |||
*[http://ssg.oni2.net/subfold/text/oni_turr_part_2_dp.txt part 2 (particle array)] with decimal points (56 kb) | |||
*[http://ssg.oni2.net/subfold/text/ | *[http://ssg.oni2.net/subfold/text/oni_turr_part_3_dp.txt part 3 (end)] with decimal points (7 kb) | ||
*[http://ssg.oni2.net/subfold/text/ | |||
*[http://ssg.oni2.net/subfold/text/ | |||
{{OBD_File_Footer | type=TURR | prev=TStr | next=TXAN | name=Turret | family=Level}} | |||
|} | |||
{{ | {{OBD}} |
Latest revision as of 21:38, 9 December 2023
- This is about the turret class resource. For turret instances, see OBD:BINA/OBJC/TURR.
|
The first pic shows the beginning of this file. The second pic the end of it.
Offset | Type | Raw Hex | Value | Description |
---|---|---|---|---|
0x000 | res_id | 01 BF 01 00 | 447 | ID for TURRsap_turret_floor |
0x004 | lev_id | 01 00 00 00 | 0 | level 0 |
0x008 | char[64] | sap_turret_floor | name of this file | |
0x048 | int32 | 00 00 00 00 | 0 | unknown; always zero |
0x04C | char[8] | AD DE | dead | unused |
0x054 | int16 | 00 00 | 0 | unknown; always zero; (ignored) amount of shots? |
0x056 | int16 | 07 00 | 7 | amount of particles (the array contains space for 16 elements) |
0x058 | int16 | 01 00 | 1 | unknown; always the same; amount of firing modes? |
0x05A | char[6] | AD DE | dead | unused |
0x060 | link | 01 C0 01 00 | 448 | link to M3GM00448 - turret body |
0x064 | link | 00 00 00 00 | 0 | obsolete OBLS link |
0x068 | link | 00 00 00 00 | 0 | unknown; always zero; body-something? |
0x06C | link | 01 C3 01 00 | 451 | link to M3GM00451 - turret head |
0x070 | link | 00 00 00 00 | 0 | unknown; always zero; head-something? |
0x074 | link | 01 C4 01 00 | 452 | link to M3GM00452 - turret gun |
0x078 | link | 00 00 00 00 | 0 | unknown; always zero; gun-something? |
0x07C | float | 0D F8 C1 34 | 0.000000... | X translation for turret head (body-relative) |
0x080 | float | CF B4 07 41 | 8.481642 | Y translation for turret head (body-relative) |
0x084 | float | 13 A2 03 34 | 0.000000... | Z translation for turret head (body-relative) |
0x088 | float | DA F5 9F B1 | -0.000000... | X translation for turret gun (head-relative) |
0x08C | float | 1D FC 33 32 | 0.000000... | Y translation for turret gun (head-relative) |
0x090 | float | F7 FE 3F B3 | -0.000000... | Z translation for turret gun (head-relative) |
- Particle array (see ONWC)
- The particle elements are not exactly the same as in ONWC (4 bytes shorter)
Offset | Type | Raw Hex | Value | Description |
---|---|---|---|---|
First element (black outline) | ||||
0x000 | char[16] | w2_sap_e01 | 3D particle name (reference to BINA/PAR3w2_sap_e01) | |
0x010 | int32 | 00 00 00 00 | 0 | runtime only: pointer to particle class |
0x014 | int32 | 05 00 00 00 | 5 | delay between shots in frames; here, 5/60 = 0.0833 s |
0x018 | float | B0 90 9F B8 | -0.000076 | x1 coefficient of transform matrix ^_^ |
0x01C | float | 9E C1 7F 3F | 0.999048 | y1 coefficient of transform matrix ^_^ |
0x020 | float | 39 AC 32 3D | 0.043621 | z1 coefficient of transform matrix ^_^ |
0x024 | float | 62 F8 0E 3C | 0.008726 | x2 coefficient of transform matrix ^_^ |
0x028 | float | C9 A9 32 BD | -0.043619 | y2 coefficient of transform matrix ^_^ |
0x02C | float | 21 BF 7F 3F | 0.999010 | z2 coefficient of transform matrix ^_^ |
0x030 | float | 81 FD 7F 3F | 0.999962 | x3 coefficient of transform matrix ^_^ |
0x034 | float | D6 6B EF 39 | 0.000457 | y3 coefficient of transform matrix ^_^ |
0x038 | float | A0 C7 0E BC | -0.008715 | z3 coefficient of transform matrix ^_^ |
0x03C | float | 46 0F 4D BD | -0.050063 | x4 coefficient of transform matrix ^_^ |
0x040 | float | 47 C9 C4 BD | -0.096087 | y4 coefficient of transform matrix ^_^ |
0x044 | float | 81 4E 94 40 | 4.634583 | z4 coefficient of transform matrix ^_^ |
0x048 | char[4] | AD DE | dead | unused |
- Firing mode (see ONWC)
- Turret firing spreads are not shown for ai2_showfiringspreads=1, which makes it harder to check the floats at 0x588, 0x58C, 0x590, 0x5C8, 0x5CC, 0x5D0.
Offset | Type | Raw Hex | Value | Description | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x554 | int32 | 00 00 00 00 | 0 | firing mode options; the following bits are possible (values in hex): 0x01 00 00 00 - No wild shots | ||||||||||||||||||||||||
0x0DC | matrix4x3 |
|
|
targeting inverse transform matrix - the inverse of the matrix that gives the targeting direction | ||||||||||||||||||||||||
0x588 | vector3 |
|
|
targeting direction | ||||||||||||||||||||||||
0x594 | vector3 |
|
|
targeting origin | ||||||||||||||||||||||||
0x5A0 | float | 00 00 96 44 | 1200.000000 | prediction speed | ||||||||||||||||||||||||
0x5A4 | float | 00 00 00 00 | 0.000000 | inaccuracy tolerance; always 0 for TURR | ||||||||||||||||||||||||
0x5A8 | float | 00 00 20 40 | 2.500000 | aim radius; always the same for TURR and ONWC | ||||||||||||||||||||||||
0x5AC | float | 00 00 48 44 | 800.000000 | sound sphere radius; always the same for TURR | ||||||||||||||||||||||||
0x5B0 | float | 00 00 00 00 | 0.000000 | minimal shooting distance; always 0 for TURR | ||||||||||||||||||||||||
0x5B4 | float | 00 00 00 00 | 0.000000 | maximal shooting distance; always 0 for TURR | ||||||||||||||||||||||||
0x5B8 | int16 | 05 00 | 5 | maximum startle misses | ||||||||||||||||||||||||
0x5BA | int16 | 00 00 | 0 | AI shooting skill ID; always 0 for TURR | ||||||||||||||||||||||||
0x5BC | int32 | 00 00 00 00 | 0 | fight timer; always 0 for TURR; 240 for ONWCw4_psm, 200 for ONWCv6_vdg | ||||||||||||||||||||||||
0x5C0 | float | 00 00 00 00 | 0.000000 | ballistic projectile speed (150 for ONWCw5_sbg, 160 for w11_ba1); always 0 for TURR | ||||||||||||||||||||||||
0x5C4 | float | 00 00 00 00 | 0.000000 | ballistic projectile gravity (0.5 for ONWCw5_sbg, 0.3 for w11_ba1); always 0 for TURR | ||||||||||||||||||||||||
0x5C8 | float | 00 00 00 00 | 0.000000 | length of firing spread; always 0 for TURR | ||||||||||||||||||||||||
0x5CC | float | 00 00 00 00 | 0.000000 | width of firing spread; always 0 for TURR | ||||||||||||||||||||||||
0x5D0 | float | 00 00 00 00 | 0.000000 | skew angle of firing spread; always 0 for TURR |
- Same as in ONCC at 0x140-0x158
Offset | Type | Raw Hex | Value | Description |
---|---|---|---|---|
0x5D4 | float | 00 00 00 3F | 0.500000 | unknown; something with prediction? always the same for TURR and ONCC |
0x5D8 | float | 00 00 F0 42 | 120.000000 | unknown; something with prediction? always the same for TURR and ONCC |
0x5DC | float | 00 00 80 3F | 1.000000 | unknown; something with prediction? always the same for TURR |
0x5E0 | int32 | 00 00 00 00 | 0 | unknown frame count; something with prediction; always the same for TURR |
0x5E4 | int32 | 05 00 00 00 | 5 | unknown frame count; something with prediction; always the same for TURR |
0x5E8 | int32 | 0F 00 00 00 | 15 | unknown frame count; something with prediction; always the same for TURR |
0x5EC | int32 | 3C 00 00 00 | 60 | unknown frame count; something with prediction; always the same for TURR |
- Shooting skill (see ONCC)
- All the TURR have the same shooting skill.
Offset | Type | Raw Hex | Value | Description |
---|---|---|---|---|
0x5F0 | float | 9A 99 99 3E | 0.300000 | recoil compensation amount (0.0 = min, 1.0 = max) |
0x5F4 | float | BE F9 0E 3C | 0.008727 | best aiming angle in radians |
0x5F8 | float | 00 00 00 00 | 0.000000 | shot grouping error |
0x5FC | float | 00 00 00 3F | 0.500000 | shot grouping decay |
0x600 | float | 00 00 80 3F | 1.000000 | shooting inaccuracy multiplier |
0x604 | int16 | 00 00 | 0 | minimum delay between shots in frames |
0x606 | int16 | 00 3F | 16128 | maximum delay between shots in frames |
- Turret specific options
Offset | Type | Raw Hex | Value | Description |
---|---|---|---|---|
0x608 | int32 | 84 03 00 00 | 900 | timeout in frames; here, 15 seconds |
0x60C | float | C2 B8 B2 BE | -0.349066 | minimum elevation in radians; here, 20° |
0x610 | float | DB 0F C9 3F | 1.570796 | maximum elevation in radians; here, 90° |
0x614 | float | 67 3B 54 C0 | -3.316126 | minimum azimuth in radians; here, -190° |
0x618 | float | 67 3B 54 40 | 3.316126 | maximum azimuth in radians; here, 190° |
0x61C | float | AE 4B 6E 3C | 0.014544 | maximum vertical speed in radian/frame; here, 50°/s |
0x620 | float | AE 4B 6E 3C | 0.014544 | maximum horizontal speed in radian/frame; here, 50°/s |
0x624 | char[32] | turret_active | active turret sound (reference to OSBDturret_active.amb) | |
0x644 | int32 | 00 00 00 00 | 0 | runtime only |
0x648 | char[24] | AD DE | dead | unused; always the same |
- Turret geometry
- The body geometry is used during play, it is only used at design time. Once a turret is added to a level the body is baked into the environment. The head and gun geometries are used because unlike the body they are not fixed, they need to move during play.
Here you can download the complete overview of all turrets as a text file.
Copy it to a spreadsheet calculation program like Excel.
- part 1 (header) with decimal commas (3 kb)
- part 2 (particle array) with decimal commas (56 kb)
- part 3 (end) with decimal commas (7 kb)
- part 1 (header) with decimal points (3 kb)
- part 2 (particle array) with decimal points (56 kb)
- part 3 (end) with decimal points (7 kb)
ONI BINARY DATA |
---|
TStr << Other file types >> TXAN |
TURR : Turret |
Level file |