ehem. OMSI - Forum

Dieses Forum wurde geschlossen. Das neue Forum befindet sich auf www.omnibussimulator.de/forum !
 
StartseiteStartseite  FAQFAQ  SuchenSuchen  MitgliederMitglieder  NutzergruppenNutzergruppen  AnmeldenAnmelden  LoginLogin  

Teilen | 
 

 Kneeling script

Nach unten 
AutorNachricht
krtz07



Anzahl der Beiträge : 413
Anmeldedatum : 10.09.09
Alter : 33
Ort : Philadelphia PA

BeitragThema: Kneeling script   Do 23 Jun - 1:59

For those who are wondering how to make the bus kneel, here is something which I have came up. Some of the code is based off of what Marpe has done.

Create a new bus by copying a *.bus file and changing the name of the bus within that first. Create a new script file or rename the bremse.osc text file to something else. This ensures that none of the default scripts are overwritten. Open up the bus file and correctly link these files


In this example I used the name bremse-kneel.osc

Code:
'##############
'Brake Script
'##############

'Controls Brakes and includes air system (compressor)

'(c) 2007-2011 Rüdiger Hülsmann, Marcel Kuhnt

'Script Version: 1.0
'Omsi release: 1.0

'Needs:
'- Engine (for compressor)

'Revision History:
'- Rüdiger Hülsmann   11.05.2009   Last Change
'- Rüdiger Hülsmann   15.03.2010   Brake squeak
'- Marcel Kuhnt      15.04.2010   Pressure Calculation Stabilized
'- Rüdiger Hülsmann   06.11.2010   Automatic level control
'- Marcel Kuhnt      28.12.2010   Added wheel separated brake force variables
'- Rüdiger Hülsmann   01.01.2011   Added ABS function
'- Rüdiger Hülsmann   06.01.2011   separated brake force debugged (pipe diameter)
'- Rüdiger Hülsmann   23.01.2011   ABS relais sound
'- Rüdiger Hülsmann   31.01.2011   Random initial pressure, nonreturn valves for air suspension
'- Rüdiger Hülsmann   03.02.2011   Random squeak sound volume

'--------------------------------------------------------------


{trigger:parking_brake_toggle}
   (L.L.bremse_feststell) ! (S.L.bremse_feststell) (S.L.bremse_feststell_sw)
   {if}
      (T.L.ev_bremse_feststell_ein)
   {else}
      (T.L.ev_bremse_feststell_aus)
   {endif}
{end}


{trigger:parking_brake_set}
   (L.L.bremse_feststell) !
   {if}
      (S.L.bremse_feststell)
      (T.L.ev_bremse_feststell_ein)
      1 (S.L.bremse_feststell_sw)
   {endif}
{end}

{trigger:parking_brake_release}
   (L.L.bremse_feststell)
   {if}
      ! (S.L.bremse_feststell)
      (T.L.ev_bremse_feststell_aus)
      0 (S.L.bremse_feststell_sw)
   {endif}
{end}

{trigger:parking_brake_mouse_drag}
   (L.S.mouse_y) 200 / (L.L.bremse_feststell_sw) + (S.L.bremse_feststell_sw) s0
   l0 0 <
   {if}
      0 (S.L.bremse_feststell_sw)
   {endif}
   l0 1 >
   {if}
      1 (S.L.bremse_feststell_sw)
   {endif}
   l0 0.6 > (L.L.bremse_feststell) 0 = &&
   {if}
      1 (S.L.bremse_feststell)
      (T.L.ev_bremse_feststell_ein)
   {endif}
   l0 0.4 < (L.L.bremse_feststell) 1 = &&
   {if}
      0 (S.L.bremse_feststell)
      (T.L.ev_bremse_feststell_aus)
   {endif}

   1 (S.L.bremse_feststell_klinke)
{end}

{trigger:parking_brake_mouse_off}
   0 (S.L.bremse_feststell_klinke)
{end}



'----------------------
'   Init
'----------------------

{macro:bremse_init}
   1 (S.L.bremse_feststell_sw) (S.L.bremse_feststell) (S.L.bremse_UeVentil_1) (S.L.bremse_UeVentil_2)

'   900000 (S.L.bremse_p_tank01) (S.L.bremse_p_tank02) (S.L.bremse_p_tank03) (S.L.bremse_p_tank04) (S.L.bremse_p_leitung01) (S.L.bremse_p_leitung02)


'Kreis 1 zufällig befüllen
   500000 random 400000 + (S.L.bremse_p_tank01) (S.L.bremse_p_leitung01) (S.L.bremse_p_leitung02) s0

'Kreis 2 in Abhängigkeit vom Druck in Kreis 1 befüllen: Wenn Druckausgleich vorhanden, dann p2=p1 ansonsten Zufallswert unterhalb des Sicherungsdrucks (5 bar)
   (C.L.bremse_UeVentil_1_schliessdruck) >
   {if}
      l0 (S.L.bremse_p_tank02)
   {else}
      300000 random 300000 + (S.L.bremse_p_tank02)
   {endif}

'Kreis 3 zufällig befüllen, aber mindestens Druck wie in Kreis
   500000 random 400000 + l0 max (S.L.bremse_p_tank03) s0

'Kreis 4 in Abhängigkeit vom Druck in Kreis 3 befüllen: Wenn Druckausgleich vorhanden, dann p4=p3 ansonsten Zufallswert unterhalb des Sicherungsdrucks (5 bar)
   (C.L.bremse_UeVentil_2_schliessdruck) >
   {if}
      l0 (S.L.bremse_p_tank04)
   {else}
      300000 random 300000 + (S.L.bremse_p_tank04) s0
   {endif}

'Setzen der Luftfederbalgdrücke

   300000 random 100000 + (S.L.bremse_p_balg_0_R)
   300000 random 100000 + (S.L.bremse_p_balg_0_L)
   300000 random 100000 + (S.L.bremse_p_balg_1_R)
   300000 random 100000 + (S.L.bremse_p_balg_1_L)


'Setzen der Bremszylinderdrücke   
   100000 (S.L.bremse_p_luft) (S.L.bremse_p_brzyl_VA) (S.L.bremse_p_brzyl_VA_R) (S.L.bremse_p_brzyl_VA_L) (S.L.bremse_p_brzyl_HA) (S.L.bremse_p_brzyl_HA_R) (S.L.bremse_p_brzyl_HA_L) (S.L.bremse_p_Brzyl_FBA)


   0 (S.L.bremse_loesezischbereitschaft) (S.L.bremse_bremszischbereitschaft) (S.L.bremse_zieldruckdifferenz)
   
   0 (L.L.bremse_loesezischzeit)
   
' Setzen des Initial-Hup/Quietschvolumes

   -2 (S.L.bremse_quietsch_volume)
{end}

'----------------------
'   Frame
'----------------------

{macro:bremse_frame}
   

'Bremskraftberechnung Vorderachse
'Rechte Seite
   (L.L.bremse_p_brzyl_VA_R) 100000 - 20000 - 850000 / (C.L.max_bremskraft) * s0

'   Luftwiderstand:
   (L.L.Velocity) 3.6 / (L.L.Velocity) 3.6 / * 9.5 0.8 0.6 * * * +
