Xen

Member
hello!
i would Like to chance the client music in my client because i'm trying to customize it. do you Know where i should look?
examples:
region data
scrips
etc...

thanks!
 
You must change several things.
First, you have a folder for the musics in your client files (where there are the .mul files). I'm not sure what music is used as of now, since my folder is practically a mess, but you should be able to find them.

Take a look at the enum MusicName in Region.cs in the core files.
Then for playing the music, edit region.xml as such for the regions you want the music to play in:
<region type="DungeonRegion" priority="50" name="Stuff">
<rect x="5202" y="0" width="55" height="65" />
<go x="5250" y="17" z="0" />
<music name="Serpents" />
</region>

Now if you want to add new songs, that's something i never did.

But by looking around, to play a music, Region.cs calls: "m.Send( PlayMusic.GetInstance( newRegion.Music ) );" which is a packet.
Here is the packet:
Code:
public sealed class PlayMusic : Packet
    {
        public static readonly Packet InvalidInstance = SetStatic(new PlayMusic(MusicName.Invalid));

        private static readonly Packet[] m_Instances = new Packet[60];

        public static Packet GetInstance(MusicName name)
        {
            if (name == MusicName.Invalid)
            {
                return InvalidInstance;
            }

            int v = (int)name;
            Packet p;

            if (v >= 0 && v < m_Instances.Length)
            {
                p = m_Instances[v];

                if (p == null)
                {
                    m_Instances[v] = p = SetStatic(new PlayMusic(name));
                }
            }
            else
            {
                p = new PlayMusic(name);
            }

            return p;
        }

        public PlayMusic(MusicName name)
            : base(0x6D, 3)
        {
            m_Stream.Write((short)name);
        }
    }

At that point idk what to do though.
My guess is that the musics are handled in the client, so you would probably have to replace the current musics with new ones (using the same name).
 
This is something I've done for a LONG time with my UO clients. As much as I LOVE UO, the music is one area that is just... blah.

So, I've collected a collection of songs (mostly from Final Fantasy games) that I felt enhanced the game play over all. (Nothing more awesome than having your combat music be 'Hunt or Be Hunted' from Final Fantasy XV!) What you need to do is look in your UO directory under MUSIC and then DIGITAL. There you will find a pretty big list of MP3 songs that are for use.

Now, where it gets confusing (to me, at least) is that some songs don't even show up in the Regions.cs file, OR, the song name is there, but the actual file doesn't exist in the music directory. (Dungeon9, I think, comes to mind.) What I've done is just listen to what music is playing and then find the appropriate MP3 file to replace it. Most of the towns are named using the POS (Positive / Negative) version of the song. I believe they came from Ultima IX if I'm not mistaken. (Some towns have MULTIPLE MP3 files, but only one is being used as far as I can tell.) You just replace that file with your own music, but just keep it the same name.

What I'd LOVE to find is a list of what music in that folder is actually being USED on a current client.. because there is a TON of music in there that isn't be used, as far as I can tell...and some of it sounds REALLY bad. LOL Heck, even the old UO MIDI files sounded better.
 
I really thank you, i would like to know if it's possible to change the music to send by the different player. I mean Elf-> musicA , Human -> musicB for the same place or maybe it's impossible ^_^"

However thanks!
 

Active Shards

Donations

Total amount
$0.00
Goal
$1,000.00
Back