SUBSIM Radio Room Forums



SUBSIM: The Web's #1 resource for all submarine & naval simulations since 1997

Go Back   SUBSIM Radio Room Forums > Subsim International > SUBSIM Deutsches Forum
Forget password? Reset here

Reply
 
Thread Tools Display Modes
Old 04-01-10, 04:02 PM   #1
Kubis
Swabbie
 
Join Date: Sep 2005
Posts: 7
Downloads: 0
Uploads: 0
Default

Hi,
ich habe mir die Dateien nochmal angeschaut.
Die Aufrufe der Messag....cfg Dateiein kommen wohl direkt aus der Sh5.exe(meine Vermutung).
Ohne Source Code ist da wohl nichts zu machen.Es sieht so aus, als wenn die Soundleute schneller waren als die Coder. Ich glaube auch nicht, daß der Code für die entsprechenden Sounds vorhanden ist. Es macht auch keinen Sinn, sonst hätten die Devs es bestimmt eingefügt, wenn es so einfach gewesen wäre. Man muß sich mal überlegen, wieviel Arbeitszeit da einfach verschwendet worden ist. So ein paar Tausend Sounddateien nimmt man mal nicht so eben an einem WE auf.



Wenn das mit den Sounds so einfach wäre, hätten schon fähige Modder einiges an Sounds ins Spiel gebracht, da es aber nicht passiert ist fehlt wohl der entsprechende Code bzw. ist hardcoded.

Aber vielleicht kann das mal ein Modder bestätigen, der die Innereien schon besser kennt.

Ich werde jetzt erstmal die fehlenden Tooltips aus dem Dark Wraith Mod für SH4 Style hinzufügen,das klappt wenigstens.

@Stormfly
mir wäre aber eher recht, wenn man die (schrecklichen) Sounds einfügen könnte. Ich glaube man kommt leichter an Soundsamples ran als in den Code hinein. Besser Code vorhanden und kein Sound, als andersherum. :-)
Kubis is offline   Reply With Quote
Old 04-01-10, 06:05 PM   #2
Stormfly
Serial Port Protector
 
Stormfly's Avatar
 
Join Date: Sep 2002
Posts: 1,424
Downloads: 370
Uploads: 0
Default

Quote:
Originally Posted by Kubis View Post
mir wäre aber eher recht, wenn man die (schrecklichen) Sounds einfügen könnte. Ich glaube man kommt leichter an Soundsamples ran als in den Code hinein. Besser Code vorhanden und kein Sound, als andersherum. :-)
...jep, nur passen muss der sample halt, und je mehr trigger desto besser...
__________________
Stormy......

Stormfly is offline   Reply With Quote
Old 04-02-10, 03:47 AM   #3
Ruby2000
Officer
 
Join Date: Sep 2005
Posts: 240
Downloads: 71
Uploads: 0
Default

Hi,

interessantes Thema. Grundsätzlich kann man per Tastaturbefehl weitere Sounddateien ausgeben.

Das funktioniert, da ich zig vergessene Sounddateien in meinen TaststurMod eingebunden habe.

Bsp:
[Cmd192]
Name=Dive
Contexts=1
StringID=1030
Key0=0x44,C,"D"
; Key0=0x56,C,"V"
HasDelayedExecution=Yes
CommandClass=Depth
Sound_0=ELO_Helm,MC_CR_CHIEF_32,1030;Dive
Sound_1=ELO_Helm,MC_CR_CHIEF_34_A,7646;Deeper!
Sound_2=ELO_Helm,MC_CR_CHIEF_34_B,7647;Take Her Deeper
Sound_3=ELO_Helm,MC_CR_CHIEF_35,7648;Deeper Goddamit

oder

[Cmd414]
Name=DGuns_Aim_hull
Contexts=1
MnID=0x3F19000D
StringID=1059
HasDelayedExecution=Yes
Key0=0x36,Cc,"Strg+6"
Sound_0=ELO_Helm,MC_CT_GUN_16


Die Variable "ELO_Helm" steht für das Verzeichnis "C:\Ubisoft\Silent Hunter 5\data\Sound\Speech\WatchOfficer"

Da für den Gunner keine Variable definiert wurde (verm. vergessen), habe ich die benötigten Soundfiles per Mod einfach in das \WatchOfficer Verzeichnis kopiert. Jetzt hört man auch die Befehle vom Gunner bei der Bedienung von Flak und Geschütz.

Ich werde mir mal die Strukturen genauer ansehen.

@Weedburner
Wo hast du die Doku der Soundfiles her?

das mal an
_09 -Da sehen sie
_10 -Da ist Rauch am Horizont
_11 -Schiff in Sicht
_12 -Geleitzug in Sicht
_13 -Eskorte in Sicht
_14 -Grosskampfschiff in Sicht
....

