SOLDIER.DAT (TFTD): Difference between revisions
Update to reflect transferring soldiers. |
|||
| (12 intermediate revisions by 3 users not shown) | |||
| Line 1: | Line 1: | ||
== General Notes == | == General Notes == | ||
SOLDIER.DAT has a fixed structure of 250 entries of 70 bytes each. (Only a maximum of 250 soldiers can be had). Thus it is always 17,500 bytes long (250x70). | SOLDIER.DAT has a fixed structure of 250 entries of 70 bytes each. (Only a maximum of 250 soldiers can be had). Thus it is always 17,500 bytes long (250x70). | ||
Values are presented according to byte count (0 to 69) followed by the equivalent hex offset (00 to | Values are presented according to byte count (0 to 69) followed by the equivalent hex offset (00 to 45) in <b>bold</b>, followed by the normal (non-hacked) range of values in <i>italics</i>. Most fields can be hacked up to FF, but sometimes it can make for weirdness! | ||
Unfortunately, this file is not conveniently ordered like Enemy Unknown's file so everything is just jumbled together. | Unfortunately, this file is not conveniently ordered like Enemy Unknown's file so everything is just jumbled together. | ||
== Structure == | == Structure == | ||
<b>0</b> | <b>0 / 00</b>: How much the MC Skill changed in the last month | ||
<b>1</b> Time Unit Improvement | <b>1 / 01</b>: Time Unit Improvement | ||
<b>2</b> In | <b>2 / 02</b>: In MC Implantation Flag | ||
<b>3</b> | <b>3 / 03</b>: Promotion Flag | ||
<b>4</b> Health Improvement | <b>4 / 04</b>: Health Improvement | ||
<b>5</b> Strength Improvement | <b>5 / 05</b>: Strength Improvement | ||
<b>6-7</b> Base Reference | <b>6-7 / 06-07</b>: Base Reference using values from LOC.DAT for where soldier is. First base is always 0 (first entry in [[LOC.DAT]]). Value of FF means the soldier is being transferred. | ||
<b>8-9</b> Craft Reference | <b>8-9 / 08-09</b>: Craft Reference | ||
<b>10-11</b> Rank | <b>10-11 / 0A-0B</b>: Rank | ||
<b>12-13</b> < | <b>12-13 / 0C-0D</b>: Craft soldier was assigned to before being wounded and spending time in the infirmary. <i>Half-implemented feature or not used.</i> | ||
<b>14-15</b> Kills | <b>14-15 / 0E-0F</b>: Kills | ||
<b>16-17</b> Wound Recovery | <b>16-17 / 10-11</b>: Wound Recovery | ||
<b>18-19</b> Missions | <b>18-19 / 12-13</b>: Missions | ||
<b>20-21</b> Soldier Value | <b>20-21 / 14-15</b>: Soldier Value | ||
<b>22</b> Always 0 except for existing soldiers being transferred, in which case it equals the | <b>22 / 16</b>: Always 0 except for existing soldiers being transferred, in which case it equals the LOC.DAT value for destination base. | ||
<b>23</b> Stamina Improvement | <b>23 / 17</b>: Stamina Improvement | ||
<b>24</b> Reaction Improvement | <b>24 / 18</b>: Reaction Improvement | ||
<b>25</b> Firing Accuracy Improvement | <b>25 / 19</b>: Firing Accuracy Improvement | ||
<b>26</b> Initial Time Units | <b>26 / 1A</b>: Initial Time Units | ||
<b>27</b> Initial Health | <b>27 / 1B</b>: Initial Health | ||
<b>28</b> Initial Stamina | <b>28 / 1C</b>: Initial Stamina | ||
<b>29</b> Initial Throwing Accuracy | <b>29 / 1D</b>: Initial Throwing Accuracy | ||
<b>30</b> Armor | <b>30 / 1E</b>: Armor | ||
<b>31</b> Gender | <b>31 / 1F</b>: Gender | ||
<b>32</b> Race | <b>32 / 20</b>: Race | ||
<b>33</b> Initial Firing Accuracy | <b>33 / 21</b>: Initial Firing Accuracy | ||
<b>34</b> Initial Strength | <b>34 / 22</b>: Initial Strength | ||
<b>35- | <b>35-61 / 23-3D</b>: Name. 21 characters can be entered in-game, 27 via hex editing. Does not need to be null terminated. | ||
<b> | <b>62 / 3E</b>: Bravery Improvement | ||
<b> | <b>63 / 3F</b>: Throwing Accuracy Improvement | ||
<b> | <b>64 / 40</b>: Initial Bravery | ||
<b> | <b>65 / 41</b>: MC Skill | ||
<b> | <b>66 / 42</b>: Melee Accuracy Improvement | ||
<b> | <b>67 / 43</b>: MC Strength | ||
<b> | <b>68 / 44</b>: Initial Melee Accuracy | ||
<b> | <b>69 / 45</b>: Initial Reactions | ||
== See Also == | |||
[[SOLDIER.DAT]] | |||
[[Saved Game Files]] | |||
[[Category:Game Files (TFTD)]] | |||
[[Category:TFTD]] | |||
Latest revision as of 14:20, 23 July 2013
General Notes
SOLDIER.DAT has a fixed structure of 250 entries of 70 bytes each. (Only a maximum of 250 soldiers can be had). Thus it is always 17,500 bytes long (250x70).
Values are presented according to byte count (0 to 69) followed by the equivalent hex offset (00 to 45) in bold, followed by the normal (non-hacked) range of values in italics. Most fields can be hacked up to FF, but sometimes it can make for weirdness!
Unfortunately, this file is not conveniently ordered like Enemy Unknown's file so everything is just jumbled together.
Structure
0 / 00: How much the MC Skill changed in the last month
1 / 01: Time Unit Improvement
2 / 02: In MC Implantation Flag
3 / 03: Promotion Flag
4 / 04: Health Improvement
5 / 05: Strength Improvement
6-7 / 06-07: Base Reference using values from LOC.DAT for where soldier is. First base is always 0 (first entry in LOC.DAT). Value of FF means the soldier is being transferred.
8-9 / 08-09: Craft Reference
10-11 / 0A-0B: Rank
12-13 / 0C-0D: Craft soldier was assigned to before being wounded and spending time in the infirmary. Half-implemented feature or not used.
14-15 / 0E-0F: Kills
16-17 / 10-11: Wound Recovery
18-19 / 12-13: Missions
20-21 / 14-15: Soldier Value
22 / 16: Always 0 except for existing soldiers being transferred, in which case it equals the LOC.DAT value for destination base.
23 / 17: Stamina Improvement
24 / 18: Reaction Improvement
25 / 19: Firing Accuracy Improvement
26 / 1A: Initial Time Units
27 / 1B: Initial Health
28 / 1C: Initial Stamina
29 / 1D: Initial Throwing Accuracy
30 / 1E: Armor
31 / 1F: Gender
32 / 20: Race
33 / 21: Initial Firing Accuracy
34 / 22: Initial Strength
35-61 / 23-3D: Name. 21 characters can be entered in-game, 27 via hex editing. Does not need to be null terminated.
62 / 3E: Bravery Improvement
63 / 3F: Throwing Accuracy Improvement
64 / 40: Initial Bravery
65 / 41: MC Skill
66 / 42: Melee Accuracy Improvement
67 / 43: MC Strength
68 / 44: Initial Melee Accuracy
69 / 45: Initial Reactions