View Single Post
Old 10-29-12, 05:23 PM   #3
Paco
Captain
 
Join Date: May 2005
Location: Kassel, Germany
Posts: 542
Downloads: 345
Uploads: 0
Default Output-options / Concatenating phrases

I have defined two different Output-options:

1) You get the informations from Your Crew regarding course-, speed-corrections and depths-changes. Speed and Depthoutputs are optional.

In the Messagebox, that looks like:

Quote:
EN:
Going to Decks awash. Herr Kaleun. New heading is S. Herr Kaleun. Reaching next Waypoint in 188 nm. That takes 27 hours. Herr Kaleun.
.
.
.
Heading 1 Dec to starboard. Herr Kaleun.

DE:
Gehen auf Vorfluttiefe. Herr Kaleun. Gehen auf Kurs S. Herr Kaleun. Nächster Kurswechsel in 188 sm. Marschzeit dahin 27 Stunden. Herr Kaleun.
.
.
.
Drehen 1 Dez nach Steuerbord. Herr Kaleun.
2.) A dialogstyle. The captain orders, and the crew confirms. For depth-changes, there is also a prepare-command given:

Quote:
EN:
Prepare for Diving. XO. Ready for Diving. Herr Kaleun. Snorkeldepth. XO. Going to Snorkeldepth. Herr Kaleun. New Speed 4 knots. XO. Going to 4 knots. Herr Kaleun. We need to change the heading. Navigator. New heading is SE. Herr Kaleun. Reaching next Waypoint in 186 nm. That takes 47 hours. Herr Kaleun.
.
.
.
Please check the heading. Navigator. Heading 1 Dec to starboard. Herr Kaleun.

DE:
Klar für Unterwasserfahrt. LI. Boot klar für Unterwasserfahrt. Herr Kaleun. Schnorcheltiefe. LI. Gehen auf Schnorcheltiefe. Herr Kaleun. Neue Fahrt 4 Knoten. LI. Gehen auf 4 Knoten. Herr Kaleun. Zeit den Kurs zu wechseln. ObStrMn. Gehen auf Kurs SO. Herr Kaleun. Nächster Kurswechsel in 186 sm. Marschzeit dahin 47 Stunden. Herr Kaleun.
.
.
.
Kontrollieren sie den Kurs. ObStrMn. Drehen 1 Dez nach Steuerbord. Herr Kaleun.
Based on my first tests, I have not defined whole phrases, but I concatenating them from different pieces of words, which are defined in a "text-library".

From the example above, I hope You can have a look at this library and give me some hints for the english-, french- and italian version.

Here comes the part from the script:

Code:
if LANGUAGE == 'DE':
        SUB_HEADING_COMPASS_STYLE = ('NNO','NO','ONO','OSO','SO','SSO','SSW','SW','WSW','WNW','NW','NNW','N','O','S','W')
        
        TEXT = { 'SHA_START'              : 'Gehen auf Marschweg', 
                 'SHA_FINAL'              : 'Sind am Ziel',
                 'SHA_INBOUND'            : 'Einmarsch',
                 'SHA_OUTBOUND'           : 'Ausmarsch',
                 'BLANK'                  : ' ',
                 'BIGREGBLANK'            : ' ',                                 # Set to NULL for BIGREG-Dez-Style
                 'KOMMATA'                : '.',
                 'POINT'                  : '.',
                 'PORT'                   : 'Backbord',
                 'STARBOARD'              : 'Steuerbord',
                 'DEGREE'                 : 'Grad',
                 'NEW_HEADING_IS'         : 'Gehen auf Kurs',
                 'HEADING_IS_FINE'        : 'Bleiben auf Kurs',
                 'WE_ARE_THERE'           : 'Ziel erreicht',
                 'HEADING'                : 'Drehen',
                 'DEC_TO'                 : 'Dez nach',
                 'DEGREE_TO'              : 'Grad nach',
                 'REACHING_NEXT_WP'       : 'Nächster Kurswechsel in',
                 'SM'                     : 'sm',
                 'KN'                     : 'Knoten',
                 'METRES'                 : 'Meter',
                 'THAT_TAKES'             : 'Marschzeit dahin',
                 'HOURS'                  : 'Stunden',
                 'MINUTES'                : 'Minuten',
                 'LEFT_BRACKET'           : '(',
                 'RIGHT_BRACKET'          : ')',
                 'DOUBLEPOINT'            : ':',
                 'SUBROUTE'               : 'Marschweg',
                 'DISTANCE'               : 'Strecke',
                 'TRAVELTIME'             : 'Marschdauer',
                 'CHECK_HEADING'          : 'Kontrollieren sie den Kurs',
                 'NEW_HEADING'            : 'Zeit den Kurs zu wechseln',
                 'ALL_STOP'               : 'Maschinen stop',
                 'STOPPING'               : 'Maschinen stop',
                 'NEW_SPEED'              : 'Neue Fahrt',
                 'NEW_SPEED_IS'           : 'Gehen auf',
                 'PREPARE'                : 'Klar',
                 'READY'                  : 'Boot klar',
                 'GO_TO'                  : 'Neue Tiefe',
                 'GOING_TO'               : 'Gehen auf',
                 'FOR'                    : 'für',
                 'TO_SURFACE'             : 'Überwasserfahrt',
                 'TO_DIVE'                : 'Unterwasserfahrt',
                 'TO_TESTDIVE'            : 'Testdive',
                 'TO_CHANGE_DEPTH'        : 'Tiefenänderung',
                 'TO_SNORKEL_DEPTH'       : 'Schnorcheltiefe',
                 'TO_PERISCOPE_DEPTH'     : 'Sehrohrtiefe',
                 'TO_DECKSAWASH_DEPTH'    : 'Vorfluttiefe',
                 'SURFACE'                : 'Auftauchen',
                 'CHANGE_DEPTH'           : 'Neue Tiefe ist',
                 'SNORKEL_DEPTH'          : 'Schnorcheltiefe',
                 'PERISCOPE_DEPTH'        : 'Sehrohrtiefe',
                 'DECKSAWASH_DEPTH'       : 'Vorfluttiefe',  
                 'SURFACEING'             : 'Tauchen auf',
                 'XO'                     : 'LI',
                 'NAVIGATOR'              : 'ObStrMn',
                 'HERR_KALEUN'            : 'Herr Kaleun'
        }               