Hast du dir die Sounddateien einzeln angehört und dokukmentiert oder stehen die irgendwo beschrieben?


Gruß Ruby
Ruby2000 is offline   Reply With Quote
Old 04-02-10, 04:12 AM   #4
Kubis
Swabbie
 
Join Date: Sep 2005
Posts: 7
Downloads: 0
Uploads: 0
Default

Quote:
Originally Posted by Ruby2000 View Post
Hi,

interessantes Thema. Grundsätzlich kann man per Tastaturbefehl weitere Sounddateien ausgeben.

Das funktioniert, da ich zig vergessene Sounddateien in meinen TaststurMod eingebunden habe.

Bsp:
[Cmd192]
Name=Dive
Contexts=1
StringID=1030
Key0=0x44,C,"D"
; Key0=0x56,C,"V"
HasDelayedExecution=Yes
CommandClass=Depth
Sound_0=ELO_Helm,MC_CR_CHIEF_32,1030;Dive
Sound_1=ELO_Helm,MC_CR_CHIEF_34_A,7646;Deeper!
Sound_2=ELO_Helm,MC_CR_CHIEF_34_B,7647;Take Her Deeper
Sound_3=ELO_Helm,MC_CR_CHIEF_35,7648;Deeper Goddamit

oder

[Cmd414]
Name=DGuns_Aim_hull
Contexts=1
MnID=0x3F19000D
StringID=1059
HasDelayedExecution=Yes
Key0=0x36,Cc,"Strg+6"
Sound_0=ELO_Helm,MC_CT_GUN_16


Die Variable "ELO_Helm" steht für das Verzeichnis "C:\Ubisoft\Silent Hunter 5\data\Sound\Speech\WatchOfficer"

Da für den Gunner keine Variable definiert wurde (verm. vergessen), habe ich die benötigten Soundfiles per Mod einfach in das \WatchOfficer Verzeichnis kopiert. Jetzt hört man auch die Befehle vom Gunner bei der Bedienung von Flak und Geschütz.

Ich werde mir mal die Strukturen genauer ansehen.

@Weedburner
Wo hast du die Doku der Soundfiles her?

das mal an
_09 -Da sehen sie
_10 -Da ist Rauch am Horizont
_11 -Schiff in Sicht
_12 -Geleitzug in Sicht
_13 -Eskorte in Sicht
_14 -Grosskampfschiff in Sicht
....

Hast du dir die Sounddateien einzeln angehört und dokukmentiert oder stehen die irgendwo beschrieben?


Gruß Ruby

Hallo,

ich gehe davon aus, daß er sich die Sounddateien angehört hat. Ich habe auch nach einer Auflistung gesucht. IM SH5 Ordner gibt es aber definitiv keine. Diese Texte sind in keiner Datei vorhanden. Die meisten Texte stehen ja in der Menu.txt

Das man in der Commands.cfg Sounds zuweisen kann ist mir bekannt und schon mal ein guter Weg und funktioniert auch sehr gut.

Aber wo stehen die Zuweisungen für die Ereignisse? Es gibt ja hunderte von Soundfiles, die nicht zugewiesen sind. Wie gesagt, gehe ich mal stark davon aus, daß es in der Sh5.exe,also hardcoded, gemacht wird und da kommen wir ohne Source Code nicht dran. Und ob die Trigger für die Soundfiles wirklich vorhanden sind bezweifle ich ganz stark.

Es ist wirklich schade, weil durch diese Sounds würde das Spiel zum Leben erwachen. Vielleicht sollte man mal Dan fragen, ob die Codes für die Sounds im Spiel sind oder nicht.Dann kann man sich die Mühe nämlich sparen.
Kubis is offline   Reply With Quote
Old 04-02-10, 02:43 PM   #5
Ruby2000
Officer
 
Join Date: Sep 2005
Posts: 240
Downloads: 71
Uploads: 0
Default

Hi,

das Abrufen von Textdialogen und dazu gehörenden Audio-Dateien sind wie folgt aufgebaut:

Die Textdialoge stehen in data\UPCDataGE\UPCLocalization\dialogs.tsr
und nicht in data\LngGameData\Texts\German\data\UPCDataGE\UPCLo calization\dialogs.tsr

Die dialogs.tsr sind in beiden Verzeichnissen identisch, aber nur die Datei im oberen Verz. wird genutzt. Der geänderte Text ist im Spiel sofort ersichtlich.

Die Dateien data\cfg\dialogs.cfg und data\cfg\Sounds.cdg kann man in die Tonne hauen.
In der dialogs.cfg kann man zwar annähernd erkennen welcher Text und Audio-datei zusammen gehört. Aber bewirken tut es nichts wenn man etwas ändert. Ihr könnt die Datei auch umbenennen, es passiert nichts, die Datei wird anscheinend überhaupt nicht benutzt.