'   Gesamtbremskraft auf 4 Räder aufteilen
   4 /
   (S.L.Axle_Brakeforce_0_R)

'Linke Seite
   (L.L.bremse_p_brzyl_VA_L) 100000 - 20000 - 850000 / (C.L.max_bremskraft) * s0

'   Luftwiderstand:
   (L.L.Velocity) 3.6 / (L.L.Velocity) 3.6 / * 9.5 0.8 0.6 * * * +
'   Gesamtbremskraft auf 4 Räder aufteilen
   4 /
   (S.L.Axle_Brakeforce_0_L)


'Bremskraftberechnung Hinterachse
'Rechte Seite
   (L.L.bremse_p_brzyl_HA_R) 100000 - 20000 - 850000 / (C.L.max_bremskraft) * s0

'   Luftwiderstand:
   (L.L.Velocity) 3.6 / (L.L.Velocity) 3.6 / * 9.5 0.8 0.6 * * * +
'   Gesamtbremskraft auf 4 Räder aufteilen
   4 /
'   Feststellbremse obendrauf
   (L.L.bremse_p_Brzyl_FBA) (F.L.Bremskraft_FBA) 2 / +
   (S.L.Axle_Brakeforce_1_R)

'Linke Seite
   (L.L.bremse_p_brzyl_HA_L) 100000 - 20000 - 850000 / (C.L.max_bremskraft) * s0

'   Luftwiderstand:
   (L.L.Velocity) 3.6 / (L.L.Velocity) 3.6 / * 9.5 0.8 0.6 * * * +
'   Gesamtbremskraft auf 4 Räder aufteilen
   4 /
'   Feststellbremse obendrauf
   (L.L.bremse_p_Brzyl_FBA) (F.L.Bremskraft_FBA) 2 / +
   (S.L.Axle_Brakeforce_1_L)



   (M.L.bremse_kompressor)
   
   (M.L.bremse_druckluftsound)
   (L.L.bremse_halte)
     1 (S.L.bremse_kneel)
{else}
0 (S.L.bremse_kneel)
   {endif}

   (L.L.bremse_kneel) 1 =
      {if}   
      (M.L.kneel)
      {else}
      (M.L.bremse_levelcontrol)
   {endif}


'   Setzen des Bremssollwertes (Pedalbetätigungen bis 0.1 bleiben unberücksichtigt => Rasten für Retarder)
   
   (L.L.Brake) 0.1 - 1.1 * s0 0 <
   {if}
      0 (S.L.bremse_luft)
   {else}
      l0 (S.L.bremse_luft)
   {endif}
   

{end}
{macro:kneel}


(L.L.bremse_halte)
{if}
 
  (L.L.Axle_Springfactor_0_R) (L.S.Timegap) 0.15 * - 0.6 max (S.L.Axle_Springfactor_0_R)
  (L.L.Axle_Springfactor_0_R) 0.6 =
  {if}
  (L.L.Axle_Springfactor_1_R) (L.S.Timegap) 0.15 * - 0.6 max (S.L.Axle_Springfactor_1_R)
  {endif}
  {else}
  (L.L.Axle_Springfactor_1_R) (L.S.Timegap) 0.15 * + 1 min (S.L.Axle_Springfactor_1_R)

  (L.L.Axle_Springfactor_0_R) 1 =
  {if}
  (L.L.Axle_Springfactor_1_R) (L.S.Timegap) 0.15 * + 1 min (S.L.Axle_Springfactor_1_R)
 
  {endif}

{endif}
{end}
{macro:bremse_kompressor}

'   Berechnung des Massenstroms vom Kompressor in die Füllleitung zum Vierkreisschutzventil:

   (L.L.bremse_kompressor) 1 =
   {if}
      (L.L.engine_n) (L.S.Timegap) * 60 / (C.L.bremse_m_kompressor) *
      (C.L.RT_Luft) * (C.L.bremse_V_leitung01) / (L.L.bremse_p_leitung01) + (S.L.bremse_p_leitung01)
   {endif}


'#################################################################
'   Vierkreisschutzventil

'   Berechnung der Querschnittsfläche der Überströmventile in Abhängigkeit der anliegenden Drücke von Bremskreis und Füllleitung:

   
   (C.L.bremse_UeVentil_1_oeffnungsdruck) (C.L.bremse_UeVentil_1_schliessdruck) - (C.L.bremse_UeVentil_1_schliessdruck) / (L.L.bremse_p_Tank01) * (L.L.bremse_p_leitung01) + (C.L.bremse_UeVentil_1_oeffnungsdruck) - 200000000000000 / 0 max sqrt (S.L.bremse_A_UeVentil_1)

   (C.L.bremse_UeVentil_2_oeffnungsdruck) (C.L.bremse_UeVentil_2_schliessdruck) - (C.L.bremse_UeVentil_2_schliessdruck) / (L.L.bremse_p_Tank02) * (L.L.bremse_p_leitung01) + (C.L.bremse_UeVentil_2_oeffnungsdruck) - 200000000000000 / 0 max sqrt (S.L.bremse_A_UeVentil_2)

   (C.L.bremse_UeVentil_3_oeffnungsdruck) (C.L.bremse_UeVentil_3_schliessdruck) - (C.L.bremse_UeVentil_3_schliessdruck) / (L.L.bremse_p_Tank03) * (L.L.bremse_p_leitung02) + (C.L.bremse_UeVentil_3_oeffnungsdruck) - 200000000000000 / 0 max sqrt (S.L.bremse_A_UeVentil_3)

   (C.L.bremse_UeVentil_4_oeffnungsdruck) (C.L.bremse_UeVentil_4_schliessdruck) - (C.L.bremse_UeVentil_4_schliessdruck) / (L.L.bremse_p_Tank04) * (L.L.bremse_p_leitung02) + (C.L.bremse_UeVentil_4_oeffnungsdruck) - 200000000000000 / 0 max sqrt (S.L.bremse_A_UeVentil_4)

'#################################################################
'   Testleck in Kreis 2 beim Betätigen des Warnblinkers:

'   (L.L.lights_sw_warnblinker)
'   {if}
'      (L.L.bremse_p_Tank02) s1
'      (L.L.bremse_p_luft) s2
'      (C.L.bremse_V_Tank02) s3
'      1000000 s4
'      (C.L.bremse_A_Leck) s5
'
'      (M.L.bremse_druckausgleich)
'
'      l1 (S.L.bremse_p_Tank02)
'   {endif}
'
'   Testleck in Kreis 3 beim Betätigen der Hupe:
'
'   (L.L.cockpit_hupe)
'   {if}
'      (L.L.bremse_p_Tank03) s1
'      (L.L.bremse_p_luft) s2
'      (C.L.bremse_V_Tank03) s3
'      1000000 s4
'      (C.L.bremse_A_Leck) s5
'
'      (M.L.bremse_druckausgleich)
'
'      l1 (S.L.bremse_p_Tank03)
'   {endif}

'#################################################################   
'Kreise 1+2
'#################################################################   