elif LANGUAGE == "FR":
        SUB_HEADING_COMPASS_STYLE = ('NNE','NE','ENE','ESE','SE','SSE','SSO','SO','WSO ','WNO','NO','NNO','N','E','S','O')
        
        TEXT = { 'SHA_START'              : 'Joining Subroute', 
                 'SHA_FINAL'              : 'We have been arrived.',
                 'SHA_INBOUND'            : 'Inbound',
                 'SHA_OUTBOUND'           : 'Outbound',
                 'BLANK'                  : ' ',
                 'BIGREGBLANK'            : '',                                 # Set to NULL for BIGREG-Dez-Style
                 'KOMMATA'                : '.',
                 'POINT'                  : '.',
                 'PORT'                   : 'Babord',
                 'STARBOARD'              : 'Tribord',
                 'DEGREE'                 : 'Degré',
                 'NEW_HEADING_IS'         : 'Cap au',
                 'HEADING_IS_FINE'        : 'Maintenez le cap',
                 'WE_ARE_THERE'           : 'Position atteinte',
                 'HEADING'                : 'La barre',
                 'DEC_TO'                 : '0 a',
                 'DEGREE_TO'              : 'Gardez le cap',
                 'REACHING_NEXT_WP'       : 'Reaching next Waypoint in',
                 'SM'                     : 'nm',
                 'KN'                     : 'knots',
                 'METRES'                 : 'metres',
                 'THAT_TAKES'             : 'That tooks',
                 'HOURS'                  : 'hours',
                 'MINUTES'                : 'minutes',
                 'LEFT_BRACKET'           : '(',
                 'RIGHT_BRACKET'          : ')',
                 'DOUBLEPOINT'            : ':',
                 'SUBROUTE'               : 'Subroute',
                 'DISTANCE'               : 'Distance',
                 'TRAVELTIME'             : 'Traveltime',
                 'CHECK_HEADING'          : 'Please check the heading',
                 'NEW_HEADING'            : 'We need to change the heading',
                 'ALL_STOP'               : 'All stop',
                 'STOPPING'               : 'Stopping',
                 'NEW_SPEED'              : 'New Speed',
                 'NEW_SPEED_IS'           : 'Going to',
                 'PREPARE'                : 'Prepare',
                 'READY'                  : 'Ready',
                 'GO_TO'                  : 'Go to',
                 'GOING_TO'               : 'Going to',
                 'FOR'                    : 'for',
                 'TO_SURFACE'             : 'Surfacing',
                 'TO_DIVE'                : 'Diving',
                 'TO_TESTDIVE'            : 'Testdive',
                 'TO_CHANGE_DEPTH'        : 'Depthchanging',
                 'TO_SNORKEL_DEPTH'       : 'Snorkeldepth',
                 'TO_PERISCOPE_DEPTH'     : 'Persicopedepth',
                 'TO_DECKSAWASH_DEPTH'    : 'Decks awash',
                 'SURFACE'                : 'Surfaceing',
                 'CHANGE_DEPTH'           : 'New depth is',
                 'SNORKEL_DEPTH'          : 'Snorkeldepth',
                 'PERISCOPE_DEPTH'        : 'Persicopedepth',
                 'DECKSAWASH_DEPTH'       : 'Decks awash',  
                 'SURFACEING'             : 'Surfacing',                 
                 'XO'                     : 'XO',
                 'NAVIGATOR'              : 'Navigator',
                 'HERR_KALEUN'            : 'commandant'
        }               

