Have I misunderstood $musicalias?

Ask about editing graphics, sounds, models, music, etc here!
Shaders (GLSL) and SNDINFO questions also go here!

Moderators: GZDoom Developers, Raze Developers

Forum rules
Before asking on how to use a ZDoom feature, read the ZDoom wiki first. If you still don't understand how to use a feature, then ask here.
Posts: 41
Joined: Sat Aug 23, 2008 7:21 pm

Have I misunderstood $musicalias?

Post by Kresjah »

I'm trying to get my music packs sorted and optimized to reduce hard drive space used. I've used $musicalias perfectly fine for the simple tasks (like mapping d_e2m5 to d_e1m7), but when I tried to optimize it for Final Doom I started running into problems. Since both TNT and Evilution use a selection of music that is identical to ones found in Doom 1 and 2, I figured I'd want to just directly map the respective Final Doom to their Doom/Doom2 equivalents to save space. If I can avoid having a copy of In Sandy's City for Doom 2 and one for Plutonia that is identical, that would be nice.

The problem stems from the fact that Final Doom doesn't have unique music lump names. They use the same mappings as Doom 2; MAP01 will always use d_runnin, MAP02 will always use d_stalks and so on, even if the actual contents of the lump has been changed. A good example of this is the following:

Doom 2:
  • d_in_cit = In Sandy's City
  • d_count2 = Countdown to Death
  • d_in_cit = Sadistic
  • d_count2 = In Sandy's City
So I figured I'd rename the music files, and map them to the new files to avoid conflicts and weird issues, so I renamed Doom 2's In Sandy's City from music\d_in_cit.ogg to music\doom2__d_in_cit.ogg and figured I could use $musicalias to point it to that file... alas I can't get it to work. I've tried a ton of combos, but the only combo that I seem to get working is if I don't use full paths, and keep to the 8 character lumpname limit. So off the top of my head I have tried the following variants:

Code: Select all

$musicalias d_in_cit doom2__d_in_cit
$musicalias d_in_cit "doom2__d_in_cit"
$musicalias d_in_cit doom2__d_in_cit.ogg
$musicalias d_in_cit "doom2__d_in_cit.ogg"
$musicalias d_in_cit music\doom2__d_in_cit
$musicalias d_in_cit "music\doom2__d_in_cit"
$musicalias d_in_cit music\doom2__d_in_cit.ogg
$musicalias d_in_cit "music\doom2__d_in_cit.ogg"
Some of the variants the music goes silent (or keeps playing the previously loaded one) and console says it couldn't find whatever I typed in, whilst the rest just ignores the line entirely and falls back to playing the default music lump. However, renaming the ogg file to any 8 character name and using that in the alias instead works fine. I did try to verify that the game itself can find the file by running the following in the console, which works just fine:

Code: Select all

changemus "music\doom2__d_in_cit.ogg"
Am I doing something wrong, or does $musicalias only support a straight lump-to-lump alias? Does it not support pointing it at a specific filename/path? If not, is my only other alternative making a duplicate of the entire MAPINFOs for those games and modify the music there? From my understanding there is no way to replace just a single property in a MAPINFO without recreating the entire entry for that map. Any ideas?

Return to “Assets (and other stuff)”