'   Druckausgleich in Bremskreis 1 und 2 bei geöffneten Überstromventilen 1 und 2:

   (L.L.bremse_A_UeVentil_1) 0 > (L.L.bremse_A_UeVentil_2) 0 > &&
   {if}
   
      (L.L.bremse_p_Tank01) s1
      (L.L.bremse_p_Tank02) s2
      (C.L.bremse_V_Tank01) s3
      (C.L.bremse_V_Tank02) s4
      (L.L.bremse_A_UeVentil_1) (L.L.bremse_A_UeVentil_2) min s5   
      
      (M.L.bremse_druckausgleich)

      l1 (S.L.bremse_p_Tank01)
      l2 (S.L.bremse_p_Tank02)

   {endif}


'   Befüllen von Bremskreis 1, mit Rückschlagventil gesichert

   (L.L.bremse_A_UeVentil_1) 0 > (L.L.bremse_p_leitung01) (L.L.bremse_p_Tank01) > &&

   {if}

'      Druckausgleich Füllleitung - Bremskreis 1:
      
      (L.L.bremse_p_leitung01) s1
      (L.L.bremse_p_Tank01) s2
      (C.L.bremse_V_leitung01) s3
      (C.L.bremse_V_Tank01) s4
      (L.L.bremse_A_UeVentil_1) s5   
      
      (M.L.bremse_druckausgleich)

      l1 (S.L.bremse_p_leitung01)
      l2 (S.L.bremse_p_Tank01)


   {endif}   

'   Befüllen von Bremskreis 2, mit Rückschlagventil gesichert

   (L.L.bremse_A_UeVentil_2) 0 > (L.L.bremse_p_leitung01) (L.L.bremse_p_Tank02) > &&
   {if}

'      Druckausgleich Füllleitung - Bremskreis 2:

      (L.L.bremse_p_leitung01) s1
      (L.L.bremse_p_Tank02) s2
      (C.L.bremse_V_leitung01) s3
      (C.L.bremse_V_Tank02) s4
      (L.L.bremse_A_UeVentil_2) s5   
      
      (M.L.bremse_druckausgleich)

      l1 (S.L.bremse_p_leitung01)
      l2 (S.L.bremse_p_Tank02)
      

   {endif}

'#################################################################   
'Kreise 3+4
'#################################################################   

'Füllen der Fülleitung für die Kreise 3+4 aus den Behältern 1 und 2 (jeweils dem mit dem höheren Druck), mit Rückschlagventil gesichert:


   (L.L.bremse_p_Tank01) (L.L.bremse_p_Tank02) >
   {if}
      
      (L.L.bremse_p_Tank01) (L.L.bremse_p_leitung02) >
      {if}
'         Druckausgleich Bremskreis 1 - Füllleitung Kreis 3+4

         (L.L.bremse_p_Tank01) s1
         (L.L.bremse_p_leitung02) s2
         (C.L.bremse_V_Tank01) s3
         (C.L.bremse_V_leitung02) s4
         (C.L.bremse_A_Rueckschlagventil_1) s5   
      
         (M.L.bremse_druckausgleich)

         l1 (S.L.bremse_p_Tank01)
         l2 (S.L.bremse_p_leitung02)
      {endif}
   {else}   
      (L.L.bremse_p_Tank02) (L.L.bremse_p_leitung02) >
      {if}

'         Druckausgleich Bremskreis 2 - Füllleitung Kreis 3+4
      
         (L.L.bremse_p_Tank02) s1
         (L.L.bremse_p_leitung02) s2
         (C.L.bremse_V_Tank02) s3
         (C.L.bremse_V_leitung02) s4
         (C.L.bremse_A_Rueckschlagventil_1) s5   
      
         (M.L.bremse_druckausgleich)

         l1 (S.L.bremse_p_Tank02)
         l2 (S.L.bremse_p_leitung02)
      {endif}
   {endif}


   
'   Druckausgleich in Bremskreis 3 und 4 bei geöffneten Überstromventilen 3 und 4:

   (L.L.bremse_A_UeVentil_3) 0 > (L.L.bremse_A_UeVentil_4) 0 > &&
   {if}
   
      (L.L.bremse_p_Tank03) s1
      (L.L.bremse_p_Tank04) s2
      (C.L.bremse_V_Tank03) s3
      (C.L.bremse_V_Tank04) s4
      (L.L.bremse_A_UeVentil_3) (L.L.bremse_A_UeVentil_4) min s5   
      
      (M.L.bremse_druckausgleich)

      l1 (S.L.bremse_p_Tank03)
      l2 (S.L.bremse_p_Tank04)

   {endif}



'   Befüllen von Bremskreis 3, mit Rückschlagventil gesichert

   (L.L.bremse_A_UeVentil_3) 0 > (L.L.bremse_p_leitung02) (L.L.bremse_p_Tank03) > &&

   {if}

'      Druckausgleich Füllleitung - Bremskreis 1:
      
      (L.L.bremse_p_leitung02) s1
      (L.L.bremse_p_Tank03) s2
      (C.L.bremse_V_leitung02) s3
      (C.L.bremse_V_Tank03) s4
      (L.L.bremse_A_UeVentil_3) s5   
      
      (M.L.bremse_druckausgleich)

      l1 (S.L.bremse_p_leitung02)
      l2 (S.L.bremse_p_Tank03)


   {endif}   

'   Befüllen von Bremskreis 4, mit Rückschlagventil gesichert

   (L.L.bremse_A_UeVentil_4) 0 > (L.L.bremse_p_leitung02) (L.L.bremse_p_Tank04) > &&
   {if}

'      Druckausgleich Füllleitung - Bremskreis 2:

      (L.L.bremse_p_leitung02) s1
      (L.L.bremse_p_Tank04) s2
      (C.L.bremse_V_leitung02) s3
      (C.L.bremse_V_Tank04) s4
      (L.L.bremse_A_UeVentil_4) s5   
      
      (M.L.bremse_druckausgleich)

      l1 (S.L.bremse_p_leitung02)
      l2 (S.L.bremse_p_Tank04)
      

   {endif}
'#########################################################################


'   Haltestellenbremse
'   Setzen des Zieldruckes

   (L.L.bremse_halte)
   {if}
      (C.L.bremse_pmax_halte) (L.L.bremse_p_Tank01) min (S.L.bremse_zieldruck_halte)
   {else}
      100000 (S.L.bremse_zieldruck_halte)
   {endif}   


'   Setzen des Zieldrucks der Betriebsbremse für Kreis 1 (HA)

   (L.L.bremse_luft) (L.L.bremse_p_tank01) * 1.1 * 100000 + (S.L.bremse_zieldruck_BBA)


'   Setzen des Bremszylinderzieldruckes HA (Fuß- und Haltestellenbremse):
   
   (L.L.bremse_zieldruck_BBA) (L.L.bremse_zieldruck_halte) max (S.L.bremse_zieldruck_HA) (S.L.bremse_zieldruck_HA_R) (S.L.bremse_zieldruck_HA_L)

'   Setzen des Zustands des Wechselventils Fußbremse <> Haltestellenbremse
'   0 = Fußbremse, 1= Haltestellenbremse
   
   (L.L.bremse_zieldruck_BBA) (L.L.bremse_p_brzyl_HA) >
   {if}
      0 (S.L.bremse_wechselventil_HA)
   {endif}
   
      (L.L.bremse_zieldruck_halte) (L.L.bremse_zieldruck_BBA) >
   {if}
      1 (S.L.bremse_wechselventil_HA)
   {endif}