elif LANGUAGE == "IT":
        SUB_HEADING_COMPASS_STYLE = ('NNE','NE','ENE','ESE','SE','SSE','SSO','SO','OSO','ONO','NO','NNO','N','E','S','O')
        
        TEXT = { 'SHA_START'              : 'Joining Subroute', 
                 'SHA_FINAL'              : 'We have been arrived.',
                 'SHA_INBOUND'            : 'Inbound',
                 'SHA_OUTBOUND'           : 'Outbound',
                 'BLANK'                  : ' ',
                 'BIGREGBLANK'            : ' ',                                # Set to NULL for BIGREG-Dez-Style
                 'KOMMATA'                : '.',
                 'POINT'                  : '.',
                 'PORT'                   : 'sinistra',
                 'STARBOARD'              : 'dritta',
                 'DEGREE'                 : 'gradi',
                 'NEW_HEADING_IS'         : 'Nuova rotta:',
                 'HEADING_IS_FINE'        : 'Rimaniamo in rotta',
                 'WE_ARE_THERE'           : 'We are there',
                 'HEADING'                : 'Heading',
                 'DEC_TO'                 : 'decine a',
                 'DEGREE_TO'              : 'gradi a',
                 'REACHING_NEXT_WP'       : 'Reaching next Waypoint in',
                 'SM'                     : 'nm',
                 'KN'                     : 'knots',
                 'METRES'                 : 'metres',                 
                 'THAT_TAKES'             : 'That tooks',
                 'HOURS'                  : 'hours',
                 'MINUTES'                : 'minutes',
                 'LEFT_BRACKET'           : '(',
                 'RIGHT_BRACKET'          : ')',
                 'DOUBLEPOINT'            : ':',
                 'SUBROUTE'               : 'Subroute',
                 'DISTANCE'               : 'Distance',
                 'TRAVELTIME'             : 'Traveltime',
                 'CHECK_HEADING'          : 'Please check the heading',
                 'NEW_HEADING'            : 'We need to change the heading',
                 'ALL_STOP'               : 'All stop',
                 'STOPPING'               : 'Stopping',
                 'NEW_SPEED'              : 'New Speed',
                 'NEW_SPEED_IS'           : 'Going to',
                 'PREPARE'                : 'Prepare',
                 'READY'                  : 'Ready',
                 'GO_TO'                  : 'Go to',
                 'GOING_TO'               : 'Going to',
                 'FOR'                    : 'for',
                 'TO_SURFACE'             : 'Surfacing',
                 'TO_DIVE'                : 'Diving',
                 'TO_TESTDIVE'            : 'Testdive',
                 'TO_CHANGE_DEPTH'        : 'Depthchanging',
                 'TO_SNORKEL_DEPTH'       : 'Snorkeldepth',
                 'TO_PERISCOPE_DEPTH'     : 'Persicopedepth',
                 'TO_DECKSAWASH_DEPTH'    : 'Decks awash',
                 'SURFACE'                : 'Surfaceing',
                 'CHANGE_DEPTH'           : 'New depth is',
                 'SNORKEL_DEPTH'          : 'Snorkeldepth',
                 'PERISCOPE_DEPTH'        : 'Persicopedepth',
                 'DECKSAWASH_DEPTH'       : 'Decks awash',     
                 'SURFACEING'             : 'Surfacing',         
                 'XO'                     : 'XO',                 
                 'NAVIGATOR'              : 'Navigator',
                 'HERR_KALEUN'            : 'Signore'
        }               

