2.00 Musics and music packs

Started by namida, August 27, 2015, 04:54:19 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

namida

So, in regard to musics... we all know there's several versions of a lot of tracks out there, especially the Orig ones. And we probably all have our favorite versions - which might not be the same for every track (eg. some people might prefer the Amiga version of Track A, but the DOS version of Track B and the Master System version of Track C).

With this in mind, I'm considering allowing multiple versions of the same track to be installed, and allowing the user to select their preferred version, which would be played on any level that uses that music (whether as a result of the general rotation, or because the level in question specifically is set to that track).

The current way I envision this working is that, for each track (not just each set, but each individual track), the user can choose their preferred version out of all installed versions of that track. They'll also have an option of how strictly to prefer that track - either "Allow a level to override the version selection", or "Force this version".

What's that mean? Well - at the same time, levels could either specify in general "just use this track, whatever version the user prefers", or "use a specific version of this track if available". So the user option would affect whether or not the level can override their preferred version.

So let's use "cancan" (from "orig") as an example. Let's say there's three versions - Amiga, DOS and SMS (of course there's way more than this, but just for the sake of an example...). The user in question has the Amiga and DOS versions installed, but not the SMS versions.

Case 1
User has "Amiga" set as their preference, but has not selected to outright force that version.
Level specifies "orig.cancan" as the music but doesn't specify any version of it to play.
> The level plays the Amiga version of orig's "cancan".

Case 2
User has "Amiga" set as their preference, but has not selected to outright force that version.
Level specifies "orig.cancan" as the music, and specifies to play the DOS version.
> The level plays the DOS version of orig's "cancan".

Case 3
User has "Amiga" set as their preference, and has selected to outright force that version.
Level specifies "orig.cancan" as the music, and specifies to play the DOS version.
> The level plays the Amiga version of orig's "cancan", since the user has chosen to override the level's version specification.

Case 4
User has "Amiga" set as their preference, but has not selected to outright force that version.
Level specifies "orig.cancan" as the music, and specifies to play the SMS version.
> The level plays the Amiga version of orig's "cancan", because the user does not have the SMS version installed, so it reverts to their preference.


Some possible issues:
- What to do if the user doesn't have *any* version of the specified track installed? While NeoLemmix would come with at least one version of all the official tracks (most likely Amiga versions, since they're the second most well-known after DOS, and are far smaller files than the DOS ones), this could be relevant if, say, someone makes a level and specifies an LPIII track for it.
- Should the "override level's preference" option really be there? My initial thought was against this, but then I realised someone who's really determined to get their preferred version could just delete the not-preferred version of it anyway, which would just create a mess and achieve the same end result.
- What about cases where custom packs have musics which could be considered variations of the standard ones? Two examples that come to mind here are Holiday Lemmings Plus and Lemmings Reunion, both of which have both completely new tracks and variations of existing ones. Should it be encouraged to install them as variants of existing tracks?
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)

ccexplore

You definitely must allow the user to override.  Who's the level author to force version X down the user's throat (well, ears) if that happens to be the user's most reviled version of the music? ;P  If anything, I actually feel more inclined to question the need for the level author to specify a specific version of the music in their level, a version that may not be installed anyway on some user's computer (to say nothing of the user's like/dislike of that version).

For the case of no install versions of a track, perhaps the user can pick an installed track as the designated fallback, one that will be chosen in the "no install version found" case, potentially with a warning displayed somewhere in the program that it was unable to find the track and needed to fall back.

namida

#2
QuoteIf anything, I actually feel more inclined to question the need for the level author to specify a specific version of the music in their level, a version that may not be installed anyway on some user's computer (to say nothing of the user's like/dislike of that version).

Sometimes there are significant differences between the versions (special graphics level musics on Acorn, Doggie or Tim8 on SNES, Tim9 on Master System; there's also the case of a few versions (again, Master System comes to mind here) having completely unique tracks but that might be better to actually treat them as seperate tracks rather than variants, perhaps with an option elsewhere to use the alternate tracks when specified as part of a general rotation rather than a per-level track), and a level creator might feel that a specific version of the track fits the mood of their level better.

There are users - myself included, to an extent - who feel that the music is an important part of a level's atmosphere, rather than simply being some sounds in the background while you play. There are some cases (Revenge of the Lemmings; Lemmings Reunion) where the creators have hand-picked a music track for each individual level, and I can see this extending to perhaps wanting to prefer a specific version of the track in cases where there are multiple ones. In my case, although I don't quite go this far, a lot of my levels tend to (at least in my mind) be tied to their music in some extent - that's why, although I use a preset rotation rather than per-level tracks (apart from some special cases such as rank-final or game-final levels or VGASPEC levels), you'll often find that if I end up reordering levels, I tend to swap between level slots that have the same music - prime example was the swap between Fierce 1 and Fierce 8 in Lemmings Plus III, even though there are other Fierce levels that might've served better in the position (and arguably the now-Fierce 8 should've been closer to the end going purely by difficulty). This would extend to that the "tie" there would generally be to that specific version of the music; this is why the low-quality IT musics in LPI and LPII are not the Amiga versions of the tracks, but rather conversions of MIDI renditions of the SMS / DOS versions respectively.
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)

namida

In terms of music formats, most likely it'll be the currently supported ones (IT and related formats (MOD, XM, etc), as well as OGG), plus WAV and AIFF, although I wouldn't encourage the use of those last two due to their large sizes.

Is there anything else (apart from MP3, which is not going to happen) people would like to see supported? Any other than the above ones would, as far as I can tell, require BASS plugins, and may not be able to support any kind of looping other than "when it reaches the end, start again from the beginning" (on the other hand, the IT-like formats and OGG can support looping back to a point other than the beginning). But if there's strong enough interest, it can be considered...

The whole thing of "you need to rename other formats to have an IT or OGG extension" will be a thing of the past; that goes without saying. :)
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)

IchoTolot

I am fine with just OGG and IT, as every mp3 can be easily made into an OGG and IT also includes MOD's.
So for me everything is fine :)

namida

This post had me thinking - rather than just sequential, or specific track, we really should have a random option too...

Any other suggestions on what should be offered to pack designers in terms of music selections for their pack?
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)