DOS music and sound effects for Lemmix? an idea.

Started by Zaphod77, October 01, 2014, 06:10:43 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Zaphod77

http://www.vgmpf.com/Wiki/index.php?title=Lemmings_(DOS" class="bbc_link" target="_blank">http://www.vgmpf.com/Wiki/index.php?title=Lemmings_(DOS) ,vgm format rips. using vgmplay they seem to sound okay. they have proper loop points in them.

now we just need a c++ dynamic library that can play these. i'm sure there's one hiding somewhere. http://www.lemmingsforums.com/Smileys/lemmings/smiley.gif" alt=":)" title="Smiley" class="smiley" />

namida

Lemmix is Delphi, not C++, though that doesn't preclude the use of DLLs as far as I'm aware (but using a Delphi library would be even more effective if one exists).

Either way, if in general a way can be found to do this (whether finding a way to use those, or converting to another format that can be implemented more easily) I'm happy to implement those musics into the traditional players, and support for the format into NeoLemmix.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

Zaphod77

yeah i know there isn't a delphi library, but that c++ ones can by dynamically linked, though there's no reason a ym3812 emulator can't be written in Delphi, and this particular data format is well documented.  just not my area of expertise. http://www.lemmingsforums.com/Smileys/lemmings/smiley.gif" alt=":)" title="Smiley" class="smiley" /> i'm better at messing with existing code.

as for the ingame sounds other then the music and intro, those are trivially captured and isolated from dosbox by playing in FX mode. I'm confident the only reason this hasn't been done is that the dos music isn't playing yet. http://www.lemmingsforums.com/Smileys/lemmings/smiley.gif" alt=":)" title="Smiley" class="smiley" />

namida

If anyone makes the effort to get the accurate DOS sounds (in fact, I believe some but not all of them are included in the Lemmix source), I'm more than happy to implement them too.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

Zaphod77

ask and you shall receive.

http://eunich.cochems.com/~zaphod/doslemsounds/" class="bbc_link" target="_blank">http://eunich.cochems.com/~zaphod/doslemsounds/

only one thing i haven't captured. the skill change sound is buggy, and will do one of FOUR things.  1) low bong. 2) higher bong 3) high bong followed by lower bong 4) lower bong followed by higher bong. I only captured the lower bong.  the logic of replicating whihc happens is, well... rather impossibel to work out.

what I have.
dos version of "let's go"
dos version of hatch opening
dos version of lemming exits level
DOs version of "oh no!" plays when a bomber stops moving, INCLUDING NUKES!  yes this means that in dos lemmings, every single lemming nuked goes oh no! Lemmix not doing this is WRONG!
dos version of explosion
dos version of last 3 bricks clink
change skill sound
assign skill sound.

now i have to get the various death sounds.  this is gonna be a pain. will upload them later.

namida

Sweet, I'll get onto implementing them (not a very complicated task) once we have the whole set.

As for the musics - I've got together all the tracks in VGM format (including ONML and Xmas/Holiday, which weren't on the link you've provided). Now if either a way can be found to play them in a Delphi app, or a way to convert them to MOD/IT/XM/a related format...
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

Zaphod77

and all the remaining sound effects are now ripped and uploaded. http://www.lemmingsforums.com/Smileys/lemmings/smiley.gif" alt=":)" title="Smiley" class="smiley" />

every single different trap that I can remember, as well as drowning, splatting, and breaking your pick on steel.

namida

Side trap and smasher seem to be the same sound (there again, Lemmix source code doesn't seem to use different sounds for them either), and you're missing the sound for the ten ton trap (it appears in, at the very least, Taxing 2).

As a side note, the bear trap sound has a lot of silence on either side. This is well within my capabilities to fix, though if you're planning to share these sounds in general you may want to fix that.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

Zaphod77

dammit i knew i forgot something...

gonna grab that one.

okay fixed. i messed up and exported instead of exported selection on the bear trap.

and weight trap sound  is up now.

namida

I've implemented the DOS sounds. I had a look at how I could possibly go about doing the DOS music; the one possibility seems to be swapping out BassMod for the full-fledged Bass, plus using the plugin for that that allows WinAmp input plugins, and finally combining that with the Winamp in_vgm plugin... a lot of work... (Plus, I've had zero luck with simply the first step of that, swapping in Bass... best result I can get is compiling without error but not playing any music.)

(The one alternative option is to instead use looped OGGs, which still requires swapping out BassMod for Bass, and will result in players about 8MB in size, at least for orig; OhNo and Xmas/H94 will be significantly less due to having far fewer tracks. By comparison, the above option would only increase the size by about 500KB.)

I did consider the option of converting the VGMs to a more BassMod-friendly format, but while there's a convertor to convert XM to VGM, there doesn't appear to be anything in reverse. There is a VGM to MID convertor (and MIDs can then be converted to IT or XM very easily), but the output results tend to not sound too much like the original track...
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

Zaphod77


namida

That's for C or C++, not Delphi. I already came across that one while looking around for something. Unfortunately C/C++ just confuse the heck out of me, so I can't do much with that - if anyone else can either convert it to Delphi or build a DLL out of it, I can probably make use of it.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

Zaphod77

did someone say DLL?

http://eunich.cochems.com/~zaphod/libgme.dll" class="bbc_link" target="_blank">http://eunich.cochems.com/~zaphod/libgme.dll

might be good for playing other consoles' musics too. http://www.lemmingsforums.com/Smileys/lemmings/smiley.gif" alt=":)" title="Smiley" class="smiley" />

namida

Wow, awesome! I'll see what I can do with that. http://www.lemmingsforums.com/Smileys/lemmings/smiley.gif" alt=":)" title="Smiley" class="smiley" />

...first, I'll need to decode at least enough of the C/C++ code to work out what interfaces I should be using (and how to use them)... but that'll surely be easier than trying to translate the code, at least. http://www.lemmingsforums.com/Smileys/lemmings/tongue.gif" alt=":P" title="Tongue" class="smiley" />
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)