Fixing errors found by FL Error Checker
-
@Lancer:
**Here is that hash list you were asking about, it is just list of hashes from the fl.exe used to get the audio hashes.
Thanks LS, your are the one !
-
C:\Program Files\Microsoft Games\Freelancer\DATA\SHIPS\shiparch.ini
Line #5775 ==> “type = engine”
[> * Nickname not found * ‘engine’
Line #6418 ==> “type = bottom_engine”
[> * Nickname not found * ‘bottom_engine’[/quote]
Those should be Engine & Bottom_Engine, either your ini entry is in lower case or FLEC is still not recognising all case shifts. -
**It didn’t have any of the engines in the check. It’s already been added and will be in the next release.
FLEC does not check for case unless it is absolutely required, otherwise everything is read in lowercase. Is that setting case sensitive? If so I will add a check for it…**
-
I can’t think it’s case sensitive, as it works with lowercase.
MK
edit
Maybe I should actually check things before I post. Turns out that I have the type names capitilized in my .ini; I just assumed they were lowercase, as they showed up in FLEC. You know what they say: When you assume, you make an a** out of u and me.
-
Hehe, you actually had it correct the first time, 1.011 does not have the engines in it. That is a fairly old routine and back then I didn’t have a clue where that stuff was. So I just added the ones I found in the stock INI files. As time goes on I’m sure there will be other stuff I’ve missed.
-
Hey there,
first I need to say: GREAT WORK Lancer Solorus.
The error checker gave me lots of errors and I’ve fixed almost 80% of them.But there is one think in the Error_Log_Shiparch.
Many of my ships have no HpPilot, i must say i did never care much about it because only 30-40% of our have a empty cockpit, the others are BS’s, frighters or ships with a pilot in the model.
My question is: Is it rly necessary to fix those error…
-> Missing ‘hppilot’ on ‘x_302’ *** C:\Programme\Microsoft Games\Freelancer\DATA\ships\stargate\x-302\f302.cmpGreetings
Mind -
it wont lead to crashes if you dont have a pilot inside
FL checks for that entry but i doubt that it does lead to additional serverload (big dunno here)the best answer i can give you is that if you want a 100% clean code you place such a hardpoint in the middle of your ship (it cant hurt)
-
OP is right ^^, if it does have it in anyway, im guessing it would but loadtimes down (not by alot) it would just be more optimized.
-
**No it’s not necessary to have a pilot on it. It is necessary though to have other hardpoints such as the HpTactor_source if the ship has a tractor mounted on it.
After talking with Op about this, I may remake the hardpoint checker to seperate out the required hardpoints and the non-required hardpoints.**
-
Ty for the replys guys.
I will not add the HpPilot to the ships, because some models (like the xwing) dont have place for a pilot.
Plus i’m to lazy to add add 60HpPilots to 60 different models. ::) -
The pilot is easy to deal with, if you don’t want to add a HpPilot to the CMP, then just remove the “pilot_mesh = generic_pilot” line from each of the affected ships shiparch entry.
HpCockpit is where all ship cameras are anchored (including cockpit cameras), without one FL will attach the cameras to the models centre (0,0,0), but this will still cause a syntax error for each camera (4 per ship).
A missing HpTractor_Source, HpBayDoor01 or HpBayDoor02 and FL will use 0,0,0 for it and then throw a syntax error for each one.
These syntax errors cannot be seen in any of FL’s error logs, which is why most don’t realise they are there. What do they do? they block the dataflow in the CPU, to many in there at once and it’s CTD time, it all depends on what syntax error limit your PC has, a high limit and you’ll probably never notice anything, but a low limit and you’ll probably hit a random CTD or two on a mod that’s meant to be clean.
-
I have found that a missing HPTractor_Source will actually crash the client and server when the user uses their tractor. It doesn’t happen every time but it will happen.
-
With v1.011 (latest?)… I get:
* Error Log * ****** Reputation comparisons Initialword.ini Rep mismatch. 137 -> li_n_grp = 0.000000, admin_grp Rep mismatch. 138 -> li_n_grp = -0.650000, new_nomad_grp Rep mismatch. 200 -> li_lsf_grp = 0.000000, admin_grp Rep mismatch. 201 -> li_lsf_grp = -0.650000, new_nomad_grp Rep mismatch. 263 -> li_p_grp = 0.000000, admin_grp Rep mismatch. 264 -> li_p_grp = -0.650000, new_nomad_grp Rep mismatch. 326 -> br_n_grp = 0.000000, admin_grp Rep mismatch. 327 -> br_n_grp = -0.650000, new_nomad_grp Rep mismatch. 389 -> br_p_grp = 0.000000, admin_grp Rep mismatch. 390 -> br_p_grp = -0.650000, new_nomad_grp Rep mismatch. 452 -> ku_n_grp = 0.000000, admin_grp Rep mismatch. 453 -> ku_n_grp = -0.650000, new_nomad_grp Rep mismatch. 515 -> ku_p_grp = 0.000000, admin_grp Rep mismatch. 516 -> ku_p_grp = -0.650000, new_nomad_grp Rep mismatch. 578 -> rh_n_grp = 0.000000, admin_grp Rep mismatch. 579 -> rh_n_grp = -0.650000, new_nomad_grp Rep mismatch. 641 -> rh_p_grp = 0.000000, admin_grp Rep mismatch. 642 -> rh_p_grp = -0.650000, new_nomad_grp Rep mismatch. 704 -> co_alg_grp = 0.000000, admin_grp Rep mismatch. 705 -> co_alg_grp = -0.650000, new_nomad_grp Rep mismatch. 767 -> co_be_grp = 0.000000, admin_grp Rep mismatch. 768 -> co_be_grp = -0.650000, new_nomad_grp Rep mismatch. 830 -> br_m_grp = 0.000000, admin_grp Rep mismatch. 831 -> br_m_grp = -0.650000, new_nomad_grp Rep mismatch. 893 -> co_nws_grp = 0.000000, admin_grp Rep mismatch. 894 -> co_nws_grp = -0.650000, new_nomad_grp Rep mismatch. 956 -> co_hsp_grp = 0.000000, admin_grp Rep mismatch. 957 -> co_hsp_grp = -0.650000, new_nomad_grp Rep mismatch. 1019 -> co_ic_grp = 0.000000, admin_grp Rep mismatch. 1020 -> co_ic_grp = -0.650000, new_nomad_grp Rep mismatch. 1082 -> co_khc_grp = 0.000000, admin_grp Rep mismatch. 1083 -> co_khc_grp = -0.650000, new_nomad_grp Rep mismatch. 1145 -> co_kt_grp = 0.000000, admin_grp Rep mismatch. 1146 -> co_kt_grp = -0.650000, new_nomad_grp Rep mismatch. 1208 -> rh_m_grp = 0.000000, admin_grp Rep mismatch. 1209 -> rh_m_grp = -0.650000, new_nomad_grp Rep mismatch. 1271 -> co_me_grp = 0.000000, admin_grp Rep mismatch. 1272 -> co_me_grp = -0.650000, new_nomad_grp Rep mismatch. 1334 -> co_ni_grp = 0.000000, admin_grp Rep mismatch. 1335 -> co_ni_grp = -0.650000, new_nomad_grp Rep mismatch. 1397 -> co_os_grp = 0.000000, admin_grp Rep mismatch. 1398 -> co_os_grp = -0.650000, new_nomad_grp Rep mismatch. 1460 -> co_rs_grp = 0.000000, admin_grp Rep mismatch. 1461 -> co_rs_grp = -0.650000, new_nomad_grp Rep mismatch. 1523 -> co_shi_grp = 0.000000, admin_grp Rep mismatch. 1524 -> co_shi_grp = -0.650000, new_nomad_grp Rep mismatch. 1586 -> co_ss_grp = 0.000000, admin_grp Rep mismatch. 1587 -> co_ss_grp = -0.650000, new_nomad_grp Rep mismatch. 1649 -> co_ti_grp = 0.000000, admin_grp Rep mismatch. 1650 -> co_ti_grp = -0.650000, new_nomad_grp Rep mismatch. 1712 -> co_vr_grp = 0.000000, admin_grp Rep mismatch. 1713 -> co_vr_grp = -0.650000, new_nomad_grp Rep mismatch. 1775 -> fc_bd_grp = 0.000000, admin_grp Rep mismatch. 1776 -> fc_bd_grp = -0.650000, new_nomad_grp Rep mismatch. 1838 -> fc_b_grp = 0.000000, admin_grp Rep mismatch. 1839 -> fc_b_grp = -0.650000, new_nomad_grp Rep mismatch. 1901 -> fc_c_grp = 0.000000, admin_grp Rep mismatch. 1902 -> fc_c_grp = -0.650000, new_nomad_grp Rep mismatch. 1964 -> fc_fa_grp = 0.000000, admin_grp Rep mismatch. 1965 -> fc_fa_grp = -0.650000, new_nomad_grp Rep mismatch. 2027 -> fc_g_grp = 0.000000, admin_grp Rep mismatch. 2028 -> fc_g_grp = -0.650000, new_nomad_grp Rep mismatch. 2090 -> fc_gc_grp = 0.000000, admin_grp Rep mismatch. 2091 -> fc_gc_grp = -0.650000, new_nomad_grp Rep mismatch. 2153 -> fc_h_grp = 0.000000, admin_grp Rep mismatch. 2154 -> fc_h_grp = -0.650000, new_nomad_grp Rep mismatch. 2216 -> fc_j_grp = 0.000000, admin_grp Rep mismatch. 2217 -> fc_j_grp = -0.650000, new_nomad_grp Rep mismatch. 2279 -> fc_lh_grp = 0.000000, admin_grp Rep mismatch. 2280 -> fc_lh_grp = -0.650000, new_nomad_grp Rep mismatch. 2342 -> fc_lr_grp = 0.000000, admin_grp Rep mismatch. 2343 -> fc_lr_grp = -0.650000, new_nomad_grp Rep mismatch. 2405 -> fc_lwb_grp = 0.000000, admin_grp Rep mismatch. 2406 -> fc_lwb_grp = -0.650000, new_nomad_grp Rep mismatch. 2468 -> fc_m_grp = 0.000000, admin_grp Rep mismatch. 2469 -> fc_m_grp = -0.650000, new_nomad_grp Rep mismatch. 2531 -> fc_ou_grp = 0.000000, admin_grp Rep mismatch. 2532 -> fc_ou_grp = -0.650000, new_nomad_grp Rep mismatch. 2594 -> fc_rh_grp = 0.000000, admin_grp Rep mismatch. 2595 -> fc_rh_grp = -0.650000, new_nomad_grp Rep mismatch. 2657 -> fc_or_grp = 0.000000, admin_grp Rep mismatch. 2658 -> fc_or_grp = -0.650000, new_nomad_grp Rep mismatch. 2720 -> fc_u_grp = 0.000000, admin_grp Rep mismatch. 2721 -> fc_u_grp = -0.650000, new_nomad_grp Rep mismatch. 2783 -> fc_x_grp = 0.000000, admin_grp Rep mismatch. 2784 -> fc_x_grp = -0.650000, new_nomad_grp Rep mismatch. 2846 -> gd_gm_grp = 0.000000, admin_grp Rep mismatch. 2847 -> gd_gm_grp = -0.650000, new_nomad_grp Rep mismatch. 2909 -> fc_uk_grp = 0.000000, admin_grp Rep mismatch. 2910 -> fc_uk_grp = -0.650000, new_nomad_grp Rep mismatch. 2972 -> fc_n_grp = 0.000000, admin_grp Rep mismatch. 2973 -> fc_n_grp = 0.650000, new_nomad_grp Rep mismatch. 3035 -> fc_ln_grp = 0.000000, admin_grp Rep mismatch. 3036 -> fc_ln_grp = 0.650000, new_nomad_grp Rep mismatch. 3098 -> fc_kn_grp = 0.000000, admin_grp Rep mismatch. 3099 -> fc_kn_grp = 0.650000, new_nomad_grp Rep mismatch. 3161 -> fc_rn_grp = 0.000000, admin_grp Rep mismatch. 3162 -> fc_rn_grp = 0.650000, new_nomad_grp Rep mismatch. 3224 -> fc_ouk_grp = 0.000000, admin_grp Rep mismatch. 3225 -> fc_ouk_grp = -0.650000, new_nomad_grp Rep mismatch. 3287 -> fc_q_grp = 0.000000, admin_grp Rep mismatch. 3288 -> fc_q_grp = -0.650000, new_nomad_grp Rep mismatch. 3350 -> fc_f_grp = 0.000000, admin_grp Rep mismatch. 3351 -> fc_f_grp = -0.650000, new_nomad_grp Rep mismatch. 3413 -> gd_im_grp = 0.000000, admin_grp Rep mismatch. 3414 -> gd_im_grp = -0.650000, new_nomad_grp Rep mismatch. 3476 -> gd_z_grp = 0.000000, admin_grp Rep mismatch. 3477 -> gd_z_grp = -0.650000, new_nomad_grp Rep mismatch. 3539 -> gd_bh_grp = 0.000000, admin_grp Rep mismatch. 3540 -> gd_bh_grp = -0.650000, new_nomad_grp Error Count = 110
I’ve checked it, and re-checked. It all seems fine. Everything is correct 2-ways… ie. li_n_grp like li_p_grp just the same as li_p_grp like li_n_grp that way round. It seems like it doesn’t like the neutral rep on my two new factions. Unless i’m missing something silly.
Can anyone just clarify?
Also, when it scans pilots_population.ini, when it states capitalize to work properly, does it mean literally do it to the whole text, or just the first letter. I’ve just done the first letter on them for now… so for example “lt_all” is now “Lt_All”, and “lt_commodities” is now “Lt_Commodities”.
Thanks
-
**For first line
1 ) Rep mismatch. 137 -> li_n_grp = 0.000000, admin_grp
Check in the li_n_grp for admin_grp, does this match the rep of the admin group for li_n_grp? I doubt it does, ex, li_n_grp -> admin_grp=0.0 then under the admin_grp section, does li_n_grp = 0.0?
2 ) All letters must be capital like LT_ALL**
-
Hi Lancer.
For the first problem, the rep, it all checks out yeah. Which is why I thought it was really strange
And the second one, yeh. I ran the checker again after capitalizing only the first letters and it gave me more info, telling me what the valid expressions were… ie. LT_ALL, LT_NONE etc.
Thanks for the reply Lancer
I have a further question pertaining to the checker, which I’m not sure about
The Built-in Audio error-list. It has found 11 errors in here, and i’m honestly not sure about where to start fixing them. I haven’t done much with audio in the game so I guess it’s vanilla errors and such, unless i’ve accidently done something. Excuse the long-scrolling code window again while I put it below:
This part is a check to see if all of your built-in audio files are present. Built-in nickname found 'nnv_dock_too_far' : Hash '0xB3E1648C' Built-in nickname found 'nnv_tractor_failure' : Hash '0x9C9DBAC2' Built-in nickname found 'nnv_shield_failed' : Hash '0xA4E11C41' Built-in nickname found 'nnv_formation_lost' : Hash '0x9867AC4F' Built-in nickname missing 'dock_granted' : Hash '0x8C2C1A08' Built-in nickname missing 'dock_denied_hostile' : Hash '0xBCED6E0A' Built-in nickname missing 'dock_denied_locked' : Hash '0x87D89A80' Built-in nickname found 'cannot_dock' : Hash '0x9E09C18D' Built-in nickname found 'waiting_to_dock' : Hash '0x96768800' Built-in nickname found 'repair_droid_activated' : Hash '0xBC290502' Built-in nickname found 'repair_droid_deactivated' : Hash '0xB2876DC1' Built-in nickname found 'repair_droid_exhausted' : Hash '0xAFE0184F' Built-in nickname missing 'entering_formation' : Hash '0x89FA404A' Built-in nickname missing 'formation_denied' : Hash '0x99A76805' Built-in nickname found 'cargo_expired' : Hash '0xAB660081' Built-in nickname missing 'weapon_expired' : Hash '0xBB85884E' Built-in nickname found 'hull_breach_imminent' : Hash '0xBD8DADC3' Built-in nickname found 'engine_critical' : Hash '0x949726C6' Built-in nickname found 'entering_sun_corona' : Hash '0x93A5BA41' Built-in nickname found 'entering_atmosphere' : Hash '0xB4F636C0' Built-in nickname found 'target_reached' : Hash '0xB6214382' Built-in nickname missing 'trail_lost' : Hash '0xA071A205' Built-in nickname found 'nnv_formation_lost' : Hash '0x9867AC4F' Built-in nickname found 'gun_destroyed' : Hash '0xA2B26CCA' Built-in nickname found 'launcher_destroyed' : Hash '0x91F261C1' Built-in nickname found 'turret_destroyed' : Hash '0x87473EC6' Built-in nickname found 'shield_deactivated' : Hash '0xA31D64CD' Built-in nickname found 'shield_activated' : Hash '0x869469CE' Built-in nickname found 'shield_restored' : Hash '0x97F2BD06' Built-in nickname found 'shield_destroyed' : Hash '0x882ECE07' Built-in nickname found 'thruster_destroyed' : Hash '0x8F93208B' Built-in nickname found 'target_out_of_range' : Hash '0x82EBC387' Built-in nickname found 'mine_dropper_destroyed' : Hash '0xB794B40A' Built-in nickname found 'countermeasure_dropper_destroyed' : Hash '0x8B7ED384' Built-in nickname found 'engine_destroyed' : Hash '0xBA0A310F' Built-in nickname missing 'anomaly_detected' : Hash '0x83F4AAC6' Built-in nickname found 'danger' : Hash '0x9A05E348' Built-in nickname found 'radiation_damage_detected' : Hash '0x9E7AA049' Built-in nickname found 'mines_detected' : Hash '0x8191BD40' Built-in nickname found 'volatile_gases_detected' : Hash '0x9B35EA00' Built-in nickname found 'warning' : Hash '0xAD9A098B' Built-in nickname found 'sensor_efficiency_reduced' : Hash '0xB503BE4F' Built-in nickname found 'increased_drag_detected' : Hash '0x89F8594B' Built-in nickname found 'objective_reached' : Hash '0xA9E96B07' Built-in nickname missing 'fire_neutral' : Hash '0x888A0D80' Built-in nickname missing 'fire_friendly' : Hash '0xB84C2E49' Built-in nickname found 'incoming_torpedo' : Hash '0xA3A6978C' Built-in nickname found 'incoming_missile' : Hash '0xA1C018C0' Built-in nickname found 'scanning_cargo' : Hash '0xB1CC6E89' Built-in nickname found 'nnvoice_trade_lane_disrupted' : Hash '0xB962D587' Built-in nickname found 'repair_complete' : Hash '0xBF68F8C0' Built-in nickname found 'scanning_cargo' : Hash '0xB1CC6E89' Built-in nickname found 'gun_destroyed' : Hash '0xA2B26CCA' Built-in nickname found 'launcher_destroyed' : Hash '0x91F261C1' Built-in nickname found 'turret_destroyed' : Hash '0x87473EC6' Built-in nickname found 'shield_deactivated' : Hash '0xA31D64CD' Built-in nickname found 'shield_activated' : Hash '0x869469CE' Built-in nickname found 'shield_restored' : Hash '0x97F2BD06' Built-in nickname found 'shield_destroyed' : Hash '0x882ECE07' Built-in nickname found 'thruster_destroyed' : Hash '0x8F93208B' Built-in nickname found 'target_out_of_range' : Hash '0x82EBC387' Built-in nickname missing 'button_sound' : Hash '0x83A5E0CE' Built-in nickname found 'objective_complete' : Hash '0xB3EEECC5' Built-in nickname found 'objective_failed' : Hash '0xBF7CD345' Error Count = 11
Any help with that appreciated. Thanks again!
EDIT - I’ve opened the voices_recognizable.ini file and added those missing entries, to see if that has any positive effect. I couldn’t find any other files with those entries so I assume the rest is all just hardcoded and just referenced by that one .ini file. I’m not exactly sure what to put for the duration values or attenuation, so i’ve just based it off some existing entries. Attenuation always seems to be about -8 or a little higher, and duration is just the length of message right? The priority only seems to be present on certain [Sound] entries so i’ve left that out of them.
EDIT2 - Yeah, I thought as much Seems that the voices are in ‘nnvoices.utf’ in the ‘audio’ folder. I’ve opened it up in utf editor and I can see all the hashes that are all in place. To properly fix these errors then, would I need to record new voices in riff audio format and then import them into a new node with the correct hash to go with it? Seems overkill though, so if there is any way I can just stop these errors, comment/patch something out in a file, that would be great. Cheers
-
**You nailed it, yes, you will need to create those voices and import them into nnvoices.utf. Name the wav files the same as the hash value listed in the code above.
All of those sounds were pulled directly out of the exe and there is a script in the FLEC folder that allows you to add new sounds for it to check.**
-
Great stuff. Thanks for confirmation Lancer
-
Hey (again!) Lancer
I’ve been trying the nnvoice file editing today, and without a great deal of luck. I have basically done some test sounds out to implement in and test to see if they work first of all. I fire it up in the UTF editor and create new nodes for the new sounds, with the correct hashes of course, then import in the sounds.
However, back in game, nothing happens, the sounds don’t play when they are supposed too. An easy one to test with was the ‘entering formation’ one. It just doesn’t play. I checked the flspew log for any notices in there, but there is nothing on it. I initially tried the usual 56kbps (16-bit), 22khz mp3 in a .wav container approach (works for all my existing tracks i’ve added in, such as system music) and this didn’t work, so then I did the same again, in a lower format (32kbps as a mono track - the same as the existing voices seem to be) also in a .wav container, and still no luck.
After that, I just decided to throw the tracks in raw… PCM .wav format to see if it worked then (and if it was indeed and encoding problem), but all to the same result. Nothing. So i’m now wondering if I am screwing up somewhere else. The files I import for instance… do they need to be named precisely for them to work properly? Does the filename/extension influence the imported data in any way? No tuts or documentation on fixing this exact problem, so i’m a little stuck.
At first look I would say that the game isn’t actually loading those files regardless of me pointing them towards the right hashes in the .ini files and adding those files into nnvoices. It’s like some more functionality that never made it to the final stages with DA/Microsoft. But i’m sure this isn’t the case because you wouldn’t have put this in your error checker if not.
Cheers mate for all the help
-
Hey Fury, i dont know the solution to your problem but i do know a man who can help.
Just go over to www.freelancercommunity.net and post to the guys there as i know Dwnundr and Soupman have done and still are adding new sounds to their mod and have them working.
-
Regarding this post: http://the-starport.net/index.php?option=com_smf&Itemid=26&topic=292.msg2804#msg2804 (about the encounters getting erronously flagged up as not equalling 1., when they actually do). I am still getting this issue on a couple of encounters, even though it was supposedly fixed. No big deal, it only seemed to happen on a certain combination of float values. I fixed this by changing the figures around slightly, so they add up in a different way (if that makes any sense). Now it doesn’t get flagged.
If I ever get any more though I will post up. I know it can be pointless to bring up an issue when there is nothing to work from to duplicate the issue, so i’ll post if I come across it aagin. Perhaps something simple could be tweaked/altered though in the meantime to stop this?