View Full Version : Realism- and gameplay-related hardcode fixes for SH3.EXE
Pages :
[
1]
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Realism- and Gameplay-related hardcode fixes for SH3.EXE
-- The inofficial Patch v1.6 for Silent Hunter 3 --
Stable version:V16B1
Date of this post: May. 23th 2012
Here I present my inofficial hardcode patch for the Silent Hunter 3 executable. Due to copyright issues and in order to prevent illegal software duplication, I cannot share the patched sh3.exe - I can only offer a Patch-Kit for you to patch the executable by yourself. This makes sure that only a legal owner of the software can use these fixes.
Download
V16B1-Readme in ENGLISH can be found here:
http://www.mediafire.com/?jl18d352j54g1ie
V16B1-Dokumentation in DEUTSCH guggsdu hier:
http://www.mediafire.com/view/?z5dv44e11aium7k
V16B1-Patch-Kit (including Readme) can be found here:
http://www.mediafire.com/?27tcm2yg29gsqqc
Hardcode-Fixes Overview
This in only a very brief overview about the Hardcode Fixes. Details and installation instructions can be found in the Readme (see above!). Due to Stieblers cool OptionsSelector tool, most of the Fixes can individually switched ON/OFF. Even the 4GB-patch can be applied with his Selector.
1. Realistic Repair Times.
Repair times of all U-boat equipment take 60 times longer than before. The factor of 60 is user-adjustable.
2. Inaccurate range-estimations
Inaccurate range estimations for WatchOfficer (->Nearest visual contact) and WeaponsOfficer (-> Solution to target). No gods-eye firing solutions anymore. Before this mod: "Range: 8932m, Herr Kaleun". Now: "Range: 9000m, Herr Kaleun".
3. Snorkel-Fix
Speed restriction when snorkelling - wind speed dependent!
4. Periscope-Fix
Periscopes nearly useless for higher speeds, since blur effect simulates periscopes vibrations. At higher speeds, periscopes are moved down automatically.
5. Hydrophone-Fix
Hydrophones useless when diesels are working. When snorkelling, you must stop diesels in order to use hydrophones. Otherwise you'll hear nothing. No sound contact reports when diesels are working.
6. External torpedo reload fix
No reload of external torpedoes possible during bad weather.
Speed restriction to "slow" during external reload.
No diving possible during reload of external torpedoes.
7. Internal torpedo reload fix
No reload of internal torpedoes during storm and when surfaced. During storm one has to dive below 16m in order to reload internal torpedoes.
8. "Crash dive blues"-Bugfix (by h.sie and Stiebler)
From now on, you don't lose control over the sub anymore if you interrupt a crash dive before the sub has reached its designated crash dive depth.
9. Watch Officer automatically moves to bridge when surfacing
The lazy watch officer now automatically moves to the bridge when surfacing.
10. Fog warning
During high time compression (TC) it can happen that suddenly heavy fog occurs (or disappears), but the player doesn't even notice it and so he won't be able to act according to that new situation. This fix reduces TC>16 to TC=16 whenever fog occurs or disappears in order to warn the player. Additionally, the watch officer reports "fog sighted" resp. "fog disappearing".
11. Oxygen-Supply - by LGN1 (idea) and h.sie (programming)
So far, SH3 models a 100% renewable oxygen (O2) supply. That means: After a long period of diving, say 40 hours, it was sufficient to surface and after that the Uboat was able to dive for 40 hours again and again. With this fix, O2 is divided into two parts: A renewable part and a non-renewable part. The renewable part is the O2 in the air of the Uboat. This part is sufficient for a diving period of about 5-7 hours. During this time the LI informs you about the O2 content of the air, starting at the normal value 21% and slowly decreasing to the critical value of 17%. At 17%, the LI automatically starts to add O2 from the oxygen-supply (contained in pressure bottles). This botteled O2 supply is sufficient for a long diving period of about 30 - 100 hours (depending on Uboat type), but that O2-supply is non-renewable! That means: It is not filled up when surfacing. Only the O2 in the air is restored to the normal value of 21% when surfacing. From now on the Player has to act economically regarding O2 supply, what adds a new strategical component to the game.
12. U-Tanker Mod - by Stiebler and h.sie
Everyone complains that, when you dock at a U-tanker in mid-ocean, you lose all your current renown/tonnage for medal purposes, you get a full refuelling, full repairs, full torpedo load-out and you lose the patrol grid which BdU ordered. No longer! With this Fix, you get only 1-4 air torpedoes, you retain the patrol grid details, you receive some repairs to your hull-integrity (but not to equipment) and you receive a fuel upgrade, of up to 30% of the full capacity.
13. BDU-Messages Mod
Instead of the monotonic 2-3 standard BDU responses to status reports, there are now 28 different messages the BDU will send, depending on your tonnage sunk, fuel supply, hull damage, remaining torpedoes.
14. Radar Fix
Radar automatically switches back to ON state, when it has been switched OFF in high waves. Additionally, now the default state is OFF when a game is loaded.
15. WarNews - by Stiebler and h.sie
TC doesn't drop down to 1 when a radio message is received.
16. Wolfpack Mod (!!!) - by h.sie (programming) and LGN1 (idea)
When you find a convoy and send a contact report, it can now happen that BDU orders to shadow the convoy and send contact reports every hour, until a wolfpack consisting of AI-Uboats has arrived and collectively attack the convoy.
17. Torpedo Failure Fix - by h.sie (programming) and LGN1 (failure model)
Models higher dud rates during the torpedo crisis until 1942, and also models duds resulting from too shallow torpedo depth settings.
18. Night Vision Fix - by Makman94, Rubini and h.sie (programming)
Reduced visible range at night.
19. Diesel Damages Fix
Risk of random diesel damages when agonizing diesels with flank speed.
20. Bad Weather Fix
Shortened time periods with heavy fog.
21. Collision Damage Fix
Enlarged damage to the Uboats pressure hull when rammed by surface ship (e.g. escort).
22. Battery Discharge Fix
No movement anymore when submerged and battery empty.
23. SalvoSelectorSwitch Bugfix
Little bugfix for Salvo selector
Compatibility with Supermods:
1) GWX: Yes.
2) NYGM: Yes - except for the longer repair times fix.
3) LSH: Not tested yet, but should work.
4) WAC: Not tested yet. Should work, if you use stock repair times instead of LRT.
5) CCom: Not tested yet, but should work.
Additional Notes:
1) Don't use any of the older LRT (Longer Repair Times) or LLRT (Little Longer Repair Times) mod.
2) Do not load save-games produced with an older version of the patched exe. I suggest to patch only when you start a new career.
3) This patch adds code to sh3.exe. Some Antivirus-Programs maybe don't like this.
4) The patcher will remove the copy protection of your sh3.exe. Since this is not legal, you must not use this patcher if you have a copy-protected version.
5) USE MY PATCHES ON YOUR OWN RISK. ALTHOUGH I TRY TO WORK ACCURATE, THERE STILL REMAINS A LITTLE CHANCE FOR A PROGRAM CRASH (CTD), WHICH COULD CORRUPT DATA.
-------------------------------------------------------------------------------------------------------
Original first post:
-----------------
Finally, I found out where in the allocated memory sh3.exe stores the amount of damage of all the uboat compartments and equipments and, much more important, I also found the assembler routines which modify the damage amount. So I was able to change the damage status, repair times and flooding level of abitrary compartments and equipments during gameplay using an little external program! For example, I set a certain 32 Bit Floating-Point value to 1.0 and immediately I heard "Periscope destroyed, captain". Setting it back to 0.0 completely repairs the periscope.
I am lightly optimistic, that realistic repair times AND realistic flooding behaviour can be done with a little assembler code. Hope I can solve the mentioned problem.
Stormfly
08-28-10, 06:20 PM
seams that youre about to open Pandora`s Box :D
nice that you are kind enough to find this, man what other bad things are waiting for you in it...:03:
Looks like a great find.
Usually the Longer repair time mods were a trade off, between crew eff. and flood timer!
Will stay :rock:tuned!
ryanwigginton
08-29-10, 10:21 AM
Awesome! I will start playing again if you crack this bad boy.
seams that youre about to open Pandora`s Box. nice that you are kind enough to find this, man what other bad things are waiting for you in it...:03:
Awesome! I will start playing again if you crack this bad boy.
I am not interested in "bad things" or to "crack" something. But I am very much interested to fix some bugs UBI wasn't able or willing to fix. UBI promised a "realistic simulation". that promise in mind, I bought that game twice (one early version with copy protection and one without protection). but the repair times, even in the latest patched version 1.4b, are far away from being realistic. and the available repair time mods are only workarounds and have negative side-effects on flooding behaviour as another poster already wrote.
The repair times of the compartments (command-room, engine-room) cannot be changed since they are directly linked to the flooding recovery times which I won't touch. But the repair times of all the equipment (periscopes, engines, pumps) can be changed by a arbitrary constant factor. what about a factor of 60?
Repairs which take 1 minute now will then take 1 hour and so on.
Still optimistic that it will work, but I have to become familiar with some floating-point assembler commands.
This will be a revolutionary find matey! I hope you can make a go of it...:DL
makman94
08-30-10, 04:28 AM
this is very interesting H.Sie ! good luck to your 'research' :up:
divingbluefrog
08-30-10, 05:36 AM
I'm sure you are aware of this thread :
http://www.subsim.com/radioroom/showthread.php?t=172432
It changed my life. Before, I was using LRT with some tweaking of mine, essentialy to keep the fatigue model on.
Now, I just have changed this few lines in the basic.cfg file :
NumberOfCrew5=10
Interval1_5=5.1
Interval2_5=1000;6.5
Interval3_5=1400;13.7
It gives me realistic repair times, many hours for heavy damaged equipment, no influence on crew efficiency in the other Uboat's compartments, no influence on fatigue model, and flooding recovery times that seem to be realistic too, 20mn for a 1% hull damage.
Stormfly
08-30-10, 05:48 AM
...with "bad things", i ment of course (from the view of a hardcore simmer) poor or missing simulation features and bugs. :88)
I'm sure you are aware of this thread :
http://www.subsim.com/radioroom/showthread.php?t=172432
It changed my life. Before, I was using LRT with some tweaking of mine, essentialy to keep the fatigue model on.
Now, I just have changed this few lines in the basic.cfg file :
NumberOfCrew5=10
Interval1_5=5.1
Interval2_5=1000;6.5
Interval3_5=1400;13.7
It gives me realistic repair times, many hours for heavy damaged equipment, no influence on crew efficiency in the other Uboat's compartments, no influence on fatigue model, and flooding recovery times that seem to be realistic too, 20mn for a 1% hull damage.
Hi divingbluefrog,
I read that post, but I didn't understand it completely. Two questions:
1) Did you also change the FloodingTimes in the Zones.cfg?
2) What are the other Interval2_X and Interval3_X values in your Basic.cfg?
(X goes from 1 to 13 or so. ) Or are they all the same???
Greetings,
h.sie
Great work, h.sie :up:
While you are at it, maybe you can find out how the CO2 level in the sub works. I think at the moment you can stay submerged only 48 hours while in real life it was more like72 hours. Would be great if this could be fixed, too.
Cheers, LGN1
Magic1111
08-30-10, 12:20 PM
Still optimistic that it will work, but I have to become familiar with some floating-point assembler commands.
Hi h.sie !
This Thread is very interesting, and I wish you good luck for your work !!! :up:
Best regards,
Magic:salute:
CherryHarbey
08-30-10, 12:50 PM
If you can get longer repair times, without the trade off that existing mods have, that would be great. The very best of luck with your work.
divingbluefrog
08-31-10, 02:54 AM
Hi,
1) Yes. I still use the zones.cfg provided by Nvdrifter in Drifter's Realism Mod v1.02a
2) The other values of Interval2_x and Interval3_x are pure stock, except for NumberOfCrew3 and 10 which Interval3_x values were inverted, so I made the correction.
Hope this helps.
it's getting better and better. I don't even have to patch the sh3.exe directly to apply the corrected assembler routines. using auto-assembler, they can be applied dynamically at game launch time to the sh3 routines in RAM. so I don't risk to get banned from this forum.
All seems to work well, but I still have to make some tests.
I have to damp down my euphoria, because these instant repair times bother me for 2 years now and the solution seems to come nearer and nearer.
Stormfly
08-31-10, 06:51 AM
very good news ! :DL
...if i think about the possibilitys we would have then OMG :o
@diving:
If you use the flooding times from nvdrifter, you have the well-known very long flooding times for the compartments, which I don't like.
h.sie
Well, well...this type of mod have the power to awake anyone from deep sleep...good work mate!:up:
Looking forward for this mod!
Cheers,
Rubini.
Thanks for your good wishes, guys. Regarding repair times I am still very optimistic now, but I have to calm down your euphoria regarding possible "additions".
Little fixes like rising repair times, or (as LGN1 wanted), manipulating the dive time and CO2 level, are possible. Or maybe the "WO stays in bed when surfaced" bug can maybe be fixed. We'll see.
But my assembler knowledge is not good enough to add new features. I spent 5 hours only to realise a floating-point division by 60,0 because I still have problems with FPU commands.
As always, there are some drawbacks at the moment:
Since (at the current state) the changes will not be patched statically into the sh3.exe, there is a little launcher program required which overwrites a repair time routine in RAM.
1. This launcher currently does not work together with SH3Commander.
2. You have to trust me that the launcher is no malware/virus. The launcher uses code injection mechanism to overwrite routines of sh3.exe in RAM. This mechanism is also used by viruses.
The repair times for equipment are still displayed like this 0:02 (2 minutes). But these 2 minutes are now 2 hours. So I recommend to hide these (wrong) numbers and only show the text messages for damage "Light, Medium, Critical" in the GUI and add some time estimations e.g. "Medium (2 - 4 hours)" as in the LRT mod.
I can test it only for my version of sh3.exe and I've read somewhere that there are 4 different versions of the executable available. Pessimistic that it works with the other versions since it uses absolute hex-addresses. But adapting to the other versions is easy.
When the fix works stable I plan to apply my routines directly into the executable in order to make it independent from the launcher and compatible to SH3 Commander. I don't know if that is easy or not and I don't know if that is supported by this forum. If not, I'll do it only for my private use and share it with my family.
But: The 4 Gigabyte patch for sh3 is also a binary hack and nobody cares.....
First Beta maybe this weekend?
Greetings,
h.sie
SquareSteelBar
09-01-10, 02:02 AM
...I don't know if that is supported by this forum. If not, I'll do it only for my private use and share it with my family...Was it possible to adopt me? :hmmm:
BTW: in my opinion it doesn't matter in what way copyrighted files are changed; we do that since several years here.
But it does surely matter in what intention it is done - modding [tolerated and even welcomed by UBI] or illegal purposes [harming the copyright owner; I think your WIP isn't suitable to do so]...
Maybe it's a good idea to ask Uncle Neal...
But: The 4 Gigabyte patch for sh3 is also a binary hack and nobody cares.....Another example is MultiSH3 patching FileManager.dll
Was it possible to adopt me?
Count me in too please...:DL
Stormfly
09-01-10, 02:27 AM
dont worry, its a beginning and sounds promising, good to know that someone is after this issue, having enough courage and patience to deal with that in assembler, this knowledge is rare today and actual worth to be improved i think.
Count me in too please...:DL
Me too!
The drawbacks that you exposed are not important and most of them are just fixable as you said. We can help you latter in fix those little issues if needed. This work have great potential to open doors to fix some others old annoying issues for Sh3. This type of mod is the last frontier in the mod work that this community yet didn't touched. Great work mate!:salute:
I am currently playing SH3 with fast flooding times as in GWX and the repair of the equipments takes, depending on the damage, some hours. I like that. An over 40 years old guy is jumping through his room like a child. Smiling.
At 12:00 I ran on a test naval mine. First, the flooding had to be stopped. Repairs of heavily damaged equipment (batteries) have not yet completely finshed 12 hours later. Tension.
Some long-time stability tests now and then it's time for a BETA.
Funny: it was one jump- and one floating-point-division command necessary to do the fix.
why did UBI not fix that?
CherryHarbey
09-01-10, 03:53 PM
Sounds like you are making good progress,
I hope when complete that it is something that you are able to share with the rest of us.
...
Funny: it was one jump- and one floating-point-division command necessary to do the fix.
why did UBI not fix that?
Who could knows? When we make mods this question comes over and over again at our heads. Frequently some mods are so simple - but very hard to implement from modders perpective: without the correct tools, without the necessary knowledge of the structure of the game, without know exactly how the files work , etc. Kuddos to all we here; if we could add up all ours efforts and manpower in understand&modify this game we could had built 2 or 3 games much better than these ones for sure. But this is another history.:DL
Hi Rubini,
I think, in 2005-2006, UBI had more interest to focus on SH4 development instead to fix bugs in SH3. Decisions are made mainly because of financial and market interests. Often wrong decisions. See SH5. To produce good and bugfree products seems to be of secondarily interest.
So I also thought to program my own Subsim with some talented programmers I know, but not with financial interest, only to have a perfect game. But then I look at the Danger From The Deep project. They are, surely, very talented - but no progress in the last years. So I gave up that plan.
Greetings,
h.sie
In order to use that mod you must have an permanent high-speed internet connection and an account at the h.sie server. you also have to agree that some data about you and your gaming behaviour is collected and evaluated. we guarrantee a server uptime of about 50% (except mondays) and also guarrantee that your savegames are cleared periodically.
In order to use that mod you must have an permanent high-speed internet connection and an account at the h.sie server. you also have to agree that some data about you and your gaming behaviour is collected and evaluated. we guarrantee a server uptime of about 50% (except mondays) and also guarrantee that your savegames are cleared periodically.
:up::haha::har:
Statical repair-time bugfix to sh3.exe is easy. But sharing that exe file is illegal.
Question: Is it illegal to provide a tool that makes fixing a software bug very easy? It does no more than that. no disabling of copyright protection and so on.
Since I won't have starforce on my PC, I am not able and willing to patch the starforced version. So a person who wants longer repair times very much (as I do) and does only have the starforced version, will be forced to buy the non-protected software for some cents. So UBI could perhaps also take profit from that.
h.sie
I have to laugh about myself, having problems with legality/illegality and morale because I just fix a bug. On the other hand a well-known big software publisher seems not to have any morale problems to make promises (even promotion videos) and then take much money for a bug collection for which the attribute "alpha version" already is a compliment.
How to achieve Realistic Repair- and Flooding Times in SH3
---------------------------------------------------------
This is a technical demonstation for educational and research purposes only. It shows a new technique how SH3 could be modified in order to achieve longer repair times AND realistic floodingtimes.
Since it is strongly forbidden to modify copyrighted materials, you MUST IMMEDIATELY delete all files that are modified/created during this demonstration. It is not allowed to use these files for your gameplay and it is even more forbidden to share the files with others.
Unfortunately, I could not test the result, simply because it's forbidden.
But maybe it works, I don't know.
Step 0:
-------
Create a temporary working directory somewhere on your harddisk,
where you have write-permission.
Copy your sh3.exe into that directory.
Step 1:
-------
Download the File Checksum Integrity Verifier from Microsoft
http://support.microsoft.com/kb/841290
and copy the tool fciv.exe to your working directory.
Step 2:
-------
Check the Checksum of your sh3.exe. In DOS Box type:
>fciv sh3.exe
The result must be: 510b271d14621361386197be6bd8cc0c sh3.exe
That ist the sh3.exe Version 1.4.0.1 (Timestamp Jun, 14, 2005)
NOT patched with 4GB patch or similar.
If your Checksum differs, you cannot take part at that demonstration.
Step 3:
-------
Download bsdiff/bspatch packet from
http://sites.inka.de/tesla/others.html#bsdiff
and copy bspatch.exe to your working directory.
Step 4:
-------
Download the file V01 from my mediafire page and
put it into your working directory.
This file contains the longer repair times.
Step 5:
-------
Make a backup copy of your original sh3.exe by typing
> move sh3.exe sh3.old
Step 6:
------
Add the longer repair times stored in V01 to your old sh3 file by typing
>bspatch sh3.old sh3.exe V01
Step 7:
-------
Immediately delete the new sh3.exe with longer repair times without playing it!!!!
Rename back your sh3.old to sh3.exe.
Thank you.
ROTFL....ahahahah....sorry, my bad.
I have serious humor problems.
Now, seriously h.sie,
Many thanks and kudos to you by your hard work and the interest and passion to make sh3 a better game. It's a pity that things must be this way. I agree 1000% with yours words in the posts above about how absurd is this situation in particular...we are only trying to fix a game that we buy with promisses (by the devs/Ubi) that it would work as a sim...but after 5 years it is now just better by modders work...no necessary to say that devs/UBi don't support/make patchs for the game anymore. Well, all we know this old history.
OK, files downloaded, I will now follow yours directions and will delete the modified files immediately as you asked...
Madox58
09-03-10, 04:45 PM
You'd waste your time patching a StarForce version as it's a direct
cause of many 'so called' bugs in SH3.
I feel that since UbiSoft released a StarForce free version?
They no longer support SH3.
(As if they have since 1.4b patch!)
So releaseing Patch files that fix issues is only helping put money in thier pockets years down the road.
I doubt they will ever say anything against anything that brings in a profit.
Heck, SH3 & SH4 sales are probably saveing thier arses in the SH5 fiasco!
:haha:
CherryHarbey
09-04-10, 07:35 AM
h.sie,
thanks for educating me, I was sursprised that someone with as little computing skills as me could follow this demonstration. Struggled at first with step 7 as that was especially tricky.
Its a shame that I had to delete the amended file rather than use it but I wouldn't want to break any copyright laws.
Thanks to your great work, should the copyright laws change or Ubi chaneg the copyright status of SH3, I will be already equiped to change for the better the game I have paid for.:D:03:
:rock:
You rock mate!
To bad I cannot sail atm. But those who can, post your experiences with this patch here!!:arrgh!:
it's no patch. it's a course.
Badger Finn
09-04-10, 08:29 PM
Good stuff h.sie this is something Id be interested to do
unfortunatly the bspatch.exe dos box dosnt remain open to write the command...
on vista but im running another small dos programme I use for work
so unable to figure why it dosnt fire up :hmmm:
Anyone with any ideas on that? ive tweaked vista so I may have killed a function?
as an aside I doubt ubi would be to interested in makin waves about this *coarse*
if any one wants to delete a coarse file my way it would be appreciated... :woot:
For any one else following along....
I run a that will not be mentioned .exe and even wiith star force enabled that which shall not be mentioned works...
still stuck with the disc to fire up the game but the you know what works...
should get around to fixing that vista prob one day...had no probs with xp sp2...
.
I'll come right out and say I have not, do not and will not use a Starforce enabled version. I've lost too many harddrives over the years to that and similar schemes. I bought and still have a fully legal copy - so Ubisoft HAS gotten their fee for this software - but the sh3.exe running on my system is from an "unauthorized" source. That being the case - is there going to be an advanced course to allow us to directly use your techniques to enable this function?
Badger Finn
09-04-10, 08:52 PM
EAW went down this road years ago with excellent results ...
I had about 4-5 different .exe all tweaked by others who knew what they doing...
In respect to subsim.com I will not say to much, but this "course" really don´t work for unofficial nostarforce users.
The situation is really delicate as we have bought officialy the game, starforce have brought problems to a lot of ppl, then UBi released an official nostarforce version...but left the old owners of the game with the unique option to use the unofficial version. What a mess, UBI!:damn:
Badger Finn
09-04-10, 09:33 PM
In respect to subsim.com I will not say to much, but this "course" really don´t work for unofficial nostarforce users.
The situation is really delicate as we have bought officialy the game, starforce have brought problems to a lot of ppl, then UBi released an official nostarforce version...but left the old owners of the game with the unique option to use the unofficial version. What a mess, UBI!:damn:
Agree - this really is where the physics of the game can be fixed properly something ubi never bothered with for its paying customers! Its a damn shame it can be all taken out of context because this type of thing would really perfect/complement how SH3 is now imo.
Most of those ripping off this game 5 years ago would be long gone so Id say most who are still here are hard core u-boat subsimmers...????
However the nonstarforce deal makes no dif afaik since i use a nocd on a starforce version...just got to have the disk in to fire up the game...
stupid dos box thing...
any one want to delete a modified coarse file my way??
:DL
CherryHarbey
09-05-10, 01:18 AM
Good stuff h.sie this is something Id be interested to do
unfortunatly the bspatch.exe dos box dosnt remain open to write the command...
I'm on windows 7, so not sure how similar vista is....
I manually opened up the Command Prompt from the Accessories folder after selecting All Programs from the Windows logo bottom left of screen.
then typed cd a few times to get into the folder I'd put all the stuff in.
it then worked fine.
sorry if this telling your granny how to suck eggs.
CherryH.... is right. Open Command prompt from Accesoires
I am sorry to say that for me it's not possible to also make a course and demonstrate how to add longer repair times to starforce-protected executables.
The reason is as follows:
The non-protected executable contains large areas with code caves (code that does nothing, all bytes are set to zeroes: 00) where one can easily place the bugfix code for the repair times.
In the protected version I cannot find these code caves with sufficient size to place the bugfix code in it. It seems that the code caves have been removed intentionally in order to make code manipulations very hard - too hard for me.
In my store I can get unprotected SH3 for 4,99 Euros. That is nothing compared to the time I have to invest to fix the protected version.
Sorry.
h.sie
Badger Finn
09-05-10, 08:27 AM
Good idea! Thanks mates!! ill give that approach ago...
@ h.sie my setup can run a non starforce .exe with a starforce version
still requires the disk...
I need to do fresh install as per the sticky about vista systems above (just not interested in reinstalling at the mo)...
so anyone following here should try a nocd.exe the game still fires up even if the disk is required...
nice one h.sie hope you find some other easter eggs in there...
.
Current research:
* Automatically move lazy 1WO on bridge when surfacing
* Correct display of longer repair times in hours
* Make range for "nearest visual contact" more inaccurate
* Rise max. diving time from 48h to a higher value.
But: That's hard. Very, very hard for a hobby-programmer like me.
Probably I'll fail. But the most important thing, repair times, work well.
h.sie
Stormfly
09-05-10, 02:56 PM
would it be possible, recherching "beeing killed only by reaching crash dept, added as a logical "AND" to the existing beeing killed routine" ?
so we would have a no instant death routine coupled with realistic flooding and damage :yep:
could you explain more in detail. what is meant with instant death?
and: was the course successful for you?
Stormfly
09-05-10, 05:20 PM
at present code, you will die if following conditions are met ("OR" coupled):
- at least one of the compartments is flooded 100% "OR"
- all hitpoints from the pressure hull are gone "OR"
- all hitpoints from a compartment are gone.
...this means the boat is going to die and is sinking and you are instant dead if one of above conditions are met.
It would be nice, staying a bit longer allive to fully "enjoy" a dramatic end after for example a deptcharge ripped your pressure hull to 0, boat is sinking while you are still allive, reaching crash dept to finaly get the game over screen.
The game then would play very rare played voices like "we are going to die" or "we cant stop the flooding" mixed with dept cranks and flooding sounds and so on. Voice files and triggers are there, but very rare played because of that stupid instand death routine which end all the dramatic and movie like action with a "instand death" :nope: "you know, ...you have to do it slow, nice and slow" :|\\
at current i try to use some older "anti instant death" ideas to prevent this using very high hitpoint settings coupled with altered flooding, armor, damage and repair values, but this isnt helping sometimes and could lead to bad side effects.
at present code, you will die if following conditions are met ("OR" coupled):
- at least one of the compartments is flooded 100% "OR"
- all hitpoints from the pressure hull are gone "OR"
- all hitpoints from a compartment are gone.
...this means the boat is going to die and is sinking and you are instant dead if one of above conditions are met.
Hi Stormfly,
I think these are halfway realistic and traceable conditions for game end. But after having finished other bugs with (in my opinion) higher priority, I'll look into it. Maybe it's sufficient to change the trigger levels for these sounds, so that they are played more often?
Stormfly
09-06-10, 10:04 AM
Hi Stormfly,
I think these are halfway realistic and traceable conditions for game end. But after having finished other bugs with (in my opinion) higher priority, I'll look into it. Maybe it's sufficient to change the trigger levels for these sounds, so that they are played more often?
could help also, but i like to enjoy sinking while inside the boat or ship :03:
...fixed "intand death" would also help fighting floodings on a maybe sinking ship using the Warship Mod, which iam enjoying atm.
Thanks for your efforts, would be nice if you could fix it.
WOW!:o
After some (long) attempts to make the coursed file work on my installations (and with h.sie's help) I can say that this is a great step ahead for Sh3!
It works very well, repairs taken more or less 60 times more to be executed, what means in the sh3 perspective (max damage before an equipament is considered destroyed) 3 to 4 hours medium to be repaired with a maximum loaded repair team bar. All others aspects are intact: flooding times (and you need to stop them asap), crew efficiency, uboat damage system, etc. Just great!:salute:
Now the estimated repair times stamped need to be redone, perhaps something like the old nvdrifters aproach here (just estimate, but not a exactly time left to be repaired). And also perhaps we could have a yet more LRT, 90x to 120x the standard time, as a suggestion.
Great work mate!:up:
Stormfly
09-06-10, 11:37 PM
this is what iam enjoying at current while still allive, standing on the bridge, with working compartment flooding in the damage screen.
...a pity is that sometimes this anoying "instand death" will kill all the immersion, this fine moments where the ship burn, smoke every where, start to list while creaking and whining and finaly sink with man and mouse...
http://www.uploadking.biz/out.php/i88743_sinkingonthebridge.jpg
Rubini,
thank you for your kind words. Glad to hear that the course was a success for you. The next course is named:
"How to change the repair times factor from (currently) 60 to an arbitrary individual factor".
A very easy course. All you need is a hex-editor.
currently preparing that lesson.
and the new repair time estimations a la LRT mod are easily done: only some text file changes in de_menu.txt and en_menu.txt. these of course depend on the chosen factor.
h.sie
@ALL: Please keep in mind that these lessons are for educational purposes only, intended to learn a little bit about hex-code and assembler. I decided to use sh3.exe as the demonstration object for the lessons, simply because it contains more bugs than other applications. Also keep in mind that changing and sharing copyrighted material is forbidden. So please delete all files you changed IMMEDIATELY without using it.
Lesson 2 - For advanced Users
------------------------------
deleted because no more up to date. see first post for details.
Badger Finn
09-10-10, 06:19 PM
I'm on windows 7, so not sure how similar vista is....
I manually opened up the Command Prompt from the Accessories folder sorry...
... if this telling your granny how to suck eggs.
Nope great reminder mate! Havnt used the dos box in ages
so that had just slipped my mind...
Cheers!
:up:
Badger Finn
09-10-10, 09:38 PM
Lesson 2 - For advanced Users
------------------------------
Go to Hex-Address 0x11CF90.
The current value is 70.
Just change it to F0.
That's all.
Use this information on your own risk.
h.sie
Important: As mentioned before: This is for educational purposes only. So you have to delete the modified and copyrighted material immediately after the course without using or sharing it.
Hi h.sie
With the hex address you have given in your example
does that have a complete string of characters?
Or just one box with the value?
Im trying to track down a matching address but the closst I have 11CF92 which is empty...
TIA.
SquareSteelBar
09-11-10, 02:38 AM
...Im trying to track down a matching address but the closst I have 11CF92 which is empty...Lesson 2 only works if you already did lesson 1
...and as I mentioned here (http://www.subsim.com/radioroom/showpost.php?p=1489402&postcount=22):
it only works for the official noDVD sh3.exe [file size 1,26 MB*] -> Green Pepper (http://www.greenpepper.de/produkte/O-S/Silent_Hunter_3.php) or Purple Hills (http://www.amazon.de/Purple-Hills-Silent-Hunter-3/dp/B002YNS4FY)
Cheers,
SquareSteelBar
*md5 checksum: 510b271d14621361386197be6bd8cc0c
Badger Finn
09-11-10, 03:29 AM
Yes SteelSquareBear Your absolutly right!!
However - Im working on hexing the nocd version directly
and h.sie has given me a point to start from so WIP
I have located some of the address needed already...
just not 100% sure what is what...yet!
I can but try mate...
@Badger:
As is wrote earlier: Changing that Factor (byte at 0x11CF90) will -- O N L Y -- (!!!!) work in the non-starforced sh3.exe with former checksum: 510b271d14621361386197be6bd8cc0c , that has been patched with V01 in order to add the routines for longer repair times.
Changing that byte in a different version of sh3.exe will surely shred that executable. So if you are not sure what you do, make a backup of your files.
This course is for users with advanced computer skills only and all is done on your own risk.
I am not responsible for any damage.
h.sie
Badger Finn
09-11-10, 07:47 PM
But my assembler knowledge is not good enough to add new features. I spent 5 hours only to realise a floating-point division by 60,0 because I still have problems with FPU commands.
My assembler knowledge is nonexsisent...ill learn...
I can test it only for my version of sh3.exe and I've read somewhere that there are 4 different versions of the executable available. Pessimistic that it works with the other versions since it uses absolute hex-addresses. But adapting to the other versions is easy.
Well thats my current mission adapting to other versions...I can only reverse engineer from what your prepared to share...
When the fix works stable I plan to apply my routines directly into the executable in order to make it independent from the launcher and compatible to SH3 Commander.
Cool I think I can eventually figure that out...lol may take me years...probably more of a result than waiting for UBI...
@Badger:
As is wrote earlier: Changing that Factor (byte at 0x11CF90) will --
O N L Y -- (!!!!) work in the non-starforced sh3.exe with former checksum: 510b271d14621361386197be6bd8cc0c , that has been patched with V01 in order to add the routines for longer repair times.
Indeed -
Changing that byte in a different version of sh3.exe will surely shred that executable. So if you are not sure what you do, make a backup of your files.
Modders first rule!
This course is for users with advanced computer skills only and all is done on your own risk.
I am not responsible for any damage.
h.sie
Thanks for the reply h.sie. I know my way around a computor and you wont find any posts @ subsim from me telling others there mod is faulty and broke my game.
But you will find a few pointed at UBI!!!
Thanks and ill just keep following along -
Cheers for your insights...
Badger
SquareSteelBar
09-12-10, 02:59 AM
...I can test it only for my version of sh3.exe and I've read somewhere that there are 4 different versions of the executable available...What's the fourth one?
I know 1. the first one with SF, 2. the cracked one and 3. the non-SF 'official' one...
@SquareSB
Here I read something about 4 different versions:
http://www.9teuflottille.de/index2.html
In the meantime I found a way to enlarge a code section of the exe in the PE header of the file so that no code caves are necessary anymore for my routines. that means the starforced version can be modded easily, too.
my focus is still on fixing some bugs of MY unprotected version of sh3.exe. this will take some time. but when I'm finished, I'll either publish all assembler routines I wrote so that a skilled person can fix the starforced versions, or I'll make a course similar to the above one for starforced version also.
but this time effort only makes sense for me if there is interest.
in the meantime I could fix the display of the repair times. two hours e.g. are now displayed as 2:00 and not as 0:02.
@Badger: Instead of learning assembler (it took weeks to update my knowledge I had from my education years ago) I would suggest to buy the unprotected version of sh3 for some cents. or maybe you have a friend who has unprotected sh3 and doesn't use it anymore and can give it to you as a present.
@Badger:
You will only be able to reverse-engineer my work (which is contained in the file V01) if you DO HAVE the unprotected version of sh3.exe. otherwise you'll fail, because V01 is simply a binary difference built upon unprotected sh3.exe. but if you already have that unprotected exe file, there is no need to reverse-engineer.
SquareSteelBar
09-12-10, 04:14 AM
...Here I read something about 4 different versions:
http://www.9teuflottille.de/index2.html... (http://www.9teuflottille.de/index2.html)Can't find anything at that link - the page is nearly empty... :hmmm:
Do you mean Friedl's site?
http://www.9teuflottille.de/phpBB2/viewtopic.php?t=6003&start=0&postdays=0&postorder=asc&highlight=&sid=56244267aa6b36eb983224a77bfddab8
The four versions mentioned there are related to the form they're offered:
1. US download version
2. US DVD version
3. EMEA download version
4. EMEA DVD version
I think they all use the same exe...
The difference between US and EMEA versions is the handling of showing swastikas.
...but this time effort only makes sense for me if there is interest...AFAIK there're many people interested in... :rock:
CherryH.... is right. Open Command prompt from Accesoires
I already wrote about it at this forum (for a long time)...
I have Win XP...
and you can do menu item "Command Prompt" (for example... or other name) for your explorer...
You must create reg-file with *.reg extension... with next content (and to execute this file):
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\O penDOSBox]
@="Command Prompt"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\O penDOSBox\Command]
@="CMD.EXE /K CD %1"
...
or slightly other form (more modern NT), but the same:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\C mdPromptW]
@="Command Prompt"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\C mdPromptW\Command]
@="cmd.exe /k cd \"%1\""
...
Using:
Open explorer,
go to folder, where you want to work with your file (using DosBox),
open File menu item...
lower you see the name of the chosen folder... open this menu item...
and you see "Command Prompt" menu item... click it :D
... cmd.exe will be executed and you will see your favorite DosBox...
or using right-click popup menu.
...
Advantage - speed and you will not be to write path (full name) for the work-file.
P.S. Some spaces - d efective forum engine... :haha:
@SquareSB: Yes, I meant Friedl's Site. Sorry for the wrong link.
@Anvart: Coool. That's what I was looking for.:)
SquareSteelBar
09-12-10, 11:51 AM
...
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\C mdPromptW]
@="Command Prompt"
...Or in german:
[HKEY_LOCAL_MACHINE\........]
@="Eingabeaufforderung hier öffnen"
That's a good old registry tweak... :up:
New Version V15A of the online-course "How to fix SH3 repair times bug" available. Course material see my mediafire page, Folder: SH3-Bugfixes.
What it does:
--------------
* Repair times of equipment are 60 times longer than in stock.
* Flooding behaviour as in stock sh3/GWX.
* Longer Repair times are now displayed correct in damage screen (02:00 instead of 00:02).
* Shows patch version number v 1.5A in main menu.
How to apply the bugfix: See the course here:
http://www.subsim.com/radioroom/showpost.php?p=1484334&postcount=32
But use patch V15A instead of V01 now.
-----------------------------------------------------------------------
For those who want to enlarge the repair times by a factor of 120 instead of 60:
Open sh3.exe using a Hex-Editor and change the byte-value of hex-address 0x145022 from 70 to F0.
(works only for sh3.exe patched to V15A).
-----------------------------------------------------------------------
Use this information on your own risk. I am not responsible
for any damage caused by incorrect appliance of that information.
-----------------------------------------------------------------------
Reminder: This is a technical demonstation for educational and research purposes only. It shows a new technique how SH3 could be modified in order to achieve longer repair times AND realistic floodingtimes. Since it is strongly forbidden to modify copyrighted materials, you MUST IMMEDIATELY delete all files that are modified/created during this demonstration. It is not allowed to use these files for your gameplay and it is even more forbidden to share the files with others. If you are planning to break copyright laws, you are not allowed to take part at this demonstration.
CherryHarbey
09-12-10, 02:55 PM
* Longer Repair times are now displayed correct in damage screen (02:00 instead of 00:02).
Would this show the minutes as well as the hours to repair.
eg stock displays 00:02 but is actually 00:02:35, would this display as 02:35 or 02:00 with V1.5A?
And once again, great demostration of what could be possible if the copyright laws were different.
@CH
Minutes (when more than 59) are messed up because of an SH3 bug. E.g. 1h20 should be displayed as 01:20, but in SH3 it looks 01:80 (one hour 80 minutes). So I programmed it to always show 00 minutes, that means, only 1 hour steps are displayed. But in RL nobody would be able to estimate repair time exactly for every minute.
Periscope damaged, sir. It'll take 2 hours, 34 minutes and 50 seconds.
Only Spock can do that.
CherryHarbey
09-12-10, 03:17 PM
Periscope damaged, sir. It'll take 2 hours, 34 minutes and 50 seconds.
Only Spock can do that.
:)
fair point, I hadn't thought it through.....
@SqareSB: Thanks for the clarification. That makes things easier.
@ALL: Does anybody have detailed information about how long a submarine should be able to dive? the game simulates about 48 hours, but someone told me that in reality much more time was possible?
h.sie
New Version V15A of the online-course "How to fix SH3 repair times bug" available. Course material see my mediafire page, Folder: SH3-Bugfixes.
What it does:
--------------
* Repair times of equipment are 60 times longer than in stock.
* Flooding behaviour as in stock sh3/GWX.
* Longer Repair times are now displayed correct in damage screen (02:00 instead of 00:02).
* Shows patch version number v 1.5A in main menu.
How to apply the bugfix: See the course here:
http://www.subsim.com/radioroom/showpost.php?p=1484334&postcount=32
But use patch V15A instead of V01 now.
-----------------------------------------------------------------------
For those who want to enlarge the repair times by a factor of 120 instead of 60:
Open sh3.exe using a Hex-Editor and change the byte-value of hex-address 0x145022 from 70 to F0.
(works only for sh3.exe patched to V15A).
-----------------------------------------------------------------------
Use this information on your own risk. I am not responsible
for any damage caused by incorrect appliance of that information.
-----------------------------------------------------------------------
Reminder: This is a technical demonstation for educational and research purposes only. It shows a new technique how SH3 could be modified in order to achieve longer repair times AND realistic floodingtimes. Since it is strongly forbidden to modify copyrighted materials, you MUST IMMEDIATELY delete all files that are modified/created during this demonstration. It is not allowed to use these files for your gameplay and it is even more forbidden to share the files with others. If you are planning to break copyright laws, you are not allowed to take part at this demonstration.
Hi mate!
Thanks again by this great mod!
Two questions:
-If I use V15A and also the 120x fix - will my time (just an example) display now 4:00 instead 2:00 (as in current 60x)?:hmmm:
-Can I apply the V15A over an already coursed sh3.exe with V01 ?
makman94
09-13-10, 12:50 AM
first of all i want to congratulate you H.Sie not for this specific mod (which i still trying to create following your instructions) but becuase you are opening a NEW AGE to sh3's modding !
a modding that is definetely needed if we want to start having a simulator at last.of course this is only a start but i can't see a better start than this !!:up:
is it valid now to start thinking (..hoping ) that the AI would become 'clever' at future ?? :hmmm::yeah:
now, i can't create this .exe following your instructions becuase i have win 7 (x64) and the dos box doesn't stay open if i,for example, run the fciv.exe
i tried also, as someone allready posted , to use the dos box through acessories but what exactly do i have to type in there in order to continue the procedure ? you said something about ''cd'' but nothing happens....
can someone give instructions of the procedure on win 7 ?
bye
@Rubini: The repair time display now works fine for all factors: 60 or 120 or whatever. But I would not suggest to choose a factor above 120. Repair times are displayed only in 1 hour steps.
the higher you choose the factor, the more often you see a funny effect that repair times rise during repair. this is, because the crew fatigues faster than repair progresses, so that as the result the calculated repair times rise. but I don't care because I will play without fatigue
ATM you always have to use the unpatched non-starforce sh3.exe (checksum see above) as the basis for patching. no other version can be used. otherwise you'll shred your executable. so always make a backup copy.
h.sie
@Makman: Thanks, mate.
In theory, all is possible now.
But in reality, I have to restrict on "easy-to-fix-bugs" like the repair times which could be fixed using a simple floating-point division (besides about 20 other assembler commands to shift, save and restore CPU registers).
Without the SDK, you see a huge amount (some gigabytes) of bytes when you look at the dynamically allocated memory of sh3.exe without knowing the meaning of that all. no names, no labels, nothing. Only Hex values from 0 to F.
4F09 3B44 1200 FF0A 4F09 6571 8237 ABDD 6571 8237 ABDD 3B44 1200
FF0A 6571 8237 ABDD 1200 FF0A 4F09 6571 8237 ABDD 6571 8237 ABDD
3B44 1200 FF0A 6571 8237 ABDD 4F09 3B44 1200 FF0A 4F09 6571 8237
ABDD 6571 8237 ABDD 3B44 1200 FF0A 6571 8237 ABDD 1200 FF0A 4F09
6571 8237 ABDD 6571 8237 ABDD 3B44 1200 FF0A 6571 8237 ABDD.
(shown are about 200 bytes. sh3 has about 1000000000 bytes in memory)
So first of all you have to identify and search for the variables you need. Therefore you have to make some assumptions. If these assumptions are wrong, you'll fail. E.g. trying to fix the repair times, I failed for weeks because, I always thought there were some Hitpoint-counter coded in Integer format responsible for damage and repair times. But short before giving up, I made the assumption, that the damage is coded in "float" format and is 0,0 if no damage and 1,0 if destroyed. And I furtheron hoped that they decrease during repairs and keep constant when silent running and so on. knowing this, "only" some tenthousands of bytes, which behave this way, remain so you have to make your search better, and so on and on and on until only one variable remains, which hopefully is the variable you searched for. that search and identification process can take much time, days, weeks, sometimes without any success, because maybe your starting assumption was wrong.
after identifying your variable which contains the damage, you have to search for the assembler routines which modify the damage. these routines have to be fixed accordingly. it is very hard (for me) to understand compiler-generated assembler code without any comments.
Long story short: Easy fixes can maybe be done in a hard job. But complex things like AI, wolfpacks and other additions are impossible (for me), because too many variables are involved and interdependencies not understood.
sorry for damping down your euphoria ("NEW AGE" and so on).
but even if I fail to fix other bugs in the future,
these new repair times combined with the stock flooding behaviour,
make this game very much playable for me now.
and I really look forward to start to play a career for the first time.
h.sie
@Makman:
Let's say you open command prompt and current directory is
C:\Users\Makman
And let's say your working directory (for patching) is in a different directory on a different drive or partition, e.g.
E:\tmp
So first change to drive E: by typing
C:\Users\Makman> E:
and hit "Enter". Then you see
E:>
Now change to tmp Directory by typing
E:> cd tmp
That's all. You'll see
E:\tmp>
Now you are in your tmp. working directory and can start with the course as described.
h.sie
SquareSteelBar
09-13-10, 04:58 AM
@SqareSB: Thanks for the clarification. That makes things easier...That was only an assumption...
There're four different patch versions to v1.4b for the different releases:
http://patches.ubi.com/silent_hunter_3/
Maybe you're able to extract the included sh3.exes to confirm my assumption...
@ALL: Does anybody have detailed information about how long a submarine should be able to dive? the game simulates about 48 hours, but someone told me that in reality much more time was possible?
h.sie
It's hard to find accurate numbers. I guess because it depends a lot on the crew's activities/state(resting, working, panicking,...). Here are some findings:
1. Buchheim writes in one of his books: '... konnte gut 3 Tage getaucht bleiben'.
2. http://www.uboatarchive.net/CumulativeEdition.htm
'...Submerged endurance: 4 days (B3) ' for VIIC/42
I guess there would be no big difference between VIIC/42 and standard VIIC.
3. http://www.uboatarchive.net/DesignStudiesTypeIXC-S38.htm
'... The air purification and oxygen renewal systems are based on the requirements of 44 men during 72 hours total submergence...'
I guess the last point is the strongest indication. It's for a IXC, but I guess the requirements for a VIIC were the same.
For the XXI:
http://www.uboatarchive.net/DesignStudiesTypeXXI-S38.htm
'Because of the longer submergence periods permitted through the use of the larger battery and schnorchel operation, additional capacity was built into the oxygen and CO2 removal systems. The capacity is based on the requirement of 50 men during 150 hours of use.' It furthermore says that a similar system was installed on the IXD2.
IIRC, Evan82 once wrote that the XXI in game can stay submerged longer than the VIIC and IX, but also not long enough.
Cheers, LGN1
makman94
09-13-10, 06:59 PM
@Makman:
Let's say you open command prompt and current directory is
C:\Users\Makman
And let's say your working directory (for patching) is in a different directory on a different drive or partition, e.g.
E:\tmp
So first change to drive E: by typing
C:\Users\Makman> E:
and hit "Enter". Then you see
E:>
Now change to tmp Directory by typing
E:> cd tmp
That's all. You'll see
E:\tmp>
Now you are in your tmp. working directory and can start with the course as described.
h.sie
great !! thank you H.Sie ...all worked now ! :up:
unfortunatelly the check sum shows a different sum for my .exe ( it is the 'cracked' one ...i think it was called noDVD..etc from ubi-forum ,....its date is: 16/9/2005 12:45) so i think this is the cuase of not completing the procedure
anyway...thank you very much for the tips !:up:
Hi makman,
you're welcome.
if you don't have the right exe, you'll have to be patient a little bit.
i will help the starforce-victims, too, but first I will finish my work on my exe.
then the transformation for starforced exe follows. i am currently thinking about how this can be done in an easy way.
h.sie
what i never understood: is the anti-starforce patch made by ubi or is it an "inofficial" one?
SquareSteelBar
09-14-10, 12:53 AM
what i never understood: is the anti-starforce patch made by ubi or is it an "inofficial" one?The noDVD patch released 2005 in www was done by a hacker named 'Reloaded'. That wasn't surely no official one...
The noDVD files which come with special low-priced releases since some years [given at disposal of licensed publishers like e.g. 'Green Pepper' or 'Purple Hills'] are the the official ones [in my opinion], probably done by UBI since I can't imagine that the Ubi developers worked with SF protected files during building and testing* SH3...
*if they ever did :rotfl2:
SquareSteelBar
09-14-10, 01:32 AM
...unfortunatelly the check sum shows a different sum for my .exe ( it is the 'cracked' one ...i think it was called noDVD..etc from ubi-forum ,....its date is: 16/9/2005 12:45) so i think this is the cuase of not completing the procedure...Hi makman,
go to your next supermarket - maybe in Greece it's like in Germany...
There you'll find tons of older non-protected low-priced [6,99 € here] PC games released by special licensed publishers like mentioned above...
I bought it for 4,99 € in the Pimpel-Market (don't remember the correct name), lying in the baragin bin directly next to the vegetables. what a career for a good subsim.
SquareSteelBar
09-14-10, 02:05 AM
...lying in the baragin bin directly next to the vegetables. what a career for a good subsim.The appropriate place for the unmodded game... ;)
You'd waste your time patching a StarForce version as it's a direct
cause of many 'so called' bugs in SH3.
As privateer says, the inofficial no-starforce version is less stable than the official no-starforce version (CTDs, save game bugs,...). I strongly recommend anyone who wants to play the game to buy the official version. It's really not expensive. For the price of SH5 you can even get several copies of SH3 without starforce and permanent internet connection :D
@h.sie: Did you figure out how to change the CO2? I guess a submerged endurance of 72 hours for the type VII and IX and twice the time for the XXI would be fine. (Probably the type II and IXD2 then also have 72 hours :-?).
Cheers, LGN1
The noDVD patch released 2005 in www was done by a hacker named 'Reloaded'. That wasn't surely no official one...
Wouldn't be the term 'cracker' more appropriate than 'hacker' :)
SquareSteelBar
09-14-10, 03:06 AM
Yep :up:
Although I never played a career, I very often saved and reloaded certain savegames for modding purposes, and I cannot remember the last CTD I had, even in heavily modded configurations. For me, SH3 (unprotected .exe) has been very stable and I've never understood all those people here lament about instability. These different versions could be the reason for that different behaviour and now I understand what privateer wrote. So I fully agree with LGN1. A fully modded, stable game is worth the little money. it's one box of cigarrettes.
On the other hand: Why buy the same game twice? This argument is also understandable.
Using the bsdiff/bspatch tools, it is very easy (for a person who has both versions: starforced and non-starforced) to make a binary difference of both versions and create a "transformation kit" which transformates starforced exe (plus .dlls) into non-starforced simply by applying the binary difference. this is exactly what I did: The patch V15A is simply the binary difference between my modded exe (with longer repair times) and the original exe.
bsdiff:
V15A = Modded exe - Original Exe
bspatch:
Modded exe = Original exe + V15A.
Since the original exe is required for this patching/transformation, it will only work for legal owners of the software, so that no illegal duplication of the software takes place.
@LGN1: Currently no progress regarding CO2. Still trying to automatically move the lazy 1WO on the bridge when surfacing. And to make the nearest visual contact report more inaccurate.
h.sie
...Still trying to automatically move the lazy 1WO on the bridge when surfacing...
Much more important than the CO2 :up: I hope you will succeed.
Cheers, LGN1
SquareSteelBar
09-14-10, 03:46 AM
...Using the bsdiff/bspatch tools, it is very easy (for a person who has both versions: starforced and non-starforced) to make a binary difference of both versions and create a "transformation kit" which transformates starforced exe (plus .dlls) into non-starforced simply by applying the binary difference. this is exactly what I did: The patch V15A is simply the binary difference between original exe and my modded exe with longer repair times...Hmm... can't comprehend what you're doing there... :hmmm:
@SSB:
Lets say there is a program called xyz.exe which is buggy and is no more supported by the developers.
Now let's say I've made some useful corrections to that program and call the corrected one xyz_2.exe.
Since I do not want to support illegal software duplification, I cannot put my corrected file xyz_2.exe on a server for free download.
A solution for this problem is to only put the CHANGES, the DIFFERENCES between the two files (the corrected and the original one) on the server, because this difference is only useful for people who already have the original file. or in other words: the original is required to create the corrected file.
1. Using bsdiff I create the difference of the corrected and the original file:
PATCH = xyz_2.exe - xyz.exe
2. Then I put PATCH on a server for download.
3. The legal user of xyz.exe applies the PATCH to xyz.exe using bspatch and gets xyz_2.exe according to the relation:
xyz_2.exe = xyz.exe + PATCH.
PATCH is useless for all those who do not own xyz.exe.
Maybe now it's understandable why I don't offer any exe files for download, which indeed would make life much easier.
h.sie
SquareSteelBar
09-14-10, 05:16 AM
@SSB:
Lets say there is a program called xyz.exe which is buggy and is no more supported by the developers.
Now let's say I've made some useful corrections to that program and call the corrected one xyz_2.exe.
Since I do not want to support illegal software duplification, I cannot put my corrected file xyz_2.exe on a server for free download.
A solution for this problem is to only put the CHANGES, the DIFFERENCES between the two files (the corrected and the original one) on the server, because this difference is only useful for people who already have the original file. or in other words: the original is required to create the corrected file.
1. Using bsdiff I create the difference of the corrected and the original file:
PATCH = xyz_2.exe - xyz.exe
2. Then I put PATCH on a server for download.
3. The legal user of xyz.exe applies the PATCH to xyz.exe using bspatch and gets xyz_2.exe according to the relation:
xyz_2.exe = xyz.exe + PATCH.
PATCH is useless for all those who do not own xyz.exe.
Maybe now it's understandable why I don't offer any exe files for download, which indeed would make life much easier.
h.sieThat all ↑ was already clear for me...
---------------------------------------------------
What I didn't understand is the intention of making a binary difference of a starforced and non-starforced file......Using the bsdiff/bspatch tools, it is very easy (for a person who has both versions: starforced and non-starforced) to make a binary difference of both versions......as the result you'll get the SF stuff but for what purpose? :88)
nonono. if the difference (DIFF) is made between the non-SF-exe and the SF-exe, one can easily create a non-SF-exe from the SF-exe and the DIFF. here the DIFF is not related to repair times, but much more intended to "transform" SF to NON-SF.
DIFF = NON_SF_EXE - SF_EXE (1)
Adding SF-EXE on both sides of eqn. (1) leads to eqn (2):
NON_SF_EXE = SF_EXE + DIFF (2)
SquareSteelBar
09-14-10, 05:41 AM
Simple mathematics, no problem with that.
Nevertheless I can't follow your thoughts.
What's the aim of these exercises?
__________________________________________
Sorry, I got it now - my fault...
Didn't note that the NON-SF-EXE is bigger sized than the SF-EXE, not the other way around...
So that's rubbish: ...as the result you'll get the SF stuff but for what purpose?
Sorry for keeping you off your work... :oops:
glad you got it now. but: the NON_SF_EXE (1,3MB) is smaller sized than the SF_EXE (2,3MB?). but that does not matter, since the "-" operator used in my example above is not to be interpreted as the commonly used minus operator when substracting two numbers. so the resulting diff file is never negative ...... but it always contains the differences of the two files.
SquareSteelBar
09-14-10, 06:47 AM
The point is that the DIFF includes the stuff which transforms the SF-EXE to a NON-SF-EXE... :salute:
...NON_SF_EXE (1,3MB) is smaller sized than the SF_EXE (2,3MB?)...No - vice versa
This was the fact I tripped over...
NON-SF-EXE [the cracked one]: 2,2 MB
NON-SF-EXE [the 'official' one]: 1,26 MB -> released by Purple Hills and Green Pepper
SF-EXE: 967 kB [the original one released on March 2005 by UBI]
yup. :DL. but at least one dll has also to be transformed, too. for a person who has both versions (SF and NON_SF) it could be easy to determine which files have to be transformed, and also to create the DIFF patches.
SquareSteelBar
09-14-10, 06:57 AM
AFAIK 5 files:
sh3.exe
MissionEngine.dll
SimData.dll
StateMachine.dll
Utils.dll
Hi SSB,
with NON-SF-EXE I meant the 1,3MB file from Purple Hills.
with SF-EXE I meant the non cracked original one with SF.
My intention was not to confuse but much more to clarify.
Sorry, if I missed that purpose.
SquareSteelBar
09-14-10, 07:03 AM
...
with NON-SF-EXE I meant the 1,3MB file from Purple Hills...
= NON-SF-EXE from Green Pepper
SquareSteelBar
09-14-10, 07:37 AM
Go on to wake up the lazy WO... ;)
@privateer: Sorry, it took more than a week for me to understand what you meant when you wrote "You'd waste your time patching the starforced exe" or similar.
If I correctly understood privateer in some older posts and PMs, he means the cracked starforce exe. Using the original starforce exe from Ubi with DVD... is fine.
So, as I understand it:
-original/official starforce exe: fine
-cracked starforce exe (mentioned in Neal's post about playing without DVD): buggy
-official non-starforce exe: fine
Thanks LGN1, for the clarification.
That means: Adding longer repair times to the cracked SF-version does not make sense since it's instable.
And since I don't want to install starforce drivers on my PC, I also cannot add longer repair times to uncracked SF-version.
So for the SF-version users there remain 3 options to use my longer repair times mod:
1) buy NON-SF version for some bucks.
2) find a person who has both versions (SF and NON-SF) and creates a "transformation-kit", that changes the SF-version into the NON-SF-version using the bsdiff/bspatch utils as described in the former posts here...
3) wait for christmas. maybe.....
At least, that's how I understand privateer's last post in this thread:
http://www.subsim.com/radioroom//showthread.php?t=164230
SquareSteelBar
09-14-10, 09:10 AM
...2) find a person who has both versions (SF and NON-SF) and creates a "transformation-kit", that changes the SF-version into the NON-SF-version using the bsdiff/bspatch utils as described in the former posts here...I'm afraid I haven't got the sense of that action yet. :06:
The result is the same thing like copying the non-sf files from the 'owner of both versions' to the 'owner of only sf files'...
@SSB: Yes, the result is the same. But copying is not a very nice word.
Copying is software duplication. Patching or "transforming" not.
I have no problem to upload patches/corrections for free download, but I'd never upload exe's, but maybe I'm a little bit old-fashioned.
:hmmm:
SquareSteelBar
09-14-10, 10:13 AM
@SSB: Yes, the result is the same. But copying is not a very nice word.
I have no problem to upload patches/corrections for free download, but I'd never upload exe's, but maybe I'm a little bit old-fashioned.
:hmmm:A heavy case of paranoia... ;)
I think it's no difference what type of file is modded. As I already mentioned here (http://www.subsim.com/radioroom/showpost.php?p=1482390&postcount=20): the intention is decisive...
SH3 includes more than 20,000 files and every single file is copyrighted.
Since more than five years we change these files even by hex editing dat files etc.
If UBI was annoyed of that this forum didn't exist anymore...
Another aspect is: there seems to be no problem if the owner of a legal SH3 [with SF] copies noDVD files [even cracked files] to his machine [described here (http://www.subsim.com/radioroom/showthread.php?t=160118) by Uncle Neal himself]...
It's a good idea to contact Uncle Neal for this...
A heavy case of paranoia... ;)
I think it's no difference what type of file is modded. As I already mentioned here (http://www.subsim.com/radioroom/showpost.php?p=1482390&postcount=20): the intention is decisive...
SH3 includes more than 20,000 files and every single file is copyrighted.
Since more than five years we change these files even by hex editing dat files etc.
If UBI was annoyed of that this forum didn't exist anymore...
Another aspect is: there seems to be no problem if the owner of a legal SH3 [with SF] copies noDVD files [even cracked files] to his machine [described here (http://www.subsim.com/radioroom/showthread.php?t=160118) by Uncle Neal himself]...
It's a good idea to contact Uncle Neal for this...
Yes, after reading uncle's Neal post about how unofficial starforce patch becomes legal by UBI itself (link above) probably you can share the coursed file directly. Obviously after contact Neal first.
Now go back to work, this mod is really an fresh air for Sh3!:up:
...but there's nowhere a link to the modified exe/files. Instead it says explicitly: 'Do not post links in this forum'
It seems to be only 'half-legal'.
SquareSteelBar
09-14-10, 11:25 AM
...It seems to be only 'half-legal'.Therefore I wrote that's a good idea to contact Uncle Neal in advance...
It would be great if Neal could make a statement about the whole issue. It's a bit absurd.
Anyway, back to some modding stuff: I tested the submerged endurance of some boats in game. Here are the results:
IIA: 30h
VIIC: 36h
IXB/IXD2: 40h
XXI: 46h
I could not observe any difference between a crew with max. number of men and with min. number of man (tested it only with the VIIC). In addition, I could not observe any effect from silent running. I guess good numbers would be:
II: ?
VII: 72h
IX: 72h
XXI: 150h
It would be great if 'silent running' changed these times, e.g., without silent running the time would be only x percent of the max. time.
Cheers, LGN1
I'll contact Neal. Indeed an absurd situation.
In the meantime I could locate the routines which are responsible for the "nearest visual contact" output. Now they have to be optimised. Currently thinking about how to program that in an easy-to-do and realistic-looking way. Any suggestions? Should I only make the range more inaccurate or also the bearing ?
h.sie
Great news, h.sie :up:
Maybe the bearing accurate up to 10 degrees and the distance up to 1000m :06:
Ready for something REALLY far out? I doubt seriously that lookouts gave bearings by compass - more like "Fine on the port bow" or similar. I know that until recently both the UK and US navies did this - until no one knew them anymore and the "clock" system came in. I am not familiar with the system used by the KM - but as they were in many respects founded on the UK system during the eternal wars with France (and as the ruling family in GB was the Hanovers ...) I suspect that they also used a 32 point system. And as for distance - the usual close, medium and far will do - anything more accurate required the UZO or 'scopes with their markings.
Any chance of limiting the direction to the 32 point system? Ya'll would have to larn to box the compass .......
32 points correspond to an accuracy of approx. 11 degrees. I guess 10 degrees is close enough and should be easily realized just by rounding the number :06:
The best thing for the distance would be a distance-dependent accuracy. But I guess that's difficult (more accurate when closer). I think an experienced officer could estimate the distance up to 1km if the ship is not too far away (again could be done by just rounding to 1000m :06:). Here is an old discussion about the issue:
http://www.subsim.com/radioroom/showthread.php?t=167741
Cheers, LGN1
makman94
09-14-10, 04:17 PM
I'll contact Neal. Indeed an absurd situation.
In the meantime I could locate the routines which are responsible for the "nearest visual contact" output. Now they have to be optimised. Currently thinking about how to program that in an easy-to-do and realistic-looking way. Any suggestions? Should I only make the range more inaccurate or also the bearing ?
h.sie
oh ,oh...H.Sie , if you manage to control the WO will be just...wonderfull !!
i will,also, suggest to contact(exept Neal) Elanaiba in order to give you some tips on where exactly are 'hiding' the parts for the WO . if he helps a little, you will save a lot of time of just...searching .you never know....give him a pm
about the range accuracy ...i would suggest a 500 m difference would be ok.
and about bearing accuracy i would say that is ok to be left as it is becuase ,i suppose , they had the uzo back then to get the accurate bearings
Phew. Thanks for the responses. What is 32 Point? Is it N, NW, NNW, NO, NNO and so on? Good idea, but not easy to program.
My first thougt was (easiest solution of all - I'm tired):
Bearing: 10 Degrees steps:
0, 10, 20, .... 350, 360.
Range: 1 instead of 2 significant digits and rest zeroes:
100, 200, 300, ... , 800, 900, 1000, 2000, 3000, 4000....
Using text instead of numbers (NNO, NNW, Long range, and so on) is easy to do in C++ or similar, but not in assembler (for me). But worth to try.
Who is Elanaiba? One of the programmers? Nice idea. He will surely be pleased. Maybe it's a better idea to directly contact the UBI customer service with some questions regarding programming details.
:D
@LGN1: Thanks for the CO2-research. I'll use that information in the next days/weeks.
h.sie
makman94
09-14-10, 04:49 PM
.....
Who is Elanaiba? One of the programmers? Nice idea. He will surely be pleased. Maybe it's a better idea to directly contact the UBI customer service with some questions regarding programming details.
.....
oh , you don't know Elanaiba...i see....does 'Dan' means something to you ?:D
anyway...he is saying that he is helpfull to modders so give it a try...you never know !
On the other hand: What is when I am not interested in the nearest but in the second nearest contact? no chance. so it's a not very useful function at all, or am I wrong?
Dan .........Dan Dimitrescu the lead designer?
Hartmann
09-14-10, 06:04 PM
Another aspect is: there seems to be no problem if the owner of a legal SH3 [with SF] copies noDVD files [even cracked files] to his machine [described here (http://www.subsim.com/radioroom/showthread.php?t=160118) by Uncle Neal himself]...
It's a good idea to contact Uncle Neal for this...
And Ubi
http://forums.ubi.com/eve/forums/a/tpc/f/857101043/m/5941041408
But not could be better release the exe and other files from the starforce free versions for owners of the original SH3 DVD and not use ***-sh14.rar ?? :06: :doh:
http://www.subsim.com/radioroom/%22http://www.filefront.com/17291126/Point%20System.jpg%22Ayup - 32 points was used to set a course - North by Northwest and all that. But for lookouts - the bow was dead ahead, stern was right aft, half way between was On the Port/Starboard Beam, halfway between those was Fine on the Port Bow, On the Port Quarter, On the Starboard Quarter, Fine on the Starboard Bow - etc. I'll try and find a diagram and post it here. I know - REALLY far out there and so salty it be nearly pure salt ..........
Here is a decent diagram:
http://img714.imageshack.us/img714/5926/pointsystem.jpg
http://www.filefront.com/17291126/Point%20System.jpghttp://www.filefront.com/17291126/Point%20System.jpg
Phew. Thanks for the responses. What is 32 Point? Is it N, NW, NNW, NO, NNO and so on? Good idea, but not easy to program.
My first thougt was (easiest solution of all - I'm tired):
Bearing: 10 Degrees steps:
0, 10, 20, .... 350, 360.
Range: 1 instead of 2 significant digits and rest zeroes:
100, 200, 300, ... , 800, 900, 1000, 2000, 3000, 4000....
Using text instead of numbers (NNO, NNW, Long range, and so on) is easy to do in C++ or similar, but not in assembler (for me). But worth to try.
Who is Elanaiba? One of the programmers? Nice idea. He will surely be pleased. Maybe it's a better idea to directly contact the UBI customer service with some questions regarding programming details.
:D
@LGN1: Thanks for the CO2-research. I'll use that information in the next days/weeks.
h.sie
That is really great h.sie...the possibility to have inacurated WO readings!
So, here my 2 cents:
1. The bearing could stay untouched, they had very precise optical equipament and probably the readings were very precise too. Or perhaps just a bit of uncertanty, let´s say, one to five degress of error (in RL this tiny error is probably determinated by the sea state). But, obviously, if in the end, you have the necessary time, then for the first "Ship spotted", just an estimated direction is the better: N, NNW, NW, etc.
2. But the estimated distance is another history...it must be estimated only...so perhaps in steps of 500m, even 100m is already good. Much better than the always dead precise as in the stock game.
And to finish: check if these new estimated values (bearing and distace) will not mess with the weapons office solution in game. Also think about the dialogue and the lipsync. Just reminders to you think about if this or that aproach is better than another, etc.:up:
And Dan already helped a lot of modders here: ask to Der Teddy Barr, Privateer, ref, etc. Der Teddy Bar even had access to some mathematic formulas used by the game engine and so on (all them given by Dan)
My first thougt was (easiest solution of all - I'm tired):
Bearing: 10 Degrees steps:
0, 10, 20, .... 350, 360.
Range: 1 instead of 2 significant digits and rest zeroes:
100, 200, 300, ... , 800, 900, 1000, 2000, 3000, 4000....
h.sie
That sounds fine for me. I guess the only drawback would be that for larger distances than 10 000m you will always get a distance of 10 000m. This might be problematic while shadowing a contact and using the WO to keep the distance at max. range (the contact might come as close as 10 000m without you being warned).
Regarding CO2: Do you think it might be possible to couple the CO2 build-up to the silent running setting (maybe a factor of 2 between using silent running and normal life/repairs...)? That would be great. It would also make the silent running setting more than just eye-candy.
Cheers, LGN1
@Draka: Sorry, but I prefer the current output in degrees. Thanks anyway for helping.
@Rubini: At the moment we are only talking about the "Nearest visual contact"-Button for the 1WO, not about the automatically generated messages "Ship spotted, Bearing .... Range .... . For that, other routines are responsible.
I also think that NNW, SSO and so on are only for absolute courses but not for bearings, which are relative to my U-Boat.
I fear a little bit to also make the automatically generated firing solution in TDC more inaccurate. Additionally, since I will play with manual targeting, this is not my first priority. But I put it on my todo-list.
AFAIK the nearest visual contact message has no sound so that no lips sysc is necesssary.
Is Dan still working for UBI? I personally would not like it, if someone changes some more or less significant bits in a program I wrote.
@LGN1: Very good idea. Could be possible to do! That idea makes the CO2 issue high priority for me.
@ALL: Thanks for the comments. I'll start programming now and I'll see what is possible.
h.sie
Now I understand Rubinis problem: The discrepancy between inaccurate 1WO message and accurate TDC solution.
That problem occurs only for those who play auto-targeting but not for those who use manual targeting (as I do or better: plan to do).
So I plan to make that 1W0 inaccuracy mod switchable. Those who don't want to use inaccurate 1WO messages can switch it off by setting a certain bit to zero. detailed description will follow.
h.sie
SquareSteelBar
09-15-10, 03:54 AM
...Is Dan still working for UBI? I personally would not like it, if someone changes some more or less significant bits in a program I wrote...I think you don't need to worry about Dan's affairs... ;)
No problem, mate - all your efforts are highly appreciated. Just a bugaboo of mine as to reality - a dream as it were.
Sometime during the transition from sail to steam the lookouts (at least in the USN) starting using the clock system - as in "Ship bearing 8 o'clock" as everyone was familiar with clocks. During my time on a sailboat in the Bay area - 80's and 90's - I started getting kids that only knew digital readouts on clocks - no idea of a clockface! So I started teaching the true old system - worked a charm.
SquareSteelBar
09-15-10, 11:52 AM
First knowledge: my AV guard doesn't like the V15A patched exe... :hmph:
@SSB: That's because I had to make one code section longer to place my routines in it. Some viruses use this mechanism, too, in order to add malicious code to applications and dlls.
I promise that I have not applied any maliciuos code.
But if you don't trust me, simply don't use the mod.
@ALL: In the meantime I changed the 1WO messages:
Range already works (fine) as follows:
Range < 1000m : Messages in 100m steps
Range = 1000m - 3000m : Messages in 200m steps
Range = 3000m - 6000m : Messages in 500m steps
Range > 6000m : Messages in 1000m steps
Bearing will be in 5 degrees steps. Not done yet.
This mod can optionally be switched off for those who play with auto-targeting, because otherwise there is a discrepancy between exact TDC and inaccurate 1WO.
h.sie
SquareSteelBar
09-15-10, 04:16 PM
...I promise that I have not applied any maliciuos code.
But if you don't trust me, simply don't use the mod...O no, you got me wrong, mate.
I'm pretty sure of that.
Just this was my first thought:...That's because I had to make one code section longer to place my routines in it. Some viruses use this mechanism, too, in order to add malicious code to applications and dlls...---------------
Did today a little single mission with massive air attacks to get damaged.
My first impression was that the repair times were much shorter than longer... :hmmm:
Played that mission only for short time [around half an hour], maybe I'm wrong...
I'll check this the next days.
@ALL: In the meantime I changed the 1WO messages:
Range already works (fine) as follows:
Range < 1000m : Messages in 100m steps
Range = 1000m - 3000m : Messages in 200m steps
Range = 3000m - 6000m : Messages in 500m steps
Range > 6000m : Messages in 1000m steps
Bearing will be in 5 degrees steps. Not done yet.
h.sie
Amazing work, h.sie! :yep: :yep: :yep:
Now only the lazy WO and the CO2 have to be fixed and we are a big step closer to the perfect sim.
Thanks!
Cheers, LGN1
...
Did today a little single mission with massive air attacks to get damaged.
My first impression was that the repair times were much shorter than longer... :hmmm:
Played that mission only for short time [around half an hour], maybe I'm wrong...
I'll check this the next days.
Hi SSB,
I can assure you exact the opposite. The mod works flawless, today i tested the V15A with 60x and 120x: and is just amazing, all works as expected, the tension do try to fix and stop floodings with your boat showing the gravity center deviations by flooding is better than never now. Even better (speaking in final balance of the mod) than the old LRT mod by ndrifter (which I much respect and since early days put all my support on it).
What i noticed (and probably was exactly what you saw) is that sometimes you have really few damage that could continue to be repaired in a minute or two. Take in mind that these were repaired in a second in the stock game.;)
Amazing work, h.sie! :yep: :yep: :yep:
Now only the lazy WO and the CO2 have to be fixed and we are a big step closer to the perfect sim.
Thanks!
Cheers, LGN1
Yes, just incredible. You are a wizard mate!
I just recall about the odd compress air routine used in the game. The compressed air was consumed in RL every time that the uboat go dive and then go up...will be very realistic if we could make it slowing be consumed every time you up a bit after dive.
What you think h.sie? It´s doable?
@SSB,
maybe you looked at the repair times of the COMPARTMENTS. these have not changed, because they are linked to the (fast) flooding time and the recovery of the flooding. but all EQUIPMENT takes 60 times longer to repair now.
oh no, I forgot: if you followed ALL steps of the course, you've surely deleted the patched exe file before playing it and renamed back the original sh3. so you could not see any changes. of course. all behaves as expected.
:DL
@Rubini:
If I were a wizard, I'd programmed my own Subsim. I am even not a good programmer, since I needed 1 whole day to program a floating-point comparison in the FPU. my only quality it to be very persistent .
h.sie
Range & Bearing works very well now. But I've to clean up my spaghetti code and test a little bit (long-time stability).
Next steps on the ToDo List:
1) Move lazy 1WO on bridge when surface.
2) CO2
greetings,
h.sie
@Rubini: Could you please explain more in detail what is the problem with the odd CO2 routine. I never discoverd any problem with CO2 since I never played seriously. So, before programming, I have to become familiar in detail with that problem/bug.
Maybe here is someone with good x86 assembler skills, who could help me. While it is relative simple to do a conditional jump with integers in the CPU registers:
cmp EAX, EBX ; compare registers EAX and EBX
jge dest ; jump to dest if EAX > EBX
I found out that it is relative complex to do the same with floating-point values in the FPU, since one has to assure that FPU and CPU are syncronized:
fcom st(1) ; compare FPU registers st(0) and st(1)
fwait ; wait until FPU is ready (synchronize)
fstsw ax ; copy FPU status word to CPU register AX
fwait ; wait until FPU is ready (synchronize)
sahf ; set CPU flag registers according to AX for conditional jump
ja dest ; jump to dest if st(0) > st(1)
This works, but I don't like it. Is this really the most simple solution for a simple conditional jump??? I cannot believe that. Is the synchronization really necessary?? I cannot imagine that the CPU does not wait for the FPU.
Thanks.
h.sie
P.S: Maybe this is a good example to show my problems in order to damp down any expectations regarding complex addons in the future.
Sorry, h.sie, I cannot help you with the assembler :-?
Concerning Rubini's posts: There are two problems. One is the CO2 buildup in the sub that forces you to surface after some time. That works fine in the sim, the time is just too short (buildup too fast) in my opinion. The other issue is the compressed air usage. Here is an old discussion about it:
http://www.subsim.com/radioroom//showthread.php?t=163651
Basically, as Rubini wrote in the old thread, it's quite useless in the game. But I have no good idea how to improve it in an easy and realistic way :hmmm: I guess making it more useful is for some future mod (Some open questions: How does the compressed air decrease when you order a new depth? What happens if you use the dive planes? Would a slow continuous decrease (no matter what you do) be realistic?...).
Cheers, LGN1
I just contacted Neal Stevens about this situation. Now waiting for his reply.
@Rubini: Could you please explain more in detail what is the problem with the odd CO2 routine. I never discoverd any problem with CO2 since I never played seriously. So, before programming, I have to become familiar in detail with that problem/bug.
The link that LGN1 provided can give you a good idea about the problem.
I guess that the stock game compressed air usage is one of the major drawnback to use Sh3 as a real simulator. It's hardcoded, not possible to mod by common files of the game. Probably your mod will the unique hope here and perhaps doable as it is just one variable, just one aspect of the game.
The idea is to consume the compressed air a bit every time the boat surface or go up a bit from the depth. If we achieve it, then the use of the compressed air will open a new tactical level for Sh3, you will need to take it in mind to make maneuvers, etc. Just as a real Kaleum.
If the hunt of a hook to consume it every time you go up (by hitting S or change the depth up using the dials) shows itself impossible or very difficult to implement then could be better than nothing just to consume the compressed air a bit every time you dive. It's a good compromisse IMHO.;)
The CO2 problem is totally new to me, but it seems to be important for tactical decisions - very interesting. But I need time to get familiar with the problem. I've not yet read the thread LGN1 posted. Until now I thougt, the CO2 gauge only shows the Co2 level in the air to breathe. Nothing more. I thought we have to differenciate between:
CO2-Level in air: Not good for the crew. They prefer O2 instead.
Compressed air: Needed for diving/surfacing maneuvres.
It does not seem impossibe to fix, but first I will enhance my programming and debugging skills by automatically pushing the lazy 1WO to the bridge - not a very important thing - but nice to have. h.sie
The CO2 problem is totally new to me, but it seems to be important for tactical decisions - very interesting. But I need time to get familiar with the problem. I've not yet read the thread LGN1 posted. Until now I thougt, the CO2 gauge only shows the Co2 level in the air to breathe. Nothing more. I thought we have to differenciate between:
CO2-Level in air: Not good for the crew. They prefer O2 instead.
Compressed air: Needed for diving/surfacing maneuvres.
It does not seem impossibe to fix, but first I will enhance my programming and debugging skills by automatically pushing the lazy 1WO to the bridge - not a very important thing - but nice to have. h.sie
Yes, that lazy 1WO will be also a very nice touch!:up:
Now more info to try to clear the air matter: the CO2 feature/implementation and the compressed air are totally diferent things and also both have their own dial on game. Fixing one will not mess with the other and so on.
The Co2 fix idea is just to elongate the dive time for crew, putting it at the RL levels.
The compressed air is used to maneuver the boat UP/Emergency surface. And what is broken is that only the emergency surface work now on the game (concerning compressed air consume). If fixed, it will raise a lot the sim feeling of the game.;)
Aaah, ok, that are two different problems. Now I begin to understand.
Just discovered a problem:
While testing I heard:
"Ship Spotted: Bearing 207. Medium Range".
After pressing the Nearest Visual contact button, I can read:
Nearest Visual contact Bearing 205. Range 1500m.
There is a little discrepancy between those 2 messages.
So either I change the first message, too, or I take back the 5 degrees steps for Bearing in my mod.
I tend to take back my changes for bearing since exact Bearing values could surely be done much easier than range values.
Just to pick a nit - remember the lookouts in the original message are using best estimation by strictly visual clues and experience - like the point system. When you use the Nearest Visual button it is presumed that the WO is now using the UZO (or something similar) to get a more precise reading of the initial contact report. That is for bearing - range is still an estimate as I believe only a periscope view has the markings to get any accuracy - the UZO didn't have any such, nor the binoculars used by the bridge crew.
panzerschutze12ss
09-16-10, 02:43 PM
Will there ever be a demonstration on the 4GB patch .exe?
SquareSteelBar
09-16-10, 02:49 PM
There's no problem to patch the exe with the 4 GB patch after doing h.sie's lessons.
The other way around it works, too.
The 4 GB patch changes only one byte.
-
panzerschutze12ss
09-16-10, 03:03 PM
Great thanks! I haven't been paying attention sitting here in the back of the class for this lesson.
Hay whats the answer to question 5 C or D?
SquareSteelBar
09-16-10, 03:12 PM
5c: RTFT
5d: RTFT
@Draka: If I understand you right, you say that Nearest visual contact should be equal or more exact than the normal "ship spotted" messages? That's what I think, too.
makman94
09-16-10, 03:37 PM
Just discovered a problem:
While testing I heard:
"Ship Spotted: Bearing 207. Medium Range".
After pressing the Nearest Visual contact button, I can read:
Nearest Visual contact Bearing 205. Range 1500m.
There is a little discrepancy between those 2 messages.
So either I change the first message, too, or I take back the 5 degrees steps for Bearing in my mod.
I tend to take back my changes for bearing since exact Bearing values could surely be done much easier than range values.
@H.Sie, i think that 5 degrees steps at bearings is too 'large' .
i tested today the mod and it is working as intended !
VERY good work H.Sie :up:
There's no problem to patch the exe with the 4 GB patch after doing h.sie's lessons.
@H.Sie, can you confirm this ^^ ??
Yup. 4GB patch works, but must be applied AFTER patch V15A (or later ones from this coourse).
Yes, the initial "Ship Spotted" is actually being called out by the appropriate lookout - just Ubi made the WO repeat it instead of having to write a routine to have the correct lookout facing that ship being the one animated (Crew Member 13,14,15 or 16 as opposed to the WO number 0)- and the voice files to go with it! The followup "Nearest Visual" is you as commander asking the WO for a detailed report. So the first one is resonably accurate while the latter is more exact - again as to bearing. It is up to you whether you think his estimate of the range is better than the other lookouts.
Thanks, Draka. I'll let bearing untouched. I think the effect on gameplay is too small and does not excuse the effort reqired to fix. range will be fixed as described
Regarding 4GB patch.
In this point I have to disagree with Squaresteelbar who wrote that the patching sequence does not matter.
The sequence IS IMPORTANT:
First check if sh3.exe has correct MD5 checksum.
If yes: patch sh3.exe with V15A (or later patches from the course here).
After that: apply 4GB patch.
If you change that sequence (first 4GB, then V15X) you'll shred the executable. Patching with bspatch requires that EVERY single bit of an exe is as expected. Otherwise it will shred the executable. That's the reason why it is necessary to first check the MD5 checksum.
h.sie
SquareSteelBar
09-17-10, 03:10 AM
You're not quite right, mate.
The sequence doesn't matter. The result is always the same, since the 4GB patch changes only one byte from 0F to 2F. Just checked it out.
http://img818.imageshack.us/img818/9072/000ip.jpg
http://img714.imageshack.us/img714/5907/001wde.jpg
Related to step 2 of your lesson you're right - the checksum will differ though it's possible to apply V15A patch and you'll get the same 4GB sh3.exe .
Prerequisite is the non-sf sh3.exe [B]1.331.200 bytes sized, Timestamp Tuesday, June, 14, 2005, 11:54:24.
-------------------------------------------------------------
Maybe that improves confusion so I recommend to follow h.sie's advices.
@SSB:
I am aware that the 4GB patch only changes a single BIT in the PE header of the executable. But: After applying the 4GB patch, you cannot continue to patch your exe file with bspatch+V15A. Try it. It will result in a file that cannot be executed. it's simply shredded.
h.sie
I also recommend to follow my advices :-)
SquareSteelBar
09-17-10, 03:24 AM
Tried it already, identic exe, not shredded.
It works since your patch depends on the correct file size not on the correct checksum, right?
ups. that surprises/confuses me, because I also tried that a week before without success. so maybe it (always? sometimes?) works to change the patch sequence. funny.
but in spite of that: I recommend to use the following sequence:
1) V15
2) 4GB-patch.
simply because that's the way I create and test the files. I do not support the other way around to make my life easier.
h.sie
SquareSteelBar
09-17-10, 03:41 AM
Sorted. :up:
Wake up WO... ;)
-----------------------
..because I also tried that a week before without success...Maybe your AV Guard prevented that?
I have to send my AV Guard to bed before patching otherwise the files were shredded...
SquareSteelBar
09-17-10, 10:07 AM
Hey Alex, where've you gone ??? http://img844.imageshack.us/img844/9571/noidea.gif
Didn't follow this a few weeks and I gotta ask is the change once done permanent, ot do i have to apply the fix every time!
Sorry if I'm being dense!:88)
SquareSteelBar
09-18-10, 10:44 AM
Once done it is permanent.
ryanwigginton
09-18-10, 11:24 AM
h.sie,
A small request. Can you move your excellent courses to the first post so we don't need to browse through the thread to find each individually?
that's a very good idea. I'll do that during the next days.
Status changed to [REL] and first post updated. In the future it will contain all news and necessary information. Still trying to automatically move the 1WO to the bridge, but I am pessimistic in the meantime.
Next patch version V15B this weekend, containing more inaccurate range estimations from 1WO.
ryanwigginton
09-22-10, 03:14 AM
Excellent, thank you!
Well,if you manage to fix the WO it'll be the cherry on top.
You did some amazing stuff already!:up:
Hi h.sie,
After a lot of tests using your mod and also after a lot of time being depth charged on the U505 mission using both just vanilla game and my slight modded one I started to see, sometimes, my boat going deep and deep even without more flooding inside...it didn´t goes up anymore even using blow ballast or force engines full. It was like an invisible flooding putting my uboat more and more deep...It only happened on my slight modded installation.
Also in others very rare situations my external uboat view (underwater)just showed nothing and the cameras becomes strange (again after suffer heavy depth charge hits)
Trying to find the culprit I finally isolated that old very good mod: Uboat Keel (the one that allow you to stay on the sea floor making repairs without being damaged by the sea floor "collision").
At firtst I could not determine if it´s yours changes on repair time that are making the Uboat_keel mod to have an strange behaviour (perhaps something to do with repair times - it´s a zone compartment in the end) or if this uboat _keel mod is the unique culprit, e.g., it always could have this behaviour but it´s is just too difficult to observe - you need to achieve damage in the kell by depth charges to see this behaviour...
Later i tryed the below modifications on the uboat_keel definitions on zones.cfg and it solve both problems (deep blues and external view disappearing):
The original Uboat_keel zones.cfg definitions:
[UboatKeel]
Multiplier=1.000000
Flotability=0.000000
HitPoints=99999
Destructible=No
Armor Level=99
;Critic Flotation=0.300000
Critical=No
FloodingTime=9999
CargoType=None
Just change for this one:
[UboatKeel]
Multiplier=1.000000
Flotability=0.000000
HitPoints=999999
Destructible=No
Armor Level=9999
Critic Flotation=0.9999999
Critical=No
FloodingTime=99999
CargoType=None
As this solve the problem is clear to me (but not absolutelly sure yet) that it´s an inherent uboat_keel mod problem, its virtual compartiment was suffering small damage when heavily depth charged and probably the parameters aren´t enough well adjusted for this hard situation, bring some invisible flooding and later bring cameras problems when it was "totally" flooded... :up:
Hopes this could help someone more that is also running both mods!
Cheers,
Rubini.
@Rubini,
thanks for sharing this detailed information (which one should keep in mind for the future). I am very sure that my repair time modification does nothing more than enlarge repair times, because it simply changes one factor. nothing more. but of course it changes the gameplay situation when damaged (repairs need more time now and so damage can cumulate). and because of this, now some side-effects of the U-Boat-Keel mod (is it the Seabed Repair Mod from Mikhayl?) which have been invisible so far, now maybe become visible.
But even if that is a bug: it only occurs seldom according to your observation. couldn't it be interpreted as an unforeseen failure of an heavily damaged u-boat for which noone has an explanaition. I think that unpredictability is some kind of realism.
@ALL (who are interested):
Currently I am thinking about 2 things:
1) 1WO - Nearest visual contact: Should I enlarge the range steps to 2000m for ranges > 10000m? This would make long range plotting more inaccurate.
Or are 1000m steps enough inaccurate / more realistic?
2) WP: Should I also try to make the firing solution of the Weapons officer more inaccurate the same way (Weapon Officer / Torpedo attack / Firing Solution). That surely would make sense, although I will play manual targeting without help of Weapon Officer.
But: Changing the WP firing solution could result in too bad firing solutions and so it will need fine-tuning (and many controverse discussions) in the future. and also at the moment I don't know if I can consider the experience / competence of the WP to modify the solution. Another problem is that these changes cannot fit all flavors. For some people they are too inaccurate, for some not. I fear a little bit to make those changes, and since I will not use the WP assistance, it's not worth the effort (for me) and not worth the risks every hardcoded change involves.
h.sie
About the Visual contacs, I'm not sure how this will work with 16km and similar mods.
I would love the inacurate WO firing solution. Together with a reasonable delay after asking for a solution. Always killed the immersion when the WO was able to spout his calculations faster than Einstein!
I use the WO on surfsace attacks for it used to be this way.
But if it opens more cans of worms, then stick to the things at hand first.
There is time for this later.:salute:
@Myxale: It works this way: For ranges > 10000m the range will be displayed in 2000m steps (10000, 12000, 14000, 16000) and not in 1000m steps as my first idea was.
The time delay is a very good point (which automatically can result in a more inaccurate solution). Unfortunately, I have no idea how to implement that in an easy way. After pressing the firing solution button, the according event-handler calls and executes hundreds of routines and subroutines IN SEQUENCE. if I delay one of them, the rest will also pause and wait. that is not possible. the only way around would be to cut the WP-firing-solution-routine out of this sequence, pause and execute it in a special thread IN PARALLEL, so that the other routines don't have to wait. I've done that in C++ and Java but it's impossible for me in assembler without SDK, although the problem seems to be so simple. h.sie
Yes, its exactly the "Seabed Repair Mod" from Mikhayl. And for sure, is just possible to interpret the bug as an unkown uboat damage by heavy session of depth charges...but i find it a bit frequent now that I know how to reproduce it for tests...I'm almost sure that what I found was an unexpected bug of the Seabed Repair mod that probably neither Mikhayl saw it. Anyway the more important is that it is easily fixable as I wrote above.;)
For 1WO I suggest in 1000 steps for long distances, or better: isn't possible to make this estimated distance error a bit random? (as probably in RL?) The same idea (bit random error) could be applyed also for the WP solutions readings?
And finally the delay will be - even if the unique modification for WP readings solutions - a awesome addition. I totally agree with Mixale about it.
Hi Rubini,
the "randomness" is already implicitely contained in the error that results from the discretisation of the range. E.g.
Ship A has real range 977m. 1WO says 1000m. Error: 23m
Ship B has real range 1090m. 1WO says 1000m. Error: 90m
Ship C has real range 1000m. 1WO says 1000m. Error: 0m
and so on. You don't know the ships real range, so the error is random (from your perspective).
Easy to program and effective.
The problem with random numbers is that you can get different results for the same ship when you ask 1WO several times. And also you can get big discrepancies when you compare the range from the 1WO with the firing solution of the WP.
Ok, I will try to make the WP firing solution more inaccurate the same way I did it for the 1WO. Since the numerical values (distance steps: 100m, 200m, 500m, 1000m plus the ranges for these distance steps: 1000m, 3000m, 6000m) can easily be changed in the .exe with an Hex-Editor, fine-tuning of the accuracy can be done later and even individually. One only needs the adresses of the numbers in the .exe.
greetings,
h.sie
Hi Rubini,
the "randomness" is already implicitely contained in the error that results from the discretisation of the range. E.g.
Ship A has real range 977m. 1WO says 1000m. Error: 23m
Ship B has real range 1090m. 1WO says 1000m. Error: 90m
Ship C has real range 1000m. 1WO says 1000m. Error: 0m
and so on. You don't know the ships real range, so the error is random (from your perspective).
Easy to program and effective.
The problem with random numbers is that you can get different results for the same ship when you ask 1WO several times. And also you can get big discrepancies when you compare the range from the 1WO with the firing solution of the WP.
Ok, I will try to make the WP firing solution more inaccurate the same way I did it for the 1WO. Since the numerical values (distance steps: 100m, 200m, 500m, 1000m plus the ranges for these distance steps: 1000m, 3000m, 6000m) can easily be changed in the .exe with an Hex-Editor, fine-tuning of the accuracy can be done later and even individually. One only needs the adresses of the numbers in the .exe.
greetings,
h.sie
Ok! So, if you need beta testers I'm ready!:DL
I'm no Code-mancer, but i see what you mean. If the Delay causes such a hiccup in the working variables, then its better left alone.
And the Example above about the randomness is quite appealing. The misses are not otherworldly big and seem quite plausible.
After all those were all trained men where guesswork was concerned!
A nice find with the Seabed Repair Mod too. Since I use the one in your GUI. Will have to tweak it a bit after you 'adjustment' are done.:rock:
Hi h.sie, hi Rubini,
interesting findings about the keel, Rubini.
Wrong information deleted! LGN1
@h.sie: I found more data about the submerged endurance of the VIIC. In the original 'U-Bootskunde' book for the VIIC from 1940 is a detailed description about the air cleaning mechanism with calculations about when the first oxygen has to be added...
At the end of the section it says:
'Der vorhandene Sauerstoffvorrat in Verbindung mit den Alkalipatronen ermöglicht, bei einer Besatzungsstärke von 37 Mann 72 Stunden ohne Unterbrechung unter Wasser zu bleiben.'
Usually, in SH3 more than 37 men are on board (Max. 51, Min. 32). Using a crew of 42 men, we can estimate a submerged endurance of 63 hours. So, I think we have historical information for the VIIC, IXC, and XXI. What is still missing is data about the type II.
To summarize:
Technical requirements for:
-IIA/D: ? maybe also 72 hours with xx men?
-VIIC: 72 hours with 37 men
-IXC: 72 hours with 44 men
-XXI: 150 hours with 50 men
Cheers, LGN1
Hi,
concerning range accuracy: I think these values are fine
Range < 1000m : Messages in 100m steps
Range = 1000m - 3000m : Messages in 200m steps
Range = 3000m - 6000m : Messages in 500m steps
Range = 6000m - 10000m : Messages in 1000m steps
Range > 10000m : Messages in 2000m steps.
Maybe it would be good to reduce the 200m accuracy to a distance of 2000m instead of 3000m :hmmm:
I think 2000m accuracy for ranges over 10000m is fine, however, I would not increase it further (I guess from a gameplay point of view it does not really matter whether it is 1000m or 2000m accuracy). Maybe Hitman has some ideas about the estimation abilities of the officers back then :06:
Concerning the weapon officer: For 90 degrees shots the distance does not matter, so I think it's fine to make the data a bit less accurate. Those players who want to be on the safe side just have to shoot at an angle of 90 degrees and everything is fine. The further away you are from 90 degrees the more risky it becomes. I like that. It encourages more realistic approaches also when you are using the weapon officer's assistance. Anyway, it would be probably better if there will be some feedback from users who actually use the weapon officer's assistance.
Cheers, LGN1
Hi h.sie, hi Rubini,
interesting findings about the keel, Rubini. But are you sure about 'Critic Flotation=0.9999999'? IIRC, Critic Flotation gives the percentage a zone contributes to the buoyancy of the sub, i.e., a high value means that the sub is dragged down a lot if the zone is flooded. Therefore, I would expect that a small value for 'Critic Flotation' is better for avoiding the problems you describe (at least in the anti-humming bird mod 'Critic Flotation' controls how fast the sub sinks. Higher values mean faster sinking).
...
Cheers, LGN1
Hi LGN1,
I'm not absolutelly sure about what I will say but, my first impression when i tried to solve the problem was exactly the absence of that parameter (critic flotation) that was the culprit. I mean, if absent the game will use some standard value for it (what i don't know exactly which is), but must be some low one.
When i fine tunning by old LRT mod for my taste i noticed that "critic flotation" value is a percent from hit points which if overpassed then that compartment start to flood. So, if i use a very high HP with an almost 100% (0.999999) hit points damage necessary to start the flooding (critic flotation parameter) probably this compartment will never more start to flood.
And it is exactly what happened and solve the problem: now that virtual compartment (uboat_keel) don't flood anymore.:up:
But I always can be wrong...what you think?
Hi Rubini,
you are right :up: I was confused ('Flotability' does what I described. But it's 0 here :hmmm:. Strange.). I edit my post above.
Cheers, LGN1
Hi Rubini,
you are right :up: I was confused ('Flotability' does what I described. But it's 0 here :hmmm:. Strange.). I edit my post above.
Cheers, LGN1
Yes, here a quote from VonHelshing, a guru on damage mod, from 2006:
Alternatively, instead of raising the hit points, you can raise the critic flotation a bit. It is a threshold; flooding starts only when the damage in a given compartment exceeds the critic flotation (as % of the hit points) ;)
It's a delicate balance.
Hi LGN1,
I will look at the CO2 and compressed air. Thanks for the research - we'll need your data later.
:yep:
At the moment the firing solution of WP is first priority, because it is related to the 1WO nearest visible contact changes.
In the meantime I could locate the routine which is responsible for the firing solution. I'll give the WP firing solution the same inaccuracy that I use for the 1WO / nearest visible contact so that there is no discrepancy.
I will program 4 ranges where the range steps change, so that there will be 5 different range steps possible. Knowing the addresses of these numbers in the .exe one can individually change these values.
h.sie
concerning range accuracy: I think these values are fine
Range < 1000m : Messages in 100m steps
Range = 1000m - 3000m : Messages in 200m steps
Range = 3000m - 6000m : Messages in 500m steps
Range = 6000m - 10000m : Messages in 1000m steps
Range > 10000m : Messages in 2000m steps.
Maybe it would be good to reduce the 200m accuracy to a distance of 2000m instead of 3000m :hmmm:
I think 2000m accuracy for ranges over 10000m is fine, however, I would not increase it further (I guess from a gameplay point of view it does not really matter whether it is 1000m or 2000m accuracy). Maybe Hitman has some ideas about the estimation abilities of the officers back then :06:
Range estimation by naked eye was much practiced in Uboat training, according to an interview with Georg Hess, they even went 8 times a day to sea in the academy with that sole purpose. The Uboat Commander's Handbooks also says that it's a skill that had to be practiced constantly.
Anyway, I would say that for ranges less than 1000 metres a 50 metres accurancy is better (May be even 20 metres), and that the point at which accurancy goes wild is when targets are beyond the horizon. From an Uboat's bridge the horizon is at 9 km, and the crew knew it, and used the horizon line to estimate range (Any target at the horizon is 9km, and before it <9 km) but when the hull starts getting hidden, estimations are only very rough guesses. So I would say that from 10-11km onwards accurancy should fell sharply. :up:
Hi Hitman,
thanks for your data. So what accuracies would you suggest?
Range < 1000m : 50m
Range = 1000-3000m : ?
Range = 3000-6000m : ?
Range = 6000-10000m : ?
Range > 10000m : ?
Greetings,
h.sie
Hi Hitman,
thanks for the answer. Do you have some information about this:
Quote:
@h.sie: I found more data about the submerged endurance of the VIIC. In the original 'U-Bootskunde' book for the VIIC from 1940 is a detailed description about the air cleaning mechanism with calculations about when the first oxygen has to be added...
At the end of the section it says:
'Der vorhandene Sauerstoffvorrat in Verbindung mit den Alkalipatronen ermöglicht, bei einer Besatzungsstärke von 37 Mann 72 Stunden ohne Unterbrechung unter Wasser zu bleiben.'
Usually, in SH3 more than 37 men are on board (Max. 51, Min. 32). Using a crew of 42 men, we can estimate a submerged endurance of 63 hours. So, I think we have historical information for the VIIC, IXC, and XXI. What is still missing is data about the type II.
To summarize:
Technical requirements for:
-IIA/D: ? maybe also 72 hours with xx men?
-VIIC: 72 hours with 37 men
-IXC: 72 hours with 44 men
-XXI: 150 hours with 50 men
Quote
Cheers, LGN1
Oh, this was a fast shot. Inaccurate firing solution for WP officer (and TDC in auto targeting mode) already works. Now, in auto-targeting mode the TDC range wheel does not turn continuously, it jumps step-wise according to the programmed range steps.
Beta this weekend. V15B is on the horizon.
50m/250m steps are possible for WP firing solution / TDC.
for 1WO / nearest visual contact only 100m steps are possible.
makman94
09-23-10, 05:40 PM
Hi H.Sie , i would suggest to make a version with only the WO tweaked and another one version with the WO and the WP tweaked.
of course , this is your mod and the decision is yours :up:
Hi makman,
I'll only program one version since I cannot take care for all wishes. But I'll try to make all future additions switchable, so that every single addition can be switched on/off individually. One only needs to know which memory address one has to change with HEX-Editor in order to switch.
Otherwise I would be confused about different versions.
n additions / features would lead to 2^n different program versions.
e.g. 5 features would lead to 2^5 = 32 different versions.
h.sie
@Myxale: You told me that you use the Seabed Repair Mod contained in "my" GUI. But this is a combi-mod containing also LLRT. You cannot use LLRT together with the modded exe - LLRT is obsolete .
So I fully agree with LGN1. A fully modded, stable game is worth the little money. it's one box of cigarrettes.
Please remember, h.sie, that it maybe is a box of cigarrettes, but in your country. Certainly not worth buying this game a second time here.
It really is a legalistic paranoia with this sh3.exe. As a person with no-cd (or starforce) version I can only hope to find someone who will be polite enough to make this file available for starforce-condemned people.
And great quality work as always from you, h.sie!
Kafka BC
09-24-10, 06:57 PM
Just been reading through this thread and all I can say is By Gosh, this is absolutely great work. A big thumbs up to you h.sie.
I only wish I could try it, the UBI endorsed Starforce crack is the reason I finally installed the game after it sat on my shelf for four years, but I am not about to go out and buy a Starforce free one, even if I could find it.
I agree a bit with Verte about the legalistic paranoia.
As an example: the Master of Orion 3 executable was so riddled with gameplay bugs that someone named Bhruic (http://bhruic.dyndns.org/patcher/patcher.php) (a god in many peoples eyes) made a patcher program and a large number of small patches over the years to fix nearly all of them. Someone else named Gerra (http://members.chello.nl/gbrinkers/codemods.html) made a number of various enhancement patches for the executable.
All of these patches work on both the stock and No-CD cracked executables - which was fortunate, since applying the final "official" patch to the game would sometimes cause it to not recognize the game CD, thus forcing people to use a cracked version.
Various versions of patched executables are distributed with the four flavors of "Unofficial Patches" - Vanilla (http://www.ataricommunity.com/forums/showthread.php?p=10479699#post10479699), Strawberry (http://www.ataricommunity.com/forums/showthread.php?t=501381), Tropical (http://www.ataricommunity.com/forums/showthread.php?t=517077), and Chocolate (http://www.ataricommunity.com/forums/showthread.php?t=538340) - on the Atari forums with nary a peep from Atari.
So I think you have a little wiggle room.
Kafka BC
Oh, 1000 posts.
@Verte & Kafka_BC
Thanks for your words.
I can understand your position, but patching different exes is too time-consuming for me and would slow down the progress in my current work, which is already very exhausting and slow. Additionally, the cracked SF exe seems to have stability problems. So there are now 2 reasons to look for the starforce-free exe version.
If this were really only a legalistic paranoia, why has no one shared his starforce-free exe with those who have the cracked one? My job is to fix some bugs. Another person could think about how to "transform" the cracked exe (+ 5 dlls) into a starforce-free version for all legal SH3 owners. divison of work.
h.sie
h.sie, you seem already to have achieved most of the objectives you set out to do.
What else is on your agenda?
Seeing the possibilities, there are (given enough time) quite a few!
Oh, 1001 posts:DL
@Myxale:
Yes, fixing repair times was my BIG objective for 2 years. All other things are unimportant compared to that.
currently on the agenda:
BETA testing: reduced accuracy for range estimation of WO and WP.
CO2: Achieve longer diving times.
Compressed air. First have to look into it.
Move lazy WO on the bridge when surfaced
Any further suggestions? Only gameplay/realism oriented - (and easy to fix).
Dunno how easy or even if its possible or how time consuming...but I always wanted a mod that makes a DC's blind sonar:arrgh!:
But other that what you have already done, SH3 is almost complete!
The WO and Repair times were the biggest pains in the backside!
Wasn't there an error with the AOB dial? When one turns the periscope, the AOB also changes? Or does that work as intended? Sorry for that dumb question, but the last time I've played is more than 1 year ago.
Kafka BC
09-25-10, 04:08 PM
Oh, 1000 posts.
@Verte & Kafka_BC
..... but patching different exes is too time-consuming for me and would slow down the progress in my current work, which is already very exhausting and slow.....
h.sie
I understand. I forgot about the other .dlls, I wouldn't waste my time either. Long ago, back in '94, I studied a wee bit of Assembly and I know how hard it can be. It is only one level up from actually tinkering with the Binary Code. Thank god for Grace Hopper (http://en.wikipedia.org/wiki/Grace_Hopper).
I can live without the fix. I may try that bit described by divingbluefrog on the first page.
Good Luck, Love your work,
- Kafka BC
I can understand your position, but patching different exes is too time-consuming for me and would slow down the progress in my current work, which is already very exhausting and slow. Additionally, the cracked SF exe seems to have stability problems. So there are now 2 reasons to look for the starforce-free exe version.
Yes, there is no sense in patching different exes and slowing your work when someone can just make the good .exe available for the rest - you can find few different exes to silent hunter 3 available for legal download in patches from Ubisoft sites... (just not this exact version). You can even download a no-cd exe with Ubi turning a blind eye to it. So what's the problem with this one? Ubisoft should do it themselves if it really is more stable than the starforce version (but they will not do it, because they have their customers in the dark place). Well, lets just wait and maybe sooner or later someone will make it available - and then, if it is so big problem, I will make a big red downloable link to it for everyone myself.
New version V15B online.
New: Inaccurate (and hopefully more realistic) range estimations for Watch Officer and Weapons Officer. No gods-eye firing-solutions anymore.
Before this mod: "Range: 8932m, Herr Kaleun".
Now: "Range: 9000m, Herr Kaleun".
The range estimations now are displayed (and of course internally used for firing solution) in certain range-steps, which become larger (more inaccurate) for larger ranges. In detail:
Range 0000-1000m: Steps: 50m (Weapon Officer) 100m (Watch Officer)
Range 1000-2000m: Steps: 100m
Range 2000-4000m: Steps: 200m
Range 4000-9000m: Steps: 500m
Range 9000-12000m: Steps: 1000m
Range > 12000m: Steps: 2000m
The maximum possible error of the range estimation is Step/2. E.g. for ranges between 2000m and 4000m the step size is 200m, so that the estimation error is max. 100m.
Patch V15B must be applied to unpatched sh3.exe (see 1st post for instructions).
All numerical values used in my mods (ranges, range steps, repair time factor) now are put together in a special data section in the .exe and can be individually adjusted using an Hex-Editor. But this is for advanced users only. In the future I'll post the Hex-Positions and Data Format of all relevant numbers, so that individual adjustments are possible. Also all modifications can be switched on/off individually. The switches are also located in the data section.
(This maybe gives potential for a special configuration program that helps non-experienced users to adjust.)
Hope you like it.
h.sie
By the way: Thank you all for helping with suggestions and positive or negative resonance.
Hi h.sie,
fantastic work :up: Another issue solved which people discussed and wanted to solve since the beginning of SH3 in 2005. Really ground-breaking work from you :up: Many old threads can be closed now.
If Iambecomelife gets this mod out
http://www.subsim.com/radioroom/showpost.php?p=1500991&postcount=8201
we will also have some more realistic wolfpacks in SH3 :yeah: ... and we will be closer to the perfect sub sim.
Cheers, LGN1
Hi LGN1,
Thanks again.
What is the difference between IABLs Uboats and Sergbutos Uboats?
h.sie
Hi h.sie,
the main differences are:
'1) My "friend" here can move at varied depths and even surface.'
Sergbuto's u-boats are either submerged or surfaced.
'2) He can be spawned by radio messages once you sight a convoy.'
Sergbuto's u-boats only appear when scripted in the campaign layers. There is no connection to the player's action.
I guess Iambecomelife uses the 'airplanes' to simulate the sub. If I am right, it would be great because you could create 'airbases' in the atlantic with u-boats as the only 'squadrons'. Then if you send a contact report there is a chance that u-boats are spawned and attack. So, sending a contact report could result in some kind of wolfpack action :yeah: And all you need is to add some airbases to the campaign_lnd layer (and the airbase definition and sub 'airplane').
It seems to be great work from Iambecomelife. I hope he releases something soon. It seems to be a great step towards better wolfpack actions.
Cheers, LGN1
Well, well...SH3 will never die , no?:DL
Thanks again hsie for this new fresh air for Sh3! It´s awesome!:up:
Works flawless!
@LGN1: wow...great news on Iambe new mod!Thanks to share the info!
Hi Rubini,
I was very excited when I saw Iambecomelife's post in the screenshot thread. I immediately started to think how he does it. My guess is via an airplane, but I don't know. I hope he will come up with some more details in the near future. It looks very promising! Would be a great addition.
Cheers, LGN1
PS: Sorry, h.sie, for the off-topic post. I just thought many are interested in Iambecomelife's post and you do not expect such news in the screenshot thread. Maybe Iambecomelife opens a dedicated thread for it.
Hi LGN1,
don't worry about being off-topic. It is very interesting information and I'm looking forward for news regarding wolfpacks. missing or only pseudo-wolfpacks now are the biggest weak point in sh3 in my opinion.
now I start to look deeper into the CO2 issue.
h.sie
Hi h.sie,
great that you are looking into the CO2 issue :up: Thanks a lot. Here is again all the information I have about it:
In-game times (independent of number of crewmen and silent running setting):
IIA: 30h
VIIC: 36h
IXB/IXD2: 40h
XXI: 46h
Historical technical requirements:
IIA/D: ?
VIIC: 72 hours with 37 men
IXC: 72 hours with 44 men
XXI: 150 hours with 50 men
Unfortunately, I don't have any information about the type II. However, I think it is also the least important one because it's mainly used in the early war and in this period you do not need to stay submerged for long periods of time.
From the dials.cfg it seems that the CO2 value in game is between 0 and 1:
[Dial43]
Name=CO2 level
Type=39; DIAL_CO2
Dial=0x0
CrtVal=0x3F300004
NewVal=0x0
DialVal=-90,90
RealVal=0,1; normalized
Circular=Yes
It would be great if one could make the CO2 build-up dependent on the number of crewmen and the 'silent running' setting. In this case the 'silent running' setting would become more important and you would be punished for leaving the harbor with as many men as possible.
Once again, thanks for all your efforts!
Cheers, LGN1
If anyone have problems with incorrect sh3.exe version, please contact me by PM. But beware! The correct sh3.exe works only with legal SH3 ;)
LGN1: I wouldn't say "punished", as in the early war historical crews were as stated - after all the designed crew for a Type VII is 4/16/24 (44), but historical records show crew at time of loss for various VII series boats run from 35-53, especially when the "supernumary" types like fahnrich (cadets), war correspondents, propaganda officers and the like are factored in. Not to mention manning all the added flak guns, etc ....
Hi Draka,
I agree 'punished' is the wrong word. What I meant is that the number of men has a stronger influence, especially it has also a negative one. At the moment you don't have any disadvantage from taking as many men with you as possible. I don't think that's realistic. If the submerged endurance is reduced depending on your crew size, you also have an advantage of taking less men with you. I like this idea.
Cheers, LGN1
What I've done so far:
- Identified variable which contains the CO2 level.
- Found assembler routine which modifies/cumulates that variable.
- Found a way how to determine Hex-address of Silent - Running - Status Flag. (As most of the variables, it changes it's address, every time one starts the game)
So I am lightly optimistic that some CO2 manipulation can be done.
Next milestones for the next days:
- Find out how to determine number of currently living crew members. dead men don't breathe. (maybe difficult?)
- Determine U-Boat Type
- Modify the assembler routine accordingly.
Even if I am unable to find the number of living crew members, it seems possible to enlarge diving times and consider the Silent-Running. That would be an progress.
Or alternatively I could take the number of crew at mission start.
h.sie
CherryHarbey
09-26-10, 04:21 PM
h.sie,
sounds like you are making good progress, keep it the good work.it is much appreciated.
I am currently thinking about 3 things regarding CO2:
1) Gameplay balance. If, lets say, in-game the destroyer attacks do not last longer than 5 hours, but in reality they did last 10 hours, IMHO it's better for gameplay balance to fit the max. diving times to the attack duration of the game and not according to historical data. Otherwise you would never get problems with CO2.
2) Silent-Running. Not sitting at my gaming PC. Is it possible to do Silent Running with more than "Ahead slow" speed? If not, Silent Running is not the right condition to affect CO2 cumulation (because it must be possible to drive faster than "Ahead Slow", but with all crew members lying in bed, breathing slow). Maybe it would be better to find out if repairs are done or not and use that information to affect CO2 cumulation ?
3) Would it make sense to drastically enlarge CO2 cumulation (or add an constant amount to the CO2 level) if one of the batteries is heavily damaged, in order to simulate Chloride in the air?
Many ideas may arise, but unfortunatly the problem is always to implement them. For example, I don't know if it's possible to find the damage variables of the batteries....they change their address every time a game is started.
h.sie
Here some input;
#
#
As for the CO, I think a approach between Realism and Game play would be best. Like you said!
For example my longest DC session was 6 real time hours ( I was playing W@W with GWX2.1 back then ).
Since it's a game, i paused many times and at one point i went to bed and resumed the next day.
So Giving the player the air reserves to last up to 4 full day is a bit much.
For dramatic purpose and balance CO should still be an important factor.
A balance between GWX standard and Realism + a few hours bonus to simulate the LI using some of his precious reserves would´be sound.
#
#
The silent running is only possible under 50rpm. Silent running affects the outside noise of your sub, with the low RPM to curb engine and screw noise.
And there was of cause the no working and talking or moving around condition in the boat.
I always assumed that this is the most economic way of air use. I remember my Gibraltar Mission (not RL ;) ) where I had this idea too silent run through the gap.
I came far, but CO got critical and I had to wait late into the night to surface for a quick breather.
#
#
The chloride Idea is a good one, and I think adding a fixed CO penalty is better, there is also the Breathing set every crew member owned.
Which at one point would be utilized to fight the chloride Gases.
So giving a fixed amount of CO penalty after a battery is damaged sounds good to me.
But if you decide to enlarge the overall CO capabilities like they were in RL, then you could also easily stick to the ever increasing chloride gas idea ( CO rise due to the gases. Since the constant rise of CO could balance the enlarged CO capabilities...
I have no account, nor any good source on those matters. How common were damaged batteries and chloride gas problems??
Does a broke or leaking Battery is considered heavy damage?
--
Geeez I hope my rant didn't bore you to tears. But you have some really great ideas and I feel that this mod (patch)fix) whatever- will be the best thing that happened to SH3
Hi Myxale: Thanks for your input.
What I meant regarding Silent running: If engines run with high rpm but crew is in bed and does nothing but breathing slow - this is not called Silent Running, but the CO2 must cumulate slowly.
So my thought was not to use the silent-running to affect CO2 cumulation, but much more the question wheter crew does repairs or not. this is more accurate IMHO, but I don't know if I can implement that.
h.sie
makman94
09-27-10, 08:47 AM
New version V15B online.
New: Inaccurate (and hopefully more realistic) range estimations for Watch Officer and Weapons Officer. No gods-eye firing-solutions anymore.
Before this mod: "Range: 8932m, Herr Kaleun".
Now: "Range: 9000m, Herr Kaleun".
The range estimations now are displayed (and of course internally used for firing solution) in certain range-steps, which become larger (more inaccurate) for larger ranges. In detail:
Range 0000-1000m: Steps: 50m (Weapon Officer) 100m (Watch Officer)
Range 1000-2000m: Steps: 100m
Range 2000-4000m: Steps: 200m
Range 4000-9000m: Steps: 500m
Range 9000-12000m: Steps: 1000m
Range > 12000m: Steps: 2000m
The maximum possible error of the range estimation is Step/2. E.g. for ranges between 2000m and 4000m the step size is 200m, so that the estimation error is max. 100m.
Patch V15B must be applied to unpatched sh3.exe (see 1st post for instructions).
All numerical values used in my mods (ranges, range steps, repair time factor) now are put together in a special data section in the .exe and can be individually adjusted using an Hex-Editor. But this is for advanced users only. In the future I'll post the Hex-Positions and Data Format of all relevant numbers, so that individual adjustments are possible. Also all modifications can be switched on/off individually. The switches are also located in the data section.
(This maybe gives potential for a special configuration program that helps non-experienced users to adjust.)
Hope you like it.
h.sie
By the way: Thank you all for helping with suggestions and positive or negative resonance.
Great news H.Sie !! congrats ....!!!!!:yeah::yeah:
oh ...i really like the WO behaviour now !! you are doing a fine job here !!!
and ,also, it is great that you will post the Hex-positions,data formats for individual adjustments ! that means that we can change the range 'faulse' to fit to our tastes ,right ?
Hi h.sie,
the main differences are:
'1) My "friend" here can move at varied depths and even surface.'
Sergbuto's u-boats are either submerged or surfaced.
'2) He can be spawned by radio messages once you sight a convoy.'
Sergbuto's u-boats only appear when scripted in the campaign layers. There is no connection to the player's action.
I guess Iambecomelife uses the 'airplanes' to simulate the sub. If I am right, it would be great because you could create 'airbases' in the atlantic with u-boats as the only 'squadrons'. Then if you send a contact report there is a chance that u-boats are spawned and attack. So, sending a contact report could result in some kind of wolfpack action :yeah: And all you need is to add some airbases to the campaign_lnd layer (and the airbase definition and sub 'airplane').
It seems to be great work from Iambecomelife. I hope he releases something soon. It seems to be a great step towards better wolfpack actions.
Cheers, LGN1
this guy ....Iambecomelife is full of (real good) surprises.....:up:
Regarding Chlorine and other toxic gasses I can only comment on my experiences from my Chemistry and O-Chem lab classes I took as an undergrad. Having breathed said toxic gasses (either through my own experiments and accidents, or turning head first into someone elses) unless you've got a hood or other way to suck the contaminated air out it will persist. While the source can be neutralized to stop more gas from being created you still have to deal with what's made it out into the main compartments.
One suggestion (albeit kind of a cruel one) would be to use the crew as human air scrubbers with their escape gear (since sub-wide air scrubbers didn't exist till many years later) and in-game loose hp over time (for those in the affected compartments) - pretty much would mean that the repair crew are the ones that take the damage. Since compartments could still be sealed, if the aft batteries were damaged by the forward intact, crewmen in bad shape could go to the stern quarters to recooperate and regain hp (would actually make having an officer with a medic qualification beneficial) until they're ready to go back to repair work. Chlorine gas is the worst, since it's short 1 electron from being balanced any chance it gets to bind with something it will - which on a sub was really only one thing - a persons lungs (or the carbon in the respirators if they were wearing one); otherwise the gas will linger around as a snow white looking cloud until something is done about it.
One thing I was going to ask about specifically, though this thread answers it is that the amount of current crew doesn't reduce CO2 production. I rarely have a full complement on my sub, usually at least 3-5 (somtimes more) people less than the max allowed on the sub. Even if the sub never takes any damage, the crew would use up less O2 simply with there being less being consumed. While you can't increase the amount of air contained in the sub, with less people consuming it CO2 will be produced at a slower rate regardless, you should be able to stay submerged longer with a crew of 40 than a crew of 51 on the same kind of boat.
Sailor Steve
09-27-10, 09:33 AM
This whole range-estimation thing is great! :rock: Something I've been wishing for since the game was released.
I'm so afraid of messing everything up that I'm going to wait until you declare the project finished to try installing it, but I'm still here to cheer you on. :sunny:
Hi Sailor, thanks.
just make a backup copy of your sh3.exe. If you don't like the mod, put back the original file. Or better make a copy of your whole SH3 installation and then test it first. By the way: I begin to like this type of modding and I don't know when it will be finished. But I take care that every version I release runs stable.
-------
In the meantime I found out that it is possible to be in Silent-Running Mode (no repairs, no reloading => crew in bed and breating slow) but with engines on high rpm. This is what I wanted and what makes things much easier, since the Silent-Running-Status Flag can be used for affecting CO2 cumulation.
First pre-pre-alpha test version will be very simple: Diving time without Silent-Running unchanged. But it can be doubled when Silent-Running. The factor (2x) can be fine-adjusted later. Initially, no dependence of UBoat type or crew number.
Anyway, regarding UBoat Types: In my opinion, the Types II and XXI are not worth to be treated individually (by individual factors regarding diving time), so values should be mainly adjusted for Types VII and IX.
h.sie
In my opinion, the Types II and XXI are not worth to be treated individually
This may change when Hans will release his mod for Type II... Anyway - thank you one more time for your work, I was learning assembler for small machine programming (it was a horror, an interesting horror) and I'm impressed that you can do all those changes to sh3 in it. I'm back to SH3 now because of your mod :up:
---
I have a small problem - you are talking about some repair time estimations visible on the screen. But I have only e.g. "minor" or "critical" damage text. If I remember correctly, there was an estimation in hours on the right side of this text (?), but I probably removed it in the past from the menu_1024_768.ini, and now I don't remember where it was :oops:
h.sie. is there any chance of making an external .bat file that auto-patches the SH3.exe? Then you would just need to distribute a text file which that autopatch would read to apply the latest changes, and that could be customized in sections to allow for the user adding/removing stuff he wishes.
In my opinion, the autopatch file could be legitimate stuff, as you are not distributing any SH3 material but instead an autopatcher for the legitmate user's game. Something like the already existing "MultiSh3" external tool. :hmmm:
If you could do something like that, I can discuss with Neal the details and confirm if it would be OK to discuss and distribute here such file.
EDIT:
I know that part of the process already involves applying directly a sort of auto-patch, but I mean a full one click install executable -which most users would prefer
Hi h.sie,
great news again! Sounds very promising. I think your idea with leaving the times as they are, but doubling when you rig for silent running sounds good (gives you quite accurate historical values). As you already found out, all silent running does in-game is forbidding repairs and reloads, i.e., heavy work. So, it's a perfect flag for the CO2 consumption :up:
I don't know for sure, but I think there is no time limit how long destroyers hunt you. There is just the limit how long they look for you after loosing contact. However, if you stay loud they will hunt you forever (even after running out of ammo).
For a first version I would leave the battery stuff alone. For my personal taste it opens a can of worms. A dependency on the number of men would be great, but I think, it's also not THAT important. And I think it's just fine to use the number of men at the beginning of your trip.
Cheers, LGN1
PS: Just one last comment about Iambecomelife's AI subs. If it's true what I think you might also have submerging and attacking British subs in the Bay of Biscay :03: :arrgh!::lurk:
without any scripting!
@Hitman:
In the next days, I could provide a Batch Script which automatically does all necessary steps described in the tutorial of the 1st post: It will at first test if checksum of sh3.exe is okay. If so, it will make a backup of sh3.exe and finally apply the patch.
But a comfortable Graphical user interface to individually switch some of my modifications on/off (and to change some of the numerical parameters) will take more time than the modding itself. Maybe I release one at the end when my modding is finished (in 2015 :DL). Additionally: That does not make sense ATM, because data positions and Hex-addresses change from version to version.
But: Why should one switch off these additions??
If one really wants to switch off one of my modifications, this has to be done directly by Hex-Editing some bytes in the exe. It's not hard to do. You just have to search a certain Hex-Address and change its byte value from FF to 00. That's all. I'll publish a description in the next days/weeks when next patch V15C is finished and I also offer to help non-skilled people with that.
@verte:
Nice to hear that you came back to SH3. If the text (critical and so on) appears but not the time estimation, then you probably edited the de_menu.txt or en_menu.txt. What GUI do you use? ACM-h.sie's Edition?
If so, just remove the LLRT+SRM or LRT+SRM addon. they are obsolete now. After that, the repair time estimations in hours (2:00 and so on) should appear.
h.sie
If the text (critical and so on) appears but not the time estimation, then you probably edited the de_menu.txt or en_menu.txt. What GUI do you use? ACM-h.sie's Edition?
If so, just remove the LLRT+SRM or LRT+SRM addon. they are obsolete now. After that, the repair time estimations in hours (2:00 and so on) should appear.
I was actually [G67 I610] section in menu_1024_768.ini - I've moved the estimation text off-screen. Now its ok :)
I like the batch file Idea.
Far less clutter as single patched .exe's and easier to update!
Hope it works out!
Would it be possible to increase the time needed for WO to identify a ship?
Hi verte,
as I already wrote here:
http://www.subsim.com/radioroom/showpost.php?p=1500227&postcount=178
it's either very hard or impossible for me in assembler without SDK. Although it seems so simple. I have an vague idea and maybe I'll try that out, but since it goes very deep into the event-handling system (which I still haven't understood), it will surely be a potential cause of instablilities. I don't like that. It's on the TODO list, but not on hightest priority.
h.sie
SquareSteelBar
09-28-10, 09:56 AM
The sub finally surfaces but the WO is still sleepin'... :yawn:
;)
It took two weeks of my life to move this lazy a**hole to the bridge - without success. Differing from my other fixes, this cannot simply be done by changing some parameters or CPU registers. also graphical changes have to be made, and without SDK I have only a small chance.
The best success so far: After he moved up, all officers looked the same (same icon) and 3 seconds later the game crashed. So I put this issue on the TODO list with low priority, since it's more an eyecandy than a gameplay problem.
The sub finally surfaces but the WO is still sleepin'... :yawn:
;)
SquareSteelBar
09-28-10, 10:37 AM
Don't worry about that.
I didn't want to bother you...
...It took two weeks of my life to move this lazy a**hole to the bridge - without success...Hm... :hmmm:
For me it takes only one second by hitting F7 and left-clicking on WO and moving him to the bridge... ..so what's your prob? :har:
--------------------------------------------------------
But seriously - there remains one question:
how is this automatism handled for the other four watch guys...?
SquareSteelbar: "But seriously - there remains one question:
how is this automatism handled for the other four watch guys...?"
I of course looked into the routine, that moves the watchmen up, but it is very complex, hard to understand, tons of subroutines. It would cost weeks to analyse that. Maybe later with more experience.
Stormfly
09-28-10, 12:35 PM
SquareSteelbar: "But seriously - there remains one question:
how is this automatism handled for the other four watch guys...?"
I of course looked into the routine, that moves the watchmen up, but it is very complex, hard to understand, tons of subroutines. It would cost weeks to analyse that. Maybe later with more experience.
...could it be, if you manage to bring him up automaticaly, a much to early and unrealistic (in that first moments on the bridge), "ship spotted" or "aircraft spotted" message and sound could come up ?
...if so, i would prefer to move him better manualy :hmmm:
@Stormfly: Correct programming provided, he would behave exactly the same way as if one manually moves him up.
@LGN1: Wolfpacks would make SH3 a nearly perfect sim. Any information about the current state of IABL's work?
h.sie
That's the one thing that alway baffled me; the fact that UBI Ro did make the other watch guys change Places automatically, but not the WO.
There must have be an limitation beforehand. Maybe its because the other Guys are dummy's and the WO is interactive!
(on a Code-related level they surely differ!)
Just shooting blind hre!
@Tessa: Please excuse my late response. I had to read your post multiple times and it took some time for me to understand. It is surely a good idea to affect the crew health (hitpoints) in order to simulate chloride from damaged batteries, but at the moment and without SDK I have no hunch how the crew management is programmed and so I fear to touch it. I have to restrict on easy-to-fix solutions. The only solution I can offer at the moment is to drastically enlarge the amount of Co2 that is produced per time in order to simulate cloride coming from damaged battery cells so that the UBoat has to surface immediately. But even for that simple-looking idea I have to program someting like a states-machine that controls the different possible states that have to be handled correctly in order to control CO2 cumulation. And since I'm not able to STORE the current state of that statesmachine when saving the game, after the reload the current state will be lost. So I fear that LGN1 is right by saying this would open a can of worms. But let me first program a simple solution: CO2 cumulation depending on Silent-Running. Even this is a great step forward. If that works stable, we can think about more. :)
@Myxale: I have the same suspicion, that there were concrete (programming-related) reasons for the devs not to move the 1WO to the bridge. But I stopped to think about that, because other things are more important.
h.sie
Another point about the chlorine gas is that, AFAIK, it was only produced when water came into contact with the batteries. So, not battery damage, but water inleakage should trigger it (maybe together with battery damage). Since leaks happen quite often in-game, the question is how much water has to enter,... can of worms.
Concerning wolfpacks: I have no news from Iambecomelife. I just saw his pictures and his comment. I think he uses somehow an 'aircraft' object because:
-aircrafts can change their altitude/depth
-you can call them via contact reports
But I have no idea how ships would attack such an object (with depthcharges?), how they would detect the 'airsub', how the 'airsub' AI would choose the altitude/depth,... tons of things I would love to know.
Anyway, even if the 'airsubs' would just be spawned and more or less quickly destroyed it would be a step forward because it would be similar to the present AI subs, but this time the subs would be triggered by the player and getting them into the campaign layers would be much easier. I hope Iambecomelife will tell us more in the future.
Cheers, LGN1
BETA TESTING?
Nice one. Under normal conditions my VII can stay submerged for 36h. But when in silent running, I can now stay under water for 72 hours.
:-)
Before I try to add more functionality, I need help from some beta-testers with computer-skills. interested people please contact me via PM. Thank you for helping.
h.sie
Just uploaded a Patch-Kit for V15B. It's a Batch Skript which automatically does all steps described in the tutorial of the first post of this thread.
Instructions:
1) Create empty Working Directory somewhere on your Disk (you need write permission.)
2) Copy your original (unpatched, uncracked, unhacked) sh3.exe into that Working Directory.
3) Download SH3_V15B_Patch-Kit.7z archive and extract all contained files into the Working Directory.
4) Start Patch_SH3.bat. If your sh3.exe has correct checksum, it will be patched. Skript makes backup of your original sh3.exe. It's called sh3.old.
5) Copy patched sh3.exe into your SH3-Installation.
That's it.
h.sie
By the way: This patch adds code to sh3.exe. Some Antivirus-Programs maybe don't like this.
@LGN1: It could be programmed e.g. in pseudo-code
IF ((BATTERY_DAMAGE > 0.5) AND (FLOODING_LEVEL > 0.5))
THEN: CO2_CUMULATION = 10*CO2_CUMULATION
but to be honest, I think that it is too provisional and I better leave that out.
Regarding crew number dependency: AFAIK the UBoats had Oxygen supply. What if they took a certain amount of Oxygen supply for each crew member (e.g. 30 bottles for 30 men ; or 35 bottles for 35 men.) In this case it would be wrong to make diving times depend on the total crew number. Is there any historical information available??
h.sie
Hi h.sie,
just download the pdf
http://www.filefront.com/16383685/M.Dv-381-U-Bootskunde-f.U-Boot-Bauart-VIIC-1940.pdf/
and take a look at page 84. The air refreshing system is described there. It mentions some additional oxygen devices to adjust the oxygen according to the crew size (p. 85). But to me this part is not fully clear. I can't imagine that they installed more supplies when there were a few guys more on board. Anyway, I think a crew independent mod is already good enough and another version is probably not worth the efforts.
Just to make sure, the new version also takes into account multiple switches between silent running on and off, right? So whenever it's on, CO2 accumulates with rate a and when it's off with rate B?
Cheers, LGN1
Will you also offer the version V15C as a binary difference on your website?
Stormfly
09-30-10, 02:28 PM
@Stormfly: Correct programming provided, he would behave exactly the same way as if one manually moves him up.
h.sie
oh, thats not what i ment... i thought moving him manualy, give a nature delay reporting sightings after surfacing, of course maybe a programmed random delay would be perfect :hmmm:
Hi LGN1,
at the current state there is only one switch: Silent-Running (SR) ON/OFF. This affects the CO2 cumulation rate with a factor of 2.0 (can be fine-adjusted later). So every time SR is OFF, the stock SH3 cumulation rate is used, which leads to diving times of approx 36h (Type VII). Every time when SR is ON, the cumulation rate is divided by 2.0 so that diving times of max. 72 h are possible (provided that SR = ON all the time).
For the next version I'll add a possibility to fully bypass (disable) this mod for people who don't like the changes. And I'll also add 4 individual correction factors (one for every Uboat type) to allow for max. diving-time adjustments according to historical data. If I remember correctly, the XXI had much longer diving time than currently implemented in SH3.
I don't think that I also want to consider the crew number, because beta testing of the first version took so much time (without any help from others). It mainly depends on how difficult it is to determine the crew number. (This problem seems to be sooo simple from the user's point of view, but since addresses of the internal variables are not fix but change often, I have to work with pointers of high rank in order to access these variables, and it's often not easy to re-construct these pointers. I think everyone who worked with pointers in Asm or C hates them).
V15C will be released as "binary difference" as usual plus Batch skript for easy patching. But before publishing, I'll look into the compressed air problem mentioned by Rubini.
On my mediafire page (folder V15C beta testing) one can download a SH3_patcher, which applies V15C beta temporarily into RAM, everytime one launches SH3 with this patcher/launcher. But don't forget to press Shift+Ctrl+P after SH3 is fully loaded.
h.sie
SquareSteelBar
10-01-10, 02:05 AM
...the XXI had much longer diving time than currently implemented in SH3...Up to 400 hours:
http://de.wikipedia.org/wiki/U-Boot-Klasse_XXI#Unterwasserbetrieb
vBulletin® v3.8.11, Copyright ©2000-2025, vBulletin Solutions Inc.