how to have merasmus do setup count down

Discussion in 'Mapping Questions & Discussion' started by hooodini, Nov 15, 2016.

  1. hooodini

    hooodini L1: Registered

    Messages:
    30
    Positive Ratings:
    0
    what I need help with is self explanitory
     
  2. Three Million

    Three Million L5: Dapper Member

    Messages:
    201
    Positive Ratings:
    65
    I dont think its possible, you mean Merasmus count down before a match like the Announcer?
     
  3. radarhead

    aa radarhead Hands out ratings like cheap cigars

    Messages:
    1,003
    Positive Ratings:
    542
    You can't, it's hardcoded into Doomsday_Event. It can't be triggered in another map unless the TF Team personally changes the code to allow for it.
     
  4. ics

    aa ics http://ics-base.net

    Messages:
    664
    Positive Ratings:
    412
    In theory you can do it, just needs to find the sound files, add them in as ambient_generic, know the setup time (lets think of it being a 30 seconds), set those play after delay of 25, 26, 27 etc.. and done?
     
  5. Diva Dan

    aa Diva Dan hello!

    Messages:
    831
    Positive Ratings:
    1,367
    Would that remove the original announcer's voice?
     
  6. tomGER

    tomGER L2: Junior Member

    Messages:
    80
    Positive Ratings:
    38
    I dont think so
     
    • Agree Agree x 1
  7. ics

    aa ics http://ics-base.net

    Messages:
    664
    Positive Ratings:
    412
    Default announcer voice lines can be disabled, atleast if it's a koth map.
     
    • Thanks Thanks x 1
  8. ibex

    aa ibex

    Messages:
    255
    Positive Ratings:
    368
    If you can find the voice line files in the vpk you might be able to use soundscripts trickery. The basic idea is this _level_sounds.txt file tells the game to use a certain sound files (merasmus) rather than another (the original announcer lines).
    I could never get it to work correctly because packing, but here's Freyja's explanation and the vdc page for more info. The vdc page has a ton of examples to learn from.
     
    • Thanks Thanks x 1
  9. Benoist3012

    Benoist3012 L3: Member

    Messages:
    147
    Positive Ratings:
    201
    As ibex stated, using a sound script is the only way.
    Using gcf scape and opening tf_misc_dir and go to scripts and open games_sound_vo.txt

    I copy pasted the sound you have to copy inside your map sound script:
    Code:
    "Announcer.RoundBegins1Seconds"
    {
        "channel"        "CHAN_VOICE2"
        "volume"        "VOL_NORM"
        "pitch"            "PITCH_NORM"
    
        "soundlevel"    "SNDLVL_NONE"
    
        "wave"            "vo/announcer_begins_1sec.mp3"
    }
    
    "Announcer.RoundBegins20Seconds"
    {
        "channel"        "CHAN_VOICE2"
        "volume"        "VOL_NORM"
        "pitch"            "PITCH_NORM"
    
        "soundlevel"    "SNDLVL_NONE"
    
        "wave"            "vo/announcer_begins_20sec.mp3"
    }
    
    "Announcer.RoundBegins2Seconds"
    {
        "channel"        "CHAN_VOICE2"
        "volume"        "VOL_NORM"
        "pitch"            "PITCH_NORM"
    
        "soundlevel"    "SNDLVL_NONE"
    
        "wave"            "vo/announcer_begins_2sec.mp3"
    }
    
    "Announcer.RoundBegins30Seconds"
    {
        "channel"        "CHAN_VOICE2"
        "volume"        "VOL_NORM"
        "pitch"            "PITCH_NORM"
    
        "soundlevel"    "SNDLVL_NONE"
    
        "wave"            "vo/announcer_begins_30sec.mp3"
    }
    
    "Announcer.RoundBegins3Seconds"
    {
        "channel"        "CHAN_VOICE2"
        "volume"        "VOL_NORM"
        "pitch"            "PITCH_NORM"
    
        "soundlevel"    "SNDLVL_NONE"
    
        "wave"            "vo/announcer_begins_3sec.mp3"
    }
    
    "Announcer.RoundBegins4Seconds"
    {
        "channel"        "CHAN_VOICE2"
        "volume"        "VOL_NORM"
        "pitch"            "PITCH_NORM"
    
        "soundlevel"    "SNDLVL_NONE"
    
        "wave"            "vo/announcer_begins_4sec.mp3"
    }
    
    "Announcer.RoundBegins5Seconds"
    {
        "channel"        "CHAN_VOICE2"
        "volume"        "VOL_NORM"
        "pitch"            "PITCH_NORM"
    
        "soundlevel"    "SNDLVL_NONE"
    
        "wave"            "vo/announcer_begins_5sec.mp3"
    }
    
    "Announcer.RoundBegins60Seconds"
    {
        "channel"        "CHAN_VOICE2"
        "volume"        "VOL_NORM"
        "pitch"            "PITCH_NORM"
    
        "soundlevel"    "SNDLVL_NONE"
    
        "wave"            "vo/announcer_begins_60sec.mp3"
    }
    
    Replace the paths sounds with merasmus one, and use vo/null.mp3 if you have no equivalent.
     
    • Like Like x 1
  10. Powerlord

    Powerlord L3: Member

    Messages:
    124
    Positive Ratings:
    58
    It's probably be easier to find the appropriate soundscripts for it in game_sounds_vo.txt and copy it to the _level_sounds.txt

    i.e. copy the entries for "Merasmus.RoundBegins1Seconds" etc and rename them to "Announcer.RoundBegins1Seconds" etc

    While it's not being updated any more, I do have an old copy of game_sounds_vo.txt.

    Note: There are only 1-5 second ones for Merasmus... I think he usually uses "sf14.Merasmus.Start.FirstRound" / "sf14.Merasmus.Start.FirstRoundRare" / "sf14.Merasmus.Start.SecondRound" / "sf14.Merasmus.Start.ThirdRoundAndBeyond" instead of the 60 seconds one, not sure about 30, 20, and 10.
     
    • Agree Agree x 2
  11. hooodini

    hooodini L1: Registered

    Messages:
    30
    Positive Ratings:
    0
    Ok I will try that, but it might take a while
     
  12. hooodini

    hooodini L1: Registered

    Messages:
    30
    Positive Ratings:
    0
    what does a _level_sounds.txt look like though
     
  13. hooodini

    hooodini L1: Registered

    Messages:
    30
    Positive Ratings:
    0
    i cant access the file in GFCscape
     
  14. hooodini

    hooodini L1: Registered

    Messages:
    30
    Positive Ratings:
    0
    i think i got it
     
  15. Benoist3012

    Benoist3012 L3: Member

    Messages:
    147
    Positive Ratings:
    201
    Code:
    "Announcer.RoundBegins1Seconds"
    {
        "channel"        "CHAN_VOICE2"
        "volume"        "VOL_NORM"
        "pitch"            "PITCH_NORM"
    
        "soundlevel"    "SNDLVL_NONE"
    
        "wave"            "vo/halloween_merasmus/sf14_merasmus_begins_01sec.mp3"
    }
    
    "Announcer.RoundBegins2Seconds"
    {
        "channel"        "CHAN_VOICE2"
        "volume"        "VOL_NORM"
        "pitch"            "PITCH_NORM"
    
        "soundlevel"    "SNDLVL_NONE"
    
        "wave"            "vo/halloween_merasmus/sf14_merasmus_begins_02sec.mp3"
    }
    
    "Announcer.RoundBegins3Seconds"
    {
        "channel"        "CHAN_VOICE2"
        "volume"        "VOL_NORM"
        "pitch"            "PITCH_NORM"
    
        "soundlevel"    "SNDLVL_NONE"
    
        "wave"            "vo/halloween_merasmus/sf14_merasmus_begins_03sec.mp3"
    }
    
    "Announcer.RoundBegins4Seconds"
    {
        "channel"        "CHAN_VOICE2"
        "volume"        "VOL_NORM"
        "pitch"            "PITCH_NORM"
    
        "soundlevel"    "SNDLVL_NONE"
    
        "wave"            "vo/halloween_merasmus/sf14_merasmus_begins_04sec.mp3"
    }
    
    "Announcer.RoundBegins5Seconds"
    {
        "channel"        "CHAN_VOICE2"
        "volume"        "VOL_NORM"
        "pitch"            "PITCH_NORM"
    
        "soundlevel"    "SNDLVL_NONE"
    
        "wave"            "vo/halloween_merasmus/sf14_merasmus_begins_05sec.mp3"
    }
    
    "Announcer.RoundBegins20Seconds"
    {
        "channel"        "CHAN_VOICE2"
        "volume"        "VOL_NORM"
        "pitch"            "PITCH_NORM"
    
        "soundlevel"    "SNDLVL_NONE"
    
        "wave"            "vo/null.mp3"
    }
    
    "Announcer.RoundBegins30Seconds"
    {
        "channel"        "CHAN_VOICE2"
        "volume"        "VOL_NORM"
        "pitch"            "PITCH_NORM"
    
        "soundlevel"    "SNDLVL_NONE"
    
        "wave"            "vo/null.mp3"
    }
    
    "Announcer.RoundBegins60Seconds"
    {
        "channel"        "CHAN_VOICE2"
        "volume"        "VOL_NORM"
        "pitch"            "PITCH_NORM"
    
        "soundlevel"    "SNDLVL_NONE"
    
        "wave"            "vo/null.mp3"
    }
    
    "Ambient.Siren"//Always played when a round start
    {
        "channel"        "CHAN_VOICE2"
        "volume"        "VOL_NORM"
        "pitch"            "PITCH_NORM"
    
        "soundlevel"    "SNDLVL_NONE"
        "rndwave"
        {
            "wave"    "vo/halloween_merasmus/sf14_merasmus_round_start_01.mp3"
            "wave"    "vo/halloween_merasmus/sf14_merasmus_round_start_02.mp3"
            "wave"    "vo/halloween_merasmus/sf14_merasmus_round_start_03.mp3"
            "wave"    "vo/halloween_merasmus/sf14_merasmus_round_start_04.mp3"
            "wave"    "vo/halloween_merasmus/sf14_merasmus_round_start_05.mp3"
            "wave"    "vo/halloween_merasmus/sf14_merasmus_round_start_06.mp3"
            "wave"    "vo/halloween_merasmus/sf14_merasmus_round_start_rare_01.mp3"
            "wave"    "vo/halloween_merasmus/sf14_merasmus_round_start_rare_02.mp3"
            "wave"    "vo/halloween_merasmus/sf14_merasmus_round_start_rare_03.mp3"
            "wave"    "vo/halloween_merasmus/sf14_merasmus_round_start_rare_01.mp3"
        }
    }
    
    https://www.dropbox.com/s/j5i2omzai1hlbaj/yourmapnamehere_level_sounds.txt?dl=0

    Download that file, and replace yourmapnamehere with your map name file.
     
  16. Yrr

    aa Yrr An Actual Deer

    Messages:
    989
    Positive Ratings:
    1,886
    for reference, and because i saw suggestions to use ambient_generics;

    custom announcer lines should always, always be soundscripts and fired with PlayVO, that lets them use the announcer sound channel and not have them overlap with actual announcer lines
     
    • Thanks Thanks x 1
    • Agree Agree x 1
  17. Benoist3012

    Benoist3012 L3: Member

    Messages:
    147
    Positive Ratings:
    201
    Can confirm that, ambient_generic are made to play a sound but with entity index linked to it and on the SNDCHAN_AUTO (0) channel.
    Announcer voiceline plays on SNDCHAN_VOICE (2) channel with 0 entity linked to it, meaning that if any other sounds with SNDCHAN_VOICE as canal will stop the previous sound on that channel from playing.
    As far I know in hammer and as Yrr stated only the PlayVO input can achieve that.
     
  18. Powerlord

    Powerlord L3: Member

    Messages:
    124
    Positive Ratings:
    58
    No, announcer lines are played on SNDCHAN_VOICE2 (7).

    This is so they don't interrupt player character voices.
     
    Last edited: Nov 19, 2016
  19. Benoist3012

    Benoist3012 L3: Member

    Messages:
    147
    Positive Ratings:
    201
    Odd, I'm pretty sure I stopped one a day with battle cry voiceline.

    Edit: Just realized it was a halloween boss intro sound that I stopped.
     
  20. hooodini

    hooodini L1: Registered

    Messages:
    30
    Positive Ratings:
    0
    what do i do with the level_sounds.txt file