Announcement

Collapse
No announcement yet.

How to add in this file to the .sms?

Collapse
This topic is closed.
X
X
Collapse
First Prev Next Last
 
  • Filter
  • Time
  • Show
Clear All
new posts

    How to add in this file to the .sms?

    I happened to stumble upon this soundset (surf.zip), which is pretty good. However it's got the engine rev-up(F59_1, x_F59_1), but they're not referenced in the Surfliner .sms file... I tried having a go at it and only screwed up my .sms file.(Thank God for backups) How can this be added in properly? It's for engaging the throttle, thus after 'x_f59_idle/f59_idle' but before 'f59_2/x_f59_2'.

    #2
    Try this tutorial?

    OVS and NERR engineer
    The disciple whom Jesus loves!

    Comment


      #3
      I've gone over that several times.. And I still can't make heads or tails of how to add in this .wav

      Comment


        #4
        There may be a good reason why the original rev-up wave file was not used.
        However, one simple way to add this wave is by adding a stream in each .sms and incrementing the stream count, such as:

        Code:
        Stream (
        	Priority ( 6 )
        	Triggers ( 8
        		Skip( **** rev-up test **** )
        		Variable_Trigger ( Variable2_Inc_Past 0.01 PlayOneShot ( 1 File ( "x_gp_whistle1a.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
        		Variable_Trigger ( Variable2_Inc_Past 0.14 PlayOneShot ( 1 File ( "x_gp_whistle1a.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
        		Variable_Trigger ( Variable2_Inc_Past 0.26 PlayOneShot ( 1 File ( "x_gp_whistle1a.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
        		Variable_Trigger ( Variable2_Inc_Past 0.39 PlayOneShot ( 1 File ( "x_gp_whistle1a.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
        		Variable_Trigger ( Variable2_Inc_Past 0.51 PlayOneShot ( 1 File ( "x_gp_whistle1a.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
        		Variable_Trigger ( Variable2_Inc_Past 0.64 PlayOneShot ( 1 File ( "x_gp_whistle1a.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
        		Variable_Trigger ( Variable2_Inc_Past 0.76 PlayOneShot ( 1 File ( "x_gp_whistle1a.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
        		Variable_Trigger ( Variable2_Inc_Past 0.89 PlayOneShot ( 1 File ( "x_gp_whistle1a.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
        	)
        )
        As long as your rev-up sound is quite short there should be no problems.
        You could also add a frequency curve and a volume curve to fine tune the sound for each throttle notch, and if your wave file is non-standard bit rate.
        The above example assumes original diesel throttle notch percentages.
        Your loco may have some other percentages for each throttle position in which case you will need to taylor the Variable2_Inc_Past n.nn figure.
        I suppose there may be other ways do achieve your goal, but this one seems to me to be the simplest.

        Comment


          #5
          Originally posted by Armchair_Engo View Post
          There may be a good reason why the original rev-up wave file was not used.
          However, one simple way to add this wave is by adding a stream in each .sms and incrementing the stream count, such as:

          Code:
          Stream (
          	Priority ( 6 )
          	Triggers ( 8
          		Skip( **** rev-up test **** )
          		Variable_Trigger ( Variable2_Inc_Past 0.01 PlayOneShot ( 1 File ( "x_gp_whistle1a.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
          		Variable_Trigger ( Variable2_Inc_Past 0.14 PlayOneShot ( 1 File ( "x_gp_whistle1a.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
          		Variable_Trigger ( Variable2_Inc_Past 0.26 PlayOneShot ( 1 File ( "x_gp_whistle1a.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
          		Variable_Trigger ( Variable2_Inc_Past 0.39 PlayOneShot ( 1 File ( "x_gp_whistle1a.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
          		Variable_Trigger ( Variable2_Inc_Past 0.51 PlayOneShot ( 1 File ( "x_gp_whistle1a.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
          		Variable_Trigger ( Variable2_Inc_Past 0.64 PlayOneShot ( 1 File ( "x_gp_whistle1a.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
          		Variable_Trigger ( Variable2_Inc_Past 0.76 PlayOneShot ( 1 File ( "x_gp_whistle1a.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
          		Variable_Trigger ( Variable2_Inc_Past 0.89 PlayOneShot ( 1 File ( "x_gp_whistle1a.wav" -1 )   SelectionMethod ( SequentialSelection ) ) )
          	)
          )
          As long as your rev-up sound is quite short there should be no problems.
          You could also add a frequency curve and a volume curve to fine tune the sound for each throttle notch, and if your wave file is non-standard bit rate.
          The above example assumes original diesel throttle notch percentages.
          Your loco may have some other percentages for each throttle position in which case you will need to taylor the Variable2_Inc_Past n.nn figure.
          I suppose there may be other ways do achieve your goal, but this one seems to me to be the simplest.
          I see. That doesn't quite look like how the .sms uses it's throttle.

          The reason it wasn't included in the first place, is the person who made it never included a .sms file. It was just drop in sound replacements, plus a bonus one. Here's what it has for it's engine sounds:

          Streams ( 10
          Stream (
          Priority ( 6 )
          Triggers ( 5
          Skip( **** The engine/current related sounds - Stream 1 {Xfade} **** )
          Initial_Trigger ( StartLoopRelease ( 1 File ( "x_F59_pstoidle.wav" -1 ) SelectionMethod ( SequentialSelection ) ) )
          Variable_Trigger ( Variable2_Inc_Past 0.100 ReleaseLoopRelease () )

          Variable_Trigger ( Variable2_Inc_Past 0.250 StartLoop ( 1 File ( "x_F59_5.wav" -1 ) SelectionMethod ( SequentialSelection ) ) )
          Variable_Trigger ( Variable2_Dec_Past 0.250 ReleaseLoopRelease () )

          Variable_Trigger ( Variable2_Dec_Past 0.100 StartLoop ( 1 File ( "x_F59_idle.wav" -1 ) SelectionMethod ( SequentialSelection ) ) )
          )
          FrequencyCurve(
          Variable2Controlled
          CurvePoints ( 7
          0.000 11025
          0.060 12025
          0.330 10525
          0.440 11025
          0.530 11525
          0.80 11750
          1.000 11750
          )
          Granularity ( 100 )
          )
          VolumeCurve(
          Variable2Controlled
          CurvePoints ( 10
          0.000 0.8
          0.006 1.0
          0.235 0.0
          0.325 0.9
          0.490 0.9
          0.500 0.9
          0.635 0.8
          0.750 0.6
          0.875 0.4
          1.000 0.0
          )
          Granularity ( 0.05 )
          )
          )
          Stream (
          Priority ( 6 )
          Triggers ( 6
          Skip( **** The engine/current related sounds - Stream 2 {Xfade} **** )
          Variable_Trigger ( Variable2_Inc_Past 0.002 StartLoop ( 1 File ( "x_F59_2.wav" -1 ) SelectionMethod ( SequentialSelection ) ) )
          Variable_Trigger ( Variable2_Inc_Past 0.400 ReleaseLoopRelease () )

          Variable_Trigger ( Variable2_Inc_Past 0.530 StartLoop ( 1 File ( "x_F59_7.wav" -1 ) SelectionMethod ( SequentialSelection ) ) )
          Variable_Trigger ( Variable2_Dec_Past 0.530 ReleaseLoopRelease () )

          Variable_Trigger ( Variable2_Dec_Past 0.400 StartLoop ( 1 File ( "x_F59_2.wav" -1 ) SelectionMethod ( SequentialSelection ) ) )
          Variable_Trigger ( Variable2_Dec_Past 0.002 ReleaseLoopRelease () )
          )
          FrequencyCurve(
          Variable2Controlled
          CurvePoints ( 7
          0.000 9525
          0.060 10025
          0.120 11025
          0.220 11525
          0.330 12025
          0.800 11025
          1.000 11225
          )
          Granularity ( 100 )
          )
          VolumeCurve(
          Variable2Controlled
          CurvePoints ( 9
          0.000 0.0
          0.060 0.8
          0.120 0.9
          0.220 0.9
          0.450 0.0
          0.530 0.0
          0.700 0.6
          0.800 0.9
          1.000 1.0
          )
          Granularity ( 0.05 )
          )
          )

          Comment


            #6
            Throttle notches are most easily viewed in the .eng file or the .cvf file.
            This is the relevant snippet of the default GP38-2:

            EngineControllers (
            Throttle ( 0 1 0.125 0
            NumNotches ( 9
            Notch ( 0 0 Dummy )
            Notch ( 0.125 0 Dummy )
            Notch ( 0.25 0 Dummy )
            Notch ( 0.375 0 Dummy )
            Notch ( 0.5 0 Dummy )
            Notch ( 0.625 0 Dummy )
            Notch ( 0.75 0 Dummy )
            Notch ( 0.875 0 Dummy )
            Notch ( 1 0 Dummy )
            )
            )

            The matching .cvf file has something like this:

            Lever (
            Type ( THROTTLE LEVER )
            Position ( 324 418 160 62 )
            Graphic ( Throttle.ace )
            Style ( SPRUNG )
            MouseControl ( 1 )
            NumFrames ( 9 3 3 )
            NumPositions ( 9 0 1 2 3 4 5 6 7 8 )
            NumValues ( 9 0 0.125 0.250 0.375 0.50 0.625 0.75 0.875 1 )
            Orientation ( 0 )
            DirIncrease ( 1 )
            ScaleRange ( 0 1 )
            )

            My example stream is set to PlayOneShot the added wave as the throttle passes each virtual notch as it increases past a certain Variable2 value, on the assumption that you want to run a short rev-up sound every time you notch up.

            Comment


              #7
              Originally posted by Armchair_Engo View Post
              Throttle notches are most easily viewed in the .eng file or the .cvf file.
              This is the relevant snippet of the default GP38-2:

              EngineControllers (
              Throttle ( 0 1 0.125 0
              NumNotches ( 9
              Notch ( 0 0 Dummy )
              Notch ( 0.125 0 Dummy )
              Notch ( 0.25 0 Dummy )
              Notch ( 0.375 0 Dummy )
              Notch ( 0.5 0 Dummy )
              Notch ( 0.625 0 Dummy )
              Notch ( 0.75 0 Dummy )
              Notch ( 0.875 0 Dummy )
              Notch ( 1 0 Dummy )
              )
              )

              The matching .cvf file has something like this:

              Lever (
              Type ( THROTTLE LEVER )
              Position ( 324 418 160 62 )
              Graphic ( Throttle.ace )
              Style ( SPRUNG )
              MouseControl ( 1 )
              NumFrames ( 9 3 3 )
              NumPositions ( 9 0 1 2 3 4 5 6 7 8 )
              NumValues ( 9 0 0.125 0.250 0.375 0.50 0.625 0.75 0.875 1 )
              Orientation ( 0 )
              DirIncrease ( 1 )
              ScaleRange ( 0 1 )
              )

              My example stream is set to PlayOneShot the added wave as the throttle passes each virtual notch as it increases past a certain Variable2 value, on the assumption that you want to run a short rev-up sound every time you notch up.
              OH okay, it TOOK me a couple days of looking at that to understand, but those values in the CVF file for the 'position' of the throttle at each notch, match up tot he values in the .sms file for the engine sounds for how they're played at different throttle notches, yes?

              Comment


                #8
                Originally posted by Komachi View Post
                OH okay, it TOOK me a couple days of looking at that to understand, but those values in the CVF file for the 'position' of the throttle at each notch, match up tot he values in the .sms file for the engine sounds for how they're played at different throttle notches, yes?
                The .eng file should match the .cvf file. The .sms files does not strictly need to match the throttle notches, unless parts of the .sms do special things like play a rev-up sound between notches.

                The default GP38 .sms does have to match the throttle notches because it is trying to use a wave file for each throttle notch.
                Your F59 .sms uses less wave files and streches them out a bit with frequency curves. The frequency curves and volume curves exert fine control over the blending of the wave files in the two streams.

                I tend to fiddle with my EMD .sms files so that the first notch does not rev up, in those applications where that is the normal behaviour for notch 1.

                Comment


                  #9
                  ... And now I'm pretty confused...

                  Comment


                    #10
                    When do you want the extra file to run? Between every notch up? Or only between idle and notch 1?
                    What notches does your .eng file have?

                    Comment


                      #11
                      Originally posted by Armchair_Engo View Post
                      When do you want the extra file to run? Between every notch up? Or only between idle and notch 1?
                      What notches does your .eng file have?
                      Between idle and notch one. What this file is(x_f59_1/f59_1), is a 14second rev up between the idle rpm and the notch 2 rpm. While somewhat of a long-ish file, it's quite realistic to the F59PHI.

                      As for the eng,

                      EngineControllers (
                      Throttle ( 0 1 0.125 0
                      NumNotches ( 9
                      Notch ( 0 0 Dummy )
                      Notch ( 0.06 0 Dummy )
                      Notch ( 0.12 0 Dummy )
                      Notch ( 0.22 0 Dummy )
                      Notch ( 0.33 0 Dummy )
                      Notch ( 0.44 0 Dummy )
                      Notch ( 0.53 0 Dummy )
                      Notch ( 0.80 0 Dummy )
                      Notch ( 1 0 Dummy )
                      )
                      )

                      Comment


                        #12
                        Just add a stream to each .sms, something like:

                        Stream (
                        Priority ( 6 )
                        Volume ( 1.0 )
                        Triggers ( 1
                        Skip( **** Rev-up between idle and notch 1 **** )
                        Variable_Trigger ( Variable2_Inc_Past 0.00 PlayOneShot ( 1 File ( "x_F59_1.wav" -1 ) SelectionMethod ( SequentialSelection ) ) )
                        )
                        )
                        Last edited by Armchair_Engo; 08-29-2011, 20:40. Reason: Added detail

                        Comment


                          #13
                          Well, I added it in, and it did absolutely nothing... I dunno, maybe the 3dtrains .sms is just too difficult to work with? I suppose I'll have to just wait for that EMD 710 pack to come out...

                          Comment


                            #14
                            Change the "Variable2_Inc_Past 0.00" to "Variable2_Inc_Past 0.01" and see if it works.

                            Comment


                              #15
                              Originally posted by Armchair_Engo View Post
                              Change the "Variable2_Inc_Past 0.00" to "Variable2_Inc_Past 0.01" and see if it works.
                              Didn't work either, still doesn't play the sound when notching up.

                              Comment

                              Working...
                              X