Making upgrades work; help needed.

Discussion in 'Car Modding' started by Navigator, Apr 19, 2014.

  1. Navigator

    Navigator Registered

    Joined:
    Jan 15, 2012
    Messages:
    2,275
    Likes Received:
    389
    Hi guys,

    Just the last few days I have been converting some nice rF1 mods to rF2. It works and now I'm on to the next step; making the upgrades.
    I saw it as a nice project but now I'm stuck.

    The example I have, always points to a "GEN" file but I want to do something else.
    I tried another sound.......
    In order to do that, I put another sfx file in the mas and made sure the folder it points to, is present in the sound folder. That should work (or at least give no sound in the other instance)

    Now the example I got was this:

    UpgradeType="Visor Mod"
    {
    Instance="VISOR"
    UpgradeLevel="NO VISOR"
    {
    Description="Clear Helmet View"
    GEN=<VISORMOD>=no_visor.gmt
    }

    UpgradeLevel="VISOR MOD"
    {
    Description="Helmet View Through Visor"
    GEN=<VISORMOD>=visor_cam_OW.gmt
    }
    }


    I tried to "convert" that like this (amongst 1001 other options, but still no good one)

    UpgradeType="Sound"
    {
    Instance="Original"
    UpgradeLevel="F3.5"
    {
    Description="FR3.5 sound”
    SFX=[GENERAL]
    SFX=FR35_ALT.SFX
    }

    UpgradeLevel="Sound"
    {
    Description="Zonda sound”
    SFX=[GENERAL]
    SFX=Zonda.sfx
    }
    }


    Don't mind the strange choice, that was just to try out :)

    But somewhere there is a thing missing.....a [] {} "" ' ' : ; or whatever.
    Or more.......but I have no idea what to do now, where to point, what signs to use.
    The option IS in the list in the game, I can click it, but I keep getting the original sound.

    Any idea guys?
     
  2. Lazza

    Lazza Registered

    Joined:
    Oct 5, 2010
    Messages:
    12,395
    Likes Received:
    6,611
    First, I don't know if what you're trying to do is possible. I mean that literally; it may be possible, it may not. I have no idea.

    But in your example above you seem to have misunderstood how to modify 'files' via upgrades.

    Here's an example of changing to a different tyre compound:

    HDV=[GENERAL]
    HDV=TireBrand=MYNEWTIRE.tbc
    HDV=

    - The lines start with HDV, meaning the HDV is going to be altered.
    - The first line 'points' to the [GENERAL] section within the HDV
    - The second line says that the TireBrand= value (within the [GENERAL] section, because that's where we are) should be changed to MYNEWTIRE.tbc
    - The third line 'leaves' the [GENERAL] section; if an upgrade needs to modify values in different sections I've always seen this 'blank' line between going into those different sections.

    Your lines:

    SFX=[GENERAL]
    SFX=FR35_ALT.SFX

    Read like: Go into the [GENERAL] section of the .sfx file, and then... well, nothing, because you haven't specified a parameter or a new value for it. Anyway, the .sfx doesn't have sections.

    If you want to change which .sfx file is used by a vehicle, you need to change where the current reference is. That would be in the .veh file. And a .veh file doesn't have sections either.

    So something like this might work:

    VEH=Sounds=Zonda.sfx

    But, I'll say again: I don't know if it's possible. I've got a feeling some rF1 mods allowed the changing of sounds via an upgrade, that would be a good reference if you can find them.
     
  3. Navigator

    Navigator Registered

    Joined:
    Jan 15, 2012
    Messages:
    2,275
    Likes Received:
    389
    That is a very clear explanation Lazza; thanks for that!
    I now know what to play with.

    - set the other sfx in the VEH file or.......
    - dividing the sfx into sections and paste the content of the alternate sfx in the first

    I come back on this, thanks again mate!
     
  4. Lazza

    Lazza Registered

    Joined:
    Oct 5, 2010
    Messages:
    12,395
    Likes Received:
    6,611
    I should add that when there's a value already in the file (the .veh file in this case) you don't need to specify that 'original' value in the upgrade. It will use whatever is in the base file unless a selected upgrade overrides it.

    So taking your example again, this:

    Code:
    UpgradeType="Sound"
    {
      UpgradeLevel="F3.5"
      {
        Description="FR3.5 sound”
      }
    
      UpgradeLevel="Zonda"
      {
        Description="Zonda sound”
        VEH=Sounds=Zonda.sfx
      }
    }
    will, I think, do what you're looking for.

    The visor example you're working from has a couple of differences: a .gen file has Instances in it, hence the Instance= line, plus the .GEN file uses <TAGS> as placeholders that will be replaced later. So all visor upgrade options have to replace <VISORMOD> with some text for all those options to work. The .GEN files are a bit of a special case in that way.

    The .veh file, like the .HDV file, already has values for parameters so you don't need to redefine the default one.

    And while I might have misinterpreted what you just said about the .sfx file, I'm not sure it'll work with [SECTIONS] in it. Better to leave it as-is and just reference different .sfx files as you need. They're only small anyway :)
     
  5. Navigator

    Navigator Registered

    Joined:
    Jan 15, 2012
    Messages:
    2,275
    Likes Received:
    389
    OW YEAH! :)

    You should see the smile on my face right now! ;)
    Got it working and that's thanks to you Lazza; you're the man!

    Took me some trial and error (about 28 versions of the mod) but going on, thinking of what you said, I finally came up with the following:

    UpgradeType="Sounds"
    {

    UpgradeLevel="Zonda"
    {
    // ENGINE SOUNDS (INSIDE)
    SFX=VS_INSIDE_POWER_ENGINE_1=ZondaV12\Zonda_idle
    SFX=VS_INSIDE_POWER_ENGINE_2=ZondaV12\Zonda_on_low
    SFX=VS_INSIDE_POWER_ENGINE_3=ZondaV12\Zonda_on_mid
    SFX=VS_INSIDE_POWER_ENGINE_4=ZondaV12\Zonda_on_high

    SFX=VS_INSIDE_COAST_ENGINE_1=ZondaV12\Zonda_idle
    SFX=VS_INSIDE_COAST_ENGINE_2=ZondaV12\Zonda_off_low
    SFX=VS_INSIDE_COAST_ENGINE_3=ZondaV12\Zonda_off_mid
    SFX=VS_INSIDE_COAST_ENGINE_4=ZondaV12\Zonda_off_high

    // coast inside
    SFX=EngRPMCoastInside=(0, 1.00, 2243.00, 1500.00)
    SFX=EngRPMCoastInside=(1, 1680.00, 3739.00, 2385.45)
    SFX=EngRPMCoastInside=(2, 3634.00, 6885.00, 3180.60)
    SFX=EngRPMCoastInside=(3, 6530.00, 8000.00, 4770.90)

    // power inside
    SFX=EngRPMPowerInside=(0, 1.00, 2243.00, 1500.00)
    SFX=EngRPMPowerInside=(1, 1680.00, 3739.00, 2385.45)
    SFX=EngRPMPowerInside=(2, 3634.00, 6885.00, 3180.60)
    SFX=EngRPMPowerInside=(3, 6530.00, 8000.00, 4770.90)
    }
    UpgradeLevel="FR3.5"
    {
    // ENGINE SOUNDS (INSIDE)

    SFX=VS_INSIDE_POWER_ENGINE_1=1.20,ZytecFR35\zytekv8_in_onidle.wav
    SFX=VS_INSIDE_POWER_ENGINE_2=1.35,ZytecFR35\zytekv8_in_onverylow.wav
    SFX=VS_INSIDE_POWER_ENGINE_3=1.40,ZytecFR35\zytekv8_in_onlow.wav
    SFX=VS_INSIDE_POWER_ENGINE_4=1.55,ZytecFR35\zytekv8_in_onlowmid_2.wav
    SFX=VS_INSIDE_POWER_ENGINE_5=1.65,ZytecFR35\zytekv8_in_onmid.wav
    SFX=VS_INSIDE_POWER_ENGINE_6=1.70,ZytecFR35\zytekv8_in_onhigh.wav

    SFX=VS_INSIDE_COAST_ENGINE_1=1.10,ZytecFR35\zytekv8_in_idle.wav
    SFX=VS_INSIDE_COAST_ENGINE_2=1.10,ZytecFR35\zytekv8_in_steadyidle.wav
    SFX=VS_INSIDE_COAST_ENGINE_3=1.20,ZytecFR35\zytekv8_in_offverylow.wav
    SFX=VS_INSIDE_COAST_ENGINE_4=1.30,ZytecFR35\zytekv8_in_offlow.wav
    SFX=VS_INSIDE_COAST_ENGINE_5=1.40,ZytecFR35\zytekv8_in_offmid.wav
    SFX=VS_INSIDE_COAST_ENGINE_6=1.50,ZytecFR35\zytekv8_in_offhigh.wav

    // power inside
    SFX=EngRPMPowerInside=(0, 1, 4000, 3020)
    SFX=EngRPMPowerInside=(1, 2800, 5400, 4466)
    SFX=EngRPMPowerInside=(2, 4500, 6800, 6756)
    SFX=EngRPMPowerInside=(3, 5950, 8000, 7992)
    SFX=EngRPMPowerInside=(4, 7200, 9150, 9072)
    SFX=EngRPMPowerInside=(5, 8370, 12000, 9955)

    // coast inside
    SFX=EngRPMCoastInside=(0, 1, 3000, 2680)
    SFX=EngRPMCoastInside=(1, 2680, 3620, 2900)
    SFX=EngRPMCoastInside=(2, 3050, 4750, 3960)
    SFX=EngRPMCoastInside=(3, 3730, 6700, 7392)
    SFX=EngRPMCoastInside=(4, 5800, 8540, 8028)
    SFX=EngRPMCoastInside=(5, 7600, 12000, 10310)
    }
    }

    And that works.
    Wow, I'm happy.
    Of course, this is only a small part; outside sounds should be in there and so on, but just for trying; this is okay.

    However; all this work for nothing as I didn't want to change this sound on this car, haha!
    I now know what and how, so tonight I get busy with the one I wanted to do in the first place.
    Why didn't I took the one I wanted right from the start you say? Ehhmmmm........lol.......not saying anything anymore without my lawyer ;)

    Thanks again mate!!
     

Share This Page