Die sounds.cfg ist totaler Müll. Mal steht da ein / oder ein \ und die Verzeichnisse sind meistens falsch. Diese Datei wird ebenfalls nicht benutzt.

Die Steuerung der Ausgabetexte und der Audio-Dateien finden in den jeweiligen aix Script-Dateien statt.

Beispiel-Watchoffizier in Kampagne Total germany
data\Campaigns\CampaignProjects\Total_Germany\Scri pts\AI\Dialogs\DT_Watch_Total_Germany.aix

Hieraus ein Auszug aus dem Skript

Code:
strategy DialogLine_RootDialog_WATCH_Total_Germany_787_Init(Dialog)
{
 precond
 {
  Dialog:IsDialogLineClicked( "DialogLine_RootDialog_WATCH_Total_Germany_787" ) == 0 and Dialog:IsDialogLineLocked( "787" ) == 0 and Dialog:IsCurrentDateHigherThen( "1.11.1939" ) == 1 
 }
 action
 {
  Dialog:AddDialogLine( "Text_Dialog_788" );
  Dialog:SetDialogLineClickId( "DialogLine_RootDialog_WATCH_Total_Germany_787" );
  Dialog:SetRunScript( "Dialog_3_WATCH_Total_Germany" );
 }
}
strategy DialogLine_RootDialog_WATCH_Total_Germany_787_Click(Dialog)
{
 precond
 {
  Dialog:IsDialogLineClicked( "DialogLine_RootDialog_WATCH_Total_Germany_787" ) == 1
 }
 action
 {
  Dialog:PlaySound( "WatchOfficer_slash_", "PD_QRF_WATCH_D03_A", 0 );
  Dialog:LockDialogLine( "785" );
  Dialog:PlayAnimation( "PD_QRF_WATCH_D03_A" );
  Dialog:AddMorale( 1.0 );
 }
}
 
....
 
 
strategy Dialog_3_WATCH_Total_Germany(Dialog)
{
 strategies
 {
  DialogTitle_Dialog_3_WATCH_Total_Germany_788,
  DialogLine_Dialog_3_WATCH_Total_Germany_789
 }
}
 
strategy DialogTitle_Dialog_3_WATCH_Total_Germany_788(Dialog)
{
 strategies
 {
  DialogTitle_Dialog_3_WATCH_Total_Germany_788_Init
 }
}
strategy DialogTitle_Dialog_3_WATCH_Total_Germany_788_Init(Dialog)
{
 action
 {
  Dialog:SetDialogTitle( "Text_Dialog_789" );
 }
}
 
 
strategy DialogLine_Dialog_3_WATCH_Total_Germany_789(Dialog)
{
 strategies
 {
  DialogLine_Dialog_3_WATCH_Total_Germany_789_Click,
  DialogLine_Dialog_3_WATCH_Total_Germany_789_Init
 }
}
strategy DialogLine_Dialog_3_WATCH_Total_Germany_789_Init(Dialog)
{
 action
 {
  Dialog:AddDialogLine( "Text_Dialog_790" );
  Dialog:SetDialogLineClickId( "DialogLine_Dialog_3_WATCH_Total_Germany_789" );
  Dialog:SetRunScript( "Dialog_4_WATCH_Total_Germany" );
 }
}
strategy DialogLine_Dialog_3_WATCH_Total_Germany_789_Click(Dialog)
{
 precond
 {
  Dialog:IsDialogLineClicked( "DialogLine_Dialog_3_WATCH_Total_Germany_789" ) == 1
 }
 action
 {
  Dialog:PlaySound( "WatchOfficer_slash_", "PD_QRF_WATCH_D03_B", 0 );
  Dialog:PlayAnimation( "PD_CR_SO_D03_B" );
 }
}
Im Init wird die Dialogbox aufgebaut. Wobei die Init eine weitere Funktion Dialog_3_WATCH_Total_Germany aufruft. Die wiederum ruft ebenfalls einige Funktionen auf.

Der Textdialog "Text_Dialog_788" ist die Textausgabe in der Dialogbox des Kaleuns und lautet: (aus dialogs.tsr)
Text_Dialog_788=Ich weiß, Sie spielen anderen gerne Streiche, aber lassen Sie den 1. Wachoffizier in Ruhe, der mag das nicht.

Wird der DialogText 788 in der Dialogbox angeklickt erhält man als Antwort: Text_Dialog_789 aus Dialog_3_WATCH_Total_Germany
Text_Dialog_789=Der Kerl ist so steif, an den könnte man ein Ruder klemmen und ihn dann als Torpedo verwenden. (Pause) Gut, ich lasse ihn in Ruhe, aber jemand muss ihm dringend diesen Stock aus dem ...

