Unit Stats in Details (UFO2000)
Time Units' Reservation
Time units can be reserved for aimed/auto/snap shot by clicking on appropriate buttons in the left side of the battlescape toolbar. Reservation affects a gun-type weapon that is placed in right hand.
Currently reservation system is not complete, there is a related issue reported in the bugtracker: #208 "TU Reservations Ignored by Item Actions"[1].
Ignored means that TUs can be spent on some actions regardless of TU reservation. Once TUs drop below the reservation limit, reservation stops to block all actions.
All actions with items on inventory screen respect TUs reservation, except for actions with gun in right hand. The following non-inventory actions ignore TUs reservation: throw grenade, prime grenade, fire a gun, perform melee attack, perform medical treatment.
Move what | From | To | Respects Reservation? |
---|---|---|---|
Not a gun | Anywhere | Anywhere | Yes |
A gun | Anywhere, but the right hand | Anywhere | Yes |
A gun | The right hand | Anywhere | No |
Do what? | Respects Reservation? |
---|---|
Move by feet | Yes |
Turn | Yes |
Kneel down | Yes |
Stand up | Yes |
Fly up/down | Yes |
Throw | No |
Prime a grenade | No |
Fire a gun/launcher | No |
Melee attack | No |
Medical treatment | No |
TUs Reservation also affects what kind of gun fire will be opened when reaction occurs.
Panic
Any soldier can enter panicking state if and only if his Morale is strictly lower than 50 units.
Morale level | Panic probability |
---|---|
50 and more | 0% |
49 | 2% |
48 | 4% |
... | ... |
20 | 60% |
... | ... |
2 | 96% |
1 (minimum) | 98% |
The code is in Platoon::check_morale()
Stats restoration on turn start
Time Units
Every new turn Time Units of living soldiers are restored. New amount of TUs is calculated as the lesser number among 2:
- maximum amount of TUs (maxTU)
- maxTU * (strength / weight)
For example, soldier with Strength of 25 and equipment weight of 30 will have 5/6 of his maximum TU. It equals to 65 for maxTU of 79 and 66 for maxTU of 80.
The code is in Soldier::restore()
Stamina (Energy)
Every new turn Energy of living soldiers is restored by 33% of maximum level.
For example, soldier with a maximum of 50 Energy units will restore 16 of them.
The code is in Soldier::restore()
Health and Stun damage
Every new turn Stun damage is reduced by 5 units. If a soldier was stunned (his Health was lower than Stun damage), he will regain consciousness when Stun damage is strictly lower than his Health.
For example, if a soldier with 80 Health units received Stun damage of pure 90 units (his Under Armor was zero), he will miss two turns and will wake up on the third.
The code is in Soldier::restore()
Bravery (Morale)
If a soldier was not panicking on a previous turn, his Morale is restored by 5 units before a new turn starts. Otherwise Morale is restored by 20 units.
The code for those cases is in Platoon::check_morale() and in Soldier::panic(int action) respectively.
Other Stats
Stats other than above are not restored on turn start. This includes: Reactions, Firing Accuracy, Throwing Accuracy, Strength, Armor.