SUBSIM Radio Room Forums

SUBSIM Radio Room Forums (https://www.subsim.com/radioroom/index.php)
-   SHIII Mods Workshop (https://www.subsim.com/radioroom/forumdisplay.php?f=195)
-   -   "SH3Gen" Campaign enhancement (version 0.6.0) (https://www.subsim.com/radioroom/showthread.php?t=88438)

JScones 01-20-06 01:41 AM

Quote:

Originally Posted by GlobalExplorer
Quote:

Originally Posted by JScones
Are you using the userAgent string? Try this method...

Thanks for the info. I will check that. Right now I am using the dotNET check sample code that came with NSIS, which has so far worked very well.

As you seem to be a qualified person to ask, can you give me some tips how I can find the Silent Hunter III path in registry? I want to remove the necessity to specify the path manually, but I am not very good at using the registry.

Yep, I'll dig out some code and PM it to you, although it sounds like you may have it licked already. I'll also dig out some info that helps allow you to get your app to work with either .NET Framework 1.1 or 2.0 (Side-by-Side execution). This may take me a few days to get around to, though. ;)

Just be mindful that some people have multiple SH3 installations...you may like to add switch support so people can choose the installation that they want to use.

Ragtag 01-20-06 07:41 AM

Wow, this is a damn nice mod :D
Works excellent and i just love the diary. Keep it up :)

GlobalExplorer 01-20-06 11:16 AM

Version 0.2.1 is out. Among some minor changes, I have now implemented a config file which allows you to adjust the global parameters that Sh3Gen uses to generate the patrol layer. I had planned to do this at a much later stage, but I am already very happy with the way the output scales with changes in the global parameters. I encourage everyone to play around somewhat with the values and tell me if he found a well balanced setting, because this will save me some limited testing time. If I like your files, they might be included in the next versions or hosted at my site. We'll see.

I am also satisfied that I have also made some progress in my quest for the smallest possible map file that contains the most valuable information (see my reply to Cdre Gibs's post) - filesize is now ~ 10kb, while it used to be >20 at the beginning.

@sober: This is expected, and theres nothing I can do about it. Maybe you could remove the erase all button from your map tools, but it might be easier if you simply don't use it :)

@Cdre Gibs: I'm glad I could finally get you a version that works :) I mean how many times did we try? But not in vain, because through your input I could fix that #null# patrol issue, which I just forgot.

@Cdre Gibs: I have already considered myself to suppress all German ports, because I didn't like the amount of info either. Therefore I have included a change in 0.2.1 which does duppress all shipping in german ports except minefields and subnets. Note that this could be achieved with a single change in Parameter.ini - I set:
Coeff_LocationUpdateModifier_German=0.0 (used to be 0.7 I think).
So if you want to roll back to the situation before 0.2.1, just change the line to:
Coeff_LocationUpdateModifier_German=0.7
or something you like more. Got it?

@JScones: Thanks for your help. I am sure this information will be very useful.

@Ragtag: Great that you like it. If you want to make a suggestion, here's the place. As my creativity has already been used up atm, I am now waiting for new ideas.

GlobalExplorer 01-20-06 11:20 AM

For the record, I want to publish the details of the parameter.ini, because I hope some people will start working with it:

Code:

[LocationUpdate]
#These values control the intelligencelevel for locations#
Coeff_LocationUpdateModifier_German=0.0               
Coeff_LocationUpdateModifier_Axis=0.6                       
Coeff_LocationUpdateModifier_NeutralAxis=1.0
Coeff_LocationUpdateModifier_Neutral=1.0               
Coeff_LocationUpdateModifier_NeutralAllies=0.5
Coeff_LocationUpdateModifier_Allies=0.3       
Inc_LocationUpdateBaseValue=0.5
Delta_LocationUpdateVariation=0.5       
Thd_LocationUpdateMinGroups=1       

[GroupVisible]
#These values control the chance for groups to be visible#
Coeff_GroupVisibleModifier_German=0.7
Coeff_GroupVisibleModifier_Axis=0.6                       
Coeff_GroupVisibleModifier_NeutralAxis=1.0
Coeff_GroupVisibleModifier_Neutral=1.0               
Coeff_GroupVisibleModifier_NeutralAllies=1.0
Coeff_GroupVisibleModifier_Allies=0.075       
Coeff_GroupVisibleModifier_AlliedWarship=6.0
Coeff_GroupVisibleModifier_AlliedTaskgroup=0.5
Coeff_GroupVisibleModifier_AlliedValuable=3.0               
Coeff_GroupVisibleModifier_AlliedConvoy=1.5               

[TheaterAssessment]
#These values control the assessment of the general situation#
Thd_SituationUpdate_Theater=0.4
Thd_SituationUpdate_Single=10                               
Thd_SituationUpdate_Warships=5
Thd_SituationUpdate_Neutrals=10
Thd_SituationUpdate_Hunters=20                       
Thd_SituationUpdate_Convoys=3                               
       
[PositionalVariation]               
#These values control the positional variation of visible units#
Delta_PositionalVariation_Theater=2500
Delta_PositionalVariation_Location=0                       

[BaseVisible]
#These values control the chance for bases to be visible#
Coeff_BaseVisibleModifier_AlliedAirbase=0.6

[Aircoverage]
#These values control the way aircoverage is used#
Inc_AircraftRangeBaseValue=500                       
Delta_AircraftRangeVariation=250


Ragtag 01-20-06 02:21 PM

I don't know how the original campaign creator works but is it possible to have SH3gen to detect when it creates a new mission and then have SH3gen to generate and add the information automatically before i start the mission?
Just so we wont have to alt-tab, generate and then reload.

I have no idea how this works so i'm just asking :P
Again, great work :up:

Herr Karl 01-23-06 01:48 AM

Quote:

Originally Posted by Ragtag
I don't know how the original campaign creator works but is it possible to have SH3gen to detect when it creates a new mission and then have SH3gen to generate and add the information automatically before i start the mission?
Just so we wont have to alt-tab, generate and then reload.

I have no idea how this works so i'm just asking :P
Again, great work :up:

Sounds like a good idea to me...thxz GE

GlobalExplorer 01-23-06 11:37 AM

Today I have uploaded version 0.2.2 , which fixes a serious oversight in the war diary. With the previous versions, if the entries created by Sh3Gen exceeded a certain number of lines, Sh3 would hang permanently whenever you wanted to switch to the war diary. It seems this is because Sh3 cannot arrange single entries over multiple pages.

For this alone, I have complete rewritten the part that does the war diary output. It can now spawn long entries over several pages, which should result in a theoretically infinite number of possible informations. You won't see much difference, but this will come handy in case I should implement additional features in the war diary.

@Ragtag & Herr Karl: I have anticipated your question. Of course it sounds idiotic that you have to go out of port, create a save game, run an external app and then reload. But before I started implementing Sh3Gen I had to decide if I was going to implement it this way or not at all.

The problem is, simply put, if you want to add this amount of new features to a game like Sh3 you will need a hole through which you will be able to smuggle it in. I have found one in the form of the .map and .clg files, though it has the aforementioned inconveniences and of course it's not the best one could think of.

But it works very well.

Moreover, I think it is realistic, as real U-Boat commanders where only allowed to open their orders when they were already at sea.

If someone has found a better way that works, I'd be glad to implement it into Sh3Gen.

GlobalExplorer 01-25-06 11:54 AM

Version 0.3.0 has been uploaded to my site. For this version, I have improved the spatial engine by adding support for quadrants and cartographic aliasnames. Most importantly this means that you are now going to see occasional info on single merchant traffic. Moreover, info about targets includes the quadrant or a geographic location, not just the theater of operation as in previous versions.

I think I can better illustrate the changes with some screenshots:

http://www.global-explorer.de/v030_summary1m.gif

http://www.global-explorer.de/v030_summary2m.gif

http://www.global-explorer.de/v030_summary3m.gif

ref 01-25-06 09:25 PM

Last mod is very cool. :yep:
The only thing I don't like is that the program overwrites logs entries, I love to generate a report in the middle of the patrol, so the data is more usefull, perhaps a solution is to scan the log for the first entry of a sunk ship :

"EntryText=Ship sunk!...."

and renumber the following entries, something similar with the map file, preload the file, insert the lines you need at the begining, so we don't lose our previous markings and waypoints.

Perhaps you have already tried and is not possible, but asking is free... :P

GlobalExplorer 01-26-06 02:23 PM

@ref: I hear ya. Probably I am going to work on that. The problem with writing a parser is that I don't know the proper strings in all the different localisations.

In the German version, for instance, if theres a marker in the map, its name is always "MarkierungXy". Now what would that be in English or French?

Having said that, I think I can solve it in some way. I am aware that the clg output must be more intelligent.

Rubini 01-26-06 03:13 PM

GlobalExplorer:

I just arrive from a month's vacation. What a great mod! :o
I don't install it yet but the idea is brilliant! I have a question: Can you add a special info about the milk cow units?. I think that will be an useful feature for guys using Sansal/HT mod. If you need some help here just ask me!

Greetings,

Rubini.

GlobalExplorer 01-26-06 04:33 PM

I always like if people post their ideas, but especially if it is you Rubini! Milch cows were only in the back of my mind, but when i think about it, they are a cool addition to the immersion factor. Right now the way Sh3Gen handles them is not convincing .. You will see a marker next to the navalbase's position, but it doesn't have the right name. For instance, I find it odd if 'Corrientes' is annotated as 'Carl Zeiss' or something else from my internal ship database. So I must work on that.

I think possibly the logic could be (pseudocode)

if((german_navalbase_found)&&(navalbase_outside_ge rman_port))
{
navalbase_is_supply_boat=true;
}


I could then give the unit the name that you gave it in the mission editor (otherwise I use one from my database).

Moreover, I could trigger additional logic that will show a new message in the war diary:

"During <timeframe> our U-Boat Supplier 'Corrientes' will be in Vigo"

One question: Have you thougt about providing metadata for you campaign files that other applications might read? This would open up fantastic new possibilities.

Rubini 01-26-06 05:20 PM

GlobalExplorer,

Yours two possibles solutions are very good! The name can be a generic "Ressuply unit" if would be too hard to find the "real" name.

BTW, what is "metadata" ??? :hmm:

Rubini.

GlobalExplorer 01-27-06 06:13 AM

Quote:

Originally Posted by Rubini
GlobalExplorer,

Yours two possibles solutions are very good! The name can be a generic "Ressuply unit" if would be too hard to find the "real" name.

BTW, what is "metadata" ??? :hmm:

Rubini.


metadata=buzzword :)

Many people say it's the future of digital information, or the internet.

It basically means to provide data that describes data. Metadata should be provided
if your data is going to be read and interpreted by other applications.

Example data that I took from your Campaign_SCR:

[Unit 2584]
Name=Pinguin
Class=GeAuxCruiser
..


If an application can only read this data, a lot of ambiguity remains. In this case, for instance, the Name 'Pinguin' is a correct shipname. But in other cases it is a generic string like '39_RussiaTraffic_001'. The designation of the unit is also very vague, in that I know that it is a German AuxCruiser, but not what it is going to do. It could be a docked ship, a supplier or even a Blockade Breaker on a special mission.

Now imagine, you as the campaign designer, would have provided another file, that describes some, maybe just the 10-20 most interesting units. It would then be possible to 'know', what the unit is going to do, and to trigger special logic.

Examples (mind that this would never be in Campaign_SCR, but in another file):

[Unit 2584]
Name=Pinguin
Type=CommerceRaider


I could trigger a special mission that goes like:

Our cruiser 'Pinguin' is on a commerce raiding mission in South Atlantic

or

[Unit xy]
Name=Courageous
Type=UnableToMove


Special mission could be:

The carrier 'Courageous' has been damaged and lies stopped at <position>. Go there at once and sink it

or

[Unit xy]
Name=
Type=SpyBoat


Resulting output could be:

Our agents in Ireland prepare an exchange of documents. They will await you in <location> between <timestart> and <timeend>

Rubini 01-27-06 07:20 AM

Ok, I understand. :up:

I can help you with a lot of info on this stuff.
I know where and when in the SCR some special units goes on patrol, all the info about milk cows (their positions, dates, names, etc) , Uflaks disposable in the bay of Biscay, some german convoys, Bismarck and Tirpitz operations etc...

I will try to put all these info on a text file and point them to you...or even make a special SCR with these infos on it with a special codification...What is better? :hmm:

Rubini.


All times are GMT -5. The time now is 02:28 AM.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright © 1995- 2025 Subsim®
"Subsim" is a registered trademark, all rights reserved.