und dazu die Audiodatei

data\Sound\Speech\WatchOfficer\Normal\PD_QRF_WATCH _D03_A.ogg


ja und so gehts natürlich weiter....

Alle Textdialoge und die dazu gehörenden Audiodateien können beliebig angepasst/verändert werden.


Alle Kommunikationsdialoge mit jedem Besatzungsmitglied sind modbar! Man kann in dem Skript sogar die Moral beeinflussen.


Gruß Ruby

Last edited by Ruby2000; 04-02-10 at 03:43 PM.
Ruby2000 is offline   Reply With Quote
Old 04-02-10, 03:43 PM   #6
Kubis
Swabbie
 
Join Date: Sep 2005
Posts: 7
Downloads: 0
Uploads: 0
Default

Hallo Ruby,

das ist schon sehr interessant. Aber wie ich das so verstanden und herausgefunden habe, handelt es sich hier, um den reinen Rollenspielerteil.

Was ich aber weitaus interessanter finde wäre das einbinden der Event Sounds. Z.b. Flugzeug greift an, ich bekomme die Textmeldung "wir werden angegriffen" aber der dazu passende Soundsample wird nicht abgespielt.

Gefunden habe ich ihn hier :

[Msg0]
MsgId=0
Priority=4
Timeout=20
Param0=16
MsgOgg0_0=MC_QRF_WATCH_23;Aircraft Spotted!
MsgOgg0_1=MC_QRF_WATCH_11;Ship Sighted!
MsgOgg0_2=MC_QRF_WATCH_12;Convoy sighted!
MsgOgg0_3=MC_QRF_WATCH_13;Escort sighted
MsgOgg0_4=MC_QRF_WATCH_14;Capital ship sighted
MsgOgg0_5=MC_QRF_WATCH_16;Unknown Ship Sighted
MsgOgg0_7=MC_QRF_WATCH_24_A;Aircraft spotted! It's one of ours!
MsgOgg0_6=MC_QRF_WATCH_24_B;Firendly aircraft spotted!
MsgOgg0_8=MC_QRF_WATCH_19_A;uboot sighted!
MsgOgg0_9=MC_QRF_WATCH_19_B;Submarine sighted! It's one of ours!
MsgOgg0_10=MC_QRF_WATCH_20;Periscope sighted
MsgOgg0_11=MC_QRF_WATCH_25;Coastal defense sighted!
MsgOgg0_12=MC_QRF_WATCH_10;Smoke on the horizon
MsgOgg0_13=MC_QRF_WATCH_15_A;Task Force sighted.
MsgOgg0_14=MC_QRF_WATCH_15_B;We have a task force in sight!
MsgOgg0_15=MC_QRF_WATCH_18;Submarine sighted!
Param1=1
MsgOgg1_0=MC_QRF_WATCH_30;Bearing digit-digit-digit
;WaO_K_Bearing.ogg
Param2=1
MsgOgg2_0=0
;Number -> always put 0
Param3=3
MsgOgg3_0=Short_range
;WaO_K_Short_range.ogg
MsgOgg3_1=Medium_range
;WaO_K_Medium_range.ogg
MsgOgg3_2=Long_range
;WaO_K_Long_range.ogg

******* Hier ist der Eintrag *******

[Msg1]
MsgId=1
Priority=3
Timeout=20
Param0=1
MsgOgg0_0=Enemy_aircraft_engaging_us_sir

Ich habe testweise aus Sh4 das passende Soundfile in den WA Speech Ordner kopiert, der Sound wird aber bei einem Luftangriff nicht abgespielt.

Ich weiß allerdings nicht, wo diese Parameter [Msg1] übergeben werden.

Es gibt ja sehr viele Meldungen,die brach liegen, aber wo werden sie getriggert? Auch in den .aix Files oder ist es hardcoded?

In den .aix Files habe ich nichts gefunden. Weißt Du darüber auch Bescheid ?

Gruß
Kubis
Kubis is offline   Reply With Quote
Old 04-03-10, 06:46 AM   #7
Ruby2000
Officer
 
Join Date: Sep 2005
Posts: 240
Downloads: 71
Uploads: 0
Default

Hi,

Nein, das weiß ich derzeit auch nicht.

Gruß Ruby
Ruby2000 is offline   Reply With Quote
Old 04-07-10, 09:09 AM   #8
urfisch
Sea Lord
 
Join Date: Mar 2005
Location: Deep down in Germany
Posts: 1,969
Downloads: 42
Uploads: 0
Default

jo, weedy...das klingt interessant! gibs da ergebnisse?
__________________


urfisch is offline   Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -5. The time now is 09:56 PM.


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.