'   Setzen des Bremszylinderzieldruckes VA:
   
   (L.L.bremse_luft) (L.L.bremse_p_tank02) * 1.1 * 100000 +  (S.L.bremse_zieldruck_VA) (S.L.bremse_zieldruck_VA_R) (S.L.bremse_zieldruck_VA_L)


'   Setzen des Bremszylinderzieldruckes FBA (mit Überlastschutz)


   1 (L.L.bremse_feststell_sw) - (L.L.bremse_p_tank03) * 1.1 * 100000 + s1
   
   (L.L.bremse_zieldruck_HA) l1 max (S.L.bremse_zieldruck_FBA)



'   ABS-Regelung

'   Ist ABS überhaupt vorhanden und aktiv?


   (C.L.bremse_ABS) (L.L.elec_busbar_main) &&
   
   {if}
'      Berechnen der Referenzdrehzahl
'      Umrechnungsfaktor Geschwindigkeit (km/h) auf Raddrehzahl (1/min) = 5.64 bei Raddurchmesser 94cm

      (L.L.Velocity_Ground) 5.64 * (S.L.bremse_ABS_referenzdrehzahl) s0

'      Übersteigt die Drehzahldifferenz einen kritischen Wret, dann den entsprechenden Bremszylinder entlüften
      
      l0 (L.L.Wheel_RotationSpeed_0_R) - 10 >
      (L.L.Velocity_Ground) 6 > &&
      {if}
         (L.L.bremse_ABS_eingriff_0R) !
         {if}
            (T.L.ev_bremse_ABS_0R_on)
         {endif}
         100000 (S.L.bremse_zieldruck_VA_R)
         1 (S.L.bremse_ABS_eingriff_0R)
      {else}
         (L.L.bremse_ABS_eingriff_0R)
         {if}
            (T.L.ev_bremse_ABS_0R_off)
         {endif}
         0 (S.L.bremse_ABS_eingriff_0R)
      {endif}

      l0 (L.L.Wheel_RotationSpeed_0_L) - 10 >
      (L.L.Velocity_Ground) 6 > &&
      {if}
         (L.L.bremse_ABS_eingriff_0L) !
         {if}
            (T.L.ev_bremse_ABS_0L_on)
         {endif}
         100000 (S.L.bremse_zieldruck_VA_L)
         1 (S.L.bremse_ABS_eingriff_0L)
      {else}
         (L.L.bremse_ABS_eingriff_0L)
         {if}
            (T.L.ev_bremse_ABS_0L_off)
         {endif}
         0 (S.L.bremse_ABS_eingriff_0L)
      {endif}

      l0 (L.L.Wheel_RotationSpeed_1_R) - 10 >
      (L.L.Velocity_Ground) 6 > &&
      {if}
         (L.L.bremse_ABS_eingriff_1R) !
         {if}
            (T.L.ev_bremse_ABS_1R_on)
         {endif}
         100000 (S.L.bremse_zieldruck_HA_R)
         1 (S.L.bremse_ABS_eingriff_1R)
      {else}
         (L.L.bremse_ABS_eingriff_1R)
         {if}
            (T.L.ev_bremse_ABS_1R_off)
         {endif}
         0 (S.L.bremse_ABS_eingriff_1R)
      {endif}

      l0 (L.L.Wheel_RotationSpeed_1_L) - 10 >
      (L.L.Velocity_Ground) 6 > &&
      {if}
         (L.L.bremse_ABS_eingriff_1L) !
         {if}
            (T.L.ev_bremse_ABS_1L_on)
         {endif}
         100000 (S.L.bremse_zieldruck_HA_L)
         1 (S.L.bremse_ABS_eingriff_1L)
      {else}
         (L.L.bremse_ABS_eingriff_1L)
         {if}
            (T.L.ev_bremse_ABS_1L_off)
         {endif}
         0 (S.L.bremse_ABS_eingriff_1L)
      {endif}

      (L.L.bremse_ABS_eingriff_0R)
      (L.L.bremse_ABS_eingriff_0L) ||
      (L.L.bremse_ABS_eingriff_1R) ||
      (L.L.bremse_ABS_eingriff_1L) ||
      (L.L.bremse_ABS_selftest) ||
      (S.L.bremse_ABS_eingriff)

   {else}
      0 (S.L.bremse_ABS_eingriff)

   {endif}

'   ABS-Selbsttest erfolgreich bei V>6km/h
   (L.L.velocity) 6 > (L.L.bremse_ABS_selftest) &&
   {if}
      0 (S.L.bremse_ABS_selftest)
   {endif}

'   a1) Hinterachse rechts

'   Ist geforderter Bremsdruck höher als der aktuelle?
   (L.L.bremse_zieldruck_HA_R) (L.L.bremse_p_brzyl_HA_R) >
   {if}
      (L.L.bremse_zieldruck_HA_R) (L.L.bremse_p_brzyl_HA_R) - 20000000000 / (S.L.bremse_A_BrVentil_HA_R)

'      Berechnung des Massenstroms aus Behälter 1 zum Bremszylinder HA

      (L.L.bremse_p_Tank01) s1
      (L.L.bremse_p_Brzyl_HA_R) s2
      (C.L.bremse_V_tank01) s3
      (C.L.bremse_V_Brzyl_HA_R) s4

'      Ventilwahl abhängig von der Stellung des Wechselventils
      (L.L.bremse_wechselventil_HA)
      {if}
         (L.L.bremse_A_BrVentil_HA_R) 2 * s5
      {else}
         (L.L.bremse_A_BrVentil_HA_R) s5
      {endif}

      (M.L.bremse_druckausgleich)
      l1 (S.L.bremse_p_Tank01)
      l2 (S.L.bremse_p_Brzyl_HA_R)

   {else}
      (L.L.bremse_p_brzyl_HA_R) (L.L.bremse_zieldruck_HA_R) - sqrt 20000000 / (S.L.bremse_A_BrVentil_HA_R)

'      Berechnung des Massenstroms aus Bremszylinder HA ins Freie

      (L.L.bremse_p_Brzyl_HA_R) s1
      (L.L.bremse_p_luft) s2
      (C.L.bremse_V_brzyl_HA_R) s3
      1 s4

'      Ventilwahl abhängig von der Stellung des Wechselventils
      (L.L.bremse_wechselventil_HA)
      {if}
         (L.L.bremse_A_BrVentil_HA_R) 2 * s5
      {else}
         (L.L.bremse_A_BrVentil_HA_R) s5
      {endif}

      (M.L.bremse_druckausgleich)

      l1 (S.L.bremse_p_Brzyl_HA_R)
      
   {endif}

'   a2) Hinterachse links

'   Ist geforderter Bremsdruck höher als der aktuelle?
   (L.L.bremse_zieldruck_HA_L) (L.L.bremse_p_brzyl_HA_L) >
   {if}
      (L.L.bremse_zieldruck_HA_L) (L.L.bremse_p_brzyl_HA_L) - 20000000000 / (S.L.bremse_A_BrVentil_HA_L)

'      Berechnung des Massenstroms aus Behälter 1 zum Bremszylinder HA

      (L.L.bremse_p_Tank01) s1
      (L.L.bremse_p_Brzyl_HA_L) s2
      (C.L.bremse_V_tank01) s3
      (C.L.bremse_V_Brzyl_HA_L) s4

