Important Message

You are browsing the archived Lancers Reactor forums. You cannot register or login.
The content may be outdated and links may not be functional.


To get the latest in Freelancer news, mods, modding and downloads, go to
The-Starport

Sound Hang

The general place to discuss MOD''ing Freelancer!

Post Thu Mar 10, 2005 12:36 pm

Sound Hang

Hi there folks.

I'm finishing up the basic, skeletal design of the new gameworlds that I'm putting into Warriors of the Sky, and I've been beta-testing each area. Overall, I've made some major strides here- using some advanced find-and-replace techniques, I was able to create multiple "clones" of my Oceania System, and then I modified the clones to create the new gameworlds. I also used this opportunity/hassle to clean up all of the remaining areas of Oceania's code that wasn't perfectly clean. But I'm still seeing a persistant error.

In SP (not MP), I'm getting the following error, which eventually causes a crash to occur.

WARNING: sound reference count leaks detected: 1 sounds

This seems to be tied to the following error:

WARNING: invalid MSG id (2168981258) for voice profile (0xb4902287)

Now... I've gotten it to the point that the two new gameworlds, which do not include an Ocean Solar (which I know is causing a lot've problems with SP because of issues with the Radius/SUR and spawning behaviors, which is, unfortunately, unavoidable) aren't really crashing very often. I won't say "never", but they're pretty stable. Oceania is still plagued by this bug, however... and if anybody knows how I could "plug" this leak, it'd be appreciated... I'd like people to be able to visit Oceania in SP, even if Missions are broken and AI ships never spawn

Post Thu Mar 10, 2005 1:26 pm

Hmm, I assumed that those sorts of error messages came from having base/ship/system/anything references for which there is no sound recordings for voices.

I am probabily wrong, as I have never really looked into it to be honest

Post Thu Mar 10, 2005 2:05 pm

@Chips:

I've actually discovered that if there aren't any messages appropriate to the Voice... you get an entirely different error. Like this one, it is only a "WARNING"... and like this one, you will eventually hang. But the causes seem to be different.

Every Base I'm using is using atc_leg_m01 as its Voice. Every single, gosh-darn one of them. And that Voice should never, ever cause an error for things that are taking off or docking, I would think...

So... maybe it's one of the Pilot voices that's causing this. I've already determined that if you get the Plural/Singular tag wrong, then you can very easily CTD, so maybe one of the Pilots is "reaching" for something that's not there. Can't figure out what, tho- every single Base in Mbases.ini has the line msg_id_prefix = ignore in it, so they're definately *not* trying to say the name of the Base.

Of all of the things in FL, the Voices seem to be the least stable part of the game engine- I have a feeling that that part of the game was done at the last second, given the modification dates on the files...

Post Fri Mar 11, 2005 1:44 am

Unfortunately, voice profile (0xb4902287) = atc_leg_m01. I tried a search and "2168981258" doesn't come up anywhere in the voice hash files, so it could well be derived from a "gcs_refer_base_" string for base you've added yourself. It shouldn't be if you've added "msg_id_prefix = ignore" to every base, but other than that I'm out of ideas

Edited by - Accushot on 3/11/2005 1:47:04 AM

Post Fri Mar 11, 2005 10:11 am

So, basically... I either add a gcs_refer_base that refers to one of the Bases in the game, or this error will keep occuring, you think?

Hmm. Betcha a dollar that... <tests something>

Nope. None of the CRCs for the names I'm using, nor the CRC for "ignore" is that CRC. Hmmph. Back to Square 1...

Post Fri Mar 11, 2005 10:17 am

