View Full Version : [WIP] Realistic Hydrophone
tscharlii
10-19-13, 10:21 PM
Current Version: Realistic_Hydrophone_1_1
Download Link: http://www.deguero.de/jel/Realistic_Hydrophone_1_1.7z
A picture is worth a thousand words, so again here are some videos showing the mod:
Two close contacts: http://www.youtube.com/watch?v=G63T7rMzZr4
Two far away contacts: http://www.youtube.com/watch?v=5y69BQzHL7I
What's new?
GHG simulation as outlined here: http://www.subsim.com/radioroom/showpost.php?p=2131718&postcount=25 Summary:
We can hear a contact best, if it is on a bearing of 90 or 270 degrees. The more the bearing deviates from this optimum the worse we can hear the contact.
The further away the contact the less accurate the bearing estimation.
Replacement of the stock hydrophone "new contact" reports, so we only get contact reports, if the sonarman can hear the contact according to the GHG simulation
Hotkey to ask the sonarman to tell us the estimated bearings of all contacts, he is aware of (Default: Shift-0 (Shift-Zero))
Fix: Sweeping back and forth around a contact, regardless of whether Repaired Equipment Mod by Xundrel and TheBeast 1.2 is installed or not
Set the sweeprange, the time interval between followed contact updates or the minimum bearing change for a followed contact update simply by using the hydrophone settings dialog provided by TheDarkWraith
What's still missing?
Contact aspect estimation (Is the contact closing or moving away?), this feature of version 1.0 is gone for now
Contact speed estimation
Kristalldrehbasisgerät(KDB) and Balkongerät simulation. Right now the mod always simulates Gruppenhorchgerät (GHG) hydrophone, even if you equipped a more modern hydrophone at the bunker.
Ability to hear contacts based on their actual sound emission. The mod treats all contacts as if they produced a sound emission of a merchant moving at 12 knots. Louder contacts should be audible at greater distances and more silent contacts should require you to be closer to them.
Ability to hear contacts based on our own sound emission. When we move submerged at flank speed, we can only hear contacts that are at most a few 100 meters away from us.
I recommend you conceal the ship type at the hydrophone, as I did in the videos above. The idea is, that you cannot deduce the bearing of the contact by moving the hydrophone needle back and forth, noting at which bearings the ship type starts and stops showing up, and taking the average of the two as the contact's bearing. You actually have to listen!
To conceal the ship type display (assuming you are using Real Navigation), edit /data/Menu/menu.txt and replace the ship types with a dash(-):
Replace
; sh5.exe patch by TDW - allows texts for units to display in hydrophone box when real navigation enabled
826=Unknown
827=Warship
828=Merchant
829=Submarinewith
; sh5.exe patch by TDW - allows texts for units to display in hydrophone box when real navigation enabled
826=-
827=-
828=-
829=-This is not part of the mod to avoid conflicts with mods that also change /data/Menu/menu.txt
The mod assumes, that you have the gameplay settings "No map contact update" and "Realistic sensors" enabled.
You can adjust the hotkeys the mod uses by editing /data/Scripts/Menu/RealisticHydrophoneSettings.py. Edit the file either by hand, if you are comfortable with that, or open it using TheDarkWraith's OptionsFileEditorViewer (/data/Applications/OptionsFileEditorViewer/OptionsFileEditorViewer.exe).
Mod Compatibility: SH5 has to be patched to v1.2. TDWs hydrophone fixes have to be installed. TDW NewUIs version at least 7_1_0 up to 7_5_0 required. Install Realistic_Hydrophone_1_0 via JSGME after NewUis. It is correct, if the mod overwrites /data/Menu/Pages/menu_1024_768.ini of TDW NewUis. Any other JSGME warnings indicate a problem. If you have other mods, that change /data/Menu/Pages/menu_1024_768.ini, you will have to merge.
Credits:
TDW - This mod uses the timer and hotkey infrastructure introduced by his NewUIs as well as some of his utility functions. Also NewUIs code served as a great "learn by example" source regarding how to mod sh5.
------- Original Post:
Hi,
so, assuming you are using TDWs NewUIs and his hydrophone game patches, there are 2 ways to follow a contact, already. The stock "Follow_nearest_sound_contact" command and TDWs "Hydrophone follow nearest contact" command: Why another one?
Well, I like some aspects of the commands, while i do not like others. Here is a quick overview.
First, the stock "Follow_nearest_sound_contact" command:
Pro: It features spoken reports
Pro: It keeps the hydro needle towards the contact, so theoretically it reports accurate bearings
Con: But it is not accurate. If I use the stock command "Report_nearest_sound_contact" immediately after a "Follow_nearest_sound_contact" report, the bearings often differ by 1 - 1.5 degrees. The latter seems to be the correct value, if visually confirm the bearings through a periscope.
Con: Closing, Moving Away, Constant Distance estimation seems to be broken. For example in the TDW Torp Tutorial Mission, the soundman begins to report the contact as moving away once it passes a bearing of 30 degree, althouh it is still closing.
Pro: Estimation of Speed (Slow, Medium, Fast) seems to work, but...
Con: How does the soundman know in the first place, whether the contact is closing and how fast it is? He seems to be very confident at the very moment I order him to follow the contact.
Con: The soundman does not loose the contact when the sub moves fast, the sub surfaces or the contact is near 0 or 180 degrees
Second, the command "Hydrophone follow nearest contact":
Pro: I can select a target either on the hydrophone or persicope, which does not necessarily have to be the nearest one.
Pro: In contrast to the stock "Follow_nearest_sound_contact" the behaviour of your command is completely customizable using python scripts.
Con: It does not keep the needle towards the contact, when i'm not at the hydrophone station. The contact bearing is only updated once every 30 seconds, when the hydro needle passes the contact during its regular sweep. If I'm plotting with rather short time intervals, e.g. 5 minutes, and HydroFollowContactDeltaBearing = 1.0, this can mean that I use the bearing the target had at 4:30 instead of 5 minutes, which in turn can be the source of significant inaccuracy, up to 10% of the bearing delta.
Con: No spoken reports.
So here is my go at building a follow contact command. As the thread title implies, the goal of this mod is to provide an as realistic as possible hydrophone experience.
You can order the sonarman to follow a contact by either
pointing the hydrophone needle towards a contact
or looking at a contact at the UZO, Attack or Observation periscope
and press the hotkey - by default this is key 0 (zero, the one in the middle of your keyboard, not the zero on the numpad). You can change the hotkey by editing data/Scripts/Menu/RealisticHydrophoneSettings.py. The hotkey setting uses the same format as the hotkeys in TDW NewUis TheDarkWraithUserOptions.py, if you are familiar with that.
If you press the hotkey again anywhere in the ship, the sonarman will stop following the contact and return to normal sweep.
Once the sonarman is ordered to follow a contact, he will start sweeping back and forth around the selected contact and inform you, as soon as its bearing changes. He will be quite accurate, as he sweeps over the contact every few seconds and gets current information that way. This comes at a cost. He looses situation awareness of anything not within his sweep range. You might get surprised by contacts approaching from elsewhere, if you follow a contact all the time. You can set the sweep delta by setting HydroFollowNearestContactSweepRange (the default is 22.5 degrees) in TheDarkWraithUserOptions.py
The sonarman also tries to find out, whether the contact is closing, in constant distance or moving away. He does not know in the beginning. Let him follow the contact for a while. What he does is: He lets the contact's bearing change by a few degrees and remembers the time that took. Then he waits for the same time interval again and looks at the bearing change within that time interval. If it is significantly greater than the change within the first interval, this means the contact is closing, if the second bearing change is smaller than the first one, the contact is moving away. And if it is nearly the same, the contact keeps constant distance.
This aspect estimation only works under some assumptions. Your sub needs to be sitting tight. Don't move (or don't move fast at least), don't turn (this is worse). The contact maintains constant speed and course. If any of these don't hold, please ignore your sonarman's aspect estimation.
The sonarman will loose the contact, if it moves into bearings between 350 and 10 degrees or between 160 and 200 degrees (the areas at bow and stern not covered by the Gruppenhorchgerät GHG). He will also loose contact if we surface the sub. In that case he will inform you and resume normal sweep (futile if you surfaced and have the mod TDW_No_Hydrophone_On_Surface_No_Aircraft_Spotting enabled, but well, he never gets a day off anyway).
All the reports are written to the shiplog as well as spoken by the sonarman.
Known issues:
Aspect estimation does not work well with time compression. Looks like the timers I use do not follow the time compression accurately enough, so the two "supposed to be equal" time intervals used during aspect estimation are not equal and the results get spoiled.
The mod assumes the hydrophone Gruppenhorchgerät GHG. If you have a sub equipped with the Kristalldrehbasisgerät KDB, you do not have a blind area at the bow, yet the sonarman looses contact there. Anyone knows, how to determine which hydrophone is equipped from a python script?
Well, here is the download: http://www.deguero.de/jel/Realistic_Hydrophone_1_0.7z
Mod Compatibility: SH5 has to be patched to v1.2. TDWs hydrophone fixes have to be installed. TDW NewUIs version at least 7_1_0 up to 7_5_0 required. Install Realistic_Hydrophone_1_0 via JSGME after NewUis. It is correct, if the mod overwrites /data/Menu/Pages/menu_1024_768.ini of TDW NewUis. Any other JSGME warnings indicate a problem. If you have other mods, that change /data/Menu/Pages/menu_1024_768.ini, you will have to merge.
Some thoughts about how the hydrophone works:
Bearing readings should be quite accurate. Depending on the setting of the frequency seperating filter (Frequenzweiche), the resolution was smaller than one degree. It should be quite doable for any sonarman to move the hydrophone needle back and forth, determine the loudest position and get an exact bearing reading. But what should be the impact of noise, like moving at slow, normal or flank speed on electric motors.
Aspect estimation: Apart from observing how the speed at which bearings change develops, there are other ways to determine ascpect. Imagine a ship heading directly towards us. The bearing won't change at all, yet the soundman should notice at some point, that the contact gets louder and louder, and realize, it is closing.
Speed estimation: I like the count RPM approach. See http://www.subsim.com/radioroom/showthread.php?t=205625 . What are other ways to estimate speed at the hydrophone?
Credit:
TDW - This mod uses the timer and hotkey infrastructure introduced by his NewUIs as well as some of his utility functions. Also NewUIs code served as a great "learn by example" source regarding how to mod sh5.
Happy hunting
tscharlii
Sounds interesting. I have a few remarks. The first one is: I hope that at least this time you have not fixed something that was already working :D
Let me know if you are interested into hearing the rest of them. :salute:
tscharlii
10-20-13, 05:01 AM
Sure go ahead. Did I forget to write "Feedback welcome"?
Regarding the other issue (Gap is talking about http://www.subsim.com/radioroom/showpost.php?p=2125001&postcount=10832): I still wonder why nobody else experiences this.
Sounds very interesting. Will download & test.
Hi,
so, assuming you are using ... TDW's hydrophone game patches...
Is there a link?
tscharlii
10-20-13, 07:11 AM
Is there a link?
Here you go:
TDWs patches: http://www.subsim.com/radioroom/showthread.php?t=181433
TDWs NewUIs: http://www.subsim.com/radioroom/showthread.php?t=166093
Also I have made a little video that shows my mod in action.
http://www.youtube.com/watch?v=mYp1w5xz7DU
Sure go ahead. Did I forget to write "Feedback welcome"?
Regarding the other issue (Gap is talking about http://www.subsim.com/radioroom/showpost.php?p=2125001&postcount=10832): I still wonder nobody else experiences this.
Okay, for a start ought to warn you that if your new scripts are based, even in part, on TDW's code, you should give open credit to him and make it clear that your mod is an addon for his UI. I know from experience that he is quite jealous about his code :03:
Let's go to the technical remarks now:
bearing accuracy: WWII hydrophones were not as accurate as we could think, and for sure in most cases they were much lesser accurate than in game.Talking about the G.H.G, the Interrogation of U-Boat Survivors - Cumumulative Edition (http://www.uboatarchive.net/CumulativeEdition.htm) by the British Admiralty says that "Bearing accuracy is good". Nonetheless other sources say the opposite. Quoting an interesting article I have found on the web (Some hardly known aspects of the GHG, the U-boat's group listening apparatus (http://www.cdvandt.org/GHG1996.pdf) by Arthur. O. Bauer):
The British carefully investigated the capabilities of the GHG (Elac) apparatus in the captured U-570, in May 1942.
On successive selections of the high pass filters it was found that on the 6 kHz high pass-filter (utilizing the sonic spectrum between 6 kHz - 7 kHz), the bearing proved to have an accuracy equal or lesser of 1°, for 3 kHz (utilizing the spectrum between 3 kHz - 7 kHz) the accuracy was ca. 1.5°, and for 1 kHz (utilizing the spectrum between 1 kHz - 7 kHz) the accuracy was ca. 4°, at 500 Hz, thus bypassing the high pass filters, the accuracy was decreased to ca. 8°.
Average merchant ships, cruising at 12-13 knots, produced a maximum sonic spectrum at ca. 100 Hz and only 10% at 4 kHz. For destroyers cruising at 15 knots, the maximum sonic spectrum was at . 200 Hz, but still supplying 30% of its harmonic spectrum between, 4 kHz and 8 kHz.
In other words, lower frequency wavelenghts more abundant in ship sonic spectrums, givie the least accurate readings. Knowing that low-band waves are also the ones travelling further away from their source, we can also desume that bearing accuracy had to be better at short ranges than at long ones. This assumption seems to be confirmed by the fact
the K.D.B. had a better accuracy but a much shorter range than the GHG: besides being orientable, it was probably more sensible to relatively high frequencies than to low ones. For completeness, it is worth to note that, with its advanced electronics, the Balkon Gerat had the ability to filter efficiently low frequencies and to amplify higher ones, thus achieving a better accuracy and range than its predecessors. One last note on GHG's bearing accuracy; in an unreferenced article, uboataces.com refers that:
the triangulation was most effective with sound sources coming from the sides, with deteriorating accuracy as the source moved to the front or rear of the boat.
This issue was obviated in te next models through the adoption of orientable sensors, the increase of their number, and their technological enhancement.
Unfortunately, this aspect is totally neglectedin game. I suppose that randomizing hydrophone reports through python code wouldn't be a major issue. The point that I have not an aswer for is: can we make a script to apply different randomization ranges for different hydrophone models ad at different target ranges? :hmm2:
Speed, ship type, manoeuvre of the ship estimation. I have found a signed article on uboat.net (http://uboat.net/articles/id/52) stating that:
Experienced underwater sound detector operator was able to determine is a detected ship a cargo ship or a warship (type of the warship), approximate speed or manoeuvre of the ship (approaching, digression, increasing or decreasing of speed and depth, if detected object was a submarine).
I also wish to point you to the following subsim threads which discuss more in detail the speed estimation topic:
http://www.subsim.com/radioroom/showthread.php?p=2107994#post2107994
http://www.subsim.com/radioroom/showthread.php?p=1728160#post1728160
The above sources should unravel any doubt on the fact that the hydrophone could be used for detecting more data than just target bearings. I agree with you that doing it would have required several minutes of continuous listening though. Talking more specifically about target range, target closing/moving away, and speeding up/slowing down, I find your method for determining them based on real measurement rather than throwing exact numbers, brilliant and probably realistic. I wonder if the doppler factor might have helped a skilled sonarman in this task, especially for close and fast moving targets.
periunder
10-20-13, 02:11 PM
Will download & test.
Oh goodie. I can't wait to be disappointed!
tscharlii
10-20-13, 03:03 PM
Let's go to the technical remarks now: Thank you for your interesting remarks and links. Lots of stuff to think about what the mod might focus on considering its ambitious name.
THE_MASK
10-20-13, 03:48 PM
Great video :up: I like the mod .
Yes indeed, great mod an video.
A few questions for tscharlii:
- I have noticed that the mod package includes sound files apparently identical to the stock (German) ones. What is their purpose?
- With TDW's hydro follow target, we could set if the hydrophone operator must report bearings at fixed and user customizable intervals of time, or everytime target's bearing changes. Any way to restore this feature?
- following the reasoning of my previous post, can you make bearing accuracy to vary depending on hydrophone model used, range to target, operator experience, target bearing (for the GHG only), own engine noise, sea state, etc.
- If a contact is detected during normal sweep, the operator will report immediately whether it is closing/moving away. Can you introduce a margin of error to these early reports, marking their provisional nature with phrases like "probably moving away" in notepad logs. This data would then be calculated with better precision by your scripts and reported again in the log. Even better if the accuracy of early and "precise" reports is affected in part by operator's experience, noise factors, etc.
- can you make the "report estimated range" command only available after having followed the same contact for a while? At the very beginning our radioman should only be able to say wether it is a close, medium or long range contact, without throwing any number. Later on you could let him to report some numerical ranges, randomized according to experience, real range, noise factors, etc. If possible, you should also avoid the "dumb officer syndrome" where randomization leads to absolutely unconsistent estimations (i.e. if a target is esitimated as closing, the sonarman shouldn't report two consecutive range estimations of 1,500 and then 1,600 m).
- can you get rid of the "report exact range" command? I think is is simulating the usage of an active sonars, but type VII were hardly (if ever) equipped with them. Moreover it is a cheat, because the enemy won't be able to hear our virtual pings...
tscharlii
10-20-13, 07:26 PM
Yes indeed, great mod an video.
Great video :up: I like the mod .
Thank you!
- I have noticed that the mod package includes sound files apparently identical to the stock (German) ones. What is their purpose?
Those are .wav counterparts to the .ogg files of the game. My mod plays the speech through the directsound api, which understands .wav by default but not ogg. Obviously there has to be a ogg decoder included in sh5, but I have not looked for it yet. Some files (those with real names, eg. YesCaptain.wav) are cut from other sound file, so they can be used in a different context.
- With TDW's hydro follow target, we could set if the hydrophone operator must report bearings at fixed and user customizable intervals of time, or everytime target's bearing changes. Any way to restore this feature?
Yes, but probably after other things work. See below
- following the reasoning of my previous post, can you make bearing accuracy to vary depending on hydrophone model used, range to target, operator experience, target bearing (for the GHG only), own engine noise, sea state, etc.
This is what I want to focus on. I'll skip aspect/speed estimations for now. They can be added later on when realistic hydrophone information gathering works properly.
- If a contact is detected during normal sweep, the operator will report immediately whether it is closing/moving away. Can you introduce a margin of error to these early reports, marking their provisional nature with phrases like "probably moving away" in notepad logs. This data would then be calculated with better precision by your scripts and reported again in the log. Even better if the accuracy of early and "precise" reports is affected in part by operator's experience, noise factors, etc.
My idea here is to suppress the initial stock contact report altogether, and have my own initial contact report, as soon as the sonarman is able to hear the contact after considering all the relevant factors. His report will rather be something like "I can hear something on starport abeam". Starting from there he will gather more precise information. I'm currently in the process of determining whether and how it is possible to suppress stock speech and shiplog reports.
- can you make the "report estimated range" command only available after having followed the same contact for a while? At the very beginning our radioman should only be able to say wether it is a close, medium or long range contact, without throwing any number. Later on you could let him to report some numerical ranges, randomized according to experience, real range, noise factors, etc. If possible, you should also avoid the "dumb officer syndrome" where randomization leads to absolutely unconsistent estimations (i.e. if a target is esitimated as closing, the sonarman shouldn't report two consecutive range estimations of 1,500 and then 1,600 m).
Maybe these ideas should go into TDWs directions, since he is the author of "report estimated range". Also, I probably shouldn't try to fix his code again in the near future. :D In fact I had a similar function in my mod with voice reports and all, but removed it before releasing the first version of this mod, because I was not sure, how realistic it is to have the soundman tell distances +-100 or even +-1000 meters at all. I imagine this requires a huge deal of experience and this experience seems to be hard to build up. Different engines, different speeds, weather conditions, and you never get first hand visual feedback, whether your estimation was correct. Maybe in military training sessions before going on patrol for real.
- can you get rid of the "report exact range" command? I think is is simulating the usage of an active sonars, but type VII were hardly (if ever) equipped with them. Moreover it is a cheat, because the enemy won't be able to hear our virtual pings...
I'm not a huge fan of telling people how they have to play a game. What I do is, I never press that button, albeit it is there. It's a choice, like setting "no map contacts" in the options dialog or installing "real navigation".
Those are .wav counterparts to the .ogg files of the game. My mod plays the speech through the directsound api, which understands .wav by default but not ogg. Obviously there has to be a ogg decoder included in sh5, but I have not looked for it yet. Some files (those with real names, eg. YesCaptain.wav) are cut from other sound file, so they can be used in a different context.
I see now. Maybe you should also include English sound files then, for the ones who don't like German speech
Yes, but probably after other things work. See below
:up:
This is what I want to focus on. I'll skip aspect/speed estimations for now. They can be added later on when realistic hydrophone information gathering works properly.
Okay, a GHG hydrophone and an unexperienced operator should result in a bearing margin of error not lesser of ±1.5 deg on average; probably much higher at long range, near bow/stern, and when surrounding noise level is high.
My idea here is to suppress the initial stock contact report altogether, and have my own initial contact report, as soon as the sonarman is able to hear the contact after considering all the relevant factors. His report will rather be something like "I can hear something on starport abeam". Starting from there he will gather more precise information. I'm currently in the process of determining whether and how it is possible to suppress stock speech and shiplog reports.
Cool, I like this feature. I wish you good luck with it :yeah:
Maybe these ideas should go into TDWs directions, since he is the author of "report estimated range". Also, I probably shouldn't try to fix his code again in the near future. :D
As far as you don't use his code there shouldn't be problems at all. I am probably overcautious on these matters though. If there was an easy way to get in touch with TDW, he would probably encourage your work. Unfortunately this is not possible at present. In any case, if you get inspirations from his code for introducing some improvements into it, and as far as you don't get money from it, you do it openly and you give him credit, and you support his mod, I don't think TDW will complain. But try outsmarting him or claiming his code as yours own, and soon or later he will know it :yep:
In fact I had a similar function in my mod with voice reports and all, but removed it before releasing the first version of this mod, because I was not sure, how realistic it is to have the soundman tell distances +-100 or even +-1000 meters at all. I imagine this requires a huge deal of experience and this experience seems to be hard to build up. Different engines, different speeds, weather conditions, and you never get first hand visual feedback, whether your estimation was correct. Maybe in military training sessions before going on patrol for real.
Estimating rough ranges trough hydrophone was surely possible. Today I have read a British report on the interrogation of the survivors of a captured/destroyed u-boat, where the sonarman had (correctly) reported a range to the attackers of only 500 m, and the commander had discarded it based on his periscope visual (he was convinced that the pursuing ship was much bigger, thence his wrong range esitimation). Undortunately I didn't save the link, but I will try looking again for it tomorrow :up:
I'm not a huge fan of telling people how they have to play a game. What I do is, I never press that button, albeit it is there. It's a choice, like setting "no map contacts" in the options dialog or installing "real navigation".
People are not forced to use a mod either. I would gladly disable that button, if I had an option to do it. Why? you may ask. Well I suppose for UI cleannes, and for avoiding dispensable temptations in the most harsh situations :03:
tscharlii
10-20-13, 08:32 PM
I see now. Maybe you should also include english sound files then, for the ones who don't like German speech
Who on earth would not like german speech?:hmm2: Up until now I didn't even realize there is english audio for SH5. Every sh5 video I saw on youtube featured localized menus/texts, but german ingame voices. I own a german copy of sh5 and I do not have access to the english speech files as they are not included in my copy.
Who on earth would not like german speech?:hmm2: Up until now I didn't even realize there is english audio for SH5. Every sh5 video I saw on youtube featured localized menus/texts, but german ingame voices. I own a german copy of sh5 and I do not have access to the english speech files as they are not included in my copy.
Though not understanding much of them, I like German dialogs myself. Nonetheless I am sure someone doesn't, and seeing that you are "not a huge fan of telling people how they have to play a game" I thought I would have given you this suggestion.
By the way, I have English speeches on my HD (my italian-localized version of the game uses them by default); if you want, I can send them over to you. If you care. If you don't, neither do I :03:
tootsie
10-21-13, 12:29 AM
very promising. Thanks for the hard work.
THE_MASK
10-21-13, 01:17 AM
What is the documentation folder ? Is it part of the mod ?
http://www.subsim.com/radioroom/showpost.php?p=2125001&postcount=10832
I just reproduced this .. and this is deffinately a bug in NewUI's code. How confident are you in your solution ? Are you not skipping multiple checks on range this way ?
http://www.subsim.com/radioroom/showpost.php?p=2125001&postcount=10832
I just reproduced this .. and this is deffinately a bug in NewUI's code.
In that case I beg pardon for not having trusted tscharlii when he first reported the bug :88)
How confident are you in your solution ? Are you not skipping multiple checks on range this way ?
It seems that our tscharlii knows what he is doing. I know nothing on SH5 scripted routines and python, but if required I can give him an insight on sensors' controllers, to make sure he won't skip the information stored in them.
Estimating rough ranges trough hydrophone was surely possible. Today I have read a British report on the interrogation of the survivors of a captured/destroyed u-boat, where the sonarman had (correctly) reported a range to the attackers of only 500 m, and the commander had discarded it based on his periscope visual (he was convinced that the pursuing ship was much bigger, thence his wrong range esitimation). Undortunately I didn't save the link, but I will try looking again for it tomorrow :up:
Found it! :up:
http://www.uboatarchive.net/U-111INT.htm
In "U 111" the sounds of "Lady Shirley's" propellers were heard, and Kleinschmidt at first estimated that the British ship was about 5,000 metres (about 5,467 yards) distant.
The Junior Officer and the man at the listening gear were stated to have expressed surprise and to have queried Kleinschmidt's estimate, as they were of the opinion that their enemy was much closer.
A little later Kleinschmidt estimated that the British ship was 3,000 metres (about 3,280 yards) distant. The man at the hydrophones at once questioned this statement as he thought that the distance was about 500 metres (547 yards) only; but Kleinschmidt somewhat irritably repeated his estimate of 3,000 metres. It was emphatically stated that Kleinschmidt looked through the periscope just before making this statement; prisoners assumed that either something was wrong with the periscope or Kleinschmidt clung to his conviction that his adversary was a much larger ship at a much greater distance than was actually the case.
A few moments later the explosions of depth charges were heard.
You can get a lot of interesting clues from British Interrogation Reports (http://www.uboatarchive.net/BritishInterrogationReports.htm). They are not always fully accurate, but on many topics they are the best (or the one) accessible source :know:
tscharlii
10-21-13, 08:55 AM
What is the documentation folder ? Is it part of the mod ?
I'm sure you know that. JSGME ignores the the Documentation folder and does not install its contents into the SH5 folder structure. Some parts of my mod (Sound playback and a function to set the Hydrophone Bearing) are implemented in CSharp and compiled into Tscharlii.dll. The documentation folder contains the source code of Tscharlii.dll and is there for informational purposes/interested folks only. It is not a required part of the mod.
tscharlii
10-21-13, 10:50 PM
Alright, some theory crafting regarding hydrophone range and bearing accuracy based on different sources. Thank you, gap, for pointing me to them.
[1] http://www.cdvandt.org/GHG1996.pdf
[2] http://de.wikipedia.org/wiki/Gruppenhorchger%C3%A4t
[3] http://www.sengpielaudio.com/calculator-spl.htm
[4] http://www.sengpielaudio.com/calculator-levelchange.htm
[5] http://www.forum-marinearchiv.de/smf/index.php?topic=4469.15
The following calculations are based on very little data and lots of assumptions and last but not least, I'm not sure whether I have applied the maths involved correctly.
I'll assume a GHG (group listening apparatus) hydrophone and a merchant at 12-13 knots as target contact, since [1] provides some data on this scenario, and this is a common encounter in sh5.
First: max range under optimal conditions, that is:
no noise
contact on a relative bearing of 90 degrees starport or 270 degrees port
[1] says: 20 to 25 nautical miles, that is 37km to 46.3km for single contacts
[2] says: 20km for single contacts
I'll go with something in the middle, which, as far as i know, happens to be the max range the game starts to make contact pickups by hydrophone possible:
At R = 30km under optimal conditions, we can barely hear the contact.
At 90 (or 270) degrees the sound hits the hydrophones perpendicularily, i.e. the full sound pressure stimulates the hydrohpone membranes. If we deviate from that bearing, the sound waves come in aslant, and only a portion of the sound pressure is effective on the hydrophone. That portion is proportional to the cosine of the deviation from 90/270 degrees:
maxrange = R * cos(alpha), with alpha = deviation from 90/270 degrees
On to bearing accuracy: The GHG features 4 settings for the high pass filter[1]:
off: no filtering, complete received sound usable, bearing accuracy 8 degrees (I understand this as +-4 degrees)
1kHz: frequencies below 1kHz are filtered out, uses frequencies from 1kHz - 7kHz, yields a bearing accuracy of 4 degrees
3Khz: frequencies from 3-7kHz used, yields a bearing accuracy of 1.5 degrees
6kHz: frequencies from 6-7kHz used, yields a bearing accuracy of < 1 degree
The maxrange depending on bearing, that we calulated above, applies to the "off" setting. As soon as we start filtering frequencies to achieve better bearing accuracy, the sound gets softer and we need to be closer to the contact, so we can still hear it. But how much closer?
[1] says: the merchant at 12-13 knots produces a maximum sonic spectrum at 100Hz, and only 10% at 4Khz, which we can hear using the 3Khz setting. Fortunately, filtering out 90% of a sound does not mean, that the sound pressure usable at the hydrophone drops by 90%. [3] has some explanations and calculators about this topic. I assume, the sounds at different frequencies produced by the engines are equally loud. If we add up 10 equally loud sound sources with different fequencies, the sound level increases by 10dB. Conversely, the sound level of those 10% at 4kHz is 10dB less than the sound level of the whole, unfiltered sound. This level change is called "Delta L". The formula is not quite as simple as it looks like from this particular example (see [3], Adding levels of equal loud sound sources).
What does a 10dB decrease of the sound level mean regarding the usable sound pressure at the hydrophones? According to [4], the sound pressure factor y = 10^(Delta L / 20): For -10dB, this is around 0.316.
Sound pressure is reciprocally proportinal to distance.
So, at a bearing of 90 degrees, under optimal conditions, we can barely hear our contact at 30km and determine its bearing +-4 degrees. If we wanted to use the 3KHz setting and determine its bearing +-0.75 degrees, we need to be closer than 30km * 0.316 = 9.48km.
Time for some more assumptions regarding the other hydrophone high pass filter settings, that are not covered by [1]:
Given that 10% are above 4kHz, let's assume 33% (i.e. one third) of the sound emissions of a merchant at 12-13 knots are above 1Khz, and 3% (i.e. 1/33rd) are above 6kHz.
This leads to the following sound pressure factors:
cutoff-frequency None 1kHz 3kHz 6kHz
Portion of the sound 100% 33% 10% 3%
Decrease of sound level 0dB -4.77dB -10dB -15.18dB
Sound pressure factor 1 0.577 0.316 0.174
bearing accuracy +-4 +-2 +-0.75 +-0.5
Let's combine the two results (reduced maxrange depending on the bearing as well as on the selected high pass filter) and visualize them.
We have four functions, one for each high pass filter setting. The x-axis is the bearing deviation from 90/270 degrees. The y-axis shows the maximum range in km at which we can hear the contact using a specific high pass filter setting.
Blue(off) : f(alpha) = 30km * 1 * cos(alpha)
Red(1kHz) : f(alpha) = 30km * 0.577 * cos(alpha)
Green(3kHz): f(alpha) = 30km * 0.316 * cos(alpha)
Gray(6kHz) : f(alpha) = 30km * 0.174 * cos(alpha)
http://www.deguero.de/jel/hydrophonemaxranges.png
These results correspond to [5], which (I think) cites from E.Rössler, Die Sonaranlagen der deutschen U-Boote. In a GHG-Test performed in February 1943, the type IX sub U-194 was not able to detect a contact in a distance of 4km on a bearing between 348 and 10 degrees. This test report also has some data on the GHG range while the sub is moving at different speeds.
Feedback is very welcome. Maybe I should have used sound intensity instead of sound pressure? Maybe assumptions are just plain wrong? Otherwise I'm planning to base the mod on this model.
starport
That's starboard ;) We're not playing X3 here :p
I cant comment on the rest, tho it sounds very cool!
tscharlii,
your graph, the calculations it is based on, and the few arbitrary assumptions you had to make, look perfectly plausible.
I have just a little amendment regarding SH5's "physical world horizon": IIRC, it is in a radius of ca. 40km from the player, not 30 as you are assuming. But this little mistake doesn't invalidate the rest of your reasoning. I wish to point you now to some of the parameters affecting hydrophone's efficiency in stock game. This is to make sure that you will take them into the due account; should you be already aware about the information below, please ignore it.
Configurable global parameters (data\Cfg\Sensors.cfg). They affect all the player's hydrophones (AI units' sensor parameters are found in data\Cfg\Sim.cfg, and are much more simplified):
Hydrophone range factor: how much target's range affects its detection by hydrophone
Hydrophone fog factor: how much fog affects hydrophone detection
Hydrophone light factor: how much darkness affects hydrophone detection
Hydrophone waves factor: how much rough seas affect hydrophone detection
Hydrophone speed factor: how much own speed affects hydrophone detection
Hydrophone enemy speed: how much enemie's speed affects its detection by hydrophone
Hydrophone aspect: how much a low profile offered by the enemy affects its detection by hydrophone
Hydrophone noise factor: how much surrounding noises affect hydrophone detection
Hydrophone sensor height factor: how much a low sensor height affects hydrophone detection
Hydrophone already tracking modifier: this is a bonus, making the hydrophone operator not to loose a contact which was already detected
Hydrophone decay time: this is the duration of the bonus, in seconds from the last detection
Hydrophone uses crew efficiency: (boolean) whether hydrophone detection will be affected by crew efficency or not
Numerical factor must be ≥ 0 and can be bigger than 1 (i.e. they are not percent values), even though most stock settings are comprised between 0 and 1. It is my understanding that the higher the settings, the worst is hydrophone's detection under the conditions described for each parameter. Indeed, some of the parameters (fog, light, aspect) are non-relevant for hydrophone detection and they are set to 0 in stock game: they are probably there for symmetry with other sensors. The meaning of other parameters which are also set to 0 in vanilla game is a bit obscure (namely: enemy speed, sensor height), and needs to be investigated, but again I suspect that they are designed to work for other sensors.
Individual hydrophone parameters (SensorData controller). They affect individually each player hydrophone or any other sensor which can be fitted aboard playable u-boats (another controller, obj_Sensor, is used for AI sensor, and as before its parameters are much more simplified):
SensorType: valid types are: 0 - visual, 1 - Radar, 2 - Sonar, 3 - Hydrophone, 4 - RadarWarning, 5 - RadioDF
PreciseRange: this is the range in meters within which sensor detection won't be affected by target's range
MaxRange: sensor's maximum detection range in meters. To my understanding, between PreciseRange and MaxRange target's detection chance is interpolated linearly.
MinHeight: min target depth/altitude in meters, for it to be detected
MaxHeight: max target depth/altitude in meters, for it to be detected
MinSensorHeight: min sensor working depth/altitude in meters
MaxSensorHeight: max sensor working depth/altitude in meters
Surface: Standard detectable surface at MaxRange (in square meters)
RPMDetLevel: Detection level as percentage of Maximum RPM (between 0 and 1). This is a bit tricky as it make a warship (with higher max RPM output) lesser detectable than a merchant travelling more or less at the same speed.
SweepPeriod: this is how long (in seconds) will take a 360 deg (bearing) sweep of the sensor.
SweepArc: I think this is the width (in degrees) that the sensor will be able to scan at each given moment; I ignore if it cam also affect sensors' bearing accuracy, but I doubt it.
ProbInsideArc: detection probability inside each SweepArc (between 0-1)
Revolving: (boolean) this is whether the sensor 3d model will revolve around its y axis during a sweep
SkipSweep: (boolean) whether the operator will skip invalid sector during sensor's sweep (see below)
Bearing (min, max): this let us to set valid bearing intervals (in degrees) within which sensor detection is possible. More than one interval can be set.
Elevation (min, max):this let us to set valid elevation intervals (in degrees) within which sensor detection is possible. More than one interval can be set.
That's all. As you can see, our current chances to customize hydrophones and other sensors are pretty much limited. In my opinion, the main limits are:
- inability to customize global parameters for each sensor.
- inability to customize sensors' accuracy (we should explore the SweepArc parameter though)
- inability to set different detection ranges and/or detection probabilities as a function of sensor's and targets' altitude/depth and of target's bearing.
TheBeast and XRundel have deviced a brilliant method to partially obviate some of the above limits: for their Repaired Equipment Mod, they have used more than one SensorData controller for each hydrophone, each set with different sensor depths and max detection ranges. This workaround is not exempt from flaws though: each controller must be placed in a precise order for the hydrophone not getting mute for the player below a certain depth; I and Volodya discovered it a while ago. Yet, after our fix the human player is not affected by detection range limits at varying depths, and he can always listen as far as the maximum set MaxRange. Moreover, detection ranges for the AI operator don't vary following a curve, but they "jump" from a level to the next one. A smooth depth/range curve could be simulated by using many conveniently set SensorData controllers, but I am afraid tha doing it could determine lagging or even worst problem.
This is really all for now. Keep up your brillian work :up:
That's starboard ;) We're not playing X3 here :p
I cant comment on the rest, tho it sounds very cool!
:rotfl2:
tscharlii
10-22-13, 07:15 AM
That's starboard ;) We're not playing X3 here :p Yeah, thanks, i'd have continued typing (and speaking) it the wrong way. English is not my mothertongue. X3 is a nice game though, and I also play Starcraft II, which has starports as well. That probably puts me on the dark side of the force.
Individual hydrophone parameters (SensorData controller).
I guess you are talking about /data/Objects/Sensors/UBoot_Sensors.sim
What's the best way to have a look at the contents of this file? When I try to open it using the GoblinEditorApp.exe it just gives me a lot of "Lost Controllers" entries. That can't be right.
Currently I'm looking at it using a hex editor.
tscharlii
10-22-13, 07:28 AM
Ahh, n/m, I think I figured it out. Load UBoot_Sensors.GR2, Merge UBoot_Sensors.sim, and then:
Project Tree: SensorData @ GHG9 -> Existing Behaviours -> Render -> SensorData
Yeah, thanks, i'd have continued typing (and speaking) it the wrong way. English is not my mothertongue. X3 is a nice game though, and I also play Starcraft II, which has starports as well. That probably puts me on the dark side of the force.
"It takes strength to resist the dark side. Only the weak embrace it!"
Obi-Wan Kenobi
:yep:
I guess you are talking about /data/Objects/Sensors/UBoot_Sensors.sim
What's the best way to have a look at the contents of this file? When I try to open it using the GoblinEditorApp.exe it just gives me a lot of "Lost Controllers" entries. That can't be right.
Currently I'm looking at it using a hex editor.
Open UBoot_Sensors.GR2 first, and merge then UBoot_Sensors.sim :up:
vdr1981
10-22-13, 08:50 AM
I'm reading this thread and it looks like this is going to be one very god mod.:up:
Please, keep up the good work, with any language included, German, English, Or Japanese if you like...:D
Anyone with scripting knowledge is precious for subsim:yep:...Don't get surprised if I make few mod requests for you ,after you finished with realistic hydrophones...:D
Husksubsky
10-23-13, 01:54 PM
Thx for the great Mod. I use Sobers list and I have a small issue. I get updates, but I never got sweeping around target area. The test object was very close(a german destroyer) and I couldn t lock on to it either with hydrophone follow selected target either so something is messing. when you say TDW s hyd fix you mean the patch right?
hmmm "Hydrophone follow nearest contact" supposed to be TDW s. I don t see it exactly like that anywhere what am I missing here?
Thx for the great Mod. I use Sobers list and I have a small issue. I get updates, but I never got sweeping around target area. The test object was very close(a german destroyer) and I couldn t lock on to it either with hydrophone follow selected target either so something is messing. when you say TDW s hyd fix you mean the patch right?
hmmm "Hydrophone follow nearest contact" supposed to be TDW s. I don t see it exactly like that anywhere what am I missing here?
You mean this (http://www.subsim.com/radioroom/showpost.php?p=2131303&postcount=10861) ?
Husksubsky
10-23-13, 03:02 PM
You mean this (http://www.subsim.com/radioroom/showpost.php?p=2131303&postcount=10861) ?
My knight in shiny armor:salute:
hey! what happened to my face lol
well now hydrophone follow selected target works but it still sweeps 360 degrees.
tscharlii
10-24-13, 06:42 PM
well now hydrophone follow selected target works but it still sweeps 360 degrees.
Well, that's simply how TheDarkWraith has implemented it and is working as intended. Although the sonarman follows the target he still does a normal sweep at the same time. He provided this as an alternative to the stock follow contact command, with the added bonus, that you are not limited to following the nearest contact, but you can select one. Plus, you can configure, at what bearing difference or at what time interval the sonarman should give you an update on the contact.
My Realistic_Hydrophone mod provides a third way to follow a contact. The sonarman will focus on the area around the followed contact, if you use that third method. This mod, however, does NOT replace/fix/disable the stock or TDW's methods to follow a contact.
THE_MASK
10-24-13, 07:13 PM
Great mods , added to sobers mega mod list .
HydrophoneFollowNearestContactFix_For_NewUIs_TDC_7 _1_0_To_7_5_0
and
Realistic_Hydrophone_1_0
tscharlii
10-24-13, 07:59 PM
Great mods , added to sobers mega mod list .
HydrophoneFollowNearestContactFix_For_NewUIs_TDC_7 _1_0_To_7_5_0
and
Realistic_Hydrophone_1_0
Why, thank you, sober! Please keep in mind, that this is WIP and I am working right now on the integration of the ideas and remarks made on pages 1 and 2 of this thread.
HydrophoneFollowNearestContactFix_For_NewUIs_TDC_7 _1_0_To_7_5_0 should be stable. But I hope, as soon as TDW finds some time, he will look at the issue himself, and integrate this fix or a similar one directly into his NewUIs mod, so an extra fix mod gets obsolete.
Husksubsky
10-25-13, 08:01 PM
Well, that's simply how TheDarkWraith has implemented it and is working as intended. Although the sonarman follows the target he still does a normal sweep at the same time. He provided this as an alternative to the stock follow contact command, with the added bonus, that you are not limited to following the nearest contact, but you can select one. Plus, you can configure, at what bearing difference or at what time interval the sonarman should give you an update on the contact.
My Realistic_Hydrophone mod provides a third way to follow a contact. The sonarman will focus on the area around the followed contact, if you use that third method. This mod, however, does NOT replace/fix/disable the stock or TDW's methods to follow a contact.
I get it , but I was unclear as usual when describing something.When I wrote "it" still sweeps 360 degrees I ment your mod. It s not a big deal as long as it s the animation, but on your video it was sweeping back and forth.
I found a contact on hydstation and pressed "0" . when I exit station it went back to 360 sweep. It did update though.
Regards
tscharlii
10-25-13, 11:21 PM
I get it , but I was unclear as usual when describing something.When I wrote "it" still sweeps 360 degrees I ment your mod. It s not a big deal as long as it s the animation, but on your video it was sweeping back and forth.
I found a contact on hydstation and pressed "0" . when I exit station it went back to 360 sweep. It did update though.
Regards
So, to get you right. After pointing the hydrophone needle at a contact and pressing "0" you get a confirmation (both audible and in the message log) that the sonar man is following the contact and he keeps you updated on the contact after that? It's just he continues to sweep all around?
That indeed indicates a problem. It's hard to tell what's wrong from here though. You can do 2 things to help narrow it down.
First:
a. Before you start the game, run <SH5 Install Folder>/data/Applications/Dbgview.exe (that program is part of TDW's NewUIs Mod)
b. Start SH5 and load a historical mission
c. Once you are ingame in your sub, tab out to Dbgview and search (Ctrl-F) for one or both of the following lines
ProcessMemory: module SHControllers.act not found
ProcessMemory:VirtualProtectEx failed. GetLastError =
Second:
Disable all your mods and activate just TDWs NewUis and Realistic_Hydrophone_1_0. If sweeping back and forth works then, there might be an incompatibility between my mod and one of your previously installed mods, that I am not aware of yet.
Husksubsky
10-26-13, 06:59 AM
So, to get you right. After pointing the hydrophone needle at a contact and pressing "0" you get a confirmation (both audible and in the message log) that the sonar man is following the contact and he keeps you updated on the contact after that? It's just he continues to sweep all around?
That indeed indicates a problem. It's hard to tell what's wrong from here though. You can do 2 things to help narrow it down.
First:
a. Before you start the game, run <SH5 Install Folder>/data/Applications/Dbgview.exe (that program is part of TDW's NewUIs Mod)
b. Start SH5 and load a historical mission
c. Once you are ingame in your sub, tab out to Dbgview and search (Ctrl-F) for one or both of the following lines
Second:
Disable all your mods and activate just TDWs NewUis and Realistic_Hydrophone_1_0. If sweeping back and forth works then, there might be an incompatibility between my mod and one of your previously installed mods, that I am not aware of yet.
ok thanks
First: I did not find those lines. I copy pasted from your post, but was unsure of that search thingy. I fiddled around a bit with sifferent options but never found them.
Second: It works in a historical . I tried both historical and in campaign without luck earlier . I basicly have sobers list so it s interresting if he gets it running correct.
Accurate German Flags
sobers game loading tips V8 SH5
DBM Background Video
Real Environment - Revision_3
SteelViking's Interior Mod V1.2
SteelViking's Interior Mod V1.2.2 Patch
sobers multi color mod V5
Water reflections intensity varied by available sunlight by TheDarkWraith
sobers water splash anim SH5
sobers see thru wake fix
sobers best ever fog V22 SH5
sobers base sky mechanics V1
sobers better terrain v3 SH5
SH5_7A_Conning_Fix
Fuel Gauge WoGaDi_SteelViking's Interior
Equipment_Upgrades_Fix_v1_4_byTheBeast
Equipment_Upgrades_Fix_v1_4_Patch_1
#Equipment_Upgrades_Fix_v1_4_Patch_1_HotFix
Equipment_Upgrades_Fix_v1_4_Patch_1 (available by date) V9 by sober
EUF_UBoat_FX_v0_0_3_ byTheBeast
FX_Update_0_0_22_ByTheDarkWraith
FX_Update_0_0_22_Torpedoes - MagDet range 3m (modified for torpedoes failure patches)
AI_sub_crew_1_0_2_TheDarkWraith
NewUIs_TDC_7_4_2_ByTheDarkWraith
NewUIs_TDC_7_4_2_alt_officer_wounded_by_Torpedo
NewUIs_TDC_7_4_2_Real_Navigation
NewUIs_TDC_7_4_2_RadCapTools_0_2_alpha
Submarine's .sim&cfg (modified for engine ratio + independent control patches).7z
Sjizzle's - Charts for NewUIs part1_07.06.2013
Manos Scopes-patch for 16x9
IRAI_0_0_39_ByTheDarkWraith
IRAI_0_0_39_ByTheDarkWraithpatch1
R.E.M_by_Xrundel_TheBeast_1.2
R.E.M_by_Xrundel_TheBeast_1.2 - no hyd on surface - NewUIs-IRAI compatible
Depth Charge Fix Reduced Explosion Range
Cerberus62 Corrected Depth Charge Projector 1.0
Reworked Morale and Abilities v.1.1
Speech fixes and additions (german version)
sobers green crew training V4 SH5
TDW FX Fix for Sobers chimney smoke
Church's Compass Dials Mod v2.2 - Option Two
OPEN HORIZONS II_full v2.2
R.S.D. - Reworked Submarine Damage v5.4 by vdr1981
R.S.D. & R.E.M. - GHG Hydrophone add-on (no hyd on surface)
Bullet_spark_test
SkyBaron's Leigh Light for SH5 1.1
Sobers Terrain fix for OH2 V2.2
RPM Hydrophone v2.2.1
Realistic_Hydrophone_1_0
Expanded Navies by Cybermat47 v.1.0.01
smaller flags for Warships 1_0b
sobers Lights Cfg V5 SH5
Trevally Tutorial - All v0.2(for OHIIv1.3)
Trevally Automated Scripts v0.6
Trevally Harbour & Kiel Canal Pilot v3.1
Trevally TDC Help v2
MadMaxs_SH5_Subdiesel (mono) v2
sobers hud sounds V1 SH5
sobers Realistic contrast V6 SH5
EQuaTool 01.01 by AvM - Large Style
AOB slide ruller for TDW UIs and MO by stoianm
gap - HD 1 deg Scope Bearing v 1.0
Shadow Improvement ModLR
sobers bad weather deck gun V5 SH5
sobers map colors SH5 V1
Grossdeutscher Rundfunk
HydrophoneFollowNearestContactFix_For_NewUIs_TDC_7 _1_0_To_7_5_0
edit: starts doing 360 sweeps after REM is installed. removed and verified it works again. Not sure what to do now ..time for compromise maybe? Have not tried with all mods xpt REM yet. I just added until it stopped working following my list
tscharlii
10-26-13, 09:15 PM
starts doing 360 sweeps after REM is installed. removed and verified it works again. Not sure what to do now ..time for compromise maybe? Have not tried with all mods xpt REM yet. I just added until it stopped working following my list
I'll have a look at it. Maybe I can find a way to make them work together. Until now I didnt know that my MOD conflicts with R.E.M. Thank you for pinpointing that; It must have been a tedious procedure.
lodebeard
10-26-13, 09:21 PM
I ran into the same bug and came here only to find Husksubsky was having the same issue. I also did not have those lines in my debugger. I was going through and adding hydrophone-related mods one at a time when I decided I should refresh this page. Glad I did :P
Am messing with REM now to see if it works the rest of my list
lodebeard
10-26-13, 09:38 PM
edit: starts doing 360 sweeps after REM is installed. removed and verified it works again. Not sure what to do now ..time for compromise maybe? Have not tried with all mods xpt REM yet. I just added until it stopped working following my list
It seems to be only REM causing the problem for me. This is my 'almost Fifi's' mod list. Removing the red REM-related mods solves the issue. Your mod seems to be compatible with everything else there.
GramophoneShuffler
Accurate German Flags
Nazi Medals
DBM Background Video
SteelViking's Interior Mod V1.2
SteelViking's Interior Mod V1.2.2 Patch
silentmichal's interior mod 1.2.3
Fuel Gauge WoGaDi SteelViking's Interior
Fix clock rear torpedo room VIIA
DynEnv v2.9 - 1. Main Mod
DynEnv v2.9 - 3.a Enhanced Visibility (medium) (edit)
DynEnv v2.9 - 4.a Camera Filters - Realistic Colors
DynEnv v2.9 - 8. Wave Mechanics - Gale (Improved)
DynEnv v2.9 - 12. Sounds
DynEnv v2.9 - Breakwater Piers
DynEnv v2.9 - No U-Mark
Small trees SH5 V1
sobers more trees SH5
SH5_7A_Conning_Fix
Water reflections intensity varied by available sunlight by TheDarkWraith
Equipment_Upgrades_Fix_v1_4_byTheBeast
Equipment Upgrades Fix v1.4 Patch 1
Equipment_Upgrades_Fix_v1_4_Patch_1_HotFix
Equipment_Upgrades_Fix_v1_4_Patch_1 (available by date) V9 by sober
EUF_UBoat_FX_v0_0_3_ byTheBeast
TDW AI sub crew 1.0.2
FX_Update_0_0_22_ByTheDarkWraith
FX_Update_0_0_22_Torpedoes (modified for torpedoes failure patches)
MightyFine Crew Mod 1.2.1 Stock faces
MCCD_1.04_MFCM_1.2.1_compatible
Naights Submaine Textures v1.2 (PUV) (edit)
NewUIs_TDC_7_5_0_ByTheDarkWraith (edit)
NewUIs_TDC_7_5_0_New_radio_messages_German
NewUIs_TDC_7_5_0_jimimadrids_map_tools
NewUIs_TDC_7_5_0_RadCapTools_0_2_alpha
HydrophoneFollowNearestContactFix_For_NewUIs_TDC_7 _1_0_To_7_5_0
Fifi mods for NewUIs V2
Manos Scopes-patch for 16x9
gap - HD 1 deg Scope Bearing v 1.0
Sjizzle's - Charts for NewUIs part1 07.06.2013
Sjizzle's - Charts for NewUIs part 2 07.06.2013
Sjizzle's - Charts for NewUIs part 3 24.06.2013
Sjizzle's - Charts for NewUIs part 4 20.07.2013
IRAI_0_0_39_ByTheDarkWraith
IRAI_0_0_39_ByTheDarkWraith_Patch_1
R.E.M by Xrundel TheBeast 1.2 - no hyd on surface - NewUIs-IRAI compatible
R.E.M. - hydrophone mute for player fix (TDW compatible)
Cerberus62 Corrected Depth Charge Projector 1.0
NOZAURIO'S SKIN (Standar No Emblem) v-1.1.0
OPEN HORIZONS II_full v2.2
Sobers Terrain fix for OH2 V2.2
TDW_Mines_Subnets_Detectable_in_hydro (OH II )
OH II Minefield map for TDWs Ui
Reworked Morale and Abilities v.1.1
sobers green crew training V4 SH5
MadMaxs SH5 Subdiesel (mono) v2
Window Lights Redone V1
Sub Exhaust 1.0.5 byTheDarkWraith
Better Torpedo Graphics v2
gap - PVC Floor v 1.1 for SH5 - main mod
sobers smoke screen V1 SH5 (DynEnv compatible)
SteelViking's Bunker Fixes V1.0
SteelViking's Sky Banding Mod
SH5Lifeboats by Rongel TDW stoianm v2.1
SH5Lifeboat Wooden ver. 0.2
Submarine's .sim&cfg (modified for engine ratio patches)
Shadow Improvement Mod
Depth Charge Range Fix
Smaller flags for Warships 1.0 b
RPM Hydrophone v2.2.1
Realistic_Hydrophone_1_0
SH5 No Chronometer Ticking Sound
sobers Depth of Field (DOF) V6 SH5
R.S.D. - Reworked Submarine Damage v5.4 by vdr1981
R.S.D. & R.E.M. - GHG Hydrophone add-on (no hyd on surface)
gap - Alternative Cursors & KM Map Tools v2 - 1. Base Mod
gap - Alternative Cursors & KM Map Tools v2 - 2.a Alternate Tool Graphics - Wooden Handle
gap - Alternative Cursors & KM Map Tools v2 - 3. Shadowed Cursors
gap - Alternative Cursors & KM Map Tools v2 - 4.b Alternate Dialog Cursors - Shadowed
EQuaTool 01.01 by AvM - Large Style
gap - Alternative Cursors & KM Map Tools v2 - 5.i EQuaTool 1.1 Patch - Large Set
NewUIs_TDC_7_5_0_Real_Navigation
Trevally Automated Scripts v0.6
Trevally Harbour & Kiel Canal Pilot v3.1
Trevally Tutorial - All v0.2(for OHIIv1.3)
Lodebeard's key bindings
edit: starts doing 360 sweeps after REM is installed. removed and verified it works again.
It seems to be only REM causing the problem for me. This is my 'almost Fifi's' mod list. Removing the red REM-related mods solves the issue.
interesting finding guys :up:
As I have noted in more than one occasion, also on this thread, REM is different from other sensor mods in that, in order to simulate different detection ranges at different depths, it uses two or three SensorData controllers for each hydrophone. My suspect is that while one of the controllers is locked on the selected target by tscharlii's script, the remaining controllers keep sweeping the sensor normally :hmm2:
THE_MASK
10-27-13, 02:02 AM
I just had it working on sobers mega mod list . My hydrophone guy was sweeping the contact back and forth .
I just had it working on sobers mega mod list . My hydrophone guy was sweeping the contact back and forth .
What was your depth? My guess is that you were at a depth which excluded the usage of more than one SensorData controller.
Husksubsky
10-27-13, 07:16 AM
still 360 for me at 40 something depth. No Idea why it sweeps for sober thats just frustrating.:hmmm:. I go to the Pedestral mission,l dive , go to hyd station, point at sound,press zero, verify guy following contact and exit hyd station.
still 360 for me at 40 something depth.
Could you try again at periscope depth?
Husksubsky
10-27-13, 09:38 AM
Could you try again at periscope depth?
All times was at periscope depth xpt last time I tried at 40 I ll try agai various depths and tell if it starts sweeping back and forth. I ll even try truning the boat
THE_MASK
10-27-13, 04:07 PM
There was only 1 contact if that's any help .
Husksubsky
10-27-13, 05:09 PM
There was only 1 contact if that's any help .
I ll try to find a one contact situation then. You havent been in multiple contact situation yet? There are some historicals:)
lodebeard
10-27-13, 06:42 PM
I ll try to find a one contact situation then. You havent been in multiple contact situation yet? There are some historicals:)
Try TDW's torp tutorial as it has one ship closeby and you start submerged. That is where I did my testing. I did not mess with different depths.
lodebeard
10-27-13, 07:21 PM
I just had time to do a few more tests of this.
With only these mods enabled:
NewUIs_TDC_7_5_0_ByTheDarkWraith
Realistic_Hydrophone_1_0
R.E.M by Xrundel TheBeast 1.2 - no hyd on surface - NewUIs-IRAI compatible
My soundman is doing 360 degree sweeps while following his contact at periscope depth, 50m, 100m, 150m all on the same single contact. cancelled his order to follow and re-ordered him at every new depth. Used TDW Torp Tutorial as the mission for the testing.
THE_MASK
10-27-13, 08:33 PM
Just tried it again on a warship , works perfectly .
Campaign = North western approaches , multiple warships (only 1 warship moving) .
Click on hydrophone and rotate hydrophone to warship sound contact .
Press 0 (zero) on keyboard .
Exit the hydrophone .
Hydrophone needle sweeps back and forth .
''You can order the sonarman to follow a contact by either
pointing the hydrophone needle towards a contact
or looking at a contact at the UZO, Attack or Observation periscope ''
Sobers comment''then exit out of the hydrophone to see the needle sweep back and forth"
lodebeard
10-27-13, 11:33 PM
Just tried it again on a warship , works perfectly .
Campaign = North western approaches , multiple warships (only 1 warship moving) .
Click on hydrophone and rotate hydrophone to warship sound contact .
Press 0 (zero) on keyboard .
Exit the hydrophone .
Hydrophone needle sweeps back and forth .
I just repeated my tests on a warship contact using the cornered giant mission. Same result. I lock the soundman onto the contact with the zero key, and then when I leave the sonar station he follows the target but the needle continues to do 360 normal sweep. This occurs at all depths, with only the 3 mods I listed earlier.
I also tried it with NewUIs 7.4.2 since so far I had only tried 7.5.0. Same result with both builds.
THE_MASK
10-28-13, 01:51 AM
I just had time to do a few more tests of this.
With only these mods enabled:
NewUIs_TDC_7_5_0_ByTheDarkWraith
Realistic_Hydrophone_1_0
R.E.M by Xrundel TheBeast 1.2 - no hyd on surface - NewUIs-IRAI compatible
My soundman is doing 360 degree sweeps while following his contact at periscope depth, 50m, 100m, 150m all on the same single contact. cancelled his order to follow and re-ordered him at every new depth. Used TDW Torp Tutorial as the mission for the testing.I dunno .
Could this somehow be .net framework related Tscharlii ?
Husksubsky
10-28-13, 07:40 AM
Try TDW's torp tutorial as it has one ship closeby and you start submerged. That is where I did my testing. I did not mess with different depths.
Ok I can try but it seem you have tested throughly anyway. I kind of resigned and use it as it is. It seem to work. I kan go to the mission you mention and time updates /when he assumes closing /moving away etc. I m not sure same results should occur without REM but thats the closest I can do to test functionality. Unless Sober is kind and do the same:).
THE_MASK
10-28-13, 07:58 AM
Ok , it obviously doesn't work in single missions . Works in my campaign though .
Husksubsky
10-28-13, 08:08 AM
Delete the SH5 folder in my documents . Then start a new campaign . Then try the single mission .
have to reset all my settings then I guess..well ok I ll give it a try.
Anyway I got contactupdate everytime it swept over if it had changed position. after 3 mins I got info closing.
Tried deleting SH5 folder in my documents but same result.
Husksubsky
10-28-13, 10:09 AM
Ok , it obviously doesn't work in single missions . Works in my campaign though .
Hmm so it doesn t work for you either in single missions thats weird. I started campaign after removing SH5 folder, and just dived outside bunker. maybe not best place but found a contact. Still swept 360. As for now I just accept it. It works just with 360 sweeps and I obviously get slower updates. On the con side I guess I still monitor 360. (maybe it does that anyway I don t know)
Regards
lodebeard
10-28-13, 01:51 PM
First thing I did after installing Realistic Hydrophone was to start a new campaign and play. For me, campaign or single mission, the result is the same. If REM is installed, the needle does not track back and forth as it should...
I will double check this when I get home from work this evening.
THE_MASK
10-29-13, 06:23 PM
There is an option in OptionsFileEditorViewer
When the sonarman is ordered to follow nearest contact this is the maximum range from the sub the contact can be (in meters)
DEFAULT=7500.0 Meters
lodebeard
10-30-13, 12:09 AM
@Sober
Good idea, but the ships I did my testing with (TDW torp tutorial and the Cornered Giant mission) are well within the default 7,500 m range, so I dont think that is the solution.
tscharlii
10-30-13, 07:51 AM
The next release will fix the issue that the sonarman, while following a contact, still sweeps 360 degrees, if REM is installed.
lodebeard
10-30-13, 08:46 PM
The next release will fix the issue that the sonarman, while following a contact, still sweeps 360 degrees, if REM is installed.
Awesome! Care to share what was causing it?
The next release will fix the issue that the sonarman, while following a contact, still sweeps 360 degrees, if REM is installed.
:yeah:
Awesome! Care to share what was causing it?
Yep, I too am curious :)
tscharlii
10-31-13, 07:53 AM
Without REM, there is only one hydrophone sensor. With REM there are three, working at different depths. But only one of them is visualized (needle bearing) at the hydrophone station. Realistic_Hydrophone_1_0 controls the needle bearing of one hydrophone device only, while following a contact. That's ok, if there is only one installed, i.e. without REM. The fix is aware of the possibility, that there are multiple hydrophone sensors and sets the needle bearing of all of them.
Without REM, there is only one hydrophone sensor. With REM there are three, working at different depths. But only one of them is visualized (needle bearing) at the hydrophone station. Realistic_Hydrophone_1_0 controls the needle bearing of one hydrophone device only, while following a contact. That's ok, if there is only one installed, i.e. without REM. The fix is aware of the possibility, that there are multiple hydrophone sensors and sets the needle bearing of all of them.
That's exactly what I was guessing :up:
Beware that an hydrophone (I think it is the KDB) only got two SensorData controllers.
One last note: usually the KDB was used together with the GHG. I have a vague idea of how to make it to happen when the KDB upgrade is selected, but I am not sure if/how the game will handle two hydrophone sensors with one station. If you like to test it, I can send some tweaked files your way :up:
Husksubsky
10-31-13, 07:27 PM
Without REM, there is only one hydrophone sensor. With REM there are three, working at different depths. But only one of them is visualized (needle bearing) at the hydrophone station. Realistic_Hydrophone_1_0 controls the needle bearing of one hydrophone device only, while following a contact. That's ok, if there is only one installed, i.e. without REM. The fix is aware of the possibility, that there are multiple hydrophone sensors and sets the needle bearing of all of them.
But you must also tell us why it worked for Sober ;)
Looking forward to update mate:yeah:
THE_MASK
10-31-13, 09:31 PM
But you must also tell us why it worked for Sober ;)
Looking forward to update mate:yeah:I was using the rotating hydrophone and probably at about 35mts depth . Weird how it is working on my game . Not in every situation though .
I was using the rotating hydrophone and probably at about 35mts depth . Weird how it is working on my game . Not in every situation though .
Dunno how relevant, but the rotating hydrophone has "only" two controllers instead of three.
Husksubsky
11-01-13, 09:42 PM
I was using the rotating hydrophone and probably at about 35mts depth . Weird how it is working on my game . Not in every situation though .
It worked for me too Sober using the rotating one. I was at 18 m. And true as you said the rotating doesn t work above 16 m. I updated my autoscript btw taking your suggestions in regard.
tscharlii
11-03-13, 11:22 PM
Version 1.1 released. See first post.
vdr1981
11-04-13, 06:45 AM
Version 1.1 released. See first post.
You're doing great job with hydrophones tscharlii! :up:
Well done tcharlii :up:
I have enjoyed your videos and developped a true admiration for this Mr. Know-It-All. How can I enlist him aboard my boat? :D
tscharlii
11-06-13, 04:17 PM
...developped a true admiration for this Mr. Know-It-All. How can I enlist him aboard my boat? :D
This guy.... Turned out, he is a british spy. His fate is no longer in my hands. I should have been suspicious in the first place, given his strange name.
THE_MASK
11-06-13, 08:50 PM
So if i am using the rotating hydrophone , i have blind spots ? So you have to find away to link diffrent scripts with diffrent hydrophones ?
So if i am using the rotating hydrophone , i have blind spots ? So you have to find away to link diffrent scripts with diffrent hydrophones ?
aren't blind spots stored separately for each hydrophone in its own SensorData controller? :hmm2:
THE_MASK
11-07-13, 06:30 AM
aren't blind spots stored separately for each hydrophone in its own SensorData controller? :hmm2:I was referring to the known issues on post 1 .
I was referring to the known issues on post 1 .
Yes, I got your point sober. I think tscharlii's note on post #1 refers to signal strength and bearing accuracy curves rather than to blind angles, but indeed I can be wrong. Let's wait for his answers :salute:
tscharlii
11-07-13, 12:53 PM
So if i am using the rotating hydrophone , i have blind spots ?
As of Version 1.1, that is true. Adding support for the rotating hydrophone KDB and the Balcony Apparatus, however, is on the todo list.
Some aspects of the KDB/Balcony are not clear to me, yet. Probably you can help me out here.
As my understanding of the KDB is right now, I would model it just like the GHG, just without a deaf area at the bow and without a bearing dependent accuracy/max range degradation.
But what about the deaf area at stern. It stems from the engine noise, right? The conning tower doesn't seem to be much of an obstacle to the KDB (for instance see http://www.u47.org/images/album/R07_6jul40.jpg , KDB sensor is visible on the very bottom left of the picture).
So would it be possible to listen to contacts at stern, if you shut down the engines while being submerged?
Another source (which I cannot find again now :( ), however, mentioned, that you'd never completely shutdown your engines while being submerged. The sub would start sinking slowly, and change its position unpredictably, which can result in dangerous situations. So we might assume, there is always enough noise at stern, that we cannot listen there using the KDB?
On to the Balcony apparatus:
http://www.uboataces.com/hydrophones.shtml
The Balkon Great (Balcony Apparatus) was an improved version of GHG. Where the previous had 24 hydrophones, the Balkon had 48 hydrophones and improved electronics, which enabled more accurate readings to be taken.
So: Better bearing accuracy than the GHG/KDB, and like the KDB, no deaf area at bow and no bearing dependant degradation due to the way the hydrophones were mounted on the sub.
The german wikipedia article on the GHG (http://de.wikipedia.org/wiki/Gruppenhorchger%C3%A4t) also states, that you could use the balcony apparatus while the sub was surfaced, because the hydrophones were mounted at the keel and the body of the sub shielded them from surface noise. Unfortunately the wikipedia article provides no source for this statement and I couldn't confirm it anywhere else yet. Also, the UBoot_Sensors.sim file of R.E.M_by_Xrundel_TheBeast_1.2 - no hyd on surface - NewUIs-IRAI compatible (gap, your work?) seems to require the boat to be submerged, even with a balcony apparatus.
As of Version 1.1, that is true. Adding support for the rotating hydrophone KDB and the Balcony Apparatus, however, is on the todo list.
Does it mean that your code doesn't read valid bearing ranges from SensorData controllers? For future moddability, it would be better if you inferred optimal and deaf angles from the values stored separately for each hydrophone in its own controller(s).
Some aspects of the KDB/Balcony are not clear to me, yet. Probably you can help me out here.
To the best of my knowledge:
- the KDB had a much shorter range than the GHG, but it had a better bearing accuracy, and had no deaf angles. From that, I desume that it could have been more sensitive to short wavelenghts and lesser sensitive to long wavelenghts than the GHG, but this is just my speculation.
- due to its short range, the KDB wasn't used as unique listening apparatus, but always coupled with the GHG. This is currently not modelled in game (KDB's specs are therefore unrealistically boosted in game) but there is a possible method for making both sensors to be associated with the KDB upgrade. If you want, I can send you some files modded to the above purpose. I am not fully sure that my method would work, but imo it is worth a test.
- due to their relative vicinity, running engines should have deteriorated hydrophone sesitivity and accuracy at any angle, maybe with a slight further decrease in performamnce when listening astern. Balcon Gerat's sonic filters could have partly obviated the problem, but even so silent running or full stop would have been an important listening prerequisite.
- both GHG's and balcon gerat's sensors were located along or near boat's keel and, theoretically, they could have been used on surface, though the vicinity of wave-generated noise, would have deteriorated their performance sensibly. Again, Balcon Gerat's improved electronics could have made surface listening a bit better. On the contrary, KDB's sensors stickied out of the water while the boat was surface, thus making their usage impossible.
NOTE: the SensorHeight parameter (SensorData controller), already takes into account sensors' position along the boat profile. Therefore, setting KDB's minimum heigh lower than GHG's makes little sense imo.
- I remember having read on the forum that the Balkon Gerat had a deaf spot at high elevation angles (thus making its use pointless against targets located directly on top of the boat). IIRC, this fact is already modelled in game through stock and REM settings. I couldn't find a conformation to the above statement elsewhere on the web, but it makes sense anyway as, being located below the keel, BalkonGerat's sensors were a bit lower than GHG's sensors, and much lower than KDB one. This would be yet another argument in favour of the assumption that the Balkon Gerat wasn't as affected as GHG and KDB by surface noises.
R.E.M_by_Xrundel_TheBeast_1.2 - no hyd on surface - NewUIs-IRAI compatible (gap, your work?) seems to require the boat to be submerged, even with a balcony apparatus.
Yes, by popular request I modded REM's settings according to New UI's no hydrophone on surface submod. This doesn't mean that those settings are accurate, but rather that many players got accustomed to them.
In my opinion you should create a new set of sensordata controller settings, suiting your mod better. If you wanted to increase compatibility with other mods, you would need to clone the existing hydrophones. Should you decide to follow my suggestion, I will be glad to help you on the clonig task :salute:
THE_MASK
11-09-13, 09:02 PM
Any way to script Mr know it all to announce depth charges in the water ? It should be Mr almost know it all :O:
Any way to script Mr know it all to announce depth charges in the water ? It should be Mr almost know it all :O:
Good idea :up:
tscharlii
11-12-13, 04:37 AM
Does it mean that your code doesn't read valid bearing ranges from SensorData controllers? For future moddability, it would be better if you inferred optimal and deaf angles from the values stored separately for each hydrophone in its own controller(s).
Agreed, it would be better. There are some technical issues: How to access these values from python script in the first place? What to do, if you make a UBoot_Sensors.sim with multiple sensors of the same type (like in REM), but with different deaf zones? So it requires a certain amount of effort to make this work universally. The benefit, on the other hand, is limited imho. The deaf zones of the different hydrophones are well documented by different sources, and thus I do not expect further changes here. So I'll probably keep it this way for now.
- the KDB had a much shorter range than the GHG, but it had a better bearing accuracy, and had no deaf angles.
Do you have any source for me talking about the KDB's shorter range/better accuracy? I can't seem to dig one out. Some numbers would be cool. I agree there should be no deaf angle at all. What's the reasoning for having one at stern in UBoot_Sensors.sim for the KDB?
- due to its short range, the KDB wasn't used as unique listening apparatus, but always coupled with the GHG. This is currently not modelled in game (KDB's specs are therefore unrealistically boosted in game) but there is a possible method for making both sensors to be associated with the KDB upgrade. If you want, I can send you some files modded to the above purpose. I am not fully sure that my method would work, but imo it is worth a test.
My email: tscharlii@gmx.de
Yes, by popular request I modded REM's settings according to New UI's no hydrophone on surface submod. This doesn't mean that those settings are accurate, but rather that many players got accustomed to them.
In my opinion you should create a new set of sensordata controller settings, suiting your mod better. If you wanted to increase compatibility with other mods, you would need to clone the existing hydrophones. Should you decide to follow my suggestion, I will be glad to help you on the clonig task
That's probably the way to go: My Mod needs relatively simple hydrophone sensor controllers in UBoot_Sensors.sim, just one per hydrophone type:
- GHG: Maxrange 40000, MinDepth 6m, Bearingranges: 10-150, 210-350
- KDB: Maxrange 30000 (or whatever shorter range means), MinDepth 10m (or deeper? the kdb sensor should be well below the surface), Bearingranges: 0-360
- BG: Maxrange 50000, Mindepth 0m, Bearingranges: 0-150, 210-360
The rest will be done by scripting: Consider the sensor controllers as a first set of criteria, whether we can hear a contact or not, and the scripts act as a secondary filter, after the contact has been detected by the sensor controller.
For instance, this is GHG's effectiveness by our sub's depth (x-axis: depth in meter, y-axis: GHG-effectiveness in percent):
http://www.deguero.de/jel/ghgdepthdependency.png
So at 6m it starts working, at 7m we can already hear (very loud) contacts in a distance of 4km (10% of 40km set in sensor controller), and at 30m we reach an effectiveness of 95%, i.e. we can hear very loud contacts in a distance of 38km.
There are other depth modifiers for KDB, BG, and gradual modifiers that take the contact's speed into account (enlarging the detection range for loud contacts, shrinking it for more silent contacts), as well the noise generated by our own engines: We cannot hear anything, if we are running on diesels (incl. snorkeling), it's just too loud. On electric engines, silent running doesn't interfere much with the hydrophone's effectiveness, but moving at flank speed shrinks the detection range to just a few hundred meters.
So: It'd be great, if you could help me mod the UBoot_Sensors.sim. The goal is to have the above simple hydrophone sensors, but keep other changes/fixes, that are applied by REM, IRAI etc.
tofoftofof
11-12-13, 05:18 PM
Seems like the 1.1 version manually replaced sounds over to German? Tried preventing that by uninstalling mod, removing the sounds folder from the mod, reinstalling only to end up with no sonarman sounds. Nowhere near as interesting as the technical details in the posts preceding mine - but hopefully an easy fix.
Agreed, it would be better. There are some technical issues: How to access these values from python script in the first place?
No idea, sorry. Probably only TDW could help you on it. Haven't you found any example within his scripts? Try looking into IRAI :03:
What to do, if you make a UBoot_Sensors.sim with multiple sensors of the same type (like in REM), but with different deaf zones?
You could interpolate among them. Imo we should have maximum two SensorData controllers per hydrophone, for setting min and max depths/detection ranges. The rest should be done by scripts, based on the values stored in the aforementioned controllers.
So it requires a certain amount of effort to make this work universally. The benefit, on the other hand, is limited imho.
Besides being probably a cleaner approach (but this is just my opinion), using SensorData values would allow better future moddability, even by people who don't know python. A good alternative could be storing all the new values in a external cfg file, similar to what TDW has done with many of his mods. This would enable you to make your hydrophone scripts pretty generic, thus reducing your workload and enhancing the configurability of your mod.
Do you have any source for me talking about the KDB's shorter range/better accuracy? I can't seem to dig one out. Some numbers would be cool.
sure: :up:
uboataces.com (http://www.uboataces.com/hydrophones.shtml)
Gruppenhorchgerat (GHG)
The standard U-boat hydrophone, the GHG (Group Listening Apparatus) was installed in U-boats from 1935 onwards. It consisted of two sets of hydrophones mounted on each side of the bows, covering two arcs of 140 degrees on the sides of the U-boat. Because the hydrophones could not be rotated, the triangulation was most effective with sound sources coming from the sides, with deteriorating accuracy as the source moved to the front or rear of the boat. Consisting of 24 hydrophones, the GHG could pick up lone vessels up to 20 kilometers and convoys up to 100 kilometers away. The detection range however was also dependant on sea conditions.
Kristalldrehbasisgerat (KDB)
The KDB (Crystal Rotating Base Apparatus) was an improvement of the GHG in that it was rotatable and hence able to provide more accurate readings from any direction. The disadvantage however was its extreme vulnerability to depth charges.
Balkon Gerat
The Balkon Gerat (Balcony Apparatus) was an improved version of GHG. Where the previous had 24 hydrophones, the Balkon had 48 hydrophones and improved electronics, which enabled more accurate readings to be taken. The Balkon was standard on the Type XXI and was also fitted to several Type VIIs.
David Miller, 2000 - U-boat History, Development and Equipment, 1914-1945 (p. 105):
GRUPPENHORCHGERÄT (GHG)
The GHG (= group listening device), which was installed in U-boats from 1935 onwards, consisted of a group of hydrophones, which were mounted in two arcs, one on each side of the bows. Each hydrophone was connected to an electronic timing circuit in the Funkraum where the operator made adjustements to obtain the maximum reading, enabling him to establish the direction of the source. The GHG originally had 11 hydrophones each side, but this was later increased to 24 to give greater sensitivity and accuracy. However, the hydrophone arrays were fixed, which meant that the system was most effective when dealing with sound sources on the beam and its accuracy decreased rapidly with sources ahead or astern. The range depended on the ambient acoustic properties of the water but, given favorable conditions, single ships could be detected at about 11nm (20km) and convoys about 54nm (100km).
KRISTALLDREHBASISGERÄT (KDB)
The KDB (=crystal rotating base device), which was installed in Type VIICs and Type IXCs, was introduced in an effort to improve on the performance of the GHG and could give a reading with an accuracy, under favorable conditions, of ±1 degrees. The sensor itself was T-shaped; the cross-piece, some 19.7in (500mm) long, contained six crystal receivers. The KDB was located on the upper casing just forward of the capstan and could be rotated from within the U-boat. It suffered from two disadvantages: it could not be used when the U-boat was travelling at high speeds and it was vulnerable to damage from depth charges.
BALKON GERÄT
The Balkon Gerät (= balcony apparatus), usually known simply as 'Balkon' was an improved version of the GHG, and was first tested in a Type IXC in 1943. This was a cylindrical device installed at the foot of the stem, in which 48 hydrophones were installed. Coupled with greatly improved electronics, this gave a major improvement in performance compared to the GHG, and covered an arc ±170 degrees. Balkon was a standard fit in the Type XXI and was also installed in a small number of Type VIICs in 1944-45. Range varied with speed, weather, and sea-state but, as a guide, was stated to be 10,840yd (10,000m) against destroyers and 6,500yd (6,000m) against merchant vessels, with an accuracy of ±2 degrees.
German A/S Vessel "UJ 1404" - Interrogation of Survivors - C.B. 4051 (49), September 1942 (http://www.uboatarchive.net/UJ1404INT.htm)
(xi) Types of Listening and Search Gears
(A) Listening Gears
[...]
(c) G.H.G. ("Gruppenhorchgerät"). Consists of up to ninety hydrophones on either bow arranged elliptically. There are a number of circuits used in conjunction with condensers and the hydrophones are automatically switched in order to obtain bearings as a handwheel is rotated round a dial marked from 0-360°.
(d) K.D.B. ("Kristalldrehbasis") The K.D.B. gear consists of six receivers in line under the ship, which can be rotated from 0-360. The gear can pick up ships at a range of between 10-15 kms. (6.2-9.3 miles), giving their bearing to the nearest degree. It can be used up to a speed of 21 knots, but its range would be limited owing to propeller noises. The K.D.B. is made up of basis and crystal receiver, amplifier, filter and headphones. It operates on 220 volts and the shaft can be lowered about 50 cm. (19.6 ins.) below the ship.
REPORT ON THE INTERROGATION OF SURVIVORS FROM U-118 SUNK ON 12 JUNE 1943 - O.N.I. 250 – G/Serial 15 (Op-16-Z), 26 August 1943 (http://www.uboatarchive.net/U-118INT.htm)
K.D.B.
A survivor of U-118 said that the German Naval High Command had ordered the Krystaldrehbasis (quartz hydrophone) removed from all U-boats, but this was being done only as time permitted. The same survivor, a radio petty officer, said he liked the K.D.B. because he considered it more accurate than the other hydrophones, even though it’s range was not as wide.
"U 340" - Interrogation of Survivors - C.B. 04051 (91), January 1944 (http://www.uboatarchive.net/U-340INT.htm)
(v) K.D.B. Hydrophones no longer fitted to Operational U-Boats
A prisoner from "U 135" still under interrogation said that K.D.B. hydrophones are no longer fitted to operational U-Boats, as it is impossible to make the detection units watertight at depths greater than 100 metres (328 ft.). The prisoner added that the K.D.B. is a much better instrument at short and medium ranges than the G.H.G., and at very short ranges will give a bearing when G.H.G. will not. However, at long ranges, there is no reception, and the G.H.G. is therefore essential.
"U 73" - Interrogation of Survivors - C.B. 04051 (95), February 1944 (http://www.uboatarchive.net/U-73INT.htm)
(ix) K.D.B. Search Gear
The prisoner from "U.J.2104" stated that in A/S vessels, the K.D.B. search gear consists of six crystal units about 10 cm. (3.9 in.) in diameter, mounted in a single row on a retractable mounting about 90 cm. (35.4 in.) in length. The extensible gear is trained to receive the maximum sound effect in earphones. Bearing can be obtained within 5°. The gear is easily damaged and, at high speed, the rushing of water makes reception very poor (see C.B. 04051(49) ). Among associated gear, a special converter supplies a six valve amplifier. The valves were a special type, about 2 in. high.
Interrogation of U-Boat Survivors - Cumulative Edition - C.B. 04051 (103), June 1944 (http://www.uboatarchive.net/CumulativeEdition.htm)
(v) Hydrophones.
There are two principal types (Fact):
(a) G.H.G. (Gruppenhorchgerat") Multiple Unit Type. Generally consists of 24 hydrophones grouped 12 on either bow, but may consist of 36 or 48 hydrophones. To obtain bearings a handwheel is rotated over 360 degrees. Range: Up to 20 miles under favorable conditions. G.H.G. is fitted in all U-boats.
Bearing accuracy is good. The maximum range at which a destroyer or small merchantman can be heard under good Atlantic condition is said to be 10 miles and convoys may be heard up to 20 miles. Under poor conditions, however, the range drops to half or less of these figures. It is vulnerable to depth-charge attack and many C.O.'s distrust it.
(b) K.D.B. ("Kristall Dreh Basis"). Six receivers in line in a rectangular frame, rotatable through 360 degrees. Range is limited. Though formerly fitted in all U-boats, it is being discarded since water noises render it useless except at the slowest speed, and if the U-boat dives beyond 300 feet it is liable to be flooded. At short ranges, however, it is more accurate than the G.H.G. gear. It was mounted on the upper deck forward.
Another book, The encyclopedia of U-Boats by Eberhard Möller and Werner Brack, also deals with the hydrophone topic; the paragraph 'Underwater Passive reception (Listening)', discusses several aspects of WWII German listening gears. The following facts are reported:
sound spectrum sensitivity of all the sensors:
1,000-15,000 Hz
KDB's pros and cons:
"after swinging the device out [the authors refer probably to the device fitted aboard surface vessels, which was retractable], the base was rotated either by hand or remote control; and by moving it back and forth a noise source could be located with an accuracy to within a few degrees by searching for the maximum volume. By swithching on electric filters it was possible to suppress the lower frequencies and get more accurate readings by allowing the higher frequencies through"; nonetheless, it also stated that "because of noise from the current generated by the movement through the water, at first it could only be used at speeds of up to 6 knots, but improvements came later when it was encased in a streamlined casing."
GHG's pros and cons:
"the problem of obtaining good reception at high speed could only be solved by installing groups of receivers permanently into the hull plating or into special housings at the bow or along the keel". On the other hand "whereas they proved to be very accuate for diagonal readings, these straight-line receiver groups [the GHG sensors] had the disadvantage of offering very inaccurate results for readings from bearings forward or astern".
GHG's optimal ranges and accuracy:
"given favourable 'acoustic weather', a U-boat in 'silent' mode could pick up noise at the following ranges:
A destroyer cruising at 20 knots and at a range of 6-12nm with an accuracy of 1 degree
A merchantman moving at a speed of 10 knots and at a range of 4-8nm to the same accuracy; and Convoys from a far greater distance".
Balkony Apparatus pros and cons:
"the 'balcony' introduced later on U-boats originated with a demand by Oberkommando der Marine to make it also possible for surfaces, as well as submerged U-boats to 'listen'. This shape permitted continuous direction-finding with approximately the same accuracy in all arcs apart from the sector aft between 150 and 210 degrees.
The increase in cruising and maximum speeds brought about by the Type XXI and XXIII U-boats, as well as by the Walter (Type XVII and XXVI) boats, saw the 'balcony' arrangement installed behind the hull plating and faired over as smoothly as possible, the receiver working through a 3mm thick cover of V2A steel sheeting"".
On a slightly unrelated note, at least in the Mediterranean the optimal listening depth was between 60 and 80m under the sea level; sources:
REPORT ON INTERROGATION OF SURVIVORS FROM U.331, A 500-TON U-BOAT, SUNK AT ABOUT 1430 ON 17th NOVEMBER, 1942. (http://www.uboatarchive.net/U-331INT.htm)
(ix) Hydrophones. G.H.G.
Operators found 80 metres (164 ft.) the best listening depth in the Mediterranean.
REPORT ON THE INTERROGATION OF SURVIVORS FROM U-409 SUNK 12 JULY 1943 - Final Report - G/Serial 24 (Op-16-Z) (http://www.uboatarchive.net/U-409INT.htm)
U-BOAT TACTICS IN THE MEDITERRANEAN
U-409 was assigned to an operational area on the known convoy route near Oran. During daylight hours she could listen submerged at a depth of about 60 meters. One prisoner stated that other boats in the Mediterranean customarily maintain a depth of about 80 meters.
I agree there should be no deaf angle at all. What's the reasoning for having one at stern in UBoot_Sensors.sim for the KDB?
The astern deaf angle has been in KDB's settings since SHIII, I think, and no one has complained about it so far. Going by logic, the conning tower could have posed an obstacle to the detection of far or medium distance sound sources; Yet, none of the sources I have consulted makes any mention of it. :hmm2:
My email: tscharlii@gmx.de
Tomorrow I will send you a testing patch :up:
That's probably the way to go: My Mod needs relatively simple hydrophone sensor controllers in UBoot_Sensors.sim, just one per hydrophone type:
- GHG: Maxrange 40000, MinDepth 6m, Bearingranges: 10-150, 210-350
- KDB: Maxrange 30000 (or whatever shorter range means), MinDepth 10m (or deeper? the kdb sensor should be well below the surface), Bearingranges: 0-360
- BG: Maxrange 50000, Mindepth 0m, Bearingranges: 0-150, 210-360
The rest will be done by scripting: Consider the sensor controllers as a first set of criteria, whether we can hear a contact or not, and the scripts act as a secondary filter, after the contact has been detected by the sensor controller.
For instance, this is GHG's effectiveness by our sub's depth (x-axis: depth in meter, y-axis: GHG-effectiveness in percent):
http://www.deguero.de/jel/ghgdepthdependency.png
So at 6m it starts working, at 7m we can already hear (very loud) contacts in a distance of 4km (10% of 40km set in sensor controller), and at 30m we reach an effectiveness of 95%, i.e. we can hear very loud contacts in a distance of 38km.
There are other depth modifiers for KDB, BG, and gradual modifiers that take the contact's speed into account (enlarging the detection range for loud contacts, shrinking it for more silent contacts), as well the noise generated by our own engines: We cannot hear anything, if we are running on diesels (incl. snorkeling), it's just too loud. On electric engines, silent running doesn't interfere much with the hydrophone's effectiveness, but moving at flank speed shrinks the detection range to just a few hundred meters.
So: It'd be great, if you could help me mod the UBoot_Sensors.sim. The goal is to have the above simple hydrophone sensors, but keep other changes/fixes, that are applied by REM, IRAI etc.
Okay, for a start I will elaborate and submit to you a chart resuming the main hydrophone detection factors, and how they affected different listening devices. In the meanwhile, I suggest you to have a close look into the following document, drafted by the developpers of "Danger from the Deep": :03:
Sonar reference and implementation details (http://dangerdeep.sourceforge.net/doc/sonar.pdf)
I have created an on-line chart resuming all the information we have gathered so far:
https://docs.google.com/spreadsheet/ccc?key=0Ar__9ltm8QEmdHgwTm5famJMcnZNMWtDZUh0RFAxS lE&usp=sharing
I have left the document open for editing by anyone: feel free to correct any mistake I might have made, or to add information in case you find any new source.
You will notice that there are several discrepancies between different sources, especially regarding maximum ranges, maximum allowed speeds during hydrophone listening, and deaf angles. Talking about the latter, there seem to be some confusion between totally deaf arcs, and arcs at which sound detection would have been harder and/or lesser accurate but still possible, for KDB and Balkon apparatus. This might partly depend on the fact that "astern handicaps" could have varied greatly, depending on the propulsion adopted during underwater listening. The above statement is especially true if referred to the KDB which should have provided correct bearings at any angle, provided that U-boat propulsion was switched off during its use.
I will let you to draw the conclusions; at this moment I have just a few general suggestions:
Wave, speed and noise factors are global settings, and it is likely that in stock game they are applied indiscriminately to all the hydrophones. I don't know if the addition of individual factor modifiers for each hydrophone would be possible via scripting, but this would be a nice (and needed) addition.
I like the depth/range curve shown in your last post. Yet, I think you should implement a steeper function (or a constant offset) accounting for the drastic reduction of wave noise in the first meters of water, and subsequent enhancement of listening range at relatively shallow depths. This is especially important if you decide to adopt 80m bsl as best listening depth, and a maximum single contact detection range of only 20 km, as per our sources. To this purpose, you should keep in mind that a difference in height of just 2.5 meters, betweeng the GHG and the Balkon, made a big difference, contributing to make the latter fairly effective even on surface. You should also remember that the min sensor depth property set in SensorData, is relative to height of sensor linking bones in world coordinates, whereas U-boat's depth reported in game is relative to her draft (i.e. the height of the lowest part of her keel). For each U-boat model two sensor linking bones are used: one for GHG and Balkon Gerat, and one for the KDB. If needed, I can provide you with their heights in SH5 world coordinates.
Our sources show a consistent difference in detection ranges and sound emission spectra (which, on turn, affected bearing detection accuracy), between surface vessels cruising at different speeds/engine rpm's. In game, the RPMDetLevel property (one for each hydrophone, is SensorData), bonds ship rpm (as a percent of their maximum rpm) with the probability of detection by the hydrophone operator. This is essentially wrong, because it makes a tugboat hanging around at 5 knots potentially more detectable than a destroyer cruising at 15 knots. Absolute rpm levels should be used instead. Ideally, a propeller rotating at an higher speed should:
have an higher chance of being detected by the AI operator, and have a louder sound for the human player;
be detectable from further away, both for AI crew and player;
allow a more accurate bearing detection, both for AI crew and player.
All our sources agree on the fact that convoys were detectable from a range at least two times longer than single contacts. This is yet another important aspect obviously not modelled in game. You (or our common friend, Mr. Know-It-All :D) may have an idea on how to fix it via script. If not, I thought of a possible workaround which might partly fix the problem for the AI operator, but not for the human player; in SensorData, there are two parameters affecting detection probability: ProbInsideArc (i.e. the detection probability, in percent) and SweepArc (i.e. the arc, in degrees, within which ProbInsideArc is defined). By reducing SweepArc and ProbInsideArc, the detection probability for single contacts (covering just one arc, esp. at long range) would be reduced, but it would be relatively higher for convoys, as they would cover more than one arc, and independant arc probabilities would be combined. Does it make sense to you? :hmm2:
vdr1981
11-17-13, 07:43 AM
I must express my gratitude one more time, this mod is such a large improvement ! :up:
I've got few questions though...
Is there any way to prevent this?
http://s6.postimg.org/lom8bw4bx/SH5_Img_2013_11_17_01_03_39.jpg (http://postimg.org/image/lom8bw4bx/)
It can be very annoying when large conwoy is in site...
Also it would be really awesome if you could make some changes for sonar too...Current implementation isn't so realistic at all...
Mikemike47
11-18-13, 09:28 AM
I must express my gratitude one more time, this mod is such a large improvement ! :up:
Agreed. :yeah:
Will there be an English version for the sound files someday?
vdr1981
12-14-13, 08:03 AM
Bump! Tscharlii, please don't give up on this mod, it has so much potential... :salute:
Bump! Tscharlii, please don't give up on this mod, it has so much potential... :salute:
:agree:
undersigned
BobbyAmok
01-06-14, 06:48 PM
hello masters of mod!
and special greetings to tscharlii for this great modification (the sonarguy is now
my best friend below deck, i call him charlie. :D )
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^
is there a posibility that the messages of the sonarguy called out by heard contacts (in german: horchkontakt) that are shown in the message-box can be changed to the german terms?
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^
i'm german and i like to play the game in german language. i modificated the ui mod of the dark wraith to german by changing the menu.txt file (easy one :) ). so every call in the message-box is in german, except messages indicating the direction of a contact. it's not a big deal, but it bothers me more than it should.
if there is any advice how it could changed would be very welcome!
wohl auf!
"Die Südfrüchte runter vom Kartentisch. Auf Bananen kann ich nicht navigieren."
THE_MASK
01-23-14, 12:43 AM
The sonar guy still doesn't know about depth charges !
THE_MASK
01-23-14, 02:54 AM
Anyone knows, how to determine which hydrophone is equipped from a python script? Question from post 1
TheDarkWraith
01-23-14, 08:33 AM
Anyone knows, how to determine which hydrophone is equipped from a python script? Question from post 1
You can't. The python scripts aren't that powerful.
I was looking over this realistic hydrophone mod and well I had to have a laugh. Reason why there is no more work on it by the author? He is trying to do things that the scripts just can't do. He needs to be doing it in assembly. That's the only way he's ever going to be able to do what he wants. Judging by his responses he doesn't know how to program in assembly. Good smoke and mirrors mod though :)
You can't. The python scripts aren't that powerful.
I was looking over the real hydrophone mod and well I had to have a laugh. Reason why there is no more work on it by the author? He is trying to do things that the scripts just can't do. He needs to be doing it in assembly. That's the only way he's ever going to be able to do what he wants. Judging by his responses he doesn't know how to program in assembly. Good smoke and mirrors mod though :)
On a side note, I and vdr1981 were able to equip our u-boat with two hydrophones at a time (assigned to the same upgrade pack). It works in part, but it is not clear which sensor ranges are applied for both AI and human detection at any given time. Do you think there is a way to handle the two sensors correctly through assembly? This would be very useful if we want to simulate the KDB (rotating device) correctly in game. Due to its short range, the latter was always fitted togeher with the older GHG model (only used at short ranges due to its wide 'field of view' and to its higher precision) :yep:
TheDarkWraith
01-23-14, 09:06 AM
On a side note, I and vdr1981 were able to equip our u-boat with two hydrophones at a time (assigned to the same upgrade pack). It works in part, but it is not clear which sensor ranges are applied for both AI and human detection at any given time. Do you think there is a way to handle the two sensors correctly through assembly?
Almost anything can be done with assembly. I know where the code is iterating over all the sensors of an object but never followed it in depth to see actually how it's 'using' the sensors. When I start writing patches again I'll look into it more :up:
Almost anything can be done with assembly. I know where the code is iterating over all the sensors of an object but never followed it in depth to see actually how it's 'using' the sensors. When I start writing patches again I'll look into it more :up:
That would be a real breakthrough. Even with its (python-imposed) limitations, I find tcharlii's work brilliant. Especially the correlation between detection ranges/angles and angular accuracy. I hope you can merge it in your upcoming hydrophone patch(es) :yeah:
TheDarkWraith
01-23-14, 09:15 AM
That would be a real breakthrough. Even with its (python-imposed) limitations, I find tcharlii's work brilliant. Especially the correlation between detection ranges/angles and angular accuracy. I hope you can merge it in your upcoming hydrophone patch(es) :yeah:
Sorry I wouldn't bother with this mod. It's too limiting in how it's done things. It's not proper if you follow me. Redo it in assembly then I'll consider it. I really have nothing good to say about this mod so I'll just keep quiet now.
Sorry I wouldn't bother with this mod. It's too limiting in how it's done things. It's not proper if you follow me. Redo it in assembly then I'll consider it. I really have nothing good to say about this mod so I'll just keep quiet now.
I am not talking about the implementation of this mod that, as you have stated, is probably poor due to python-limitation. I am talking about its concepts, which imo are sound :yep:
vBulletin® v3.8.11, Copyright ©2000-2025, vBulletin Solutions Inc.