'      Ventilwahl abhängig von der Stellung des Wechselventils
      (L.L.bremse_wechselventil_HA)
      {if}
         (L.L.bremse_A_BrVentil_HA_L) 2 * s5
      {else}
         (L.L.bremse_A_BrVentil_HA_L) s5
      {endif}

      (M.L.bremse_druckausgleich)
      l1 (S.L.bremse_p_Tank01)
      l2 (S.L.bremse_p_Brzyl_HA_L)

   {else}
      (L.L.bremse_p_brzyl_HA_L) (L.L.bremse_zieldruck_HA_L) - sqrt 20000000 / (S.L.bremse_A_BrVentil_HA_L)

'      Berechnung des Massenstroms aus Bremszylinder HA ins Freie

      (L.L.bremse_p_Brzyl_HA_L) s1
      (L.L.bremse_p_luft) s2
      (C.L.bremse_V_brzyl_HA_L) s3
      1 s4

'      Ventilwahl abhängig von der Stellung des Wechselventils
      (L.L.bremse_wechselventil_HA)
      {if}
         (L.L.bremse_A_BrVentil_HA_L) 2 * s5
      {else}
         (L.L.bremse_A_BrVentil_HA_L) s5
      {endif}

      (M.L.bremse_druckausgleich)

      l1 (S.L.bremse_p_Brzyl_HA_L)
      
   {endif}

'   Bildung des Mittelwertes für weitere Berechnungen
   (L.L.bremse_p_Brzyl_HA_R) (L.L.bremse_p_Brzyl_HA_L) + 2 / (S.L.bremse_p_Brzyl_HA)

'   b1) Vorderachse rechts
'   Ist geforderter Bremsdruck höher als der aktuelle?

   (L.L.bremse_zieldruck_VA_R) (L.L.bremse_p_brzyl_VA_R) >
   {if}
      (L.L.bremse_zieldruck_VA_R) (L.L.bremse_p_brzyl_VA_R) - 20000000000 / (S.L.bremse_A_BrVentil_VA_R)

'      Berechnung des Massenstroms aus Behälter 2 zum Bremszylinder VA

      (L.L.bremse_p_Tank02) s1
      (L.L.bremse_p_Brzyl_VA_R) s2
      (C.L.bremse_V_tank02) s3
      (C.L.bremse_V_Brzyl_VA_R) s4
      (L.L.bremse_A_BrVentil_VA_R) s5

      (M.L.bremse_druckausgleich)

      l1 (S.L.bremse_p_Tank02)
      l2 (S.L.bremse_p_Brzyl_VA_R)

   {else}
      (L.L.bremse_p_brzyl_VA_R) (L.L.bremse_zieldruck_VA_R) - sqrt 20000000 / (S.L.bremse_A_BrVentil_VA_R)

'      Berechnung des Massenstroms aus Bremszylinder VA ins Freie
   
      (L.L.bremse_p_Brzyl_VA_R) s1
      (L.L.bremse_p_luft) s2
      (C.L.bremse_V_brzyl_VA_R) s3
      1000000 s4
      (L.L.bremse_A_BrVentil_VA_R) s5

      (M.L.bremse_druckausgleich)

      l1 (S.L.bremse_p_Brzyl_VA_R)
      
   {endif}

'   b2) Vorderachse links
'   Ist geforderter Bremsdruck höher als der aktuelle?

   (L.L.bremse_zieldruck_VA_L) (L.L.bremse_p_brzyl_VA_L) >
   {if}
      (L.L.bremse_zieldruck_VA_L) (L.L.bremse_p_brzyl_VA_L) - 20000000000 / (S.L.bremse_A_BrVentil_VA_L)

'      Berechnung des Massenstroms aus Behälter 2 zum Bremszylinder VA

      (L.L.bremse_p_Tank02) s1
      (L.L.bremse_p_Brzyl_VA_L) s2
      (C.L.bremse_V_tank02) s3
      (C.L.bremse_V_Brzyl_VA_L) s4
      (L.L.bremse_A_BrVentil_VA_L) s5

      (M.L.bremse_druckausgleich)

      l1 (S.L.bremse_p_Tank02)
      l2 (S.L.bremse_p_Brzyl_VA_L)

   {else}
      (L.L.bremse_p_brzyl_VA_L) (L.L.bremse_zieldruck_VA_L) - sqrt 20000000 / (S.L.bremse_A_BrVentil_VA_L)

'      Berechnung des Massenstroms aus Bremszylinder VA ins Freie
   
      (L.L.bremse_p_Brzyl_VA_L) s1
      (L.L.bremse_p_luft) s2
      (C.L.bremse_V_brzyl_VA_L) s3
      1000000 s4
      (L.L.bremse_A_BrVentil_VA_L) s5

      (M.L.bremse_druckausgleich)

      l1 (S.L.bremse_p_Brzyl_VA_L)
      
   {endif}

'   Bildung des Mittelwertes für weitere Berechnungen
   (L.L.bremse_p_Brzyl_VA_R) (L.L.bremse_p_Brzyl_VA_L) + 2 / (S.L.bremse_p_Brzyl_VA)

'   c) Federspeicherbremse
'   Ist geforderter Lösedruck höher als der aktuelle?

   (L.L.bremse_zieldruck_FBA) (L.L.bremse_p_brzyl_FBA) >
   {if}
      (L.L.bremse_zieldruck_FBA) (L.L.bremse_p_brzyl_FBA) - 10000000000 / (S.L.bremse_A_BrVentil_FBA)

'      Berechnung des Massenstroms aus Behälter 2 zum Bremszylinder FBA

      (L.L.bremse_p_Tank03) s1
      (L.L.bremse_p_Brzyl_FBA) s2
      (C.L.bremse_V_tank03) s3
      (C.L.bremse_V_Brzyl_FBA) s4
      (L.L.bremse_A_BrVentil_FBA) s5

      (M.L.bremse_druckausgleich)

      l1 (S.L.bremse_p_Tank03)
      l2 (S.L.bremse_p_Brzyl_FBA)

   {else}
      (L.L.bremse_p_brzyl_FBA) (L.L.bremse_zieldruck_FBA) - sqrt 10000000 / (S.L.bremse_A_BrVentil_FBA)

'      Berechnung des Massenstroms aus Bremszylinder FBA ins Freie
   
      (L.L.bremse_p_Brzyl_FBA) s1
      (L.L.bremse_p_luft) s2
      (C.L.bremse_V_brzyl_FBA) s3
      1000000 s4
      (L.L.bremse_A_BrVentil_FBA) s5

      (M.L.bremse_druckausgleich)

      l1 (S.L.bremse_p_Brzyl_FBA)
      
   {endif}






'   Überströmventile im Vierkreisschutzventil:


   (L.L.bremse_p_Tank01) (C.L.bremse_UeVentil_1_schliessdruck) < (L.L.bremse_UeVentil_1) &&
   {if}
      0 (S.L.bremse_UeVentil_1)
   {endif}
   (L.L.bremse_p_leitung01) (C.L.bremse_UeVentil_1_oeffnungsdruck) >
   {if}
      1 (S.L.bremse_UeVentil_1)
   {endif}


   (L.L.bremse_p_Tank02) (C.L.bremse_UeVentil_2_schliessdruck) < (L.L.bremse_UeVentil_2) &&
   {if}
      0 (S.L.bremse_UeVentil_2)
   {endif}   
   (L.L.bremse_p_leitung01) (C.L.bremse_UeVentil_2_oeffnungsdruck) >
   {if}
      1 (S.L.bremse_UeVentil_2)
   {endif}




