Abfahrtston bei geschlossenen Türen

Das Forum befindet sich im reduzierten Betrieb. Die Addon- und Supportforen bleiben weiterhin verfügbar.
Bitte beachte, dass OMSI nicht mehr weiterentwickelt wird. Ein Teil der Entwickler widmet sich inzwischen der Entwicklung eines neuen Simulators. Weitere Informationen zum LOTUS-Simulator findest Du hier.
  • glaube das passt hier ganz gut rein...
    Ich versuche schon etwas länger, dass eine bestimmte .wav Datei abgespielt wird, wenn die Verspätung an der Abfahrtshaltestelle -1 beträgt, die Haltestellenbremse eingelegt ist und alle Türen geschlossen... Bin langsam ein bisschen am verzweifeln xD

  • @ der aus Wien


    Man müsste es gar nicht scripten. Du kannst diesen Abschnitt in die sound.cfg Variante machen, wo du es haben willst. Dieser Eintrag stammt von Morphi, ich habe ihn lediglich herausgenommen. Etwas habe ich abgeändert. Wenn es nicht funktioniert, meldet euch in dem Thread ; ) Einmal für die Gelenkvariante und Solovariante für den Citaro


    Solovariante:


    [sound]
    door_close_sound.wav


    [noloop] - > bedeutet es soll nur einmal abgespielt werden


    [3d]
    -0.8 - > x- Achse im Bus, wo der Ton zu hören ist
    5.289 - > y- Achse
    1.519 - > z- Achse
    0.7 - > Lautstärke beim Fahrer


    [conditionSingle]
    door_0 - > Türflügel 1 vorne
    0
    1 - > Lautstärke der Tür


    [conditionSingle]
    door_1 - > Türflügel 2 vorne
    0
    1


    [conditionSingle]
    door_2 - > Türflügel 1 mittlere Tür
    0
    1


    [conditionSingle]
    door_3 - > Türflügel 2 mittlere Tür
    0
    1



    Gelenkvariante:


    [sound]
    door_close_sound.wav


    [noloop]


    [3d]
    -0.8
    5.289
    1.519
    0.7


    [conditionSingle]
    door_0
    0
    1


    [conditionSingle]
    door_1
    0
    1


    [conditionSingle]
    door_2
    0
    1


    [conditionSingle]
    door_3 - > Türflügel 2 mittlere Tür
    0
    1


    [conditionSingle]
    door_3 - > Türflügel 1 Türe im Trailer
    0
    1


    [conditionSingle]
    door_3 - > Türflügel 2 Türe im Trailer
    0
    1



    Ich hoffe ich konnte euch weiter Helfen ; )



    MFG Crazy Chicken

    ;)
  • ^^


    @Crazy Chicken
    du scheinst da ja Erfahrung zu haben... Hättest du bei mir eine Idee ?

    :D

    Wäre super lieb

    :love:


    EDIT:
    Wenn ich es anhand dessen was du oben geschrieben hast machen würde, könnte ich es doch in etwa so machen (Nur ein Versuch!)


    [sound]
    Beispielsound.wav


    [noloop]




    [3d]
    -0.8
    5.289
    1.519
    0.7






    [conditionSingle]
    door_0
    0
    1


    [conditionSingle]
    door_1
    0
    1


    [conditionSingle]
    door_2
    0
    1


    [conditionSingle]
    door_3
    0
    1




    wenn ich das dann theoretisch so einfügen würde, müsste ich doch nur noch den Bus dazu bringen den Sound dann abzuspielen wenn ich die Haltestellenbremse eingelegt habe und die Verspätung -1 an der Starthaltestelle beträgt oder ?

  • wenn ich das dann theoretisch so einfügen würde, müsste ich doch nur noch den Bus dazu bringen den Sound dann abzuspielen wenn ich die Haltestellenbremse eingelegt habe und die Verspätung -1 an der Starthaltestelle beträgt oder ?


    Das kann nicht funktionieren. In deiner Abfrage fehlen die Variablen, für die Haltestellenbremse und für die Verspätungsanzeige. Ich denke auch, dass du dafür ein Script schreiben mußt, damit du abfragen kannst das alle Türen geschlossen sind:
    (L.L.door_0) !
    (L.L.door_1) ! &&
    (L.L.door_2) ! &&
    (L.L.door_3) ! &&
    dann für die Abfrage der Haltestellenbremse:
    (L.L.bremse_halte) &&
    und natürlich die Abfrgae der Verspätung wenn diese den Wert -1.0 erreicht.
    Da das Omsi Wiki ausgefallen ist, kann ich die richtige Variablenabfrage nicht rauslesen. Da müßtest du in den Script für den Drucker reinschauen.


    Das ganze gibst du dann als Lösung aus: Beispielsweise (S.L.zu_spaet)
    Dort kannst du dann auch den Sound abspielen lassen, wie bei den Schaltern.


    Außerdem solltest du vielleicht noch mittels einer {if}-Abfrage festlegen, dass der Sound nur abgespielt wird, wenn die Verspätungsabfrage vom Wert -0.9 auf den Wert -1.0 springt, aber nicht wenn der Wert von -1.1 auf -1.0 zurück fällt. Das wäre so meine Idee dazu.

  • erstmal vielen Dank für deine/eure Antworten !
    Ich werde jetzt erstmal versuchen das anhand den Tipps von Tatra zu scripten... Leider kenne ich mich damit überhaupt nicht aus... Ich werde mich dann vielleicht nochmal melden...

    :)


    So... Ich habe jetzt nochmal etwas versucht.
    (zuerst: Ich möchte das Ganze anhand des Citaros 4.41 von Morphi machen)


    In der IBIS 2.osc ist dieser Eintrag:



    {L.L.IBIS_changetimer) 0.5 <=
    {if}
    " Bitte abfahren"
    {else}


    Ich würde das Ganze jetzt so machen:



    (L.L.door_0) !
    (L.L.door_1) ! &&
    (L.L.door_2) ! &&
    (L.L.door_3) ! &&




    {L.L.IBIS_changetimer) -1.0
    {if} -> Mir wurde gesagt: {if} = Wenn das^^^passiert dann passiert das was jetzt folgt:






    [sound]
    Beispielsound.wav


    [noloop]


    [3d]
    -0.8
    5.289
    1.519
    0.7


    [end]


    Tut mir leid, wenn das "Noobigkeit" wie sonstwas ist... Ich möchte es zumindest versuchen, damit ihr meine Fehler dann verbessern könnt.

  • Das mit dem Script wird zum teil nicht funktionieren. Der Befehl wo du bei -1.0 hast. Würde überhaupt nicht gehen bzw. Da fehlt etwas. Aber was sagt dir jemand anders

  • Leider kenne ich mich damit überhaupt nicht aus.


    Wenn dir die Grundlagen für das Scripten fehlen, dann wirst du es kaum schaffen. Die eingetragenen Zeichen, die Crazy Chicken und ich eingetragen haben, habenr natürlich einen Sinn.
    Bei dir fehlt schonmal eine Abfrage:


    wenn ich die Haltestellenbremse eingelegt habe


    Diese Variablenabfrage fehlt dir komplett
    (L.L.bremse_halte) &&
    Du findest zwei Möglichkeiten im Script:
    (L.L.bremse_halte_sw) ist die Abfrage des Schalters, nicht der Bremse selber.
    (L.L.bremse_halte) ist die Abfrage der Bremse selber, nicht des Schalters.


    {L.L.IBIS_changetimer) -1.0


    Hier sind gleich 2 Fehler. Die Abfrage einer Scriptvariable kommt immer in einfachen runden Klammern:
    (L.L.IBIS_changetimer)
    dann sagst du, wenn der Wert dieser Variable -1.0 ist ..... was soll dann damit passieren? Nach deinem Beispiel nichts weiter. Du hast Omsi gesagt, er soll die Variablen auslesen, mehr soll Omsi nicht machen.


    Das Problem ist, dass dir die Funktionsweise einer Scriptberechnung fehlt. Für die Scriptberechnung einfacher Variablen, legt man fest, wann der Zustand einer Variable 1 ist.
    Du bekommst bei deiner Lösung einen Fehler im Macro, wo dein Eintrag drin steht. weil Omsi ab ibis_changetimer hängen bleibt.
    die anderen Werte trägt er zwar ein, aber er benutzt diese Werte im Spiel nicht.


    (L.L.IBIS_changetimer) 0.5 <=


    Das Zeichen am Ende bedeutet:
    kleiner oder gleich 0,5
    heißt, wenn der Wert der Variable ibis_changetimer kleiner als 0,5000001 ist, dann Zustand ibis_changetimer 1, ansonsten ist der Zustand 0


    1= Wahr, es stimmt, ist richtig, usw
    0 = Falsch, stimmt nicht, ist nicht richtig, ist unwahr ...


    Was soll Omsi dann machen?


    Was kannst du machen? Schaue dir mal bitte die Grundlagen des Scriptens an, wie es Busfanat sehr gut erklärt hat.
    Dann weißt du schonmal den Sinn von !, ||, &&, <, >, = usw. Sonst siehst du nur ?????

    :thumbsup:


    Aber immer schön weiter üben. so kommst du am besten dahinter!

  • vielen Dank Tatra !
    Das werde ich auf jeden Fall machen !
    Die Tutorials von Busfanat werde ich mir anschauen und einfach ein bisschen rumprobieren...

    :)

    :thumbsup:


    Eine letzte Frage noch: Ich trage das ganze dann in der IBIS 2.osc ein richtig ?

    :-)
  • Ich trage das ganze dann in der IBIS 2.osc ein richtig ?


    Das kannst du machen, aber mußte es nicht.


    Grundlegendes gilt folgendes:
    Normal brauchst du im Scriptordner nur 4 dateien:
    - ein Script mit der Datei-Endung osc.
    - eine Varlist-Datei, Dateiendung txt
    - eine Stringvarlist, mit der Dateiendung txt
    - und eine Constfile mit der Dateiendung txt.


    Wo du es einträgst, ist vom Grudngedanken her egal. Sinnvoll ist es, es dort einzutragen, wo es Sinn macht. Damit an User später auch nachvollziehen könne, wo es steht.
    Daher ist die Eintragung ins IBIS-Script schon sinnvoller.