else:
        SUB_HEADING_COMPASS_STYLE = ('NNE','NE','ENE','ESE','SE','SSE','SSW','SW','WSW','WNW','NW','NNW','N','E','S','W')

        TEXT = { 'SHA_START'              : 'Joining Subroute', 
                 'SHA_FINAL'              : 'We have been arrived.',
                 'SHA_INBOUND'            : 'Inbound',
                 'SHA_OUTBOUND'           : 'Outbound',
                 'BLANK'                  : ' ',
                 'BIGREGBLANK'            : ' ',                                # Set to NULL for BIGREG-Dez-Style
                 'KOMMATA'                : '.',
                 'POINT'                  : '.',
                 'PORT'                   : 'port',
                 'STARBOARD'              : 'starboard',
                 'DEGREE'                 : 'degree',
                 'NEW_HEADING_IS'         : 'New heading is',
                 'HEADING_IS_FINE'        : 'Heading is fine',
                 'WE_ARE_THERE'           : 'We are there',
                 'HEADING'                : 'Heading',
                 'DEC_TO'                 : 'Dec to',
                 'DEGREE_TO'              : 'degree to',
                 'REACHING_NEXT_WP'       : 'Reaching next Waypoint in',
                 'SM'                     : 'nm',
                 'KN'                     : 'knots',
                 'METRES'                 : 'metres',
                 'THAT_TAKES'             : 'That takes',
                 'HOURS'                  : 'hours',
                 'MINUTES'                : 'minutes',
                 'LEFT_BRACKET'           : '(',
                 'RIGHT_BRACKET'          : ')',
                 'DOUBLEPOINT'            : ':',
                 'SUBROUTE'               : 'Subroute',
                 'DISTANCE'               : 'Distance',
                 'TRAVELTIME'             : 'Traveltime',
                 'CHECK_HEADING'          : 'Please check the heading',
                 'NEW_HEADING'            : 'We need to change the heading',
                 'ALL_STOP'               : 'All stop',
                 'STOPPING'               : 'Stopping',
                 'NEW_SPEED'              : 'New Speed',
                 'NEW_SPEED_IS'           : 'Going to',
                 'PREPARE'                : 'Prepare',
                 'READY'                  : 'Ready',
                 'GO_TO'                  : 'Go to',
                 'GOING_TO'               : 'Going to',
                 'FOR'                    : 'for',
                 'TO_SURFACE'             : 'Surfacing',
                 'TO_DIVE'                : 'Diving',
                 'TO_TESTDIVE'            : 'Testdive',
                 'TO_CHANGE_DEPTH'        : 'Depthchanging',
                 'TO_SNORKEL_DEPTH'       : 'Snorkeldepth',
                 'TO_PERISCOPE_DEPTH'     : 'Persicopedepth',
                 'TO_DECKSAWASH_DEPTH'    : 'Decks awash',
                 'SURFACE'                : 'Surfaceing',
                 'CHANGE_DEPTH'           : 'New depth is',
                 'SNORKEL_DEPTH'          : 'Snorkeldepth',
                 'PERISCOPE_DEPTH'        : 'Persicopedepth',
                 'DECKSAWASH_DEPTH'       : 'Decks awash',  
                 'SURFACEING'             : 'Surfacing',                 
                 'XO'                     : 'XO',
                 'NAVIGATOR'              : 'Navigator',
                 'HERR_KALEUN'            : 'Herr Kaleun'
        }
The first three Variables on top are for the correspondending SHA-file:

The example from a real route from Kiel to a position near to Danzig:

Quote:
[AS]
AF34-AN98
[DESCRIPTION]
Subroute AF34-AN98: Distance 1316 nm. Traveltime 187 hours (25 minutes).
[DESCRIPTION_END]
[CATEGORY]
U-Marschwege
[SUBCATEGORY]
AN98 Inbound
[COMMANDS]
Print_message,0,0,Joining Subroute,0,0,0,5
Ahead_one_third,0,0,0,0,0,0,2
Navigate_from_file,0,0,AF34-AN98,0,0,0,10
Set_Time_Compression,1,0,0,0,0,0,10
Print_message,0,0,We have been arrived.,0,0,0,5
[COMMANDS_END]
You find the SHA_* Variables in bold.


What I actually do:

I have defined the routes for the coastal-waters campaign. The last run to build sha- and shn-files returns:

Quote:
Done!
Routes from Queuefile : 58
Distance over all : 96925 nm
Given Waypoints by files : 1014
Calculated Waypoints : 5746
The distance between the waypoints are < 30 km and they are randomized within 2000 (given WP) and 1000 (calculated WP) mtr around
their calculated (ideal-)positions.

58 routes are in- and outbound-routes, that means that I have defined 29 different routes from Kiel and Wilhelmshaven to destinations in the baltic-, north-, nordic- and celtic-sea. To give the Mod a little more military- or mysterious touch, I named the routes by the KM-Grids of their start- and end-points (see the [AS]-section above).

If You want to travel from A to B, You have to look into a briefcase with charts and Maps to find the name of the needed route. Than You can find the route in the automation-menu and only have to activate it.

The Screenshot below is a preview of some sheets from the briefcase:



I hope that I was able to give a short insight of my work to You,
Paco

Last edited by Paco; 10-29-12 at 06:00 PM. Reason: misspelling
Paco is offline   Reply With Quote