'   Ein- und Abschaltdrücke des Druckreglers:

   (L.L.bremse_p_leitung01) 950000 > (L.L.bremse_kompressor) 1 = &&
   {if}
      (T.L.ev_kompressor_aus)
      0 (S.L.bremse_kompressor)
   {endif}

   (L.L.bremse_p_leitung01) 800000 <  (L.L.bremse_kompressor) 0 = &&
   {if}
      (T.L.ev_kompressor_ein)
      1 (S.L.bremse_kompressor)
   {endif}


   
{end}



{macro:bremse_levelcontrol}

'   Federweg Neutralposition: -0.105

'Vorne rechts

   (C.L.bremse_level_setpoint) (L.L.Axle_Suspension_0_R) >
   {if}
'      Rückschlagventil der Luftfederung:
      (L.L.bremse_p_Tank04) (L.L.bremse_p_balg_0_R) >
      {if}
'         Berechnung des Massenstroms aus Behälter 4 zum Federbalg 0 R

         (L.L.bremse_p_Tank04) s1
         (L.L.bremse_p_balg_0_R) s2
         (C.L.bremse_V_tank04) s3
         (C.L.bremse_V_balg_0_R) s4
         (L.L.Axle_Suspension_0_R) (C.L.bremse_level_setpoint) - 70000 / abs s5

         (M.L.bremse_druckausgleich)

         l1 (S.L.bremse_p_Tank04)
         l2 (S.L.bremse_p_balg_0_R) 460000 / 0.5 max (S.L.Axle_Springfactor_0_R)
      {endif}
   {else}
'      Berechnung des Massenstroms aus Federbalg 0 R ins Freie

      (L.L.bremse_p_balg_0_R) s1
      (L.L.bremse_p_luft) s2
      (C.L.bremse_V_balg_0_R) s3
      1000000 s4
      (L.L.Axle_Suspension_0_R) (C.L.bremse_level_setpoint) - 70000 / abs s5

      (M.L.bremse_druckausgleich)

      l1 (S.L.bremse_p_balg_0_R) 460000 / 0.5 max (S.L.Axle_Springfactor_0_R)
   {endif}

'Vorne links

   (C.L.bremse_level_setpoint) (L.L.Axle_Suspension_0_L) >
   {if}   
'      Rückschlagventil der Luftfederung:
      (L.L.bremse_p_Tank04) (L.L.bremse_p_balg_0_L) >
      {if}   
'         Berechnung des Massenstroms aus Behälter 4 zum Federbalg 0 L

         (L.L.bremse_p_Tank04) s1
         (L.L.bremse_p_balg_0_L) s2
         (C.L.bremse_V_tank04) s3
         (C.L.bremse_V_balg_0_L) s4
         (L.L.Axle_Suspension_0_L) (C.L.bremse_level_setpoint) - 70000 / abs s5

         (M.L.bremse_druckausgleich)

         l1 (S.L.bremse_p_Tank04)
         l2 (S.L.bremse_p_balg_0_L) 460000 / 0.5 max (S.L.Axle_Springfactor_0_L)
      {endif}
   {else}
'      Berechnung des Massenstroms aus Federbalg 0 L ins Freie

      (L.L.bremse_p_balg_0_L) s1
      (L.L.bremse_p_luft) s2
      (C.L.bremse_V_balg_0_L) s3
      1000000 s4
      (L.L.Axle_Suspension_0_L) (C.L.bremse_level_setpoint) - 70000 / abs s5

      (M.L.bremse_druckausgleich)

      l1 (S.L.bremse_p_balg_0_L) 460000 / 0.5 max (S.L.Axle_Springfactor_0_L)
   {endif}


'Hinten rechts

   (C.L.bremse_level_setpoint) (L.L.Axle_Suspension_1_R) >
   {if}
'      Rückschlagventil der Luftfederung:
      (L.L.bremse_p_Tank04) (L.L.bremse_p_balg_1_R) >
      {if}
'         Berechnung des Massenstroms aus Behälter 4 zum Federbalg 1 R

         (L.L.bremse_p_Tank04) s1
         (L.L.bremse_p_balg_1_R) s2
         (C.L.bremse_V_tank04) s3
         (C.L.bremse_V_balg_1_R) s4
         (L.L.Axle_Suspension_1_R) (C.L.bremse_level_setpoint) - 70000 / abs s5

         (M.L.bremse_druckausgleich)

         l1 (S.L.bremse_p_Tank04)
         l2 (S.L.bremse_p_balg_1_R) 460000 / 0.5 max (S.L.Axle_Springfactor_1_R)
      {endif}
   {else}
'      Berechnung des Massenstroms aus Federbalg 0 R ins Freie

      (L.L.bremse_p_balg_1_R) s1
      (L.L.bremse_p_luft) s2
      (C.L.bremse_V_balg_1_R) s3
      1000000 s4
      (L.L.Axle_Suspension_1_R) (C.L.bremse_level_setpoint) - 70000 / abs s5

      (M.L.bremse_druckausgleich)

      l1 (S.L.bremse_p_balg_1_R) 460000 / 0.5 max (S.L.Axle_Springfactor_1_R)
   {endif}

'Vorne links

   (C.L.bremse_level_setpoint) (L.L.Axle_Suspension_1_L) >
   {if}   
'      Rückschlagventil der Luftfederung:
      (L.L.bremse_p_Tank04) (L.L.bremse_p_balg_1_L) >
      {if}   
'         Berechnung des Massenstroms aus Behälter 4 zum Federbalg 1 L

         (L.L.bremse_p_Tank04) s1
         (L.L.bremse_p_balg_1_L) s2
         (C.L.bremse_V_tank04) s3
         (C.L.bremse_V_balg_1_L) s4
         (L.L.Axle_Suspension_1_L) (C.L.bremse_level_setpoint) - 70000 / abs s5

         (M.L.bremse_druckausgleich)

         l1 (S.L.bremse_p_Tank04)
         l2 (S.L.bremse_p_balg_1_L) 460000 / 0.5 max (S.L.Axle_Springfactor_1_L)
      {endif}
   {else}
'      Berechnung des Massenstroms aus Federbalg 0 L ins Freie

      (L.L.bremse_p_balg_1_L) s1
      (L.L.bremse_p_luft) s2
      (C.L.bremse_V_balg_1_L) s3
      1000000 s4
      (L.L.Axle_Suspension_1_L) (C.L.bremse_level_setpoint) - 70000 / abs s5

      (M.L.bremse_druckausgleich)

      l1 (S.L.bremse_p_balg_1_L) 460000 / 0.5 max (S.L.Axle_Springfactor_1_L)
   {endif}

'##################TESTKRAM####################################

