1P edit- NPC voice designation "Alpha One-Dash-One"?

  • I've loved this game for years, but I'm a bit sick of hearing the 'A1-1' designation every time I dock, or get my cargo scanned, etc. I'd like to make it a little more personal.


    Is there a possibility to edit this designation I've missed? Since it falls into NPC speech patterns it sounds as though it's just a function call (especially considering how vanilla the stock designation is). Anyone have experience with which .ini etc I'm looking for here, if it's possible?

  • Not as simple as it sounds, since there's a message for every voice. Had a quick look and managed to find "Freelancer", but not the other bit. To change that would require editing each DATA\AUDIO\*.utf file that contains a "0xB967660B" entry. You'd have to use something like utf_edit to import a new .wav file. Not really sure it's worth it, particularly when it wouldn't match the rest of the voice (unless you've got great mimicking skills :) ).

  • Oh, I'm fine with the stuttered speech and such, that's not a problem; let me clarify.


    'Freelancer Alpha One dash One'
    'Freelancer Silver Eight dash Three'
    'Liberty Fighter Patrol Epsilon Four dash Nine'
    'Bounty Hunters Omicron Twelve dash Seven'
    '<UnitDesignation> <FlightGroup> <FGI_1> dash <FGI_2>'


    I've heard NPCs such as dock control operators in-game refer to other NPCs (cargo transports, bounty hunter patrols, etc) by their unit designation, and those sound like they're running off the same modular sort of speech. Within the confines of what I've already heard in the game, I meant, is it possible to change the modules/arguments that refer to the Player Character? (the <FlightGroup> etc above?) for example:
    NPC_Voice_AddressUnitID(FL, A, 1, 1)
    NPC_Voice_AddressUnitID(FL, G, 5, 6)


    I assume it's not in the save file since that's been hashed out already, I guess I'll check the NPCs again for a template- I would hope it's not encoded into each individual NPC/voice and it's just a single function call, that would be embarassingly bass-ackwards from a programming standpoint. :|


    Just curious if someone else had already gone down this road, I'll keep searching. :) (And I do voice-acting, so I could if I have to :geek: )

  • Okay, now that I've had a closer look (and you've clarified what you want) I can give you a bit more information. The designation itself is hardcoded into Content.dll, so you're going to need a hex editor (I guess if there's enough interest I could add it to FL Hack, but only for single player). The offsets provided below are in hex, for version 1.1; the 1.0 offset is in brackets.


    First off, the faction. Go to 11633E (11533E) and you'll see "player" (as part of "gcs_refer_faction_player"); change that to the nickname of the faction you want to be called (see the list at the end of this message). For example, to become a bounty hunter, overwrite "playe" with "gd_bh" and replace the final "r" with 00.


    Next is the "formation", which is pretty similar. Go to 11753D (11653D) and you'll see "01" (as part of "gcs_refer_formationdesig_01"). The formations are listed after the factions.


    Now the first number. This is a little trickier. Go to 4B49B (4BBFB) and you should see the sequence B9 14 00 00 00 F7 F1 42. Replace that sequence with BA <number> 00 00 00 90 90 90. Number is the number you want, 00 to 14 (twenty); any other number will be silence.


    The dash can be silenced by going to 116314 (115314) and replacing 67 ("gcs_refer_dash") with 00.


    Finally, the second number. Go to 4B524 (4BC84) and you should see 01. Change that to the number you want; same rules as above apply. If you only want one number, silence the first and use the second.


    With a bit more mucking about it would be possible to make the system and base names available, or any of the other messages (have a look at the AUDIO\voices_space_*.ini files).



    Factions


    co_vr Ageira
    co_alg ALG
    fc_fa Alliance
    br_n Armed Forces
    br_m BMM
    gd_bh Bounty Hunters
    co_be Bowex
    br_p Bretonia Police
    fc_b Bundschuh
    fc_c Corsairs
    co_hsp Cryer
    co_khc Daumann
    fc_bd Dragons
    co_me DSE
    player Freelancer
    fc_g Gaians
    co_nws Gateway
    fc_gc GC
    gd_gm GMG
    fc_lh Hackers
    fc_rh Hessians
    fc_h Hogosha
    gd_im IMG
    co_ic Interspace
    fc_j Junkers
    co_kt Kishiro
    rh_m Kruger
    ku_p Kusari Police
    li_p Liberty Police
    li_lsf LSF
    fc_lwb LWB
    rh_n Military
    fc_m Mollys
    ku_n Naval Forces
    li_n Navy
    fc_or Order
    fc_ou Outcasts
    co_ti Planetform
    co_rs Republican
    rh_p Rheinland Police
    fc_lr Rogues
    co_shi Samura
    co_os Spa and Cruise
    co_ni Synth Foods
    fc_u Unioners
    co_ss Universal
    fc_x Xenos
    gd_z Zoners



    Formations


    01 Alpha
    02 Beta
    03 Gamma
    04 Delta
    05 Epsilon
    06 Zeta
    07 Theta
    08 Iota
    09 Kappa
    10 Lambda
    11 Omicron
    12 Sigma
    13 Omega
    14 Red
    15 Blue
    16 Gold
    17 Green
    18 Silver
    19 Black
    20 White
    21 Yellow
    22 Matsu
    23 Sakura
    24 Fuji
    25 Botan
    26 Hagi
    27 Susuki
    28 Kiku
    29 Yanagi