![]() |
SUBSIM: The Web's #1 resource for all submarine & naval simulations since 1997 |
![]() |
#31 |
Watch
![]() Join Date: Sep 2010
Location: Toronto, Canada
Posts: 24
Downloads: 44
Uploads: 0
|
![]() |
![]() |
![]() |
![]() |
#32 |
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 |
![]() |
![]() |
![]() |
#33 | ||
Ace of the Deep
![]() Join Date: Mar 2006
Posts: 1,138
Downloads: 147
Uploads: 12
|
![]() Quote:
Quote:
multiplication and division come first: a*b+c = (a*b)+c a*(b+c)=a*b+a*c=(a*b)+(a*c) Concerning the specific and regular factors. I am pretty sure that (as you wrote) specific is for surfaced and submerged (my first post was wrong. I corrected it.). In the thread I linked it says that regular0 is a one-time hit when someone is moved to a compartment. I think I tested this once and confirmed it for myself. Maybe increase the value in basic.cfg and see whether you observe a change. Cheers, LGN1 |
||
![]() |
![]() |
![]() |
#34 |
Watch
![]() Join Date: Sep 2010
Location: Toronto, Canada
Posts: 24
Downloads: 44
Uploads: 0
|
![]()
I looked it up; you're right. It's scary what I've forgotten from elementary school! Either that or I've hopped from one universe to another. :-) Yep, I'm sticking with that story.
Yep, I tested this too, and it's correct. Still don't know what Regular 1 does, though. Might it be a hit when the sub takes damage or something? |
![]() |
![]() |
![]() |
#35 |
Watch
![]() Join Date: Sep 2010
Location: Toronto, Canada
Posts: 24
Downloads: 44
Uploads: 0
|
![]()
Earlier threads claim that the time compression above which fatigue will not increase (or decrease, depending on your perspective) is set by the "3d Render=" option, which defaults to "3d Render=32".
Does anybody know if this is true? Also, how exactly do the fatigue coeficients work, in practice, and how do they interact with FatigueStep? Does anybody know the formula for this? Last edited by sub_optimal; 10-06-10 at 09:16 PM. |
![]() |
![]() |
![]() |
#36 |
Watch
![]() Join Date: Sep 2010
Location: Toronto, Canada
Posts: 24
Downloads: 44
Uploads: 0
|
![]()
Some more discoveries:
The fatigue system is divided into distinct 'rounds' Each round is ten minutes long, and begins on the "0's" (1:10, 1:20, 1:30, etc) [NB: I just double checked this, and it seems that fatigue is also sometimes recovered on the "5's"; clearly I haven't worked this out entirely yet.] The fatigue penalty or recovery is assigned at the beginning of each ten minute round. If you put a guy into a compartment at 12:09 he will be just as fatigued at 12:10 as he would have been if he had been assigned at 12:01. The above does not apply to the RegularFactor penalty, which is assigned as soon as a sailor is put into the compartment. I think that the fatigue penalty defined by SpecificFactor is initiated at the beginning of each round by subtracting the SpecificFactor penalty from the man's fatigue score, where 0 is completely fatigued and 1 is completely fresh. FatigueMax appears to define the point at which the ! shows up and the man is exhausted. However, this operates the opposite to way which one might expect given the way the other numbers work. It seems as if a sailor with a FatigueMax of .2 becomes exhausted fast (after 20% of his fatigue points are gone) whereas a sailor with a .8 score can tolerate 80% of his fatigue points disappearing before becoming exhausted. FatigueStep seems to be the number added to the fatigue score for every round the sailor begins in a Crew Quarters compartment. The SpecificFactor score for the Quarters compartments (which is negative) does not seem to be added to their fatigue score. This is very mysterious, because this is different from what others describe. However, I assigned a '-1' score to this compartment, expecting that it would bump the player up to full health immediately, and yet their fatigue seemed to dissipate at the usual rate. I would be very grateful if anybody could shed light on this further. |
![]() |
![]() |
![]() |
#37 | |
Pacific Aces Dev Team
|
![]() Quote:
Some time ago Kaa created a fatigue model I liked much, but that was dropped for unknown reasons. By setting 3D render to 1024 (Or whatever maximum TC you had), and giving all crew small fatigue values, they became exhausted over a period of months, hence making a good representation of overall fatigue in patrol. You didn't need to move crewmen around any more, they just tired always the same -and a bit faster during storms if surfaced-. I think this was a very good representation of one aspect involved, i.e. overall fatigue. Other models liek the one you are exploring represent better the normal watch shifts during patrol, but when a crewman is rested, he is as rested as if he had not been already one month in patrol. I prefer the other method, and as with all these simulations goes, it's always a trade-off; rarely will you be able to say "this or that is more realistic" ... it's a matter of choosing what aspect of reality you prefer to simulate in such a limited enviroment.
__________________
One day I will return to sea ... |
|
![]() |
![]() |
![]() |
#38 |
Watch
![]() Join Date: Sep 2010
Location: Toronto, Canada
Posts: 24
Downloads: 44
Uploads: 0
|
![]()
Hmmm... in that case, do you know if it's possible to automatically load a 3d Render setting with a fatigue model in SH3 Commander?
|
![]() |
![]() |
![]() |
#39 |
Pacific Aces Dev Team
|
![]()
I don't know if it is possible to link those two parameters together (One fatigue model and TC), you will need to contact JSCones about that.
__________________
One day I will return to sea ... |
![]() |
![]() |
![]() |
#40 |
Watch
![]() Join Date: Sep 2010
Location: Toronto, Canada
Posts: 24
Downloads: 44
Uploads: 0
|
![]()
I've posted a message to JScones. Let's see if he or she is interested in the idea.
|
![]() |
![]() |
![]() |
#41 | |
Ace of the Deep
![]() Join Date: Mar 2006
Posts: 1,138
Downloads: 147
Uploads: 12
|
![]() Quote:
The NYGM team had the nice idea to use morale to get a long-term effect. IIRC, they did it by giving the morale step a negative sign. Unfortunately, this has two minor problems: 1) If the journey is too long or you choose a too large morale step, the morale can become negative. 2) Morale is only reduced in the rest quarters. So, you need to regularly move your crew around so that anyone gets a morale reduction (and you should set 3d Render to your max. TC rate). As a consequence, the long-term effect only works well with micromanagement. That's at least how I remember it. Stiebler, please correct me if I am wrong. Cheers, LGN1 |
|
![]() |
![]() |
![]() |
#42 | |
Ace of the Deep
![]() Join Date: Mar 2006
Posts: 1,138
Downloads: 147
Uploads: 12
|
![]() Quote:
You are right, the rest quarters have two variables: fatigueStep/moraleStep and the specific factors. I don't remember what the influence of the specific factor was, but I would not be surprised if it has no influence in this case. The rest sounds quite similar to my observations. Cheers, LGN1 |
|
![]() |
![]() |
![]() |
#43 | |
Fuel Supplier
|
![]()
LGN1 said:
Quote:
The big problem was persistent poor morale if you don't sink ships. Sail a couple of months without sinking anything, and morale fell too heavily. But if you command a IXd2 U-boat in 1944, you're not likely even to encounter any targets as you patrol from Bordeaux to Cape Town or the Indian Ocean (attacking convoys with such a large boat is suicide in 1944). Similarly, very long schnorchel patrols in 1945 from Norway to the English Channel area, without ever seeing any targets unless one encounters a chance convoy en route, ruined the crew's morale. I never thought of changing the 3D-render effect, always left it at tc=32. Stiebler.
__________________
NYGM Tonnage War Mod - More than a mod: it's an experience! |
|
![]() |
![]() |
![]() |
#44 | |
Medic
![]() Join Date: Sep 2010
Posts: 160
Downloads: 25
Uploads: 0
|
![]()
Is someone using RUb? It looks like something similar to "overall fatigue in patrol" (or "combat stress", or whatever):
Quote:
__________________
![]() |
|
![]() |
![]() |
![]() |
#45 |
Watch
![]() Join Date: Sep 2010
Location: Toronto, Canada
Posts: 24
Downloads: 44
Uploads: 0
|
![]()
Ladies and gents,
I apologise for neglecting this thread for so long. Unfortunately, my important modding activities were rudely interrupted by this thing everybody keeps calling 'actual work'. Some people just don't seem to have a sense of priority. So I've mocked up a spreadsheet, based on the assumptions and deductions mentioned in this thread, which should allow us to create fatigue models that behave in whatever way we want them to, and I post this first effort by way of example. This text is SH3 Commander-ready, so paste it in to the fatigue models file, under a new number, and it should Just Work. Here is a description of my first attempt: Name: combat-oriented, surface attack, 16h hold-down, forgiving – Draft 1 The model is... Combat-oriented: The idea is to simulate fatigue in combat conditions, so 3d Render should be set to the same or greater than the max time compression during combat. Because of the 'forgiving' nature of the model (see below) this combat-oriented model is intended to be a bit like having 'no fatigue' during normal operations, while requiring fatigue management during combat. Surface attack: The model is designed to be used during submarines that attack on the surface at night. In normal circumstances you should get about 8 hours out of your men on the surface, 4 hours in a storm. 16 hour hold-down: When a diesel-electric submarine is attacked by surface vessels, they will try to 'hold it down' in order to exhaust the crew. It is typical, then, for escaping submarines to spend long periods submerged. To simulate this, the model gives much longer fatigue times for a submerged submarine, averaging around 16 hours. Forgiving: If, like me, you have a tendency to accidentally exhaust the crew during the course of normal operations, you can rest them relatively quickly, so that you don't have to spend ages and ages at 32 acceleration while your crew sleeps. All crew are set to completely recover in two hours game time. This is intended to make it difficult to do this in the middle of an attack, but easier if you're patrolling, as resting a whole watch will take less than four real-life minutes. Naturally, this means your crew might not be exhausted by the end of the patrol. In this respect, it's a bit like having 'no fatigue' turned on. The model is also age-aware, in that as crew get more experienced, their stamina will go down. A young pup at the OS level will last about half an hour longer than the 'average' sailor, a grizzled old chief will become exhausted about a quarter of an hour sooner than average. (in this case, 'average' is set to the LS levels for ratings, Lt for officers). I would greatly appreciate comments on this. Also, if anybody has any ideas for a model they'd like to see, I have a spreadsheet that makes them really easily (which I can share if people want to tell me how), so I can very quickly whip one up on request. [instertNumberOfModelHere] Desc=combat-oriented, surface attack, 16h hold-down, forgiving – draft 1 by Sub_Optimal CREW_0|FatigueMax=0.8 CREW_0|FatigueStep=0.0166666666666667 CREW_1|FatigueMax=0.785 CREW_1|FatigueStep=0.0179166666666667 CREW_2|FatigueMax=0.77 CREW_2|FatigueStep=0.0191666666666667 CREW_3|FatigueMax=0.76 CREW_3|FatigueStep=0.02 CREW_4|FatigueMax=0.75 CREW_4|FatigueStep=0.0208333333333333 CREW_5|FatigueMax=0.742 CREW_5|FatigueStep=0.0215 CREW_6|FatigueMax=0.8 CREW_6|FatigueStep=0.0166666666666667 CREW_7|FatigueMax=0.76 CREW_7|FatigueStep=0.02 CREW_8|FatigueMax=0.74 CREW_8|FatigueStep=0.0216666666666667 FATIGUE_COEF|RegularFactor00=0.001 FATIGUE_COEF|SpecificFactor00=0.0139583333333333 FATIGUE_COEF|BadWeather0=0.0139583333333333 FATIGUE_COEF|RegularFactor10=0.001 FATIGUE_COEF|RegularFactor11=0.001 FATIGUE_COEF|SpecificFactor10=0.00930555555555556 FATIGUE_COEF|SpecificFactor11=0.00697916666666667 FATIGUE_COEF|BadWeather1=0.00279166666666667 FATIGUE_COEF|RegularFactor20=0.001 FATIGUE_COEF|RegularFactor21=0.001 FATIGUE_COEF|SpecificFactor20=0.00930555555555556 FATIGUE_COEF|SpecificFactor21=0.00697916666666667 FATIGUE_COEF|BadWeather2=0.00279166666666667 FATIGUE_COEF|RegularFactor30=0.001 FATIGUE_COEF|RegularFactor31=0.001 FATIGUE_COEF|SpecificFactor30=0.0160416666666667 FATIGUE_COEF|SpecificFactor31=0.0003 FATIGUE_COEF|BadWeather3=0.00534722222222222 FATIGUE_COEF|RegularFactor40=0.001 FATIGUE_COEF|RegularFactor41=0.001 FATIGUE_COEF|SpecificFactor40=0.0003 FATIGUE_COEF|SpecificFactor41=0.00930555555555556 FATIGUE_COEF|BadWeather4=0 FATIGUE_COEF|RegularFactor50=0.001 FATIGUE_COEF|RegularFactor51=0.001 FATIGUE_COEF|SpecificFactor50=0.0160416666666667 FATIGUE_COEF|SpecificFactor51=0.00930555555555556 FATIGUE_COEF|BadWeather5=0.0160416666666667 FATIGUE_COEF|SpecificFactor60=-0.1 FATIGUE_COEF|SpecificFactor61=-0.1 FATIGUE_COEF|SpecificFactor70=-0.1 FATIGUE_COEF|SpecificFactor71=-0.1 FATIGUE_COEF|RegularFactor80=0.001 FATIGUE_COEF|RegularFactor81=0.001 FATIGUE_COEF|SpecificFactor80=0.0160416666666667 FATIGUE_COEF|SpecificFactor81=0.00930555555555556 FATIGUE_COEF|BadWeather8=0.0160416666666667 FATIGUE_COEF|RegularFactor90=0.001 FATIGUE_COEF|SpecificFactor90=0.0139583333333333 FATIGUE_COEF|BadWeather9=0.0139583333333333 FATIGUE_COEF|RegularFactor100=0.001 FATIGUE_COEF|SpecificFactor100=0.0139583333333333 FATIGUE_COEF|BadWeather10=0.0139583333333333 FATIGUE_COEF|RegularFactor110=0.001 FATIGUE_COEF|RegularFactor111=0.001 FATIGUE_COEF|SpecificFactor110=0.00930555555555556 FATIGUE_COEF|SpecificFactor111=0.00697916666666667 FATIGUE_COEF|BadWeather11=0.00279166666666667 |
![]() |
![]() |
![]() |
|
|