'   (L.L.cockpit_hupe)
'   {if}
'      100000 (S.L.bremse_p_balg_0_R) (S.L.bremse_p_balg_0_L) (S.L.bremse_p_balg_1_R) (S.L.bremse_p_balg_1_L)
'   {endif}
'
'   (L.L.Axle_Springfactor_0_R) 10.97 * (S.L.gesamtmasse)

'##################/TESTKRAM####################################


{end}


{macro:bremse_druckausgleich}
   
'   l1   Druck im Behälter 1
'   l2   Druck im Behälter 2
'   l3   Volumen Behälter 1
'   l4   Volumen Behälter 2
'   l5   Querschnittsfläche Verbindungsleitung
'...
'   l6   temporäre Variable, die die maximale Zeitkonstante enthält

   l1 l2 + 2 / l1 l2 - s0 * (C.L.RT_Luft) / abs sqrt l0 sgn * l5 * (C.L.RT_Luft) * s0

   l1 l2 - 1 l3 / 1 l4 / + l0 * / s6

   (L.S.Timegap) l6 min  l0    * l4 / l2 + s2
   (L.S.Timegap) l6 min  l0 /-/ * l3 / l1 + s1
{end}

{macro:bremse_druckluftsound}

'   Setzen der Druckdifferenz zur entsprechenden Sounduntermalung:

   (L.L.bremse_zieldruck_VA) (L.L.bremse_p_brzyl_VA) - s1
   (L.L.bremse_wechselventil_HA) !
   {if}
      (L.L.bremse_zieldruck_HA) (L.L.bremse_p_brzyl_HA) - s2
   {else}
      0 s2
   {endif}
   l1 l2 min (S.L.bremse_zieldruckdifferenz)


   (L.L.bremse_p_brzyl_VA) (L.L.bremse_last_p_Brzyl) max s1
   (L.L.bremse_wechselventil_HA) !
   {if}
      (L.L.bremse_p_brzyl_HA) (L.L.bremse_last_p_brzyl) max s2
   {else}
      0 s2
   {endif}
   l1 l2 max (S.L.bremse_last_p_Brzyl)




   (L.L.bremse_zieldruckdifferenz) -40000 <
   {if}
      (L.L.bremse_loesezischbereitschaft) (L.L.bremse_loesezischzeit) 0.6 > &&
      {if}
         (L.L.bremse_last_p_Brzyl) (S.L.bremse_zischvolume)
         (T.L.ev_loesezischen)
         0 (S.L.bremse_loesezischzeit)
      {endif}
      0 (S.L.bremse_loesezischbereitschaft)
   {else}
      (L.L.bremse_loesezischbereitschaft) !
      {if}
         1 (S.L.bremse_loesezischbereitschaft)
         (L.L.bremse_p_brzyl_VA) s1
         (L.L.bremse_wechselventil_HA) !
         {if}
            (L.L.bremse_p_brzyl_HA) s2
         {endif}
            l1 l2 max (S.L.bremse_last_p_Brzyl)
      {endif}
'      Inkrementierung der vergangenen Zeit seit letztem Lösezischen:
      (L.L.bremse_loesezischzeit) (L.S.Timegap) + (S.L.bremse_loesezischzeit)
   {endif}


   (L.L.bremse_zieldruckdifferenz) 100000 >
   {if}
      (L.L.bremse_bremszischbereitschaft)
      {if}
         (T.L.ev_bremszischen)
      {endif}
      0 (S.L.bremse_bremszischbereitschaft)
   {else}
      1 (S.L.bremse_bremszischbereitschaft)
   {endif}


'   Bremshupen Hinterachse
'   Bestimmen der Gesamtlautstärke je nach Wagennummer:
   (L.L.bremse_quietsch_volume) -1.5 <
   {if}
      (L.$.number) $StrToFloat 1000 * sin (S.L.bremse_quietsch_volume)
   {endif}

'   Triggern des Sounds jach Radumdrehung:
   (L.L.Wheel_Rotation_1_R) 6.28318 / (L.L.Wheel_Rotation_1_R) 6.28318 / trunc - 0.5 >
   {if}
      (L.L.bremse_hupsound) !
      {if}   
         (T.L.ev_bremse_hup)
         1 (S.L.bremse_hupsound)
      {endif}
   {else}
      0 (S.L.bremse_hupsound)
   {endif}


{end}



Copy the varlist list file and rename it to bremse_kneel_varlist.txt, thiis time, we are going to add a new variable into omsi. Make sure that both of the newly created files has replaced the entries made in the bus file.

Open up the o bremse_kneel_varlist.txt file and add in this text

bremse_kneel

This tells OMSI to create a new variable, the assigned value by default is 0.


Here the breakdown
The code which was added to the script file is this:
Code:
(L.L.bremse_halte)
{if}
 
  (L.L.Axle_Springfactor_0_R) (L.S.Timegap) 0.15 * - 0.6 max (S.L.Axle_Springfactor_0_R)
  (L.L.Axle_Springfactor_0_R) 0.6 =
  {if}
  (L.L.Axle_Springfactor_1_R) (L.S.Timegap) 0.15 * - 0.6 max (S.L.Axle_Springfactor_1_R)
  {endif}
  {else}
  (L.L.Axle_Springfactor_1_R) (L.S.Timegap) 0.15 * + 1 min (S.L.Axle_Springfactor_1_R)

  (L.L.Axle_Springfactor_0_R) 1 =
  {if}
  (L.L.Axle_Springfactor_1_R) (L.S.Timegap) 0.15 * + 1 min (S.L.Axle_Springfactor_1_R)
 
  {endif}

{endif}
{end}


if (L.L.Axle_Springfactor_0_R) reaches 0.6, it will activated the kneeler on the rear wheels (L.L.Axle_Springfactor_1_R). Both of the kneelers get a 0.15 rate per second reduction all the way down to 0.6.

With this code alone within the script, the script will not work then it is being overwritten by the level control system. So by creating a new variable, bremse_kneel, we can tell OMSI, that whenever a certain condition has been set to disable the level control system. So we compile this script

Code:

   (L.L.bremse_halte)
     1 (S.L.bremse_kneel)
{else}
0 (S.L.bremse_kneel)
   {endif}

   (L.L.bremse_kneel) 1 =
      {if}   
      (M.L.kneel)
      {else}
      (M.L.bremse_levelcontrol)
   {endif}

This tells OMSI that when the stop brake is on, then our newly created variable will get an value of 1. Once the value is set to 1, we have our script which tells OMSI what to tell when the value is set to 1. When it is 1, (M.L.kneel) will execute. If the condition has not been reached, or 0, then the automatic level control will be re-enabled.
Nach oben Nach unten
Benutzerprofil anzeigen http://www.philadelphiatransitvehicles.info
nemeza

avatar

Anzahl der Beiträge : 204
Anmeldedatum : 27.04.09
Ort : Budapest

BeitragThema: Re: Kneeling script   Do 23 Jun - 19:05

Thanks for sharing this script too!
Nach oben Nach unten
Benutzerprofil anzeigen http://nemeza.hgrg.hu
basty1983



Anzahl der Beiträge : 11
Anmeldedatum : 23.05.11

BeitragThema: Kneeling scrip   Mo 27 Jun - 5:40

habs net pribiert get it out maybe someone könte a finished script purely telen
Nach oben Nach unten
Benutzerprofil anzeigen
Gast
Gast