Hmm - nice work on the voices causing issues Argh, much appreciated - and noticed that many systems simply do not even have a "reference" at all (as in they do not have the line 'msg_id_prefix =' for them.

Could it be for a commodity or something? They often say what they are carrying.....just a complete guess

Post Fri Mar 11, 2005 11:46 am

Hmmmmm... that's a good idea.

OMG... I forgot!

I gave them some cargo that's not in the loot yet, and it sure doesn't have any Voice assigned (we're talking weapon ammo here)... I'll betcha that's what it is........!

<goes and tests> ... hmmmmmmm.

This was counter-intuitive.

I removed all of the ammo carge from the Loadouts.

Then I loaded up the game and flew around a bit in one of the new worlds, where the AI is able to spawn and function. FLSpit recorded the following:

<pre><font size=1 face=Courier>
[3/11/2005 2:37:59 PM
WARNING:General:set_gamma_function() called outside of create_buffers/destroy_buffers
WARNING: Failed to get start location
WARNING: StarSystem::enter(): CLI(1) System(FP7_system)
WARNING: Unknown camera type? (ChaseCamera)
WARNING: StarSystem::exit(): CLI(1) System(FP7_system)
WARNING: StarSystem::enter(): CLI(1) System(world_of_night)
WARNING: Unknown camera type? (ChaseCamera)
WARNING: invalid MSG id (2168981258) for voice profile (0xb4902287)
WARNING: invalid MSG id (2147483648) for voice profile (0xb4902287)
WARNING: invalid MSG id (2168981258) for voice profile (0xb4902287)
WARNING: invalid MSG id (3045999552) for voice profile (0x8ec8890d)
WARNING: invalid MSG id (3045999552) for voice profile (0xb4902287)
WARNING: invalid MSG id (2147483648) for voice profile (0x8ec8890d)
WARNING: invalid MSG id (2147483648) for voice profile (0xb4902287)
WARNING: invalid MSG id (2168981258) for voice profile (0xb4902287)
WARNING: invalid MSG id (3045999552) for voice profile (0x8ec8890d)
WARNING: invalid MSG id (3045999552) for voice profile (0xb4902287)
WARNING: invalid MSG id (2147483648) for voice profile (0x8ec8890d)
WARNING: invalid MSG id (2147483648) for voice profile (0xb4902287)
WARNING: invalid MSG id (2168981258) for voice profile (0xb4902287)
WARNING: invalid MSG id (3045999552) for voice profile (0x9fd7b047)
WARNING: invalid MSG id (3045999552) for voice profile (0xb4902287)
WARNING: invalid MSG id (2147483648) for voice profile (0x9fd7b047)
WARNING: invalid MSG id (2147483648) for voice profile (0xb4902287)
WARNING: invalid MSG id (2168981258) for voice profile (0xb4902287)
WARNING: Failed to get start location
WARNING:General: DA SYSTEM: trailing references
WARNING:General: DA SYSTEM: trailing references
</font></pre>

Hmm. So, if anything... that one change may have made things worse, but why? None of the aircraft that can spawn in that world use weapons that consume ammo- I just had the ammo in there so they'd drop it for players (an idea that I had and eventually dropped, but didn't remove from the code, silly of me).

Post Fri Mar 11, 2005 12:05 pm

OK... check this out... I commented out all of the references to the msg ID in Mbases and in Universe... and got the following two errors from Spit:

ERROR: System "world_of_night" has no msg_id_prefix information, which it will need to be referred to by space GCS - See TAYBRO

WARNING: invalid MSG id (2684724226) for voice profile (0xb4902287)

Hmm. So, what is the "space GCS"? I'm assuming that's "General Communications System", or something like that?

Post Fri Mar 11, 2005 1:21 pm

I've seen a couple of error like this debugging the evo 1.28 for a mod basis ( soz Chips!). I'm making a crc database generator to scan ini files and list crc's for user defined list of items (nickname etc) and scan cmp files for hp & part names. The second half of the window will be for searching that database. I'll post when it's stable and hopefully it'll help this issue.

@Argh - I'll mail one straight to you.

Post Fri Mar 11, 2005 3:29 pm

Anton - no sweat, I have found a shedload myself What can I say, I get sloppy - as I tend to be impatient. People put pressure on, I don't like some areas of modding, and therefore rush it badly Bad practice!

Post Fri Mar 11, 2005 7:45 pm

Argh,

We had this problem ourselves.. and Buck danny found and fixed it for our mod. I will post some stuff I got from him when we were looking at it.. it may help..
___________________________________________________________________
From Buck:

I did some study on the voice messages errors.

These error messages are obviously generated because there are no voice messages present in the files for the Epsilon systems and bases.

There are 2 separate situations to take in account:

· Voice messages coming from the traffic controller from the Epsilon bases

· Voice messages coming from ships in Epsilon systems space

Fixing this is not impossible, but it will require a huge amount of work. I will paint the picture:

· Recording with male and female voices the names of all the newly created bases and systems is the least of it. So far I have located 10 different voices. More time consuming will be adjusting them to the FL sound color (for each voice profile), to make them fit in, in an acceptable way. We have to create fragments for roughly 20 systems, 4 bases on average + all the Epsilon faction names times 10 voices = 900 voice fragments.

· Next and far out the most time consuming will be to determine the hash codes for all the separate messages, and to determine to which voice file and to which voice profile they have to be connected. Importing them in the voice utf files. This has to be done for each of everyone of them separately. This would require importing 80 voice fragments in 30 utf files each. (Each voice has 3 different utf files to generate a random effect I suspect). And this is for the in space communication only. There are also the voices of the traffic controllers to fix. Which means adding roughly 80 voice fragments to 10 utf files for that.

My suggestion would be:

I thought about removing the Msg_id prefixes in the Epsilon systems, but that will solve only part of it and probably generate other error messages.

· Eliminate all voice messages from the alien Epsilon factions, since they are or should be connected to Epsilon systems and bases, or not connected at all like the nomads are. The nomad have no voice messages assigned to them. Which makes sense, why would they communicate in english and do we have any knowledge of how their communication system works and do we have translators? The same is valid for the alien Epsilon factions. This will greatly reduce the error messages.

· Another option to further reduce the error messages is to remove the traffic controllers from the Epsilon bases.

· The humanoid Epsilon factions are connected to existing Freelancer systems, so they are generating the same amount of error messages as the genuine FL factions do.

· Accept the remainder of the error messages to be present, they do no harm.

Anyway it is not possible to remove them all without fixing all those entries and files.
___________________________________________________________________

Followed by:

___________________________________________________________________

With the tool from Watercoolerwarrior and an updated version of Accushot’s tool, I was able to unrattle the mysterious voice error messages generated by the traffic controllers.

It seems that I have found a method that will fairly easy remedy all Epsilon bases generating these error messages. This involves inserting empty voice segments into the various voice files, creating entries in voice.ini’s and the tool from Watercolloerwarrioir or Accushot will tell me the hash.

The effect will be that these error messages are gone. The actual message that you will hear will not be different. Where normally the base name is mentioned, that segment was earlier skipped because it could not be found, now it will find a segment that contains nothing.
___________________________________________________________________

The modifcations reduced our problem to almost nil....

Btw.... Credit Buck Danny for this if it helps you please

Harrier...

Post Fri Mar 11, 2005 9:10 pm

Harrier:

Thanks very much for sharing that with me. I will be happy to share credit, of course

That goes a very long way towards explaining why so many mods that add new Systems and Bases aren't stable- in my (admittedly special) case, this has been compounded by several other problems, but it sounds like I can now get this stuff worked out.

It looks like my choices are fairly bad, but not insurmountable. After commenting out the msg prefixes, I now "merely" get warnings from Spew that I'm doing something that will cause problems with the Voices. Stability seems to be much enhanced overall- and the only gameworld that's still hanging in SP is Oceania (which doesn't surprise me, since I have several other things going on there that give the FL engine a lot of trouble).

As I currently have 48 Bases in my mod, I'm not sure if it's practical to add null sound entries for every one of them, and work out hashes, but I may want to try it. If I recall correctly, that would require a null sound recorded in the RIFF format. I don't suppose I could convince you or Buck to upload a copy of the null you used?

Edited by - Argh on 3/11/2005 9:11:51 PM

Post Mon Mar 14, 2005 8:38 am

UPDATE:

After commenting out all Voices and putting Anton's ChaseCamera bugfix into my mod... all errors are gone, (aside from errors related to the weird SUR/Radius interactions in Oceania, which is a whole 'nother issue, and not something that shows up in Spew).

So I can basically confirm that Buck Danny's solution is the way to go here, if we want our AI ships to use Voices but not have the game hang. So what I think I'm going to do is create a single GCS_refer... a single null... and have everything use that, instead of making 48 for each Base currently implemented + the Factions.

If that doesn't work, I'm gonna do it the hard way... it seems the best route to 100% stability for the mod, which is the goal.

Post Mon Mar 14, 2005 12:21 pm

Well, you have a very obvious clue that it is something in br02. Go through the sysytem ini and then related parts of other files. Odds on its a typo

Post Tue Mar 15, 2005 1:56 pm

@Argh

I do not want to spoil your little party but what you intend to achieve is not going to work if I recollect correctly how FL chooses the message to be broadcasted. I fear you will have to create a message for each system/base separately.

I am also not convinced that having the messages not in place is causing the game to hang. At least I did not experience that nor did we have reports that indicated in that direction. But I might be wrong.

See you in Sirius

BuckDanny

Return to Freelancer General Editing Forum