TNT music in map 21

edited 2011 May 22 in Technical Support
Hello all,

I am busy with installing music in jdoom, 1.9.0 beta 6.9.
So far so good, the music works, except for Map 21 in TNT: there the second TNT track is played instead of d_in_cit.
This happens not only with the music pack of Sycraft, but also with the pack I composed myself. d_in_cit.ogg simply will not load (even in a later level than 21 it will not load).
I was wondering if you have any idea how this can happen. The ded file seems correct, the stored path is correct in the zip and I have also included the d_in_cit file...
Thanks.

Comments

  • Please upload a copy of your addon so we can test it. It does sound like this is a problem therein, however, rather than an issue in Doomsday itself.
  • Thanks for your quick response, DaniJ.

    These add-ons are 100s of mb large. How can I upload them?
    One package can already be downloaded from the Doomsday engine website, under Add-ons (bit torrent) -it's the all in one package from Sycraft.
    All music works fine, except level 21 (and 32 if I'm correct). So it principally works, but not completely.

    The stored path of the ogg files - they're all ogg files- in the pk3 package: data/jdoom/music

    This is the ded file, simply copied from Sycraft:
    # jDoom: Music and Sound Effects
    
    skipif not Doom2-tnt
    
    #####====--- MUSIC ---====#####
    
    Music { ID = "None"; }
    Music { ID = "runnin"; Lump = "D_RUNNIN"; Ext = "Data\jDoom\Music\tnt_runnin.ogg"; }
    Music { ID = "stalks"; Lump = "D_STALKS"; Ext = "Data\jDoom\Music\tnt_stalks.ogg"; }
    Music { ID = "countd"; Lump = "D_COUNTD"; Ext = "Data\jDoom\Music\d_messag.ogg"; }
    Music { ID = "betwee"; Lump = "D_BETWEE"; Ext = "Data\jDoom\Music\tnt_betwee.ogg"; }
    Music { ID = "doom"; Lump = "D_DOOM"; Ext = "Data\jDoom\Music\tnt_doom.ogg"; }
    Music { ID = "the_da"; Lump = "D_THE_DA"; Ext = "Data\jDoom\Music\tnt_the_da.ogg"; }
    Music { ID = "shawn"; Lump = "D_SHAWN"; Ext = "Data\jDoom\Music\tnt_shawn.ogg"; }
    Music { ID = "ddtblu"; Lump = "D_DDTBLU"; Ext = "Data\jDoom\Music\tnt_ddtblux.ogg"; }
    Music { ID = "in_cit"; Lump = "D_IN_CIT"; Ext = "Data\jDoom\Music\tnt_runnin.ogg"; }
    Music { ID = "dead"; Lump = "D_DEAD"; Ext = "Data\jDoom\Music\tnt_dead.ogg"; }
    Music { ID = "stlks2"; Lump = "D_STLKS2"; Ext = "Data\jDoom\Music\tnt_stlks2.ogg"; }
    Music { ID = "theda2"; Lump = "D_THEDA2"; Ext = "Data\jDoom\Music\d_ddtblu.ogg"; }
    Music { ID = "doom2"; Lump = "D_DOOM2"; Ext = "Data\jDoom\Music\tnt_betwee.ogg"; }
    Music { ID = "ddtbl2"; Lump = "D_DDTBL2"; Ext = "Data\jDoom\Music\tnt_ddtbl2.ogg"; }
    Music { ID = "runni2"; Lump = "D_RUNNI2"; Ext = "Data\jDoom\Music\tnt_stalks.ogg"; }
    Music { ID = "dead2"; Lump = "D_DEAD2"; Ext = "Data\jDoom\Music\tnt_dead2.ogg"; }
    Music { ID = "stlks3"; Lump = "D_STLKS3"; Ext = "Data\jDoom\Music\tnt_doom.ogg"; }
    Music { ID = "romero"; Lump = "D_ROMERO"; Ext = "Data\jDoom\Music\tnt_dead.ogg"; }
    Music { ID = "shawn2"; Lump = "D_SHAWN2"; Ext = "Data\jDoom\Music\d_countd.ogg"; }
    Music { ID = "messag"; Lump = "D_MESSAG"; Ext = "Data\jDoom\Music\tnt_messag.ogg"; }
    Music { ID = "count2"; Lump = "D_COUNT2"; Ext = "Data\jDoom\Music\d_in_cit.ogg"; }
    Music { ID = "ddtbl3"; Lump = "D_DDTBL3"; Ext = "Data\jDoom\Music\tnt_ddtbl3.ogg"; }
    Music { ID = "ampie"; Lump = "D_AMPIE"; Ext = "Data\jDoom\Music\d_ampie.ogg"; }
    Music { ID = "theda3"; Lump = "D_THEDA3"; Ext = "Data\jDoom\Music\d_betwee.ogg"; }
    Music { ID = "adrian"; Lump = "D_ADRIAN"; Ext = "Data\jDoom\Music\d_doom.ogg"; }
    Music { ID = "messg2"; Lump = "D_MESSG2"; Ext = "Data\jDoom\Music\tnt_dead2.ogg"; }
    Music { ID = "romer2"; Lump = "D_ROMER2"; Ext = "Data\jDoom\Music\tnt_ddtblu.ogg"; }
    Music { ID = "tense"; Lump = "D_TENSE"; Ext = "Data\jDoom\Music\tnt_ddtbl3.ogg"; }
    Music { ID = "shawn3"; Lump = "D_SHAWN3"; Ext = "Data\jDoom\Music\tnt_betwee.ogg"; }
    Music { ID = "openin"; Lump = "D_OPENIN"; Ext = "Data\jDoom\Music\tnt_ddtblu.ogg"; }
    Music { ID = "evil"; Lump = "D_EVIL"; Ext = "Data\jDoom\Music\tnt_evil.ogg"; }
    Music { ID = "ultima"; Lump = "D_ULTIMA"; Ext = "Data\jDoom\Music\d_in_cit.ogg"; }
    Music { ID = "read_m"; Lump = "D_READ_M"; Ext = "Data\jDoom\Music\tnt_read_m.ogg"; }
    Music { ID = "dm2ttl"; Lump = "D_DM2TTL"; Ext = "Data\jDoom\Music\tnt_dm2ttl.ogg"; }
    Music { ID = "dm2int"; Lump = "D_DM2INT"; Ext = "Data\jDoom\Music\tnt_evil.ogg"; }
    
    I will look if the double underscore in d_in_cit is the culprit.
    Sometimes these problems are solved with a strange answer.

    Edit DaniJ: Added /code tags.
  • Your definition appears to be defining the song and lump names correctly ("D_IN_CIT" is the correct name, with two underscores). So the next thing to test would be to exchange the Ext path for a song which does play successfully and then re-test. It could be a problem with that particular music file or the path is incorrect (check your doomsday.out for any reported errors).

    I do note however that the Ext path defined for the song "in_cit" is the same as that for "runnin" (i.e., "Data\jDoom\Music\tnt_runnin.ogg") is this not the cause?
  • I will do that, replace the ext with another track name, test, and get back here asap.
  • O Yes, you're right! It is not track 2 but track 1 that is played, and that is tnt_running.ogg! Sorry for the mix up.
    Just tested, but it does that for the song tnt_betwee.ogg as well (instead of d_in_cit.ogg on map 21), also track 1 is played.
    The doomsday out file gives no particular information: all ded and pk3 files are loaded, then the TNT wad, with this added: IWAD identification: 012b7686
    Then other lmp and pk3 files loaded as well, no errors in that respect.
    >warp 21
    Changing map...
    P_LoadMap: "MAP21"
    convertMap: Attempting conversion of "MAP21".
    WadMapConverter::Convert: Attempting map conversion...
    WadMapConverter::Convert: DOOM map format.
    BSP_Build: Built 1631 Nodes, 1632 Subsectors, 8486 Segs, 3779 Vertexes
      Balance -3 (l24 - r27).
     Build subsector tables...
     Build line tables...
    convertMap: Successful.
    R_InitLinks: Initializing
    
    Map 21: Administration Center
    Author: Team TNT
    
    So...I have to alter something in the ded file?
  • Yes you will need to alter the Ext paths in your DED for each track so that it points to the file you want to be played. Sycraft's definition was written with the paths repeated (i.e., playing the same song on multiple maps) as this is the way the original game mapped the song names to music tracks (i.e., they were repeated).
  • Thanks for the information, but I do not understand it too well.
    Should I create a seperate folder/path for each ogg file?
    And why is it that repeating tracks work fine except for map 21?

    Where is the double reference to be found, assuming that it is double somewhere somehow?
    The ded file says: LUMP "D_IN_CIT"; Ext = "Data\jDoom\Music\tnt_runnin.ogg".
    But even if I use tnt_betwee.ogg in map 21, or another ogg file for that matter, it switches to tnt_running.ogg.
    So d_in_cit.ogg seems to have nothing to do with it.
    It is all a bit confusing.
  • The id of the song played on MAP21 is "in_cit" (as defined by Map Info). So to change the file played you need to supply a music definition which changes the Ext path for that song, for example:
    Music { ID = "in_cit"; Lump = "D_IN_CIT"; Ext = "Data\jDoom\Music\somemusicfilename.ogg"; }
    

    Do make sure you are loading addons in the appropriate order. If you load two addons which both define the Music "in_cit" the last loaded addon has precedence, overriding earlier ones.
  • I see...I have map 21 working now! thank you so very much.

    Now that I think of it...this ded file I copied from Sycraft - he just left the Doom 2 ID's and lumps there for TNT as well - this ded file must be a bit of a mess for TNT.
    It should be just a coincidence that all music plays so well in other TNT levels, considering all the wrong references.
  • The line that corresponds with map 21 in the ded file is:
    Music { ID = "count2"; Lump = "D_COUNT2"; Ext = "Data\jDoom\Music\d_in_cit.ogg"; }
    and this has now become
    Music { ID = "in_cit"; Lump = "D_IN_CIT"; Ext = "Data\jDoom\Music\d_in_cit.ogg"; }

    Well, I got 21 working with this, but now map 9 delivers d_in_cit.ogg, where it should run tnt_runnin.ogg.

    The line that corresponds with map 9 in the ded file is:
    Music { ID = "in_cit"; Lump = "D_IN_CIT"; Ext = "Data\jDoom\Music\tnt_runnin.ogg"; }

    So there is some shift again.
    It seems Sycraft had the IDs all right, even if these seem strange concerning the corresponding music tracks - I just checked the WAD file, and all lumps from his ded file are mentioned there too.
    So, should I be changing the map 21 lump in the ded file anyway? It seems to cause trouble on other fronts.
  • The reason you are having so much trouble with this is because you want to play completely different musics on each map. The Music to be played on each map is determined by the Music Id in the Map Info definition for that map. For example:
    Copy Map Info {
      ID = "MAP21";
      Name = "THUSTR_21";
      Music = "in_cit";
      Par time = 240;
      Sky = "sky3";
    }
    #> This correspeonds to the following Music definition <#
    Music { ID = "in_cit"; Lump = "D_IN_CIT"; Ext = "Data\jDoom\Music\tnt_runnin.ogg"; }
    
    Music Ids are reused throughout the game (i.e., the same music might be played multiple times on several maps). If you want that each map has a unique music accompaniment you will need to 1) create new Music definitions for every song you want to be played, 2) create new Map Info definitions for every map in the game, with each referencing a unique Music definition.
  • Hello DaniJ,

    On the contrary, I do not wish every song to be unique, I wish I could understand the refusal of the machine ;) .
    As I mentioned before, I copied the ded file from Sycraft.
    This ded file seems to be correct and original, because each lump is also mentioned in the TNT wad file.

    Now there seems to be some problem: The TNT ded file is identical to the Doom 2 ded file concerning the ID's and the lumps, and in Doom 2 d_in_cit was played in map 9, not map 21.
    The Doom 2 ID's and the lumps are just copied to TNT, with d_in_cit still on place 9.
    But here in TNT d_in_cit should go to 21.
    And this is where I think the shift happens. It also happens with Sycraft's music pack, not only with mine.

    I just want it to be the original sequence, but maybe switching place 9 with 21 is easier, then 21 becomes tnt_running and 9 becomes d_in_cit. I do not know yet.
    I really don't understand how I could straighten out this difference between Doom 2 and TNT. Trial and error perhaps.
  • Did you download the Doom2 soundtrack as well as the TNT one, as the site mentions one should?

    Sycrafts TNT soundtrack requires the Doom2 soundtrack for the tracks TNT reuses from Doom2.
  • Yes, I have all the Doom music you can possibly imagine, even sometimes 6 versions of the same tracks.
    But I do not think it is in the track name at all, I think it is in the sequence of ID's in the ded file.

    Again, you will find that Sycraft's FOURTH edition still contains the error, and he is a veteran in this respect.
    No, I don't think anyone has done anything wrong, this simply seems a lingering issue.
Sign In or Register to comment.