![]() |
SUBSIM: The Web's #1 resource for all submarine & naval simulations since 1997 |
|
![]() |
#1 | |
Watch
![]() Join Date: Sep 2010
Location: Toronto, Canada
Posts: 24
Downloads: 44
Uploads: 0
|
![]() Quote:
|
|
![]() |
![]() |
![]() |
#2 |
Planesman
![]() Join Date: Jan 2010
Location: Halifax, Nova Scotia
Posts: 197
Downloads: 163
Uploads: 0
|
![]()
Thanks. Wasn't looking for any, but was trying to give it to the boys of the Royal Canadian Navy Volunteer Reserve, the Naval Reservists, and the good officers that commanded them.
__________________
Ah, for just one time I would take the Northwest Passage To find the hand of Franklin reaching for the Beaufort Sea Tracing one warm line through a land so wide and savage And make a Northwest Passage to the sea. - Stan Rogers (1949-1983) |
![]() |
![]() |
![]() |
#3 |
Ace of the Deep
![]() Join Date: Mar 2006
Posts: 1,138
Downloads: 147
Uploads: 12
|
![]()
Hi,
a while ago I made a long-term fatigue model for myself. From reading old threads (thanks to all who investigated this earlier!), experimenting,... I found out the following things: In basic.cfg every rank has this section [CREW_0] ;SEAMAN MoraleMin=0.30 <--- value below which morale cannot drop (see comment below) MoraleMax=0.60 <--- value above which morale cannot rise MoraleStep=0.05 <--- amount by which morale is increased in the crew comp. every 10 min. FatigueMin=0 <--- value below which fatigue cannot drop FatigueMax=0.80 <--- value above which fatigue cannot rise FatigueStep=0.031 <--- amount by which fatigue is reduced in the crew comp. every 10 min. CoefMorale=0.4 <--- see formula below CoefFatigue=0.21 <--- see formula below QualEffect=1 <--- see formula below Hp=10 Wounded=-0.02 <--- amount by which morale is reduced if someone is wounded in the compartment Dead=-0.05 <--- amount by which morale is reduced if someone dies in the compartment SunkShips=0.1 <--- amount by which morale increases if a ship is sunk TorpedoHit=0.05 <--- broken, does nothing Experience=0 Now the question is how do these values influence the efficiency in a compartment. The answer is (assuming all men are healthy, never tested wounded men): Efficiency = (M*(1-c_m)+c_m)*(F*(c_f-1)+1) M: morale of crew member c_m: CoefMorale in basic.cfg F: fatigue of crew member c_f: CoefFatigue in basic.cfg The total efficiency is the sum of all the efficiencies of the crew members in the compartment. For petty officers the efficiency is multiplied with the QualEffect factor from basic.cfg (if they have the qualification corresponding to the compartment). For officers the total efficiency in the compartment is multiplied by QualEffect. Thus, having an officer with the right qualification is most important. Ok, now we need to know how efficiency influences the different tasks. This is where my knowledge is limited. Here is what I think. We have several tasks: Repairs, torpedo reload, steering commands, sensor work. Repair times: Repair time is given by (this is without a repair team, i.e. only the crew in the compartment is doing the repairs. I think you need at least two men in the compartment.) T = Tfix(depends on damage amount)*Interval3/Eff, Tfix: hardcoded 'basic' time Eff: efficiency in compartment (formula above) Interval3: specified for each compartment in basic.cfg Interval1 and Interval2 seem to have no influence Torpedo reload time: T = Tfix*factor Tfix: 'basic' time in sim file factor=1 for efficiency in compartment >= Interval3 factor=3/2 for Interval2 < efficiency in compartment < Interval3 factor=3 for Interval1 < efficiency in compartment < Interval2 infinity for efficiency in compartment < Interval1 (i.e., no reloading) I did not notice any influence of efficiency on giving commands. I also do not know for sure how efficiency influences the sensors. It seems that the Interval values have no influence. So, I guess a continuous scale is used (as with repair times, not as in the case of torpedo reloading). Engines will not work if efficiency in compartment < Interval1. It seems the other Intervals have no influence. Finally, basic.cfg contains the [FATIGUE_COEF] values for each compartment: RegularFactor50=0.001 <--- amount by which fatigue is decreased when a crew member is moved into the compartment RegularFactor51=0.001 <--- unknown. No idea. SpecificFactor50=0.045 <--- amount by which fatigue decreases every 10 min. when the sub is surfaced SpecificFactor51=0.045 <--- amount by which fatigue decreases every 10 min. when the sub is submerged BadWeather5=0.02 <--- amount by which fatigue is decreased in bad weather (I'm not sure whether it's added to RegularFactor or used without it. But this can be easily checked.) That's how I think it works. If someone has more information or thinks something is wrong I would love to know it. Especially, it would be great to know more about how sensors are influenced by the efficiency. Cheers, LGN1 PS: One has to be careful when playing with MoraleStep. If you make it negative the morale can become negative because it is not stopped by MoraleMin. IIRC, you can also get negative fatigue if you choose some strange settings. Last edited by LGN1; 10-06-10 at 02:56 PM. Reason: Corrected and clarified some issues |
![]() |
![]() |
![]() |
#4 |
Watch
![]() Join Date: Sep 2010
Location: Toronto, Canada
Posts: 24
Downloads: 44
Uploads: 0
|
![]()
That's fantastic, LGN1. That saves a ton of work.
Do you mind if I ask a few questions? Firstly, are you sure that "Efficiency = (M*(1-c_m)+c_m)*(F*(c_f-1)+1)" shouldn't read "Efficiency = ((M*1-c_m)+c_m)*((F*c_f-1)+1)"? Second, what leads you to the conclusion that SpecificFactor is envoked when crews are moved from compartment to compartment? I've been sitting here moving my crews around, their fatigue doesn't seem to go up. Furthermore, in the default settings, the SpecificFactor for compartments 3 and 4 (diesel and electric engines respectively) are mirrored for the x0 and x1 conditions (ie 30 is 0.4, 31 0.1; 40 is 0.1, 41 0.4). This would seem to fit the model that these factors should reflect the submerged and surfaced postures of the submarine, as the electrics are only used submerged and the diesels surfaced. Thus: 30 - diesel surfaced - in use = 0.4 (high) 31 - diesel submerged - not in use = 0.1 (low) 40 - electric sufaced - not in use = 0.1 (low) 41 - electric submerged - in use = 0.4 (high) |
![]() |
![]() |
![]() |
#5 |
Medic
![]() Join Date: Jan 2006
Posts: 164
Downloads: 63
Uploads: 1
|
![]()
LGN1, I see you have fine tuned your model since your discovery of the formula that changes my life... Thank you again for this fantastic breakthrough.
I can give you my two cents : Regular - noncombat situation Specific – Combat situation This is not my own conclusion, I found this somewhere in the inmost depths of this forum, and copied it to my own Tips 'd Tricks file. For the Tfix in the repair time formula, I incline toward a relation with the Hit Point of the equipment/compartment, even with the amount of hp lost or remaining... Could you confirm the formula is T = Tfix/(Eff*Interval3) ? By the way, do you have any idea about the Resilience factor? All I know is that it is influenced by crewman HP, the more HP, the less resilience. Should have an influence on Fatigue or Efficiency... |
![]() |
![]() |
![]() |
#6 | ||
Ace of the Deep
![]() Join Date: Mar 2006
Posts: 1,138
Downloads: 147
Uploads: 12
|
![]() Quote:
I am pretty sure about the formula. Your version can be simplified to Efficiency = (M-c_m+c_m)*(F*c_f-1+1) = M*F*c_f which means for c_f=0 you have no efficiency. Also c_m has no influence. But in-game you can choose a purely morale-dependent model by choosing c_f=1. By choosing c_m=1 you get a pure fatigue model. Sorry, about the regular and specific factors. I confused the two. It's the other way round (corrected it above). Look in this old thread: http://www.subsim.com/radioroom//showthread.php?t=85656 Be careful, the formula given there for the efficiency is wrong, IMHO. Quote:
You are right about the repair times. I am pretty sure that the status of the damaged item (via hitpoints) plays a role. However, how hitpoints exactly enter is not known to me. The formula is just about how the efficiency enters (what happens if you send more men to repair). A more correct version would be T = Tfix(damage/hitpoints)*Interval3/Eff ,i.e., Tfix is an unknown function of the damage/hitpoints. If you increase the Interval3 value, the time will also increase. Which Resilience factor do you mean? The colored bar for each crew member? I think it's just 1-fatigue. I don't think that hitpoints influence the efficiency. At least I can predict the efficiency (green bar above the compartment) without using any hitpoint information. Cheers, LGN1 |
||
![]() |
![]() |
![]() |
#7 |
Watch
![]() Join Date: Sep 2010
Location: Toronto, Canada
Posts: 24
Downloads: 44
Uploads: 0
|
![]() |
![]() |
![]() |
![]() |
#8 |
Ace of the Deep
![]() Join Date: Mar 2006
Posts: 1,138
Downloads: 147
Uploads: 12
|
![]()
Just a small example to illustrate the formula (values taken from GWX):
[CREW_0] ;SEAMAN MoraleMin=0.30 MoraleMax=0.60 FatigueMin=0 FatigueMax=0.80 CoefMorale=0.4 CoefFatigue=0.21 QualEffect=1 --> A rested seaman adds 0.76 to the efficiency in a compartment. When completely exhausted he adds 0.76*0.368 = 0.27968. [CREW_3] ;PETTYOFFICER MoraleMin=0.40 MoraleMax=0.70 FatigueMin=0 FatigueMax=0.80 CoefMorale=0.3 CoefFatigue=0.3 QualEffect=2 --> A rested petty officer adds 0.79 to the efficiency in a compartment. When completely exhausted he adds 0.79*0.44 = 0.3476. If he has the correct qualification for the compartment he adds 1.58 and 0.6952, respectively. [CREW_6] ;SUBLIEUTENANT MoraleMin=0.50 MoraleMax=0.80 FatigueMin=0 FatigueMax=0.80 CoefMorale=0.2 CoefFatigue=0.4 QualEffect=1.5 --> A rested sub lieutenant adds 0.84 to the efficiency in a compartment. When completely exhausted he adds 0.84*0.52 = 0.4368. If the officer is in a compartment with a sailor (both rested), the total efficiency is (0.84+0.76)*1.5 = 2.4 (assuming the officer has the correct qualification). Clearly, having an officer with the correct qualification is very important. Cheers, LGN1 |
![]() |
![]() |
![]() |
#9 |
Watch
![]() Join Date: Sep 2010
Location: Toronto, Canada
Posts: 24
Downloads: 44
Uploads: 0
|
![]() |
![]() |
![]() |
![]() |
|
|