BeitragThema: Re: Kneeling script   Mo 27 Jun - 14:18

basty1983 schrieb:
habs net pribiert get it out maybe someone könte a finished script purely telen

YOUR ENGLISCH IS "KATASTROPHAL!!!!!"

lol!
Nach oben Nach unten
basty1983



Anzahl der Beiträge : 11
Anmeldedatum : 23.05.11

BeitragThema: Kneeling script   Mo 27 Jun - 14:43

ja ist das was mir der übersetzer überstzt hat
Nach oben Nach unten
Benutzerprofil anzeigen
Gast
Gast



BeitragThema: Re: Kneeling script   Mo 27 Jun - 14:51

IT WORKS!!!!!!!!!!!!!!!!!!!!!!!!!

BEFORE:


AFTER:


Zuletzt von LenkaTim am Di 28 Jun - 12:42 bearbeitet; insgesamt 1-mal bearbeitet
Nach oben Nach unten
alexandersitko



Anzahl der Beiträge : 125
Anmeldedatum : 07.03.11

BeitragThema: Re: Kneeling script   Mo 27 Jun - 18:01

Can you tell me where to add the new parts in the bremse-kneel.osc? I've tried some ways, but none worked.
Nach oben Nach unten
Benutzerprofil anzeigen
Gast
Gast



BeitragThema: Re: Kneeling script   Mo 27 Jun - 18:14

When krtz07 it allowed then i made a download with all files!

Nach oben Nach unten
Gast
Gast



BeitragThema: Re: Kneeling script   Di 28 Jun - 12:43

So you can download it at the Bus Mods and Repaints Topic!

Have fun!

>>DOWNLOAD<<
Nach oben Nach unten
ESWEFreak



Anzahl der Beiträge : 69
Anmeldedatum : 25.06.11
Ort : Wiesbaden

BeitragThema: Re: Kneeling script   Mi 29 Jun - 10:09

Doesn't working. ;(
Nach oben Nach unten
Benutzerprofil anzeigen
Gast
Gast



BeitragThema: Re: Kneeling script   Mi 29 Jun - 11:11

ESWEFreak schrieb:
Doesn't working. ;(

Look here!!

New Link:
Download NEW
Nach oben Nach unten
ARC



Anzahl der Beiträge : 37
Anmeldedatum : 28.04.09

BeitragThema: Re: Kneeling script   Do 30 Jun - 14:23

Can anybody help?

first problem:
i use this kneeling script for setting height of the bus. i can set 3 height. higher-normal-lower
Normal and lower it's OK. but when rise the height of the bus there is no smooth transition between the normal and higher level. here is the code:
the part 0.2 is for the higher level. I know that by decreasing the value before the max decreasing the height of the bus.

The other problem is when i use this 2 codes ( i have a 3 state switch for this function) one of them are not working correctly. I mean i can set into higher level but i can't set the lower level. When i delete one of them the other is working correctly.
Code:

(L.L.cp_szintezo_rot) 0.8 >
{if}
   (L.L.Axle_Springfactor_0_R) (L.L.Axle_Springfactor_0_L) (L.S.Timegap) 0.15 * - 0.55 max (S.L.Axle_Springfactor_0_R) (S.L.Axle_Springfactor_0_L)
   (L.L.Axle_Springfactor_1_R) (L.L.Axle_Springfactor_1_L) (L.S.Timegap) 0.15 * - 0.55 max (S.L.Axle_Springfactor_1_R) (S.L.Axle_Springfactor_1_L)
{else}
   (L.L.Axle_Springfactor_0_R) (L.L.Axle_Springfactor_0_L) (L.S.Timegap) 0.15 * + 1 min (S.L.Axle_Springfactor_0_R) (S.L.Axle_Springfactor_0_L)
     (L.L.Axle_Springfactor_1_R) (L.L.Axle_Springfactor_1_L) (L.S.Timegap) 0.15 * + 1 min (S.L.Axle_Springfactor_1_R) (S.L.Axle_Springfactor_1_L)
{endif}

(L.L.cp_szintezo_rot) 0.2 <
{if}
   (L.L.Axle_Springfactor_0_R) (L.L.Axle_Springfactor_0_L) (L.S.Timegap) 0.15 * - 1.2 max (S.L.Axle_Springfactor_0_R) (S.L.Axle_Springfactor_0_L)
   (L.L.Axle_Springfactor_1_R) (L.L.Axle_Springfactor_1_L) (L.S.Timegap) 0.15 * - 1.2 max (S.L.Axle_Springfactor_1_R) (S.L.Axle_Springfactor_1_L)
{else}
   (L.L.Axle_Springfactor_0_R) (L.L.Axle_Springfactor_0_L) (L.S.Timegap) 0.15 * + 1 min (S.L.Axle_Springfactor_0_R) (S.L.Axle_Springfactor_0_L)
     (L.L.Axle_Springfactor_1_R) (L.L.Axle_Springfactor_1_L) (L.S.Timegap) 0.15 * + 1 min (S.L.Axle_Springfactor_1_R) (S.L.Axle_Springfactor_1_L)
{endif}
{end}
Nach oben Nach unten
Benutzerprofil anzeigen
ARC



Anzahl der Beiträge : 37
Anmeldedatum : 28.04.09

BeitragThema: Re: Kneeling script   Fr 1 Jul - 11:18

Problem solved. I made two macro. one for riseing one for sedimentation.

There is two code for the two macro:
szintezo_rot is the button of leveling and as i wrote it has 3 state. I wrote an {if} command in the bremse_levelcontrol macro so it works only in the middle position of the button. My only problem is the smooth transition but i hope i can solve it.
Code:

 (L.L.cp_szintezo_rot) 1 =
       {if} 
         (M.L.kneel)
      {endif}

   (L.L.cp_szintezo_rot) 0 =
       {if} 
         (M.L.kneel1)
      {endif}

   (L.L.cp_szintezo_rot) 0.5 =
       {if} 
         (M.L.bremse_levelcontrol)
      {endif}
Nach oben Nach unten
Benutzerprofil anzeigen
krtz07



Anzahl der Beiträge : 413
Anmeldedatum : 10.09.09
Alter : 33
Ort : Philadelphia PA

BeitragThema: Re: Kneeling script   Fr 1 Jul - 13:36

Cool, the whole point of this script really is to get people familiarized enough with the script! Very Happy
Nach oben Nach unten
Benutzerprofil anzeigen http://www.philadelphiatransitvehicles.info
ediblechickenwing



Anzahl der Beiträge : 317
Anmeldedatum : 16.04.10
Ort : South Wales, UK

BeitragThema: Re: Kneeling script   Fr 1 Jul - 14:11

Nice to know people are paying such attention to detail, many people don't implement raising devices or "ferry lifts" as we call them or don't even know the bus has them! It can be annoying when you need to use it and you know the bus should have it but it doesn't Smile
Nach oben Nach unten
Benutzerprofil anzeigen
Gesponserte Inhalte




BeitragThema: Re: Kneeling script   

Nach oben Nach unten
 
Kneeling script
Nach oben 
Seite 1 von 1

Befugnisse in diesem ForumSie können in diesem Forum nicht antworten
ehem. OMSI - Forum :: OMSI-Design (english) :: Script programming-
Gehe zu: